Compare commits

..

259 Commits

Author SHA1 Message Date
Andrew Gregory
7dc2266c2f WIP: add python/rust style format strings
--print-format currently uses printf-style format strings, which have
limited namespace (a-zA-Z), low flexibility (depends-with-version and
depends-without-version have to be different sequences), and are
difficult to remember (is %d depends or description?).

Python/Rust format strings allow full word substitutions.  In addition,
the mfmt.c library being used makes it possible to extend the standard
formatting for much greater control.  For example, we can allow nested
templates so that instead of having "{depends}" and
"{depends-without-version}" variants, we can allow something like
"{depends<{name}={version}: {description}>}".

For example:
 pacman -Sp --pformat="{name}: {description} ({packager})" pacman
2022-12-24 11:43:27 -08:00
morganamilo
52eb094aa2 Fix repo-add
Commit 4f43ce3e4a broke repo-add by
switching to parseopts without accounting for the added "--". This caused
the dbname to always be read as "--".

Accounts for "--" and makes repo-add respect "--" as end of opts.
2022-12-19 10:08:57 +10:00
Allan McRae
a194197369 makepkg.conf: clarify PKGEXT and SRCEXT
Mention valid suffixes should start with .pkg or .src

Fixes FS#64749.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-12-19 09:56:29 +10:00
Ziemowit Laski
f4f66fcca7 Bump required GPGME version to 1.12.0
GPGME_KEYLIST_MODE_LOCATE was introduced in 1.12.0

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-12-13 11:46:18 +10:00
Allan McRae
bb035eba4c gitlab CI: use "meson setup" everywhere
Avoids a warning from meson.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-12-13 10:00:13 +10:00
Allan McRae
fcb1d4f87e makepkg: package debug source files with options 'debug' and '!strip'
When package software with debug symbols without stripping, we should
still process the files with debugedit and include the needed source
files in the package.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-12-13 10:00:13 +10:00
Allan McRae
471a030466 Avoid NULL deference in curl_check_finished_download
We have not set handle in the function at this stage, so we can not
assign an error to it.  Pass the handle to the function to avoid
waiting until the payload is retrieved.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-12-13 10:00:13 +10:00
Allan McRae
775d511f42 load_packages: fix memory leak on error
The memory assigned in _alpm_pkg_load_internal was not freed on
error.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-12-13 10:00:13 +10:00
Allan McRae
19a8587459 _alpm_pkg_load_internal: prevent double closing file descriptor
Move closing of the file descriptor until the end of the function, as
any following error will lead to a "goto error" that attempts to close
it again.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-12-13 10:00:13 +10:00
Allan McRae
ea83fd3927 Catch possible error in archive_entry_pathname when extracting files
Prevents a null deference on error.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-12-13 10:00:13 +10:00
Allan McRae
0fe764a253 Fix memory leak when setting up download bars
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-12-13 10:00:13 +10:00
Allan McRae
3436bc6c3e Finish comparing all pairs of filenames for duplicates before erroring
This also prevents a use-after-free issue where we free the list we
are interating over and the do i->next.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-12-13 10:00:13 +10:00
Allan McRae
0e938f1886 libmakepkg: fix compatibility with bash-5.2 patsub_replacement
Bash-5.2 introduced the patsub_replacement shell option, which is enabled
by default.  Apparently is it supposed to handle a sed-like idiom, but
what it does achieve is making any substitution involving a "&" requiring
special care.

For makepkg's DLAGENTS, we replace "%o" and "%u" if present.  Any "&" in
the replacement fields triggers patsub_replacement unless quoted.  This is
particularly important for the URL field.

Add relevant quotes to avoid issues.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-12-12 18:37:59 +10:00
Allan McRae
1327ce7bd8 makepkg: remove md5sums from generated mtree file
md5sums are cryptographically broken and we supply sha256sums to verify
files on a users system have not been modified from the packaged version.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-12-04 20:15:33 +10:00
Allan McRae
310bf878fc repo-add: do not add md5sums to the repo dbs
Keeping md5sums in the repo databases no longer serves a real purpose.
md5sums are no longer considered  secure, and we already have sha256sums
in the repos (along with PGP verification).

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-12-04 20:15:33 +10:00
Allan McRae
4f43ce3e4a repo-add: use parseopts from libmakepkg
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-12-04 20:14:32 +10:00
Allan McRae
e7806a43e0 pacman.conf.in: adjust example custom repo path for consistency
The example makepkg.conf.in suggests using "PKGDEST=/home/packages". It makes
sense to use the same path for the custom repo example in pacman.conf.in.

Fixes FS#48497.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-12-04 20:11:43 +10:00
Allan McRae
23aa82812e Fix typo in comment
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-11-08 14:20:36 +10:00
Allan McRae
05e52ef796 Document alpm_pkg_xdata_t type and accessor
Also more definitions to more relevant areas in alpm.h.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-11-08 14:19:35 +10:00
Allan McRae
83e5326ac9 Remove obsolete Doxyfile declarations
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-11-08 11:49:31 +10:00
Allan McRae
b2c9543ea9 Use modern openssl interfaces for calculating MD5 and SHA256 checksum
The currently used openssl interfaces for calculating checksums have been
deprecated in openssl-3.0.  Move to the modern interfaces to avoid build
warnings.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-11-07 16:58:29 +10:00
Morten Linderud
3ed08f97ec executable/meson.build: include debugedit.sh.in
Signed-off-by: Morten Linderud <morten@linderud.pw>
2022-11-07 01:02:12 +01:00
Andrew Gregory
da68447ec6 set bash env variables before running scripts
Bash sources user configuration files under a number of conditions that
can cause issues with scripts when bash is used as the scriptlet shell.

Bash assumes it's being run under rsh/ssh if stdin is connected to a
socket and sources the user bashrc unless the environment variable
$SHLVL is >= 2.  Commit 6a4c6a02de
switched from pipes to sockets when communicating with child processes
to work around SIGPIPE issues.  Normally $SHLVL would be inherited from
the shell running pacman, but operations involving scriptlets are
generally run with sudo which does not let the $SHLVL variable through
unless specifically configured to.

Similarly $BASH_ENV can cause bash to source user-specified configuration
files if set.

https://lists.gnu.org/archive/html/help-bash/2022-02/msg00082.html

Note: the list discussion and bash source all reference SHLVL >= 2, this
is the SHLVL value *after* bash has incremented it on startup.  Setting
it to 1 in pacman is sufficient to disable the unwanted behavior.

Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
2022-10-15 10:40:59 -07:00
Allan McRae
86981383a2 Fix missing if
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-10-09 13:43:31 +10:00
Frederik Schwan
de11824527 strip: Include .o files in strip operation
`.o` objects used to be omitted by strip.sh due to a missing match in
the `Relocatable file` section. This patch fixes the issue by handling
`.o` objects similar to kernel modules.

fixes FS#74941

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-10-09 11:01:12 +10:00
Morten Linderud
478af273df strip: fix unique source paths
`${pkgbase}` was added to the wrong invocation. This ensures we are
producing correct debug packages.

Example from the package:

    /usr/src/debug/pacman/pacman-6.0.2/src/pacman/callback.c
    /usr/src/debug/pacman/pacman-6.0.2/src/pacman/callback.h
    /usr/src/debug/pacman/pacman-6.0.2/src/pacman/check.c
    /usr/src/debug/pacman/pacman-6.0.2/src/pacman/check.h

Fixes: 776b7c1e75 ("debugflags: Ensure we have unique source paths")
Signed-off-by: Morten Linderud <morten@linderud.pw>
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-10-09 10:57:26 +10:00
Allan McRae
efd0c24c07 Always create directories outputted from debugedit in debug packages
The debugedit call to list all source files may include things like
build/<...>.  We have been filtering out these <> files, but they can
point to the build directory which is important to be available for
relative source paths stored in the .debug files.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-10-08 21:07:45 +10:00
Allan McRae
a6b06a5b17 libmakepkg: fix compatibility with bash-5.2 globskipdots
Bash 5.2 has a new globskipdots option, which is enabled by default. The
check_dotfiles lint fails with globskipdots due to the assumption that
at least the "." and ".." paths will match. Disabling globskipdots would
be the usual solution, but that fails on bash<5.2.  Instead, enable
nullglob for this check.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-10-02 11:40:52 +10:00
Allan McRae
546433b4fd Update Transifex client usage instructions
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-09-26 21:10:54 +10:00
Allan McRae
e10751a1e0 Update Transifex config
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-09-26 20:53:48 +10:00
Kristian Klausen
673ce1ab10 pacman-key: Don't check gpg's trustdb after each key revocation
The trustdb is marked as dirty when a key is revoked[1] and GPG will
recheck it the next time. Checking the trustdb can take 300-500ms which
with 52 revoked keys (and counting) adds up.

This is very noticeable when initializing and populating pacman's
keyring like archiso is doing[2]. It is also unnecessary as the trustdb
is always checked as the last step when populating the keyring.

[1] https://git.gnupg.org/cgi-bin/gitweb.cgi?p=gnupg.git;a=blob;f=g10/keyedit.c;h=1cb62de8a87a823e06b2ed74efdc9e7a4cd99e2b;hb=refs/heads/STABLE-BRANCH-2-2#l6509
[2] https://gitlab.archlinux.org/archlinux/archiso/-/issues/191
2022-09-26 20:22:11 +10:00
Allan McRae
53dd3e844a makepkg.8: add missing fullstop
Fixes FS#75838

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-09-07 23:14:12 +10:00
Ben Westover
656abdb256 doc: Create documentation for pacman-db-upgrade and testpkg
There are two "binaries" that are currently missing documentation,
pacman-db-upgrade and testpkg. This patch adds that documentation.

Signed-off-by: Ben Westover <kwestover.kw@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-08-04 22:29:27 +10:00
Ben Westover
064e556c4e doc: Fix grammar in pacman.8.asciidoc
Signed-off-by: Ben Westover <kwestover.kw@gmail.com>
2022-08-02 23:04:22 +10:00
soloturn
184f593168 libmakepkg: Fix git clone command
Commit e017a5975c introduced the GITFLAGS
environmental variable. While ensuring the default of "--mirror" was
kept, there was a capitalisation mistake made. Handle the default for
GITFLAGS directly in the git clone command.
2022-08-02 13:07:09 +10:00
soloturn
e017a5975c makepkg: Add GITFLAGS environmental variable to customise checkout
The default flag used to clone a git repository when using makepkg
is "--mirror". However, when working with huge repositories, the use
of different flags during cloning can allow an faster checkout. For
example, using "--filter=blob:none" allows for small checkouts, at
the expense of requiring downloads during the build stage if anything
but the HEAD commit is used for the build. In addition, this example
would serve as a replacement for the often requested (but broken)
addition of --depth=1.

Add support for the environment variable GITFLAG to pass flags for
the git clone command. Note that this overrides the default rather
than adding to it in order to prevent incompatibilities.
2022-07-29 11:00:01 +10:00
Daan De Meyer
79bd512181 Add --keyringdir meson option to configure the keyring directory
On Debian, keyrings are stored in /usr/share/keyrings. To support
this, let's add a new --keyringdir option that allows configuring
the directory under datarootdir where the keyrings should be
imported from. We default to 'pacman/keyrings' for backwards
compatibility.
2022-07-29 10:17:52 +10:00
Alexander F. Rødseth
51b2e1c973 pacman: let the progress bar "C"/"c" move up and down at a more regular rate
For some terminal widths, the "C"/"c" character does not alternate at
regular intervals, but may look like it is stuck at either lowercase or
uppercase.

The previous behavior toggled based on the character position, while this
new behavior toggles the chomp alternation based on the progress percentage value.

This leads to slightly improved chomping.

Signed-off-by: Alexander F. Rødseth <xyproto@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-07-29 09:44:04 +10:00
Alexander F. Rødseth
5abe1455f2 pacman: remove redundant argument
The fill_progress function is called from two locations,
and both locations pass in the same percentage value twice.

This patch modifies the function signature to to receive the
percentage value just once.

Signed-off-by: Alexander F. Rødseth <xyproto@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-07-29 09:42:38 +10:00
Joe Baldino
daa2db6a23 meson: replace deprecated get_pkgconfig_variable()
Apparently that function was deprecated in 0.56, so use the generic
getter introduced in 0.51 instead. This squashes a warning.

Signed-off-by: Joe Baldino <pedanticdm@gmx.us>
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-07-29 09:41:47 +10:00
Chris Down
ff7c6c8e57 util: Flush cursor state to stdout before removing signal handler
It's possible that the cursor does not reappear after pressing ^C during
shutdown. In my case, I noticed this when pressing ^C after getting
results from `pacman -F` -- this can reasonably reliably be triggered by
issuing a file query and pressing ^C shortly after results are shown.

There are two reasons for this issue:

1. The graceful SIGINT handler is removed at the start of cleanup(), but
   the window from entering cleanup() to reaching exit() is non trivial.
   The main offender is FREELIST(pm_targets), which on my T14s takes
   >0.1s to execute. This means that if you are unlucky enough to press
   ^C while there, the cursor isn't coming back, because we haven't
   issued any command to show the cursor again yet, and the userspace
   signal handler is already blown away.
2. Moving console_cursor_show() to earlier in cleanup() only half solves
   the issue. While it's fine not to flush after _hiding_ the cursor,
   since it will at least make itself apparent before any other text
   reaches the screen, _showing_ the cursor must be followed by flushing
   stdout, because once the graceful SIGINT handler is gone, if you
   press ^C, no flush will be triggered (and thus there will be no
   cursor).

This fixes the issue by always starting out by showing the cursor again
at cleanup() time. This means that no matter where we get caught at ^C,
we will not end up leaving the terminal without its beloved ensign.

Signed-off-by: Chris Down <chris@chrisdown.name>
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-07-22 10:20:55 +10:00
Chris Down
015eb31c3a dload: Remove unused ABORT_SIGINT
The last user of ABORT_SIGINT was removed in commit 84723cab5d
("Cleanup the old sequential download code"), and this isn't exported as
part of the public API.

Signed-off-by: Chris Down <chris@chrisdown.name>
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-07-21 20:00:44 +10:00
Jelle van der Waa
cb9776a07b util.c: extend --print-format with %C, %D, %M
Extend print-format with checkdepends, depends and makedepends.

Signed-off-by: Jelle van der Waa <jelle@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-07-21 19:58:20 +10:00
Jelle van der Waa
00bc386d5a util.c: extend --print-format with %b for builddate
Signed-off-by: Jelle van der Waa <jelle@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-07-21 19:56:18 +10:00
Allan McRae
7bcc2d9b23 Correctly handle failure in getting build or install dates
alpm_pkg_get_builddate() and alpm_pkg_get_installdate() both return -1 on
error. Correctly handle the error condition in pacman.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-07-21 19:50:10 +10:00
Jelle van der Waa
819a0c2986 util.c: extend --print-format with expac options
Extend --print-format with all expac format strings which can be easily
added without conversions and through a simple C macro.

Signed-off-by: Jelle van der Waa <jelle@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-07-21 19:09:59 +10:00
Andrew Gregory
6dcd4b5383 makepkg: store pkgtype in xdata
Package type is not relevant to alpm or even exposed to front-ends in
any way.

Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
2022-07-21 19:01:45 +10:00
Andrew Gregory
fe028c7f6a query: print extended data when extra info is requested
Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
2022-07-21 19:01:38 +10:00
Andrew Gregory
3405709b46 add extended data field for arbitrary package data
This adds a mechanism for package builders to add arbitrary data to
packages that is not necessarily relevant enough to the package
installation process to gain first-class support in alpm.  Currently
these fields have to be added to parsers with a "not actually used"
comment and can't be retrieved through the API.

Extended data is stored in "name=value" format in the xdata field
(%XDATA% in desc files):

xdata = pkgtype=debug

or

%XDATA%
pkgtype=debug

Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
2022-07-21 19:01:27 +10:00
Allan McRae
2bf67416c1 Fix remaining email list address
One instance was missed in b0a2fd75b2.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-06-25 22:59:20 +10:00
Jean Raby
6daeb37fe8 pacman: silence "info" msg when using --print
This allows for parsing the output of:
    pacman --upgrade --print-format '<format>' pkg.zst

without having to remove info messages from it.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-06-25 22:45:00 +10:00
Morten Linderud
776b7c1e75 debugflags: Ensure we have unique source paths
In some cases packages are built outside of a directory which contains
pkgname-pkgver, this results in source listing in debug packages having
a conflicting path like `/usr/src/debug/build/` which is not ideal.

This patch ensures we always include the pkgbase to ensure the paths are
unique.

Signed-off-by: Morten Linderud <morten@linderud.pw>
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-06-25 10:45:04 +10:00
Levente Polyak
0031cd1e46 doc/BUILDINFO.5: document buildtool and buildtoolver properties
The feature has been introduced in commit a33cdac10b
The buildinfo version has been bumped in commit 0428f6213b

Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
2022-06-25 10:25:36 +10:00
Allan McRae
d1e95c4e54 Gitlab CI: Install glibc-debug valgrind test
Currently our gitlab CI is failing due to valgrind breakage. With
Arch stripping glibc, valgrind now requires debuginfod to be active.
However the gitlab CI system combined without our testsuite does not
retrieve these symbols, even when the appropriate environmental
variable is set.

Work around this by installing the glibc-debug package directly
using a slight kludge...  All blame for this approach is assigned
to foutrelis!

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-06-16 09:00:18 +10:00
Allan McRae
84dc662d65 makepkg: add source signing PGP keys to source package if available
Arch Linux is adding source signing PGP keys to their package source
tree alongside PKGBUILDs in the form keys/pgp/$fingerprint.asc. As the
PGP keyserver infrastructure is a mess, this helps other people validate
sources in a PKGBUILD.

Add the keys to source packages if found alongside the PKGBUILD.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-05-31 20:13:14 +10:00
Allan McRae
fdf04cdac5 doc/PKGBUILD: remove Arch Linux specific advise
The documentation for the license array was specific to Arch Linux.
Remove it and some minor other Arch Linux specific references.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-05-18 22:06:07 +10:00
Allan McRae
18152a211a libmakepkg: Do not "strip" files when the format is not recognised
We use a multi step process during stripping to ensure permissions do
not get changed.  However, if the initial objcopy fails, the subsequent cat
results in a blank file.  Abandon early if objcopy fails.

Fixes FS#74486

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-05-12 09:45:12 +10:00
Jonas Witschel
f5f9e0f4ea makepkg: use bsdtar --no-read-sparse for archive creation if available
bsdtar uses the "pax" TAR archive format by default, which has support for
storing sparse file information in the archive. Unfortunately this is a source
of unreproducibility because the sparse encoding is taken from the file system
and different file systems handle sparse files differently: some file systems
have no support for sparsely encoded files at all, and even file systems with
sparse file support can report different file information for identical files
due to differing implementations.

As a real world example where this happens, consider the Arch Linux package
"brotli-testdata 1.0.9-7", which contains a sparsely encoded all-zeros file
"usr/share/brotli/testdata/zeros". Building this package on a btrfs file system
yields a different package than building it on tmpfs or ext4 solely due to
different sparse file information that gets recorded in the package tarball.

To improve the reproducibility of archives containing sparsely encoded files,
libarchive version 3.6.0 introduces a new --no-read-sparse option. This skips
reading sparse file information from disk entirely and therefore stores files
"expanded" in the archive, which is the only way to make them reliably
reproducible across file systems.

makepkg will use this option if libarchive is recent enough to support it,
which is detected at build time.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-03-11 09:43:59 +10:00
morganamilo
bddfcc3f40 libalpm: add getter for handle on db and pkg
db and pkg store a pointer to the handle for internal use but don't
actually provide a way for a user to get it.

Making this accessible is more convenient for front ends and FFI
wrappers.

For example, in other languages it's common to return the error value
directly. To achieve this the python and rust wrappers also store their
own pointer to the handle inside their own pkg/db wrappers.

Exposing this would allow the wrappers to forgo the extra pointer and
just return `pkg.get_handle().last_error()`.
2022-03-08 09:56:53 +10:00
Andrew Gregory
221905b5ae query: allow querying extra info for package files
Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-03-07 20:37:45 +10:00
Andrew Gregory
293762ea8b query: only strip leading local/ for db packages
Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-03-07 20:37:01 +10:00
Allan McRae
40583ebe89 Avoid information leakage with badly formed download header
Parsing of Content-Disposition relies on well formed headers.
A malformed header such as:

Content-Disposition="";

will result in a strnduppayload->content_disp_name, -1, ptr),
which will copy memory until it hits a \0.

Prevent this by only copying the value if it exists.

Fixes FS#73704.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-03-06 21:49:56 +10:00
Allan McRae
632eb9739d Do not use WKD to import keys for package installs from a file
In order to use WKD in pacman -U/--upgrade operations, we need to
get the packager information from the .PKGINFO within the package.
That has obvious security implications. e.g. something like this
could convince a user to download a different key to what they
expect:

packager = foo bar <>^[[2K^[[0G:: Import PGP key DEADBEEF, "foo <bar>

While downloading an untrusted key has little impact due to the
web-of-trust model used by pacman, this could be bad in combination
with an exploit that allowed trust of keys in the keyring to be
altered.

To be safe, do not use WKD when installing using -U.

Fixes FS#73703.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-03-06 21:25:30 +10:00
Allan McRae
6b37d99431 Fix segfault when failing to import keys
Avoid a segfault when a search of the keyserver returns that the
key is found but returns no primary IDs.  We are then likely going
to fail the import, but attempt anyway because no-one know what
a keyserver will do!

Fixes FS#73534.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-03-06 20:36:59 +10:00
Allan McRae
e1246baddd Ensure WKD key lookup returns the correct key
Looking up a key using WKD just ensures you have a key with the
same email address, it does not ensure that a key with the correct
fingerprint has been downloaded.

Check a key with the relevant fingerprint is available after a
WKD import.
2022-03-06 19:57:09 +10:00
morganamilo
7340fb9b2e libalpm: mark filelist_contains as taking a const filelist
This is useful for bindings as it guarantees the value will not be
changed.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-03-06 17:32:23 +10:00
Allan McRae
7ba2c276db Fix typo/omission in man pages
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-03-06 17:25:42 +10:00
Allan McRae
c89f42f17b meson: do not use meson.source_root() and meson.build_root()
Using meson.source_root() and meson.build_root() are deprectated in
meson-0.56.  Using current_source_dir() or current_build_dir() (which
have been available in all Meson versions) would require manually
adding "../" in some places.  Instead, use project_source_root() and
project_build_root() and require meson-0.56.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-03-06 16:26:34 +10:00
Allan McRae
3a39eff15e meson.build: change ExternalProgram.path to full_path
Removes "Future-deprecated features used", but reuires meson-0.55

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-03-06 15:55:17 +10:00
Allan McRae
6cdb2030c6 Update Doxygen configuration to silence warnings
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-03-06 15:32:34 +10:00
Allan McRae
ad918bcb75 Remove reference to internal type in docs
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-03-06 15:32:27 +10:00
Allan McRae
569bcd9d26 Add missing parameter names to silence doxygen
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-03-06 15:24:19 +10:00
Allan McRae
5bbda937f1 Silence meson warning about extract_all_objects
Upstream is changing the default from false to true.  This makes
no difference to us, so just set as the future default.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-03-06 15:07:57 +10:00
Allan McRae
0a792843f9 Silence meson run_command warning
Upsteam is warning about future change in the run_command check
argument. Ref: https://github.com/mesonbuild/meson/issues/9300

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-03-06 14:53:42 +10:00
Evangelos Foutras
e1ce2351f5 Make link time optimization flags configurable
We want to use -flto=auto in Arch Linux to speed up building, but we
can't hardcode it in buildenv/lto.sh because other downstreams might
have clang < 13.0.0 which did not recognize -flto=auto as equivalent
to -flto=full.

Introducing an LTOFLAGS variable to makepkg.conf seems the way to go.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-03-06 14:45:36 +10:00
Allan McRae
49b08fa9d1 libmakepkg/autodep: fix module name
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-01-13 13:45:42 +10:00
Morten Linderud
241c29f0cc makepkg: Implement pkgtype in .PKGINFO
This implements pkgtype into .PKGINFO. This is useful to ensure tools
parsing packages do not miss important context on the creation of the
package.

For instance discovering if a given .pkg.tar is a debug package, one
would have to do heuristics on the pkgdesc and "${pkgbase}-debug".
However both of these values are controlled by the packager.

Similarly, the heuristic for discovering split packages is if pkgbase
and pkgname differ, which can happen in any package as both values are
packager controlled.

This should ensure we don't need to rely on heuristics and instead
include the context of how the package was created.

Signed-off-by: Morten Linderud <morten@linderud.pw>
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-01-09 14:03:16 +10:00
Morten Linderud
ae2f506ddf strip: Use debugedit instead of AWK to parse source files
This moves us from the fairly ugly AWK parsing line to debugedit which
originally comes out of the rpm project.

The original code has issues parsing anything that was not straight
C/C++ and languages like Rust or Go would return invalid source code
files. debugedit handles all these cases better.

Fixes FS#66755
Fixes FS#66888
Fixes FS#65677

Signed-off-by: Morten Linderud <morten@linderud.pw>
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-01-09 13:58:12 +10:00
Allan McRae
42fe4864a0 libmakepkg: add extra buildflags only when buildflags is not disabled
This means options=('!buildflags') will disable the addition of CFLAG
etc for LTO and debug building.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-01-09 12:45:58 +10:00
Jonathan Sköld
a8d9fb8d9c Print the target arch when using the %a format specifier
Adds the %a format specifier to allow printing of a target's arch
when using --print-format.

Signed-off-by: Jonathan Sköld <arch@skold.dev>
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-01-02 21:39:10 +10:00
Sefa Eyeoglu
446972b404 pacman: simplify chomp mouth logic
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-01-02 20:57:42 +10:00
Sefa Eyeoglu
e654aa8ac6 pacman: support multiple chomps at the same time
When two progressbars are present, one of them always had c while the
other always had C as the mouth

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-01-02 20:55:11 +10:00
Morten Linderud
2fe1ba5d81 makepkg: Use pkgbase in pkgdesc for debug packages
When trying to identify debug packages among other packages we
discovered that it's pkgname used in pkgdesc. Since pkgname can
sometimes be an array when building debug packages for a split package,
this could potentially include a pkgname that might not make sense
depending on the order of the array.

This patch simply uses pkgbase as it seems more correct.

Signed-off-by: Morten Linderud <morten@linderud.pw>
Signed-off-by: Allan McRae <allan@archlinux.org>
2022-01-02 18:15:11 +10:00
Allan McRae
0be1d4e5d0 Remove parsing of long removed files in .PKGINFO
These fields have not existed for many years.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-01-02 18:06:15 +10:00
Xiretza
e37f7d8b6b makepkg: use -ffile-prefix-map instead of -fdebug-prefix-map
>From gcc(1):

-ffile-prefix-map=old=new
	[...] Specifying this option is equivalent to specifying all the
	individual -f*-prefix-map options. This can be used to make reproducible
	builds that are location independent.

Specifically, this additionally enables -fmacro-prefix-map=, which causes
prefix mapping to be applied to expansions of __FILE__ and similar macros.

Without this option, if source files are compiled by passing the
absolute file path to the compiler (as done by e.g. cmake), any
expansions of __FILE__ (e.g. from uses of assert()) will contain
$srcdir.

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-01-02 17:42:43 +10:00
Allan McRae
90df85e9cf Update copyright years
./build-aux/update-copyright 2021 2022

Signed-off-by: Allan McRae <allan@archlinux.org>
2022-01-02 13:34:52 +10:00
Oskar Roesler (bionade24) via pacman-dev
9f23654722 pacman: print additional error information to stderr
Prints extra information provided by file conflict or corrupt package messages
to stderr instead of stdout

Signed-off-by: Oskar Roesler (bionade24) <o.roesler@oscloud.info>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-12-29 17:53:51 +10:00
morganamilo
58c81fa213 alpm: return -1 for error in find_dl_candidates
This is the error value generally used and the calling function
explicitly checks for -1, later causing the error to be missed
and the transaction to continue.

> pacman -S xterm
warning: xterm-369-1 is up to date -- reinstalling
resolving dependencies...
looking for conflicting packages...

Package (1)  Old Version  New Version  Net Change  Download Size

extra/xterm  369-1        369-1          0.00 MiB       0.42 MiB

Total Download Size:   0.42 MiB
Total Installed Size:  1.05 MiB
Net Upgrade Size:      0.00 MiB

:: Proceed with installation? [Y/n]
error: no servers configured for repository: extra
(1/1) checking keys in keyring                                                                 [--------------------------------------------------------] 100%
(1/1) checking package integrity                                                               [--------------------------------------------------------] 100%
error: failed to commit transaction (wrong or NULL argument passed)
Errors occurred, no packages were upgraded.
2021-12-29 16:16:18 +10:00
morganamilo
3a112668b5 pacman: improve backup printing
The current backup printing does not fit in with the rest of the info at
all. Change to be more consistant.

Old:

Backup Files    :
MODIFIED	/etc/pacman.conf
UNMODIFIED	/etc/makepkg.conf

New:

Backup Files    : /etc/pacman.conf [modified]
                  /etc/makepkg.conf [unmodified]

Signed-off-by: morganamilo <morganamilo@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-12-29 15:49:35 +10:00
Allan McRae
9b766badd2 libmakepkg: automatically add library dependencies
Add linked libraries to a packages dependency list. This is the partner
to automatically generated library provides, and thus depends take the
same format. To help with bootstrapping, library dependencies are only
added if the relevant provide exists.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-12-29 15:20:05 +10:00
Allan McRae
b234280083 libmakepkg: automatically add library sonames to provides
When the option "autodeps" is enabled, makepkg will add provides
entries for libraries found in the directories specified in LIB_DIRS
in makepkg.conf.  The entries LIB_DIRS array have the format
"prefix:directory".  For example, the entry "lib:usr/lib" will search
$pkgdir/usr/lib for library sonames and add "lib:libfoo.so.1" to the
provides array.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-12-29 15:20:05 +10:00
Allan McRae
060ab4a289 libmakepkg: add framework for autodeps
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-12-29 15:20:05 +10:00
Allan McRae
354a300cd2 makepkg: remove libdepends and libprovides
This will be replaced by a better system

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-12-29 15:20:05 +10:00
Allan McRae
26ee6ff6ad LTO: Add -flto to LDFLAGS for clang
GCC automatically detects when it is linking LTO objects, but clang does
not.  Add -flto to LDFLAGS to make this work for clang too.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-12-24 17:59:32 +10:00
Allan McRae
3710960090 Fix file permissions 2021-12-12 14:34:53 +10:00
Allan McRae
d21fb58da3 Gitlab CI: add --werror to debug build
Catch build warnings in the CI.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-11-21 09:54:56 -08:00
Allan McRae
5352367022 Prevent translation of curl
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-11-20 12:39:42 -08:00
morganamilo
5287cc7251 alpm: fix wrong access() being used
When removing files we check _alpm_access() to see if we can write
(delete) the file. If not, we check if the file exists because if the
file does not exist then we don't actually need to remove it so there's
no issue.

However the second call uses acess() instead of _alpm_access() which
does not the rootdir into account.
2021-11-20 12:39:22 -08:00
Evangelos Foutras
fed522775d makepkg.conf: Pass -q as the first option to curl
As per curl(1), the -q (--disable) option must be first on the command
line to disable reading the curlrc config file. Without being first it
does not appear to have any effect.

Signed-off-by: Evangelos Foutras <evangelos@foutrelis.com>
2021-11-20 12:38:57 -08:00
morganamilo
b0a2fd75b2 Update mailing list url
change pacman-dev@archlinux.org to pacmandev@lists.archlinux.org

Most of this is copyright notices but this also fixes FS#72129 by
updating the address in docs/index.asciidoc.
2021-11-20 12:38:25 -08:00
Carlo Teubner
806ccd90ed "pacman -Q --changelog": fix writing uninit'd mem
Previously, when printing a package changelog to stdout, we would write
chunks of data that were not necessarily nul-terminated to stdout using
a function (fputs) which requires the input string to be nul-terminated.

On my system, this would result in occasional garbage characters showing
up in the "pacman -Qc" output.

Fix this by never nul-terminating the chunk, and using the fwrite()
function which takes an explicit input size and does not require a
nul-terminated string.

Signed-off-by: Carlo Teubner <carlo@cteubner.net>
2021-11-20 12:36:59 -08:00
Vladimir Panteleev
b242f5f24c libalpm: Log URLs when retrying
Allow finding which mirror was used to fetch a file.

This makes it a bit easier to debug situations in which mirrors serve
bad files with HTTP 200.

Signed-off-by: Vladimir Panteleev <archlinux@cy.md>
2021-11-20 12:36:29 -08:00
Andrew Gregory
529e208f39 remove YouCompleteMe config
Added, seemingly by accident, with meson in
51db84750e

Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
2021-11-20 12:22:06 -08:00
Allan McRae
39c3cbdf56 _alpm_key_import: Initialise fetch_key
Prevents build warning.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-09-05 09:58:18 +10:00
morganamilo
165e492485 pacman: don't run hooks when using --dbonly
--dbonly is meant to only touch the database and not the actual system.
However hooks still run which can leave files in place or run commands
you may not want.

The hooks being run also means `fakeroot pacman -S --dbpath test/ foo --dbonly`
fails because alpm tries to chroot for hooks which requires real root.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-09-04 20:46:57 +10:00
morganamilo
be76f8bf06 libalpm: add ALPM_TRANS_FLAG_NOHOOKS
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-09-04 20:46:47 +10:00
morganamilo
625f3d645b libalpm: don't use alpm_pgpkey_t in import question
When constructing an import question we never really used a proper gpg
key. We just zero initialize the key, set the uid and fingerprint, and
sent that to the front end.

Instead lets just give the import question a uid and fingerprint field.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-09-04 20:43:16 +10:00
morganamilo
e187aa9b48 libalpm: use else when setting fingerprint
The docs [1] say keyid will always be there, so no need to check if it
exists.

[1] https://www.gnupg.org/documentation/manuals/gpgme/Key-objects.html

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-09-04 19:52:23 +10:00
morganamilo
c5c6633dd1 libalpm: rename __foo tyes to _foo
__foo is reserved in c and should not be used.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-09-04 19:52:23 +10:00
morganamilo
2109de613a libalpm: take alpm_trans_t out of the public API
this type is only used internally by alpm

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-09-04 19:52:23 +10:00
Allan McRae
fbb29b5047 repo-add: add --include-sigs option
Pacman now downloads the signature files for all packages when present in a
repository.  That makes distributing signatures within repository databases
redundant and costly.

Do not distribute the package signature files within the repo databases by
default and add an --include-sigs to revert to the old behaviour.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-09-04 19:52:23 +10:00
Allan McRae
0a6fecd072 Release pacman-6.0.1
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-09-04 19:36:22 +10:00
Allan McRae
d5e2c0a551 Update NEWS for pacman-6.0.1 release
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-09-04 19:36:20 +10:00
Allan McRae
70d0b2c4b9 Include az_AZ translation files
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-09-04 18:02:39 +10:00
Allan McRae
4c3c0e06e5 Update translations from Transifex
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-09-04 16:16:20 +10:00
Daan De Meyer
c7e4f45922 pacman-key: Reduce gpg trustdb checks
Every time we modify gpg's state by signing or revoking a key, gpg
marks the trustdb as stale and rechecks it the next time key_is_lsigned()
or key_is_revoked() is called.

Currently, we alternate calls signing of keys and calling key_is_lsigned()
(idem for revoking) which means that for each key we sign (or revoke), gpg
will check the trustdb once.

To avoid checking the trustb so many times, we can simply do all the
key_is_lsigned() and key_is_revoked() checks upfront. Inbetween read
operations the trustdb is not marked stale and inbetween write operations
the trustdb is also not marked stale. This reduces the amount of trustdb
checks from 50 to 1.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-09-04 13:43:26 +10:00
Daan De Meyer
160f5bec8c pacman-key: Add --quiet to a few more gpg invocations
Currently, when running pacman-key --populate, gpg prints the
trustdb check output once for each locally signed and revoked key.
When bootstrapping a new container image, about 50 keys get signed
and revoked which leads to a huge amount of output when running
pacman-key which is repeated 50x.

To avoid overloading the user with gpg output, we add --quiet to the gpg
calls generating the trustdb checking output to silence those calls which
gets rid of the trustdb check output on the terminal.

Signed-off-by: Daan De Meyer <daan.j.demeyer@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-09-04 13:34:58 +10:00
Hugo Osvaldo Barrera
5da4af2b5d Delete the "Other Utilities" section
Signed-off-by: Hugo Osvaldo Barrera <hugo@barrera.io>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-09-04 10:34:00 +10:00
Hugo Osvaldo Barrera
cf923e734b Update broken links pointing to git.archlinux.org
All of these links are broken since the recent move to
gitlab.archlinux.org.

A few projects are, apparently, only available on GitHub, so I've linked
to that source (hopefully that's only temporary).

For git-clone URLs, I've opted for the https URLs since those can be
used by anyone -- whereas the ssh URLs require the user to be registered
on the gitlab instance which is not open to the public yet.

Signed-off-by: Hugo Osvaldo Barrera <hugo@barrera.io>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-09-04 10:34:00 +10:00
Charlie Sale
efb714b31c Order downloads by descending max_size
When downloading in parallel, sort by package size so that the larger
packages are queued first to fully leverage parallelism.
Addresses FS#70172

Signed-off-by: Charlie Sale <softwaresale01@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-09-04 10:34:00 +10:00
morganamilo
f951282bec pactest: add tests for downloading packages from a cdn
Test for downloads that redirect to some sort of cdn where the
redirected url does not relate to the original filename.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-09-04 10:34:00 +10:00
morganamilo
2ec6de96a6 only use effective url for urls containing .db or .pkg
Github and other sites redirect their downloads to a cdn. So the
download http://foo.org/myrepo.db may redirect to something like
https://cdn.foo.org/83749327439.

This then causes pacman to try and download the sig as
https://cdn.foo.org/83749327439.sig which is incorrect. In this case
pacman should append .sig to the original url.

However urls like https://archlinux.org/packages/community/x86_64/0ad/download/
Redirect to the mirror, so .sig has to appended after the redirects and
not before.

So we decide if we should append .sig on the original or effective url
based on if the effective url (minus the query part) has .db or .pkg in it.

Fixes FS#71148

---

v2: move variable decleration to start of block
v3: use dbext instead of db
2021-09-04 10:34:00 +10:00
morganamilo
c0026caab0 libalpm: Give -U downloads a random .part name if needed
archweb's download links all ended in /download. This cause all the temp
files to be named download.part. With parallel downloads this results in
multiple downloads to go to the same temp file and breaks the transaction.

Assign random temporary filenames to downloads from URLs that are either
missing a filename, or if the filename does not contain at least three
hyphens (as a well formed package filename does).

While this approach to determining when to use a temporary filename is
not 100% foolproof, it does keep nice looking download progress bar names
when a proper package filename is given. The only downside of not using
temporary files when provided with a filename  with three or more hyphens
is URLs created specifically to bypass temporary filename usage can not
be downloaded in parallel. We probably do not want to download packages
from such URLs anyway.

Fixes FS#71464

Modified-by: Allan McRae (do not use temporary files for realish URLs)
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-09-04 10:33:51 +10:00
Allan McRae
1c5a56884f libmakepkg: reproducibilty for python packages
Arch Linux has been setting PYTHONHASHSEED=0 to create deterministic
.pyc files.  After a thorough review by the Arch Security Team, setting
this variable was determined not to generated vulnerable .pyc files, as
when the loader loads the .pyc file and unmarshalls it, the internal
runtime will just populate the unordered data structures and use a new
runtime hash for them.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-08-08 22:49:32 +10:00
Allan McRae
fc7986485c Gitlab CI: add bsdtar to Fedora install
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-08-04 23:19:12 +10:00
Eli Schwartz
2d198c1af9 libmakepkg: allow correctly sourcing when $LIBRARY is not set
We usually set this up to default to the build time configured install
location, but a couple of files crept in without this.

Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-08-04 21:59:32 +10:00
Andre Schröder
82aaee1a5c PKGBUILD.5: Fix typo
Signed-off-by: André Schröder <andre.schroedr@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-08-04 19:31:32 +10:00
Allan McRae
a193979cb6 makepkg: fix stripping of relocatable binaries with binutils>=2.37
Binutils commit 93df3340fd5ad32f784214fc125de71811da72ff enabled readelf
to report "Position-Independent Executable" files.  Fix stripping to
account for this change.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-08-04 18:52:08 +10:00
Jonas Witschel
b4383b8d00 doc: use localdate instead of pacman_date to improve reproducibility
pacman_date is set to the current date during build without respecting
SOURCE_DATE_EPOCH. As a result, a build cannot be fully reproduced on a later
date because the date embedded into the man pages does not match.

In contrast, the built-in asciidoc attribute "localdate" respects
SOURCE_DATE_EPOCH and has the desired ISO 8601 format, so simply use that
instead of the custom "pacman_date" attribute.

Fixes: FS#71154

Signed-off-by: Jonas Witschel <diabonas at archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-07-01 11:19:18 +10:00
morganamilo
0147de169a libalpm: always name signatures after original file
If the original download redirects to to a different url then alpm would
try to name the sig file after the url instead of <original_file>.sig.
Instead force this naming scheme regardless of url.

Fixes FS#71274

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-06-24 23:51:11 +10:00
David Passens
5163a319c9 PKGBUILD.5: Add fossil to list of supported VCSs
Since commit 08f4ae70, makepkg supports downloading from fossil.
However, the PKGBUILD man page was only partially updated to reflect
this change.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-06-24 20:48:05 +10:00
morganamilo
542910d684 libalpm: fix double free when importing key
Comit 5151de30 tried to fix leaking memory when importing a key. However
key_search_keyserver() writes to the key passed in, making the original
uid and fingerprint unreachable, causing the new uid and fingerprint to
double free.

Fixes FS#71107

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-06-07 14:14:19 +10:00
morganamilo
238109760d libalpm: call retry events for sig downlods
Around the same time retry events were added, there was a patch to pass
sig download events to the frontend. The retry code was not updated to
account for this.

Signed-off-by: morganamilo <morganamilo@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-06-07 14:14:19 +10:00
morganamilo
2e83a52205 pactest: add test case for servers returning 404 with body
Signed-off-by: morganamilo <morganamilo@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-06-07 14:14:08 +10:00
Allan McRae
3401f9e142 libalpm: prevent download error pages ending up in package files
Some servers respond with error pages (e.g. 404.html) when a package is
not present. These were getting written to packages before moving onto
the next server. Reset the download progress on 400+ error conditions
to avoid this.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-06-03 09:30:10 +10:00
Christian Hesse
6f35ce1570 doc/pacman.conf: ParallelDownloads expects a value
This can not be specified on its own but requires a value.

Signed-off-by: Christian Hesse <mail@eworm.de>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-05-21 09:37:51 +10:00
Allan McRae
75eb3f4cd3 Release 6.0.0
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-05-20 13:35:27 +10:00
Allan McRae
b8dcb4b33c Pull translations from Transifex
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-05-20 12:33:05 +10:00
Eli Schwartz
8d3735d86a update NEWS for 6.0.0 release
Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-05-20 12:24:47 +10:00
Eli Schwartz
739183b8c5 update old NEWS entry with bugtracker ticket reference
Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-05-20 11:35:24 +10:00
morganamilo
b44e82e479 libalpm: remove unused error value
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-05-20 11:34:00 +10:00
Eli Schwartz
e176b8ec19 makepkg: squelch readelf warnings from debug stripping
readelf --debug-dump sometimes reports inscrutable warnings which don't
actually affect our extraction of source filenames. For example:

readelf: Warning: There is a hole [0xd3d - 0xd89] in .debug_loc section.

Now gcc 11 seems to have dramatically increased the number of warnings:

readelf: Warning: Corrupt offset (0x0000008e) in range entry 9
[...]
readelf: Warning: Corrupt offset (0x000010f0) in range entry 250

The resulting debuginfo created by the very same toolchain works fine,
as does the list of source filenames. But the warnings are quite
noisy... send them to /dev/null since they are not actionable in the
context of getting source files

Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-05-19 19:05:34 +10:00
Allan McRae
0e655dd492 Update README for pacman-6.0
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-05-18 21:00:03 +10:00
Allan McRae
7464062ad6 Update maintainers list
Update to relflect the current state of affairs. Add Morgan, drop Dave.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-05-17 20:13:48 +10:00
Allan McRae
58fde86668 Use attribute to declare case statement fallthroughs
Clang does not recognise the comment style notification of expected
case statement fallthrough.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-05-17 20:02:21 +10:00
Allan McRae
17ccc2f9c2 Silence new warning with gcc-11
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-05-17 17:09:18 +10:00
morganamilo
618fa4f675 libalpm: check for duplicate filenames
This partially fixes FS#67850

It fixes the case for -S'ing packages but not -U'ing urls.

pacman -S a/a b/b
resolving dependencies...
error: packages a and b have the same filename: a-1-1-any.pkg.tar.zst
error: failed to prepare transaction (duplicate filename)

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-05-10 07:58:44 +10:00
morganamilo
d6ffa7f561 fix formatting mistake
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-05-10 07:58:25 +10:00
morganamilo
8bf17b29a2 libalpm: fix download rates becoming negative
When a download fails on one mirror a new download is started on the
next mirror. This causes the ammount downloaded to reset, confusing the
rate math and making it display a negative rate.

This is further complicated by the fact that a download may be resumed
from where it is or started over.

To account for this we alert the frontend that the download was
restarted. Pacman then starts the progress bar over.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-05-09 23:28:04 +10:00
morganamilo
4fead44e3c libalpm: clone data on alpm_db_set_servers
Every alpm_option_set function clones the input so lets be more
consistent. Also this fixes servers not being sanatized.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-05-09 22:54:20 +10:00
morganamilo
15be417c17 remove unused variable in meson.build
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-05-09 22:05:33 +10:00
morganamilo
31c42c338b Match initial download message with progress message
When initially downloading a package, pacman will display a message
like:
	wine-6.6-1-x86_64.pkg.tar.zst downloading...

Then when the download progresses the message will change to:
	wine-6.6-1-x86_64.pkg.tar.zst

So instead lets match the progress message so there's no sudden change.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-05-09 22:01:30 +10:00
morganamilo
ef14c3380d libalpm: fix error when installing cached packages without signatures
With a repo using "SigLevel = Optional" and a package already downloaded
into the cache, download_files() returns 1 (via _alpm_download) to indicate
no files were downloaded.  This causes installation of the package to
fail.

Explicitly check that download_files() returns -1 (error) rather than
non-zero.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-05-03 12:49:35 +10:00
Andrew Gregory
72238aa046 call download progress callback for signatures
pacman may not care about them, but other front-ends do.

Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
2021-05-01 12:08:14 +10:00
Andrew Gregory
eb1a63a516 alpm_db_update: indicate if dbs were up to date
Restore the prior indicator whether or not databases were up to date.
0 is used to indicate if *any* db was actually updated as callers are
more likely to care about that than if *all* dbs were updated.

Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
2021-05-01 12:08:14 +10:00
Andrew Gregory
0ff94ae85d fix downloading multiple urls with XferCommand
An extra break causes _alpm_download to break out of the payload loop as
soon as it sees a successful url download with XferCommand.

Fixes: FS#70608 - -U fails to download all files with XferCommand

Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
2021-05-01 12:08:14 +10:00
Andrew Gregory
8faf749fd1 pmserve: allow serving byte objects directly
Useful for serving in-memory package files.

Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
2021-05-01 12:08:14 +10:00
Andrew Gregory
ab622b4881 pmpkg: add makepkg_bytes
Builds the package file in memory.  Useful with the built-in server.

Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
2021-05-01 12:08:14 +10:00
Andrew Gregory
e7fa35baa2 add front-end provided context to callbacks
Our callbacks require front-ends to maintain state in order to provide
reasonable output.  The new download callback in particular requires
much more complex state information to be saved.  Without the ability to
provide context, state must be saved globally, which may not be possible
for all front-ends.  Scripting language bindings in particular have no
way to register per-handle callbacks without some form of context.

Implements: FS#12721

Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
2021-05-01 12:08:14 +10:00
Eli Schwartz
523c393e9e makepkg: document BUILDTOOL and BUILDTOOLVER environmental variables
These were added without documentation in commit
a33cdac10b

Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-05-01 12:08:01 +10:00
Allan McRae
558d08d821 Prepare translations for next release
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-04-23 10:44:27 +10:00
Andrew Gregory
15270d4a34 update NEWS for 5.2.2
Signed-off-by: Andrew Gregory <andrew@archlinux.org>
2021-04-23 10:27:36 +10:00
Eli Schwartz
8fe5520709 meson: make our symlinking script more portable
We do not need the --relative case as it is dead code (we only ever link
a filename without directory components).

For the rest, GNU-specific ln -T does two things:

- if the link name is an existing directory, ln fails instead of
  creating a surprising link inside the directory
- if the link name is a symlink to a directory, ln treats it as a file,
  and due to -f, unlinks it

The second case can be portably solved by ln -n, and both cases can be
solved by doing what the original autotools Makefile did: rm -f && ln -s

If the file exists, it will be removed. If it cannot be removed, it must
be an ordinary directory, and the script aborts with an error.

Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-04-23 09:48:08 +10:00
morganamilo
079b9d44e2 Only enable total progress when downloads > 1
Otherwise the total progress will just match the one package and be
pretty useless.
2021-04-23 09:45:27 +10:00
morganamilo
41f9c50abf Always enable TotalDownload
Previously TotalDownload would switch the % download from per package to
overall. Meaning you had a choice of which information to dispplay.

Now with parallel downloads TotalDownload adds an extra progress bar.
There's no reason to have this an off by default feature. Let's just
make it always on.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-04-23 09:43:30 +10:00
morganamilo
63ad8b8b76 pacman: fix total bar leaking
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-04-23 09:40:38 +10:00
Levente Polyak
a33cdac10b makepkg: add tool details to buildinfo to aid determining flags
If a makepkg consumer uses a build wrapper to override compiler
flags this may lead to unreproducible packages as there is no way to
know which exact files were used for tooling that tries to reproduce
said package.

Instead of vendoring the whole used makepkg.conf file into buildinfo,
this patch adds two new properties to the .BUILDINFO file named
BUILDTOOL and BUILDTOOLVER which by default are simply makepkg's own
values. Downstream consumers may override those values: For example in
Arch Linux the devtools package can set those values and allow
reproducible builds tooling to fetch the appropriate makepkg.conf.

Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-04-23 09:07:40 +10:00
Dan McGee
3179db108a Add support for multiple 'Architecture' values
This allows architecture to be multivalued. On x86-64 machines, this
could be something like:
    Architecture = x86-64-v3 x86-64

We use the first specified Architecture value in mirrorlist $arch
variable replacement, as this is backwards-compatible and sane.

Original-patch-by: Dan McGee <dan@archlinux.org>
Patch-updated-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-04-22 00:15:21 +10:00
morganamilo
abdb4d7fa6 pacman: stop eta timer breaking allignment
When the download estimate is over an hour the format displayed changes
from mm:ss to hh:mm:ss. This causes everything to be out of alignment
due to the extra characters.

So instead lets just go back to --:-- when the download => 100 minutes.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-04-19 23:53:42 +10:00
Eli Schwartz
0699321b3c meson: make -uninstalled.pc correct
This pkg-config file is automatically created in the meson-uninstalled/
directory of the build tree, and points to the built artifacts there. If
this directory is added to PKG_CONFIG_PATH, it will be preferred over an
installed copy.

Making this work properly means it becomes trivially possible to build a
private copy of libalpm, and then compile other projects using it rather
than the system copy.

Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-04-19 17:51:44 +10:00
Mark Weiman
288cd1c74a Fix build error when SIGPOLL is not available
On Linux, SIGPOLL is a valid signal, but on systems like FreeBSD, it is
not. This patch does a preprocessor check to see if SIGPOLL is available
or not.

Signed-off-by: Mark Weiman <mark.weiman@markzz.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-04-19 17:29:24 +10:00
Mark Weiman
3688c947f8 Add an include for signal.h when needed
On Linux, signal.h is not required to have access to the signal
constants. On FreeBSD, this is not the case and requires signal.h to be
explicitly included.

This patch adds an include for signal.h in any source file that uses it.

Signed-off-by: Mark Weiman <mark.weiman@markzz.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-04-19 17:11:47 +10:00
Mark Weiman
207f0439ee meson.build: Fix detection of symbols
This patch changes the behavior of meson to define configuration options
*only* when the symbol checked is present. Currently, it defines all of
them in config.h whether the symbol exists or not and the code that
looks for it doesn't check the macro's value, but whether it's defined.

Signed-off-by: Mark Weiman <mark.weiman@markzz.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-04-19 17:08:40 +10:00
Jelle van der Waa
c294b7cb4c Update urls to not use www. for archlinux.org
www.archlinux.org now redirects to archlinux.org.

Signed-off-by: Jelle van der Waa <jelle@vdwaa.nl>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-04-08 10:14:33 +10:00
Jelle van der Waa
f09047f0b0 test: update mailing list url
The Arch Linux mailing lists are these days served from the lists
subdomain.

Signed-off-by: Jelle van der Waa <jelle@vdwaa.nl>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-04-08 10:14:30 +10:00
Eli Schwartz
2535611d6c makepkg: add PACMAN_AUTH configurable setting for sudo elevation
If specified, this will be used no matter what. If not, then we check if
sudo exists and use that, or else fall back on su.

Implements FS#32621

Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-04-07 22:41:54 +10:00
Eli Schwartz
d6f8659443 ensure tests are parsed as TAP since they are, in fact, TAP
Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-04-07 22:38:52 +10:00
Eli Schwartz
8aa2a48fc3 makepkg: fix the use of spaces in the localname:: component of sources
Broken via refactoring in commit aa6fe1160b
but for obvious reasons only one person in the last 9 years has ever
actually tried to do this. Still, it's technically correct to allow it.

Fixes FS#70254

Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-04-07 22:38:34 +10:00
Andrew Gregory
9060058393 include retries and signatures in download count
Fixes: FS#69881

Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-04-07 22:34:29 +10:00
Andrew Gregory
4bf7aa119d skip servers with too many errors
Keep track of errors from servers so that bad ones can be skipped once
a threshold is reached.  Key the error tracking off the hostname because
hosts may serve multiple repos under different url's and errors are
likely to be host-wide.

Implements: FS#29293.

Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-04-07 22:33:52 +10:00
Allan McRae
bdf6aa3fb7 libmakepkg: fix detection of source file names for debug packages
The current gcc build from git master give different output from
readelf:

gcc-10.2.0
$ readelf "hello" --debug-dump | grep hello
<11> DW_AT_name : (indirect string, offset: 0xbfc): hello.cpp

gcc-git
$ readelf "hello" --debug-dump | grep hello
<12> DW_AT_name : (indirect line string, offset: 0x0): hello.cpp

This causes the awk statement extracting the file name to fail as it
relied on the information being in the 8th field. Instead, extract
the information from the final field.

Fixes FS#70168

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-03-27 09:22:15 +10:00
Anatol Pomozov
1e60a5f006 Remove "total download" callback in favor of generic event callback
Total download callback called right before packages start downloaded.
But we already have an event for such event (ALPM_EVENT_PKG_RETRIEVE_START)
and it is naturally to use the event to pass information about expected
download size.

Signed-off-by: Anatol Pomozov <anatol.pomozov@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-03-25 11:39:03 +10:00
Eli Schwartz
9bf3d6a760 remove sed command lookup and hardcoding in edit-script.sh
We should not need to hardcode the path to sed as we simply don't care.
We don't check what kind of sed we found, and we're using the same one
we initially found on the PATH, which is surely still on the PATH.

At one point we did care to find the system copy of sed and hardcode it
in makepkg, because we also passed non-portable -i options to it and
makepkg needed to continue working on macOS even if some incompatible
GNU sed got installed afterward, elsewhere on the PATH. But this was
never relevant to the in-tree buildsystem script running sed.

In commit 3a814ee6bc we removed even that,
so we don't need to look it up at all.

Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-03-25 11:38:58 +10:00
Eli Schwartz
ede73f4d89 fix syntax error when running pacman-key --help
In commit 0f75ab3224 some unbalanced
quotes were added by the committer while editing an error message.

Fixes FS#69865

Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-03-06 12:01:26 +10:00
Allan McRae
c118a61f62 Strip LTO symbols from distributed .a/.o files
GCC's LTO implementation emits bytecodes into .o files it generates.
These bytecodes are _not_ considered stable from one release of GCC
to the next. There we need to strip the LTO bytecode out of any .o
(and .a) file that gets installed into the package.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-03-03 14:35:52 +10:00
Allan McRae
4a0891f49d Add link time optimization support to makepkg
Add the 'lto' option to enable building with link time optimization
by adding '-flto' to both CFLAGS and CXXFLAGS.  The 'lto' option can
be specificed both in the PKGBUILD or by setting the default in
makepkg.conf.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-03-03 14:35:45 +10:00
Allan McRae
17f9911ffc Update copyright year
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-03-01 12:22:20 +10:00
Morten Linderud
0f75ab3224 pacman-key: --refresh-keys queries WKD before keyserver
With the recent outages of the keyservers there is a possibility of
`--refresh-keys` failing to fetch new keys. A lot of current key
distribution is done over WKD these days, and `pacman-key` has the
ability to use it for `--recv-key`.

There was a hope `gpg` would end up supporting WKD for the refresh
functionality, but this seems to be limited to expired keys fetched
through WKD. Since this functionality isn't yet available it makes sense
to stuff it into `pacman-key`.

The current implementation looks over all available keyids in the
keyring, attempts to fetch over WKD and then fall backs to keyservers if
no email has a valid WKD available. The downside of this approach is
that it takes a bit longer to refresh the keys, but it should be more
robust as the distribution should be providing their own WKDs.

Co-authored-by: Jonas Witschel <diabonas@archlinux.org>
Signed-off-by: Morten Linderud <morten@linderud.pw>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-02-24 23:05:48 +10:00
Morten Linderud
7587153a44 libmakepkg: Support zstd decompression for sources
This enables us to extract files in the source array and ensures that we
can decompress files if the uncompressed signature is served.

Signed-off-by: Morten Linderud <morten@linderud.pw>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-02-24 22:51:14 +10:00
Emil Velikov
17d3da4777 Revert "ci: cache packages"
This reverts commit e348ba3881.

With the above commit we started caching the downloaded packages. Based
on some testing and, it saves ~30s in the "step_script" stage while
adding 18s for "Restoring/Saving cache". A net saving of ~10s.

With earlier commit, we no longer use an ancient image which also pulls
base-devel - thus the packages we have to download is minimal.

Now comparing the uncached "step_script", vs the cached one - it is
slowed by 2-3 seconds (1:01 -> 1:03), while we eliminate the 18s (and
growing) caching.

Tl:Dr: With up-to date image, package caching in not worth it - be that
time, disk or network wise.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-02-08 14:28:34 +10:00
Emil Velikov
cc1d23d333 ci: use official image
The archlinux/base have been deprecated. Since we depend on base-devel
simply use archlinux:base-devel

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-02-08 14:25:53 +10:00
Matti Niemenmaa
9e425cd1ea makepkg: Don't double-layer distcc on ccache
buildenv is set once for build() and a second time for package(). When
using both distcc and ccache, this lead to CCACHE_PREFIX="distcc distcc"
in package(), which breaks PKGBUILDs that execute the compiler in
package() because distcc complains:

    distcc[383041] (main) CRITICAL! distcc seems to have invoked itself
    recursively!

Avoid causing this error by only adding "distcc" to CCACHE_PREFIX if
it's not yet there.

Signed-off-by: Matti Niemenmaa <matti.niemenmaa+git@iki.fi>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-02-08 14:24:49 +10:00
Eli Schwartz
2b8d00b799 doxygen: fix missing parameter name
This was raising a warning during the build.

Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-02-08 14:24:18 +10:00
Eli Schwartz
3a23abb2ec support xattr when extracting packages
This permits storing the result of setcap during package() and applying
the resulting capabilities to the installed program. Formerly, it was
necessary to edit the binary after the fact (and thus dirty the file
according to -Qkk) by using an install scriptlet.

One problem that needs to be solved before this is useful, is preventing
the strip routine from destroying xattrs. This is taken care of in the
previous patch.

Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-02-08 14:23:45 +10:00
Eli Schwartz
88d054093c makepkg: don't let the strip routine mess up file attributes
It updates the stripped/objcopied file by creating a temp file,
chown/chmodding it, and replacing the original file. But upstream
binutils has CVE-worthy issues with this if running strip as root, and
some recent versions of strip don't play nicely with fakeroot.

Also, this has always destroyed xattrs. :/

Sidestep the issue by telling strip/objcopy to write to a temporary
file, and manually dump the contents of that back into the original
binary. Since the original binary is intact, albeit with different
contents, it retains its correct attributes in fakeroot.

Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-02-08 14:22:55 +10:00
morganamilo
ab549c8467 libalpm: fix total download reporting wrong total
When a package does not need to be downloaded but a signature does,
total download didn't count that towards the total.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-21 17:20:48 +10:00
Andrew Gregory
b40c5553b4 add --upgrade download tests
Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-21 17:19:26 +10:00
Andrew Gregory
b82a975e76 pmtest: add ability to spawn simple http servers
Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-21 17:19:16 +10:00
Andrew Gregory
ad84a572aa pmdb: add option to skip populating file:// server
Populating a file:// Server prevents any manually registered HTTP
servers from ever being used.

Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-21 17:19:01 +10:00
Andrew Gregory
743e041dbc add CACHE_FEXISTS and CACHE_FCONTENTS test rules
The existing CACHE_EXISTS rule takes a package, which is not suitable
for -U tests that need to be able to check for specific files.

Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-21 17:18:37 +10:00
Andrew Gregory
1fdf8c0076 gitlab-ci: print output and logs for failed tests
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-21 17:18:24 +10:00
Andrew Gregory
f9bc6c2b09 pactest.py: read options from PACTEST_OPTS
Makes it easier to pass options when not running pactest directly.

Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-21 17:18:14 +10:00
Andrew Gregory
84f9cb021e pacman: add -w to -U
Mostly for testing.

Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-21 17:18:04 +10:00
Pascal Ernster
05aefb8f82 pacman: correct length of ".files.sig" string
Running "pacman -Sc" deletes /var/lib/pacman/sync/*.files.sig due to a
wrong string length being used when checking filename suffixes in that
directory. In turn, these missing signature files cause both the
corresponding "*.files" files and their signatures being forcibly
re-downloaded again when "pacman -Sy" is executed.

Since official Arch Linux repos don't use signed database files yet, this
only affects people who use custom repos with signed database files, for
which they have set the "SigLevel" directive to "Required" or
"DatabaseRequired" in /etc/pacman.conf.

Fixes FS#66472

Signed-off-by: Pascal Ernster <pacman-dev@hardfalcon.net>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-21 17:17:37 +10:00
Andrew Gregory
1c4e079899 do not try to download an empty db list
Starting the download process, even if there is nothing to actually
download, causes an error when pacman is built without curl and has no
XferCommand defined (like our test suite).

Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-19 12:39:37 +10:00
Andrew Gregory
79227dabe0 make alpm download config accessible without curl
Download-related config options are currently limited to builds with
curl.  This causes compilation errors when those options are used
without an appropriate guard which often goes unnoticed because we all
use curl.  Front-ends providing their own download callback may also
want to use these settings.

Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-19 12:39:10 +10:00
Andrew Gregory
8ed98023b4 sighandler: initialize sigaction fields
Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-19 12:38:57 +10:00
Andrew Gregory
a493170420 fully free error list in check_keyring
Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-19 12:38:34 +10:00
Andrew Gregory
5151de3011 plug memory leaks in _alpm_key_import
Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-19 12:38:02 +10:00
Andrew Gregory
5d21b2d44c pacman-conf: free rootdir before replacing
Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-19 12:37:24 +10:00
Andrew Gregory
4311cc3648 pacman: indicate --overwrite takes a glob
Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-19 12:03:08 +10:00
Morten Linderud
8566cd9be9 pacman-key: Close msg string in generate_master_key
In 19980a61e9 there was a msg added which
didn't get the string closed.

Signed-off-by: Morten Linderud <morten@linderud.pw>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-11 11:11:06 +10:00
Allan McRae
57a75dedb1 mailmap addition
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-11 11:11:06 +10:00
morganamilo
e9cc95f372 Read targets from stdin before chrooting
Operations involving --sysroot and reading targets from stdin were
failing due to attempting to read targets after chrooting.  Move the
chroot to happen after targets are read.

Fixes FS#68630

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-11 11:11:06 +10:00
Emil Velikov
8f7415c41b pacman: add file checksum validation against mtree
With libarchive v3.5.0 we have API to fetch the digest from the mtree.
Use that to validate if the installed files are modified or not.

As always, a modified backup file will trigger a warning but will not
result in an actual failure.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-11 11:11:06 +10:00
Allan McRae
3f5125e47c doc: move missed sections from alpm_ to libalpm_
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-11 11:10:55 +10:00
Allan McRae
4cdbbcfc34 doc: reference all libalpm sections within libalpm man page
Also, fix minor typo.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-09 09:19:50 +10:00
Allan McRae
c1d23c0ff2 doc: rename libalpm-list man page for consistency
All other libalpm man pages are in the form libalpm_<name>.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-09 09:19:03 +10:00
morganamilo
8fda300e06 doc: change group names to libalpm_*
Also change the group's title to point to the group's man page.

This makes generated man pages be named libalpm_* which is more
consistent with what library man pages are usually called.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-09 00:15:18 +10:00
Emil Velikov
45a648961b libalpm: const annotate struct db_operations
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-09 00:15:14 +10:00
Emil Velikov
1d2dd9a128 libalpm: const annotate struct pkg_operations
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-09 00:15:04 +10:00
Allan McRae
f8614d8c5b get_file_pkg_ops: update comment 2021-01-09 00:14:58 +10:00
Emil Velikov
027d76b9f5 libalpm: introduce get_sync_pkg_ops() helper
Currently default_pkg_ops is accessed in two different ways.

There is get_file_pkg_ops (in be_package.c) creating a local once-off
'tweaked' copy. As well as load_pkg_for_entry (be_sync.c) which modifies
in-place and uses default_pkg_ops.

This seems rather misleading and fragile approach. Introduce a helper
for the second use-case so that default_pkg_ops is handled consistently
and essentially remains unchanged throughout.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-09 00:14:56 +10:00
morganamilo
4472ce55d7 pacman: total download show how many packages have been download
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-09 00:14:52 +10:00
Emil Velikov
b9ab7790d5 Remove unused SYMHIDDEN macros
The macro hasn't been used since 2007 with commit
7f7da2b5fc. Although it was still copied
over into alpm_list.c an year or so later with commit ca1a1871 ("More
cleanup to alpm_list")

Just remove all instances of it.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-09 00:14:50 +10:00
Emil Velikov
67a42b9549 meson: use hidden symbol visiblity by default
All the required public API is annotated with SYMEXPORT, so we can just
add the meson notation, to hide all the symbols by default.

Thus we no longer spill all the internal API into the global namespace.

This is effectively a regression from the autotools build, which used
hidden and internal for DARWIN and others respectively.

The use of hidden is considered sufficient, considering:
 - internal was introduced with commit 920b0d20 ("Update usage of gcc
   __attribute__ flags"), referencing the GCC manual and potential
   optimisations, although
 - the details about the optimisations or respective benefits are close
   to non-existent,
 - the code/data size of the binaries is identical across hidden and
   internal. While the latter produces slightly larger overall binaries.
 - Internal is not widely supported - missing on Darwin, the CMake build
   system lacks a wrapper (unlike for hidden)
 - Internal is not widely used in projects.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-09 00:14:42 +10:00
Emil Velikov
d53ba019f5 meson: pacman-conf add missing libcommon link
Currently, we are erroneously exporting all the symbols via the
libalpm.so. As such, the libcommon dependency is resolved.

The libalpm.so exports are about to be resolved shortly, yet that
exposed that pacman-conf is missing a link against libcommon.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-09 00:14:33 +10:00
morganamilo
793e2097a6 libalpm: pass the number of packages being downloaded in totaldlcb
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-09 00:12:32 +10:00
morganamilo
f5b373788f libalpm: don't use curl's deprecated functions
This bumps the minimun curl version from 7.32.0 to 7.55.0.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-09 00:12:19 +10:00
morganamilo
bc1591a0b8 pacman: clean filename for downlaods
The progress bar already did this. But the init event and up to date
message printed the full file name.  Unify these for consistency.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-09 00:12:08 +10:00
morganamilo
7cc8e0181f libalpm: remove useless if
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-09 00:11:44 +10:00
morganamilo
8e291e6f4b doc: fix typos
Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-03 11:24:24 +10:00
Allan McRae
19980a61e9 pacman-key: warn about time taken for master key generation
Generating the pacman master key can take some time on systems
without enough entropy. Warn the user that the generation may
take some time.

Fixes FS#30286.

Signed-off-by: Allan McRae <allan@archlinux.org>
2021-01-03 11:19:21 +10:00
Eli Schwartz
a023565ed3 doc: make doxygen build from any directory
In the autotools build, it only built in-tree, from cwd = doc/ and
resolving doc/../lib/libalpm

In the meson build, this accidentally worked if cwd =
pacman/builddir/ and resolved to builddir/../lib/libalpm/

But... this should always have been configured with the actual path to
the inputs. So, we will now proceed to do so.

Fixes building man3 if your out of tree builddir doesn't happen to be a
direct subdirectory of the source root.

Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-29 13:15:40 +10:00
Emil Velikov
ccdd1e3fd9 Move hex_representation() to src/common
We'll reuse the function in pacman with a later commit.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-29 12:38:23 +10:00
Emil Velikov
831fc568fc Remove pre libarchive 3.0 code
Pacman has required libarchive 3.0 or later for quite some time mow.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-29 12:37:45 +10:00
morganamilo
95ffdd68b2 doc: remove old libalpm man file
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-21 12:03:51 +10:00
morganamilo
e67c306f91 doc: add extra documentation to the man page
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-21 12:01:58 +10:00
morganamilo
ea975c328d doc: rename alpm_api group to alpm
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-21 12:01:58 +10:00
morganamilo
50c9c338fb doc: update doxyfile
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-21 12:01:58 +10:00
morganamilo
6ed82820fe doc: configure doxygen
- only document public alpm items (alpm_*)
- hide typedef'd structs (_alpm_pkg_t shows as alpm_pkg_t)
- enable inline struct definitions (this stops having a man page for
  every single struct)

Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-21 12:01:58 +10:00
morganamilo
1e8816f13d doc: move top level items into groups
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-21 12:01:58 +10:00
morganamilo
2a16434bfd doc: move alpm_api group to top of file
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-21 12:01:58 +10:00
morganamilo
4613527738 doc: document options
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-21 12:01:58 +10:00
morganamilo
7b06b5407b doc: document alpm_list
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-21 12:01:57 +10:00
morganamilo
50d2171ef0 doc: document misc
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-21 11:55:46 +10:00
morganamilo
a321e1f8a5 doc: document transactions
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-21 11:55:46 +10:00
morganamilo
3d60a829e1 doc: document files and groups
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-21 11:55:45 +10:00
morganamilo
5901ac9cb2 doc: document packages
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-21 11:55:45 +10:00
morganamilo
af7a1e834f doc: document logging
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-21 11:55:45 +10:00
morganamilo
55efa43f23 doc: document databases
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-21 11:55:45 +10:00
morganamilo
e9ac13776e doc: document callbacks
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-21 11:55:45 +10:00
morganamilo
bf26b6bbf7 doc: document depends
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-21 11:55:44 +10:00
morganamilo
5e9635317b doc: document signatures
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-21 11:51:07 +10:00
morganamilo
ab431f6810 doc: document handle
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-21 11:51:07 +10:00
morganamilo
49e33aad7c doc: document error
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-21 11:51:06 +10:00
morganamilo
48c8869339 doc: add doc header to alpm.h
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-21 11:49:33 +10:00
morganamilo
48865e7dac doc: remove stray doxygen comment
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-21 11:33:42 +10:00
Anatol Pomozov
11e09a23be Implement TotalDownload functionality
With the recent 'multibar' interface changes TotalDownload has been disabled.
Now we have a new UI and we need to find another way to display this
information.

When 'TotalDownload' config option is enabled we are going to have an extra
progress bar at the bottom of the screen that shows how much of the entire
download has been completed.

Closes FS#68202

Signed-off-by: Anatol Pomozov <anatol.pomozov@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
2020-12-09 10:28:10 +10:00
383 changed files with 46815 additions and 34828 deletions

View File

@@ -1,20 +1,17 @@
variables:
MAKEFLAGS: "-j10"
VERBOSE: 1
PACMAN_OPTS: --needed --noconfirm --cachedir .pkg-cache
cache:
key: pkgs-v1
paths:
# For some reason Gitlab CI only supports storing cache/artifacts in a path relative to the build directory
- .pkg-cache
default:
after_script:
- build-aux/print-failed-test-output build/meson-logs/testlog.json
.arch-test:
image: archlinux/base
image: archlinux:base-devel
before_script:
- >
pacman -Syu $PACMAN_OPTS
base-devel git
pacman -Syu --needed --noconfirm
git
gpgme libarchive curl
python
fakeroot fakechroot
@@ -23,29 +20,29 @@ cache:
arch:
extends: .arch-test
script:
- meson build
- meson setup build
- ninja -C build
- fakechroot meson test -C build
arch-debug:
extends: .arch-test
script:
- meson --buildtype=debug build
- meson setup --buildtype=debug --werror build
- ninja -C build
- fakechroot meson test -C build
arch-docs:
extends: .arch-test
script:
- pacman -Syu $PACMAN_OPTS asciidoc
- meson -Ddoc=enabled build
- pacman -Syu --needed --noconfirm asciidoc
- meson setup -Ddoc=enabled build
- ninja -C build
arch-clang:
extends: .arch-test
script:
- pacman -Syu $PACMAN_OPTS clang
- CC=clang meson build
- pacman -Syu --needed --noconfirm clang
- CC=clang meson setup build
- ninja -C build
- fakechroot meson test -C build
@@ -53,41 +50,41 @@ arch-valgrind:
extends: .arch-test
script:
- pacman -Syu --needed --noconfirm valgrind
- meson build
- pacman -U --noconfirm https://geo.mirror.pkgbuild.com/core-debug/os/x86_64/glibc-debug-$(pacman -S --print-format %v glibc)-x86_64.pkg.tar.zst
- meson setup build
- ninja -C build
- PACTEST_VALGRIND=1 fakechroot meson test -C build
arch-nettle:
extends: .arch-test
script:
- meson -Dcrypto=nettle --buildtype=debug build
- meson setup -Dcrypto=nettle --buildtype=debug build
- ninja -C build
- fakechroot meson test -C build
arch-no-gpg:
extends: .arch-test
script:
- meson -Dgpgme=disabled --buildtype=debug build
- meson setup -Dgpgme=disabled --buildtype=debug build
- ninja -C build
- fakechroot meson test -C build
arch-no-curl:
extends: .arch-test
script:
- meson -Dcurl=disabled --buildtype=debug build
- meson setup -Dcurl=disabled --buildtype=debug build
- ninja -C build
- fakechroot meson test -C build
arch-no-nls:
extends: .arch-test
script:
- meson -Di18n=false --buildtype=debug build
- meson setup -Di18n=false --buildtype=debug build
- ninja -C build
- fakechroot meson test -C build
debian:
image: debian:bullseye
cache: {}
before_script:
- apt update
- >
@@ -97,23 +94,22 @@ debian:
gettext python3 python3-setuptools dash gawk ca-certificates
fakeroot fakechroot
script:
- meson --buildtype=debug build
- meson setup --buildtype=debug build
- ninja -C build
- fakechroot meson test -C build
fedora:
image: fedora
cache: {}
before_script:
- >
dnf -y install
git findutils patch sed
meson gcc libtool
meson gcc libtool bsdtar
gpgme-devel libarchive-devel libcurl-devel openssl-devel gettext-devel
asciidoc python3 dash gawk
fakeroot fakechroot
perl-Module-Load-Conditional
script:
- meson --buildtype=debug build
- meson setup --buildtype=debug build
- ninja -C build
- fakechroot meson test -C build

View File

@@ -20,6 +20,7 @@ Juan Pablo González Tognarelli <lord_jotape@yahoo.com.ar> <jotapesan@gmail.com>
Manuel Tortosa <manutortosa@chakra-project.org> <manutortosa@gmail.com>
Marc - A. Dahlhaus <mad@wol.de>
Matthias Gorissen <matthias@archlinux.de> <siquame@web.de>
morganamilo <morganamilo@archlinux.org> <morganamilo@gmail.com>
Laszlo Papp <djszapi@archlinux.us> <djszapi2@gmail.com>
Nagy Gabor <ngaba@bibl.u-szeged.hu> <ngaba@petra.hos.u-szeged.hu>
Nagy Gabor <ngaba@bibl.u-szeged.hu> <ngaba at bibl.u-szeged.hu>

View File

@@ -1,17 +1,17 @@
[main]
host = https://www.transifex.com
[archlinux-pacman.libalpm-pot]
[o:toofishes:p:archlinux-pacman:r:libalpm-pot]
file_filter = lib/libalpm/po/<lang>.po
source_file = lib/libalpm/po/libalpm.pot
source_lang = en
[archlinux-pacman.pacman-pot]
[o:toofishes:p:archlinux-pacman:r:pacman-pot]
file_filter = src/pacman/po/<lang>.po
source_file = src/pacman/po/pacman.pot
source_lang = en
[archlinux-pacman.pacman-scripts-pot]
[o:toofishes:p:archlinux-pacman:r:pacman-scripts-pot]
file_filter = scripts/po/<lang>.po
source_file = scripts/po/pacman-scripts.pot
source_lang = en

View File

@@ -1,250 +0,0 @@
#!/usr/bin/env python
# SPDX-License-Identifier: Unlicense
#
# Based on the template file provided by the 'YCM-Generator' project authored by
# Reuben D'Netto.
# Jiahui Xie has re-reformatted and expanded the original script in accordance
# to the requirements of the PEP 8 style guide and 'systemd' project,
# respectively.
#
# The original license is preserved as it is.
#
#
# This is free and unencumbered software released into the public domain.
#
# Anyone is free to copy, modify, publish, use, compile, sell, or
# distribute this software, either in source code form or as a compiled
# binary, for any purpose, commercial or non-commercial, and by any
# means.
#
# In jurisdictions that recognize copyright laws, the author or authors
# of this software dedicate any and all copyright interest in the
# software to the public domain. We make this dedication for the benefit
# of the public at large and to the detriment of our heirs and
# successors. We intend this dedication to be an overt act of
# relinquishment in perpetuity of all present and future rights to this
# software under copyright law.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
# IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
# OTHER DEALINGS IN THE SOFTWARE.
#
# For more information, please refer to <http://unlicense.org/>
"""
YouCompleteMe configuration file tailored to support the 'meson' build system
used by the 'systemd' project.
"""
import glob
import os
import ycm_core
SOURCE_EXTENSIONS = (".C", ".cpp", ".cxx", ".cc", ".c", ".m", ".mm")
HEADER_EXTENSIONS = (".H", ".h", ".hxx", ".hpp", ".hh")
def DirectoryOfThisScript():
"""
Return the absolute path of the parent directory containing this
script.
"""
return os.path.dirname(os.path.abspath(__file__))
def GuessBuildDirectory():
"""
Guess the build directory using the following heuristics:
1. Returns the current directory of this script plus 'build'
subdirectory in absolute path if this subdirectory exists.
2. Otherwise, probes whether there exists any directory
containing '.ninja_log' file two levels above the current directory;
returns this single directory only if there is one candidate.
"""
result = os.path.join(DirectoryOfThisScript(), "build")
if os.path.exists(result):
return result
result = glob.glob(os.path.join(DirectoryOfThisScript(),
"..", "..", "*", ".ninja_log"))
if not result:
return ""
if 1 != len(result):
return ""
return os.path.split(result[0])[0]
def TraverseByDepth(root, include_extensions):
"""
Return a set of child directories of the 'root' containing file
extensions specified in 'include_extensions'.
NOTE:
1. The 'root' directory itself is excluded from the result set.
2. No subdirectories would be excluded if 'include_extensions' is left
to 'None'.
3. Each entry in 'include_extensions' must begin with string '.'.
"""
is_root = True
result = set()
# Perform a depth first top down traverse of the given directory tree.
for root_dir, subdirs, file_list in os.walk(root):
if not is_root:
# print("Relative Root: ", root_dir)
# print(subdirs)
if include_extensions:
get_ext = os.path.splitext
subdir_extensions = {
get_ext(f)[-1] for f in file_list if get_ext(f)[-1]
}
if subdir_extensions & include_extensions:
result.add(root_dir)
else:
result.add(root_dir)
else:
is_root = False
return result
_project_src_dir = os.path.join(DirectoryOfThisScript(), "src")
_include_dirs_set = TraverseByDepth(_project_src_dir, frozenset({".h"}))
flags = [
"-x",
"c"
# The following flags are partially redundant due to the existence of
# 'compile_commands.json'.
# '-Wall',
# '-Wextra',
# '-Wfloat-equal',
# '-Wpointer-arith',
# '-Wshadow',
# '-std=gnu99',
]
for include_dir in _include_dirs_set:
flags.append("-I" + include_dir)
# Set this to the absolute path to the folder (NOT the file!) containing the
# compile_commands.json file to use that instead of 'flags'. See here for
# more details: http://clang.llvm.org/docs/JSONCompilationDatabase.html
#
# You can get CMake to generate this file for you by adding:
# set( CMAKE_EXPORT_COMPILE_COMMANDS 1 )
# to your CMakeLists.txt file.
#
# Most projects will NOT need to set this to anything; you can just change the
# 'flags' list of compilation flags. Notice that YCM itself uses that approach.
compilation_database_folder = GuessBuildDirectory()
if os.path.exists(compilation_database_folder):
database = ycm_core.CompilationDatabase(compilation_database_folder)
else:
database = None
def MakeRelativePathsInFlagsAbsolute(flags, working_directory):
"""
Iterate through 'flags' and replace the relative paths prefixed by
'-isystem', '-I', '-iquote', '--sysroot=' with absolute paths
start with 'working_directory'.
"""
if not working_directory:
return list(flags)
new_flags = []
make_next_absolute = False
path_flags = ["-isystem", "-I", "-iquote", "--sysroot="]
for flag in flags:
new_flag = flag
if make_next_absolute:
make_next_absolute = False
if not flag.startswith("/"):
new_flag = os.path.join(working_directory, flag)
for path_flag in path_flags:
if flag == path_flag:
make_next_absolute = True
break
if flag.startswith(path_flag):
path = flag[len(path_flag):]
new_flag = path_flag + os.path.join(working_directory, path)
break
if new_flag:
new_flags.append(new_flag)
return new_flags
def IsHeaderFile(filename):
"""
Check whether 'filename' is considered as a header file.
"""
extension = os.path.splitext(filename)[1]
return extension in HEADER_EXTENSIONS
def GetCompilationInfoForFile(filename):
"""
Helper function to look up compilation info of 'filename' in the 'database'.
"""
# The compilation_commands.json file generated by CMake does not have
# entries for header files. So we do our best by asking the db for flags for
# a corresponding source file, if any. If one exists, the flags for that
# file should be good enough.
if not database:
return None
if IsHeaderFile(filename):
basename = os.path.splitext(filename)[0]
for extension in SOURCE_EXTENSIONS:
replacement_file = basename + extension
if os.path.exists(replacement_file):
compilation_info = \
database.GetCompilationInfoForFile(replacement_file)
if compilation_info.compiler_flags_:
return compilation_info
return None
return database.GetCompilationInfoForFile(filename)
def FlagsForFile(filename, **kwargs):
"""
Callback function to be invoked by YouCompleteMe in order to get the
information necessary to compile 'filename'.
It returns a dictionary with a single element 'flags'. This element is a
list of compiler flags to pass to libclang for the file 'filename'.
"""
if database:
# Bear in mind that compilation_info.compiler_flags_ does NOT return a
# python list, but a "list-like" StringVec object
compilation_info = GetCompilationInfoForFile(filename)
if not compilation_info:
return None
final_flags = MakeRelativePathsInFlagsAbsolute(
compilation_info.compiler_flags_,
compilation_info.compiler_working_dir_)
else:
relative_to = DirectoryOfThisScript()
final_flags = MakeRelativePathsInFlagsAbsolute(flags, relative_to)
return {
"flags": final_flags,
"do_cache": True
}

107
NEWS
View File

@@ -1,5 +1,110 @@
VERSION DESCRIPTION
-----------------------------------------------------------------------------
6.0.1 - Prevent download error pages ending up in package files
(FS#71083)
- Give -U downloads a random .part file name if needed
(FS#71464)
- Fix downloading signatures with redirecting URLs (FS#71148)
- Fix double free when importing PGP keys (FS#71107)
- Ensure signature files are named after original file
following redirects (FS#71274)
- Order downloads by size - largest to smallest (FS#70172)
- Fix reproducibility of man pages (FS#71154)
- makepkg:
- Fix stripping debug symbols with binutils 2.37 (FS#71722)
- Export PYTHONHASHSEED for reproducible python packages
- pacman-key:
- Quieten trust db checks.
6.0.0 - internal downloader can retrieve files in parallel (FS#20056)
- an additional progress bar is added to track total download
progress. This replaces the previous TotalDownload option.
- fix download rates becoming negative
- skip mirror servers with too many errors (FS#29293)
- package signatures are always retrieved even if signature is
embedded in repo database or package is in cache (FS#33992)
- detached package signatures found in CacheDir can be used to
verify packages if signature is not in the database. Also
verify packages checksums from repo db when using detached
signatures.
- add support for multiple 'Architecture' values
- -Qkk now validates file checksums in addition to date/size
- colored upgrade summary now dulls version numbers for contrast
- libalpm frontends can now supply context to callbacks (FS#12721)
- support xattr when extracting packages
- allow setting --noprogressbar in pacman.conf
- fix output alignment for CJK translated text (FS#59229)
- fix reading targets from stdin when using --sysroot (FS#68630)
- fix deleting signatures for existing databases with -Sc
- check for and forbid duplicate download filenames (FS#67850)
- -Fx now reports error for invalid regex
- remove support for the autotools build system
- meson: properly compile internal symbols as hidden
- meson: make -uninstalled.pc correct
- fix build errors on systems like FreeBSD
- makepkg:
- add link time optimization support to makepkg
- add support for sources using the fossil VCS
- allow specifying alternative authentication commands when
running pacman as root (FS#32621)
- support zstd decompression for sources
- strip: fix removing file attributes such as xattr
- switch to CRC as default integrity checksum
- record $startdir for reproducible builds
- record name of build orchestration tool for reproducible builds
- fix signing of source packages
- add optional argument support to parseopts
- reduce dependency on file for detecting ELF files
- remove dependency on GNU sed
- avoid trailing whitespace in --printsrcinfo output
- libprovides: don't provide both versioned and unversioned
sonames
- don't double-layer distcc on ccache
- fix detection of source file names for debug packages with
gcc 11
- strip: silence warnings emitted by readelf while detecting
source filenames
- fix use of spaces in source file renaming (FS#70254)
- pacman-key:
- --refresh-keys queries WKD before keyserver
- be less noisy when populating the keyring (FS#64142)
- warn about time taken for master key generation
- repo-add:
- support the same compression methods as makepkg
- zsh completion: add pacman-conf support
- various documentation updates
- after a decade and a half of promising libalpm.3 documentation
"once we get around to doing good Doxygen documentation", it
has happened!
5.2.2 - fix pacman test suite under python 3.8
- only prompt to import new keys once in a transaction
- fix handling of fully downloaded .part files
- increase maximum database size (FS#65197)
- fix segfault in alpm_option_set_assumeinstalled
- change config parsing warnings to errors to match actual
behavior
- fix key extraction for signatures with two-octet sub-packet
headers
- fix documentation typos (FS#67000)
- change master signing key to RSA4096
- improve error message when building without autoconf-archive
- pacman-conf:
- allow querying ILoveCandy individually
- fix querying NoExtract individually
- makepkg:
- fix seccmp-related error while stripping binaries (FS#65100)
- fix extraction of file:// sources (FS#64648)
- allow $pkgname in install and changelog file names (FS#64932)
- sort libprovides for reproducibility
- strip: don't re-add the same debug source multiple times
- error on empty refspecs in git sources
- correctly handle missing download clients
- fix splitting multi-line error messages across stdout and
stderr
- handle GPGKEY with spaces (FS#66949)
- do not accept public-only keys for signing
- repo-add:
- handle GPGKEY with spaces (FS#66949)
- do not accept public-only keys for signing
5.2.1 - fix segfault on importing PGP keys for -U operations
- fix distribution of meson files
- fix inode command for darwin/bsd
@@ -10,7 +115,7 @@ VERSION DESCRIPTION
- do not warn about PACKAGER format if not set
- only run --clean when a package is built
- repo-add:
- fix compression of databases with zstd
- fix compression of databases with zstd (FS#64213)
5.2.0 - completely remove delta support (CVE-2019-18183)
- add support to pacman and pacman-key for downloading PGP
signing keys using the WKD protocol (FS#63171)

40
README
View File

@@ -52,7 +52,6 @@ library is initialized.
* logcb: The callback function for "log" operations.
* dlcb: The callback function for download progress of each package.
* fetchcb: Callback for custom download function.
* totaldlcb: The callback function for overall download progress.
* eventcb: Callback for transaction messages.
* questioncb: Callback for selecting amongst choices.
* progresscb: Callback to handle display of transaction progress.
@@ -195,8 +194,8 @@ remove.c and sync.c).
The frontend is using a configuration file, usually "/etc/pacman.conf". Some
of these options are only useful for the frontend only (mainly the ones used to
control the output like totaldownload, or the behavior with cleanmethod and
syncfirst). The rest is used to configure the library.
control the output like verbosepkglist, or the behavior with cleanmethod).
The rest is used to configure the library.
[UPGRADE/REMOVE/SYNC]
@@ -662,10 +661,39 @@ API CHANGES BETWEEN 5.2 AND 6.0
[REMOVED]
- ALPM_EVENT_PKGDOWNLOAD_START, ALPM_EVENT_PKGDOWNLOAD_DONE, ALPM_EVENT_PKGDOWNLOAD_FAILED
- ALPM_ERR_PKG_REPO_NOT_FOUND
- old TotalDownload implementation
- alpm_cb_totaldl
- alpm_option_get_totaldlcb()
- alpm_option_set_totaldlcb()
[CHANGED]
- alpm_db_update() changed its signature and now accepts a list of databases
rather than a single database. This is need to handle database downloading
in a multiplexed way.
- alpm_db_update() now accepts a list of databases rather than a single database.
- alpm_fetch_pkgurl() accepts a list of packages to download.
- alpm_db_search() now has an additional parameter and returns success status
- ALPM_EVENT_RETRIEVE_* -> ALPM_EVENT_DB_RETRIEVE_* and ALPM_EVENT_PKG_RETRIEVE_*
- alpm_cb_download pass event and data
- multi architecture support
- alpm_option_get_arch() -> alpm_option_get_architectures()
- alpm_option_set_arch() -> alpm_option_set_architectures()
- alpm_db_get_servers() copies parameter data
[ADDED]
- parallel download support
- alpm_option_set_parallel_downloads()
- alpm_option_get_parallel_downloads()
- file download events
- alpm_download_event_type_t
- alpm_download_event_init_t
- alpm_download_event_progress_t
- alpm_download_event_completed_t
- download misc
- ALPM_DOWNLOAD_RETRY
- alpm_download_event_retry_t
- alpm_event_pkg_retrieve_t
- multiarchitecture support
- alpm_option_add_architecture()
- alpm_option_remove_architecture()
- misc
- alpm_pkg_get_sig()
- callbacks add front-end provided context

View File

@@ -14,7 +14,7 @@ The following checklist should be used for making a pacman release.
- Update pacman website
Transifex updates are handled using the transifex client. The basic process is:
- Pull updates from transifex ("tx pull -a -f --minimum-perc 75")
- Pull updates from transifex ("tx pull -f --minimum-perc 75")
- Update po files ("./build-aux/update-po")
- Fix all translation errors found
- Add any new locales to the relevant LINGUAS file

11
build-aux/cat-test-file Executable file
View File

@@ -0,0 +1,11 @@
#!/usr/bin/python3
import sys
for path in sys.argv[1:]:
print('# -----------------------------------')
print('# ' + path + ':')
print('# -----------------------------------')
with open(path, 'r') as f:
for line in f:
print('# ' + line, end='')

View File

@@ -4,13 +4,14 @@ input=$1
output=$2
mode=$3
"@SED@" \
sed \
-e "s|@rootdir[@]|@ROOTDIR@|g" \
-e "s|@localedir[@]|@LOCALEDIR@|g" \
-e "s|@sysconfdir[@]|@sysconfdir@|g" \
-e "s|@localstatedir[@]|@localstatedir@|g" \
-e "s|@libmakepkgdir[@]|@LIBMAKEPKGDIR@|g" \
-e "s|@pkgdatadir[@]|@PKGDATADIR@|g" \
-e "s|@keyringdir[@]|@KEYRINGDIR@|g" \
-e "s|@prefix[@]|@PREFIX@|g" \
-e "1s|#!/bin/bash|#!@BASH@|g" \
-e "s|@PACKAGE_VERSION[@]|@PACKAGE_VERSION@|g" \
@@ -20,6 +21,7 @@ mode=$3
-e "s|@DEBUGSUFFIX[@]|@DEBUGSUFFIX@|g" \
-e "s|@INODECMD[@]|@INODECMD@|g" \
-e "s|@FILECMD[@]|@FILECMD@|g" \
-e "s|@BSDTAR_NO_READ_SPARSE[@]|@BSDTAR_NO_READ_SPARSE@|g" \
"$input" >"$output"
if [[ $mode ]]; then

View File

@@ -5,8 +5,6 @@ set -eu
# and we need to create the target directory...
mkdir -vp "$(dirname "${DESTDIR:-}$2")"
if [ "$(dirname $1)" = . ]; then
ln -vfs -T "$1" "${DESTDIR:-}$2"
else
ln -vfs -T --relative "${DESTDIR:-}$1" "${DESTDIR:-}$2"
fi
rm -f "${DESTDIR:-}$2"
ln -vs "$1" "${DESTDIR:-}$2"

View File

@@ -0,0 +1,17 @@
#!/usr/bin/python
import json
import sys
def print_result(result):
print('==================================================================')
print(result['name'])
print(' '.join(result['command']))
print('==================================================================')
print(result['stdout'])
with open(sys.argv[1], 'r') as f:
for line in f:
result = json.loads(line)
if result['result'] == 'FAIL':
print_result(result)

View File

@@ -18,7 +18,7 @@ value.
Description
-----------
This is a description of the contents of version '1' of the
This is a description of the contents of version '2' of the
BUILDINFO file format.
*format*::
@@ -53,6 +53,15 @@ BUILDINFO file format.
*startdir*::
The directory from which makepkg was executed.
*buildtool*::
The name of the tool ecosystem used to set up the build environment. Used
for defining a spec for reproducible builds, e.g. the source of the
linkman:makepkg.conf[5] used.
*buildtoolver*::
The full version of the 'buildtool', for example:
"$pkgver-$pkgrel-$pkgarch".
*buildenv (array)*::
The build environment specified in makepkg.conf.

View File

@@ -1,4 +1,4 @@
# Doxyfile 1.8.2
# Doxyfile 1.9.3
#---------------------------------------------------------------------------
# Project related configuration options
@@ -10,6 +10,7 @@ PROJECT_BRIEF = "Arch Linux Package Manager Library"
PROJECT_LOGO =
OUTPUT_DIRECTORY = @OUTPUT_DIRECTORY@
CREATE_SUBDIRS = NO
ALLOW_UNICODE_NAMES = NO
OUTPUT_LANGUAGE = English
BRIEF_MEMBER_DESC = YES
REPEAT_BRIEF = YES
@@ -31,41 +32,47 @@ STRIP_FROM_PATH =
STRIP_FROM_INC_PATH =
SHORT_NAMES = NO
JAVADOC_AUTOBRIEF = YES
JAVADOC_BANNER = NO
QT_AUTOBRIEF = NO
MULTILINE_CPP_IS_BRIEF = NO
PYTHON_DOCSTRING = YES
INHERIT_DOCS = YES
SEPARATE_MEMBER_PAGES = NO
TAB_SIZE = 4
ALIASES =
TCL_SUBST =
OPTIMIZE_OUTPUT_FOR_C = YES
OPTIMIZE_OUTPUT_JAVA = NO
OPTIMIZE_FOR_FORTRAN = NO
OPTIMIZE_OUTPUT_VHDL = NO
OPTIMIZE_OUTPUT_SLICE = NO
EXTENSION_MAPPING =
MARKDOWN_SUPPORT = YES
TOC_INCLUDE_HEADINGS = 5
AUTOLINK_SUPPORT = YES
BUILTIN_STL_SUPPORT = NO
CPP_CLI_SUPPORT = NO
SIP_SUPPORT = NO
IDL_PROPERTY_SUPPORT = YES
DISTRIBUTE_GROUP_DOC = NO
GROUP_NESTED_COMPOUNDS = NO
SUBGROUPING = YES
INLINE_GROUPED_CLASSES = NO
INLINE_SIMPLE_STRUCTS = NO
TYPEDEF_HIDES_STRUCT = NO
SYMBOL_CACHE_SIZE = 0
INLINE_SIMPLE_STRUCTS = YES
TYPEDEF_HIDES_STRUCT = YES
LOOKUP_CACHE_SIZE = 0
NUM_PROC_THREADS = 1
#---------------------------------------------------------------------------
# Build related configuration options
#---------------------------------------------------------------------------
EXTRACT_ALL = NO
EXTRACT_PRIVATE = NO
EXTRACT_PRIV_VIRTUAL = NO
EXTRACT_PACKAGE = NO
EXTRACT_STATIC = NO
EXTRACT_LOCAL_CLASSES = YES
EXTRACT_LOCAL_METHODS = NO
EXTRACT_ANON_NSPACES = NO
RESOLVE_UNNAMED_PARAMS = YES
HIDE_UNDOC_MEMBERS = NO
HIDE_UNDOC_CLASSES = NO
HIDE_FRIEND_COMPOUNDS = NO
@@ -73,7 +80,10 @@ HIDE_IN_BODY_DOCS = YES
INTERNAL_DOCS = NO
CASE_SENSE_NAMES = YES
HIDE_SCOPE_NAMES = NO
HIDE_COMPOUND_REFERENCE= NO
SHOW_HEADERFILE = YES
SHOW_INCLUDE_FILES = YES
SHOW_GROUPED_MEMB_INC = NO
FORCE_LOCAL_INCLUDES = NO
INLINE_INFO = YES
SORT_MEMBER_DOCS = YES
@@ -95,26 +105,30 @@ FILE_VERSION_FILTER =
LAYOUT_FILE =
CITE_BIB_FILES =
#---------------------------------------------------------------------------
# configuration options related to warning and progress messages
# Configuration options related to warning and progress messages
#---------------------------------------------------------------------------
QUIET = NO
WARNINGS = YES
WARN_IF_UNDOCUMENTED = YES
WARN_IF_DOC_ERROR = YES
WARN_IF_INCOMPLETE_DOC = YES
WARN_NO_PARAMDOC = NO
WARN_AS_ERROR = NO
WARN_FORMAT = "$file:$line: $text"
WARN_LOGFILE =
#---------------------------------------------------------------------------
# configuration options related to the input files
# Configuration options related to the input files
#---------------------------------------------------------------------------
INPUT = ../lib/libalpm/
INPUT = @INPUT_DIRECTORY@/../lib/libalpm/alpm.h \
@INPUT_DIRECTORY@/../lib/libalpm/alpm_list.h
INPUT_ENCODING = UTF-8
FILE_PATTERNS =
RECURSIVE = NO
EXCLUDE =
EXCLUDE_SYMLINKS = NO
EXCLUDE_PATTERNS =
EXCLUDE_SYMBOLS =
EXCLUDE_SYMBOLS = _alpm_* \
__alpm_*
EXAMPLE_PATH =
EXAMPLE_PATTERNS = *
EXAMPLE_RECURSIVE = NO
@@ -123,8 +137,9 @@ INPUT_FILTER =
FILTER_PATTERNS =
FILTER_SOURCE_FILES = NO
FILTER_SOURCE_PATTERNS =
USE_MDFILE_AS_MAINPAGE =
#---------------------------------------------------------------------------
# configuration options related to source browsing
# Configuration options related to source browsing
#---------------------------------------------------------------------------
SOURCE_BROWSER = NO
INLINE_SOURCES = NO
@@ -132,16 +147,16 @@ STRIP_CODE_COMMENTS = NO
REFERENCED_BY_RELATION = YES
REFERENCES_RELATION = YES
REFERENCES_LINK_SOURCE = YES
SOURCE_TOOLTIPS = YES
USE_HTAGS = NO
VERBATIM_HEADERS = YES
#---------------------------------------------------------------------------
# configuration options related to the alphabetical class index
# Configuration options related to the alphabetical class index
#---------------------------------------------------------------------------
ALPHABETICAL_INDEX = NO
COLS_IN_ALPHA_INDEX = 5
IGNORE_PREFIX =
#---------------------------------------------------------------------------
# configuration options related to the HTML output
# Configuration options related to the HTML output
#---------------------------------------------------------------------------
GENERATE_HTML = NO
HTML_OUTPUT = html
@@ -155,10 +170,12 @@ HTML_COLORSTYLE_HUE = 220
HTML_COLORSTYLE_SAT = 100
HTML_COLORSTYLE_GAMMA = 80
HTML_TIMESTAMP = YES
HTML_DYNAMIC_MENUS = YES
HTML_DYNAMIC_SECTIONS = NO
HTML_INDEX_NUM_ENTRIES = 100
GENERATE_DOCSET = NO
DOCSET_FEEDNAME = "Doxygen generated docs"
DOCSET_FEEDURL =
DOCSET_BUNDLE_ID = org.doxygen.Project
DOCSET_PUBLISHER_ID = org.doxygen.Publisher
DOCSET_PUBLISHER_NAME = Publisher
@@ -181,36 +198,51 @@ GENERATE_ECLIPSEHELP = NO
ECLIPSE_DOC_ID = org.doxygen.Project
DISABLE_INDEX = NO
GENERATE_TREEVIEW = NO
FULL_SIDEBAR = NO
ENUM_VALUES_PER_LINE = 4
TREEVIEW_WIDTH = 250
EXT_LINKS_IN_WINDOW = NO
OBFUSCATE_EMAILS = YES
HTML_FORMULA_FORMAT = png
FORMULA_FONTSIZE = 10
FORMULA_TRANSPARENT = YES
FORMULA_MACROFILE =
USE_MATHJAX = NO
MATHJAX_VERSION = MathJax_2
MATHJAX_FORMAT = HTML-CSS
MATHJAX_RELPATH = http://www.mathjax.org/mathjax
MATHJAX_EXTENSIONS =
MATHJAX_CODEFILE =
SEARCHENGINE = NO
SERVER_BASED_SEARCH = NO
EXTERNAL_SEARCH = NO
SEARCHENGINE_URL =
SEARCHDATA_FILE = searchdata.xml
EXTERNAL_SEARCH_ID =
EXTRA_SEARCH_MAPPINGS =
#---------------------------------------------------------------------------
# configuration options related to the LaTeX output
# Configuration options related to the LaTeX output
#---------------------------------------------------------------------------
GENERATE_LATEX = NO
LATEX_OUTPUT = latex
LATEX_CMD_NAME = latex
MAKEINDEX_CMD_NAME = makeindex
LATEX_MAKEINDEX_CMD = makeindex
COMPACT_LATEX = NO
PAPER_TYPE = letter
EXTRA_PACKAGES =
LATEX_HEADER =
LATEX_FOOTER =
LATEX_EXTRA_STYLESHEET =
LATEX_EXTRA_FILES =
PDF_HYPERLINKS = NO
USE_PDFLATEX = NO
LATEX_BATCHMODE = NO
LATEX_HIDE_INDICES = NO
LATEX_SOURCE_CODE = NO
LATEX_BIB_STYLE = plain
LATEX_TIMESTAMP = NO
LATEX_EMOJI_DIRECTORY =
#---------------------------------------------------------------------------
# configuration options related to the RTF output
# Configuration options related to the RTF output
#---------------------------------------------------------------------------
GENERATE_RTF = NO
RTF_OUTPUT = rtf
@@ -219,26 +251,31 @@ RTF_HYPERLINKS = NO
RTF_STYLESHEET_FILE =
RTF_EXTENSIONS_FILE =
#---------------------------------------------------------------------------
# configuration options related to the man page output
# Configuration options related to the man page output
#---------------------------------------------------------------------------
GENERATE_MAN = YES
MAN_OUTPUT = .
MAN_EXTENSION = .3
MAN_SUBDIR =
MAN_LINKS = NO
#---------------------------------------------------------------------------
# configuration options related to the XML output
# Configuration options related to the XML output
#---------------------------------------------------------------------------
GENERATE_XML = NO
XML_OUTPUT = xml
XML_SCHEMA =
XML_DTD =
XML_PROGRAMLISTING = YES
XML_NS_MEMB_FILE_SCOPE = NO
#---------------------------------------------------------------------------
# configuration options for the AutoGen Definitions output
# Configuration options related to the DOCBOOK output
#---------------------------------------------------------------------------
GENERATE_DOCBOOK = NO
DOCBOOK_OUTPUT = docbook
#---------------------------------------------------------------------------
# Configuration options for the AutoGen Definitions output
#---------------------------------------------------------------------------
GENERATE_AUTOGEN_DEF = NO
#---------------------------------------------------------------------------
# configuration options related to the Perl module output
# Configuration options related to the Perl module output
#---------------------------------------------------------------------------
GENERATE_PERLMOD = NO
PERLMOD_LATEX = NO
@@ -254,7 +291,6 @@ SEARCH_INCLUDES = YES
INCLUDE_PATH = ../..
INCLUDE_FILE_PATTERNS = *.h
PREDEFINED = HAVE_CONFIG_H= \
SYMHIDDEN= \
SYMEXPORT= \
HAVE_LIBARCHIVE \
HAVE_LIBCURL \
@@ -262,29 +298,28 @@ PREDEFINED = HAVE_CONFIG_H= \
EXPAND_AS_DEFINED =
SKIP_FUNCTION_MACROS = YES
#---------------------------------------------------------------------------
# Configuration::additions related to external references
# Configuration options related to external references
#---------------------------------------------------------------------------
TAGFILES =
GENERATE_TAGFILE =
ALLEXTERNALS = NO
EXTERNAL_GROUPS = YES
PERL_PATH = /usr/bin/perl
EXTERNAL_PAGES = YES
#---------------------------------------------------------------------------
# Configuration options related to the dot tool
#---------------------------------------------------------------------------
CLASS_DIAGRAMS = NO
MSCGEN_PATH =
DIA_PATH =
HIDE_UNDOC_RELATIONS = YES
HAVE_DOT = YES
DOT_NUM_THREADS = 0
DOT_FONTNAME = Helvetica
DOT_FONTSIZE = 10
DOT_FONTPATH =
CLASS_GRAPH = YES
COLLABORATION_GRAPH = YES
GROUP_GRAPHS = YES
UML_LOOK = NO
UML_LIMIT_NUM_FIELDS = 10
DOT_UML_DETAILS = NO
DOT_WRAP_THRESHOLD = 17
TEMPLATE_RELATIONS = NO
INCLUDE_GRAPH = YES
INCLUDED_BY_GRAPH = YES
@@ -292,14 +327,18 @@ CALL_GRAPH = NO
CALLER_GRAPH = NO
GRAPHICAL_HIERARCHY = YES
DIRECTORY_GRAPH = YES
DIR_GRAPH_MAX_DEPTH = 1
DOT_IMAGE_FORMAT = png
INTERACTIVE_SVG = NO
DOT_PATH =
DOTFILE_DIRS =
MSCFILE_DIRS =
DIAFILE_DIRS =
PLANTUML_JAR_PATH =
PLANTUML_CFG_FILE =
PLANTUML_INCLUDE_PATH =
DOT_GRAPH_MAX_NODES = 50
MAX_DOT_GRAPH_DEPTH = 3
DOT_TRANSPARENT = NO
DOT_MULTI_TARGETS = NO
GENERATE_LEGEND = YES
DOT_CLEANUP = YES

View File

@@ -3,7 +3,7 @@ PKGBUILD(5)
Name
----
PKGBUILD - Arch Linux package build description file
PKGBUILD - Package build description file
Synopsis
@@ -84,14 +84,7 @@ systems (see below).
*license (array)*::
This field specifies the license(s) that apply to the package.
Commonly used licenses can be found in '/usr/share/licenses/common'. If you
see the package's license there, simply reference it in the license
field (e.g., `license=('GPL')`). If the package provides a license not
available in '/usr/share/licenses/common', then you should include it
in the package itself and set `license=('custom')` or
`license=('custom:LicenseName')`. The license should be placed in
'$pkgdir/usr/share/licenses/$pkgname/' when building the package. If
multiple licenses are applicable, list all of them:
If multiple licenses are applicable, list all of them:
`license=('GPL' 'FDL')`.
*install*::
@@ -187,11 +180,6 @@ contain whitespace characters.
than or equal to), `<=` (less than or equal to), `=` (equal to), `>`
(greater than), or `<` (less than).
+
If the dependency name appears to be a library (ends with .so), makepkg will
try to find a binary that depends on the library in the built package and
append the version needed by the binary. Appending the version yourself
disables automatic detection.
+
Additional architecture-specific depends can be added by appending an
underscore and the architecture name e.g., 'depends_x86_64=()'.
@@ -245,10 +233,6 @@ example, dcron can provide 'cron=2.0' to satisfy the 'cron>=2.0' dependency of
other packages. Provisions involving the `>` and `<` operators are invalid as
only specific versions of a package may be provided.
+
If the provision name appears to be a library (ends with .so), makepkg will
try to find the library in the built package and append the correct
version. Appending the version yourself disables automatic detection.
+
Additional architecture-specific provides can be added by appending an
underscore and the architecture name e.g., 'provides_x86_64=()'.
@@ -325,6 +309,10 @@ underscore and the architecture name e.g., 'replaces_x86_64=()'.
When used in combination with the `strip' option, a separate package
containing the debug symbols is created.
*lto*;;
Enable building packages using link time optimization. Adds '-flto'
to both CFLAGS and CXXFLAGS.
Packaging Functions
-------------------
@@ -357,7 +345,7 @@ function.
is skipped.
*build() Function*::
The optional `build()` function is use to compile and/or adjust the source
The optional `build()` function is used to compile and/or adjust the source
files in preparation to be installed by the `package()` function.
*check() Function*::
@@ -472,9 +460,9 @@ control system (VCS) is enabled by specifying the source in the form:
source=('directory::url#fragment?query')
Currently makepkg supports the Bazaar, Git, Subversion, and Mercurial version
control systems. For other version control systems, manual cloning of upstream
repositories must be done in the `prepare()` function.
Currently makepkg supports the Bazaar, Git, Subversion, Fossil and Mercurial
version control systems. For other version control systems, manual cloning of
upstream repositories must be done in the `prepare()` function.
The source URL is divided into four components:
@@ -520,8 +508,7 @@ The source URL is divided into four components:
Example
-------
The following is an example PKGBUILD for the 'patch' package. For more
examples, look through the build files of your distribution's packages. For
those using Arch Linux, consult the Arch Build System (ABS) tree.
examples, look through the build files of your distribution's packages.
[source,sh]
-------------------------------

View File

@@ -50,7 +50,7 @@ ifdef::backend-docbook[]
template::[header-declarations]
<refentry>
<refentryinfo>
<date>{pacman_date}</date>
<date>{localdate}</date>
</refentryinfo>
<refmeta>
<refentrytitle>{mantitle}</refentrytitle>

View File

@@ -1,5 +1,5 @@
See the pacman website at https://www.archlinux.org/pacman/[] for current
See the pacman website at https://archlinux.org/pacman/[] for current
information on pacman and its related tools.
@@ -18,8 +18,8 @@ Current maintainers:
* Allan McRae <allan@archlinux.org>
* Andrew Gregory <andrew.gregory.8@gmail.com>
* Dave Reisner <dreisner@archlinux.org>
* Eli Schwartz <eschwartz@archlinux.org>
* Morgan Adamiec <morganamilo@archlinux.org>
Past major contributors:
@@ -29,6 +29,7 @@ Past major contributors:
* Dan McGee <dan@archlinux.org>
* Xavier Chantry <shiningxc@gmail.com>
* Nagy Gabor <ngaba@bibl.u-szeged.hu>
* Dave Reisner <dreisner@archlinux.org>
For additional contributors, use `git shortlog -s` on the pacman.git
repository.

View File

@@ -59,11 +59,11 @@ configuration files dealing with pacman.
Changelog
~~~~~~~~~
For a good idea of what is going on in pacman development, take a look at the
link:https://git.archlinux.org/pacman.git/[Git summary page] for the
link:https://gitlab.archlinux.org/pacman/pacman[Git summary page] for the
project.
See the most recent
link:https://git.archlinux.org/pacman.git/tree/NEWS[NEWS]
link:https://gitlab.archlinux.org/pacman/pacman/-/blob/master/NEWS[NEWS]
file for a not-as-frequently-updated list of changes. However, this should
contain the biggest changes in a format more concise than the commit log.
@@ -77,6 +77,9 @@ Releases
[frame="topbot",grid="none",options="header,autowidth"]
!======
!Version !Date
!6.0.1 !2021-09-04
!6.0.0 !2021-05-20
!6.0.0alpha1 !2020-12-04
!5.2.1 !2019-11-01
!5.2.0 !2019-10-21
!5.1.3 !2019-03-01
@@ -218,12 +221,11 @@ these trees).
The current development tree can be fetched with the following command:
git clone git://git.archlinux.org/pacman.git pacman
git clone https://gitlab.archlinux.org/pacman/pacman.git
which will fetch the full development history into a directory named pacman.
You can browse the source as well using
link:https://git.archlinux.org/pacman.git/[cgit]. HTTP/HTTPS URLs are also
available for cloning purposes; these URLs are listed at the above page.
link:https://gitlab.archlinux.org/pacman/pacman/[gitlab].
If you are interested in hacking on pacman, it is highly recommended you join
the mailing list mentioned above, as well as take a quick glance at our
@@ -235,24 +237,10 @@ you speak a foreign language, you can help by either creating or updating a
translation file for your native language. Instructions can be found in
link:translation-help.html[translation-help].
Other Utilities
~~~~~~~~~~~~~~~
Although the package manager itself is quite simple, many scripts have been
developed that help automate building and installing packages. These are used
extensively in link:https://www.archlinux.org/[Arch Linux]. Most of these utilities
are available in the Arch Linux projects
link:https://git.archlinux.org/[code browser].
Utilities available:
* link:https://git.archlinux.org/dbscripts.git/[dbscripts] - scripts used by Arch Linux to manage the main package repositories
* link:https://git.archlinux.org/devtools.git/[devtools] - tools to assist in packaging and dependency checking
* link:https://git.archlinux.org/namcap.git/[namcap] - a package analysis utility written in python
Bugs
----
If you find bugs (which is quite likely), please email them to the pacman-dev
mailing last at mailto:pacman-dev@archlinux.org[] with specific information
mailing last at mailto:pacman-dev@lists.archlinux.org[] with specific information
such as your command-line, the nature of the bug, and even the package database
if it helps.
@@ -262,7 +250,7 @@ bugs under the Pacman project.
Copyright
---------
pacman is Copyright (C) 2006-2020 Pacman Development Team
<pacman-dev@archlinux.org> and Copyright (C) 2002-2006 Judd Vinet
pacman is Copyright (C) 2006-2022 Pacman Development Team
<pacman-dev@lists.archlinux.org> and Copyright (C) 2002-2006 Judd Vinet
<jvinet@zeroflux.org> and is licensed through the GNU General Public License,
version 2 or later.

View File

@@ -1,37 +0,0 @@
libalpm(3)
==========
Name
----
libalpm - Arch Linux Package Management (ALPM) library
Synopsis
--------
For ease of access, the libalpm manual has been split up into several sections.
*TODO:* Yes, this man page needs a lot of work. Once we get around to doing
good Doxygen documentation, it will improve. We promise.
*alpm_databases*:: Database Functions
*alpm_interface*:: Interface Functions
*alpm_list*:: List Functions
*alpm_log*:: Logging Functions
*alpm_misc*:: Miscellaneous Functions
*alpm_packages*:: Package Functions
*alpm_sync*:: Sync Functions
*alpm_trans*:: Transaction Functions
Configuration
-------------
See linkman:pacman.conf[5] for more details on configuring libalpm using the
'pacman.conf' file.
See Also
--------
linkman:alpm-hooks[5], linkman:makepkg[8], linkman:pacman[8],
linkman:pacman.conf[5]
include::footer.asciidoc[]

View File

@@ -75,7 +75,7 @@ Options
For each source file in the source array of PKGBUILD, download the file
if required and generate integrity checks. The integrity checks generated
are determined by the checks present in the PKGBUILD, falling back to the
value of the INTEGRITY_CHECK array in makepkg.conf(5) if these are absent
value of the INTEGRITY_CHECK array in makepkg.conf(5) if these are absent.
This output can be redirected into your PKGBUILD for source validation
using "`makepkg -g >> PKGBUILD`".
@@ -279,6 +279,18 @@ Environment Variables
**SOURCE_DATE_EPOCH=**"<date>"::
Used for link:https://reproducible-builds.org/docs/[Reproducible Builds].
**BUILDTOOL=**"<name>"::
The name of a tool ecosystem used to set up the build environment. Used for
defining a spec for reproducible builds, e.g. the linkman:makepkg.conf[5]
used.
**BUILDTOOLVER=**"<version>"::
The version of the '$BUILDTOOL' used.
**GITFLAGS**::
The options to pass when checking out git sources, replacing the default
"--mirror".
Configuration
-------------
See linkman:makepkg.conf[5] for more details on configuring makepkg using the

View File

@@ -81,6 +81,11 @@ Options
usage resembling ``-Wl,--hash-style=gnu''. Read ld(1) for more details on
available linker flags.
**LTOFLAGS=**"ltoflags"::
Additional compiler and linker flags appended to `CFLAGS`, `CXXFLAGS`
and `LDFLAGS` when building with link time optimization. If empty,
``-flto'' is used.
**MAKEFLAGS=**"makeflags"::
This is often used to set the number of jobs used; for example, `-j2`.
Other flags that make accepts can also be passed.
@@ -189,6 +194,16 @@ Options
DEBUG_CXXFLAGS to their counterpart buildflags. Creates a separate
package containing the debug symbols when used with `strip'.
*lto*;;
Enable building packages using link time optimization. Adds the
flags specified in LTOFLAGS to CFLAGS, CXXFLAGS and LDFLAGS (or
``-flto'' if LTOFLAGS is empty).
*autodep*;;
Enable the automatic addition of libraries to the depends and
provides arrays. Search library directories are controlled by
the LIB_DIRS variable defined below.
**INTEGRITY_CHECK=(**check1 ...**)**::
File integrity checks to use. Multiple checks may be specified; this
affects both generation and checking. The current valid options are:
@@ -219,6 +234,12 @@ Options
that are located in opt/, you may need to add the directory to this
array. *NOTE:* Do not add the leading slash to the directory name.
**LIB_DIRS=(**lib:usr/lib ...**)**::
If `autodeps` is specified in the `OPTIONS` array, this variable will
instruct makepkg where to look to find librarys to add to the `provides`
array. The format is "prefix:path", where provides will be added for
libraries found in "path" with the specified prefix added.
**PURGE_TARGETS=(**usr/{,share}/info/dir .podlist *.pod...**)**::
If `purge` is specified in the `OPTIONS` array, this variable will
instruct makepkg which files to remove from the package. This is
@@ -270,9 +291,18 @@ Options
**PKGEXT=**"{pkgext}", **SRCEXT=**"{srcext}"::
Sets the compression used when making compiled or source packages.
Valid suffixes are `.tar.gz`, `.tar.bz2`, `.tar.xz`, `.tar.zst`,
`.tar.lzo`, `.tar.lrz`, `.tar.lz4`, `.tar.lz` and `.tar.Z`, or
simply `.tar` to disable compression entirely.
Valid suffixes are `.pkg` or `.src` (for PKGEXT and SRCEXT resepectively)
followed by one of `.tar.gz`, `.tar.bz2`, `.tar.xz`, `.tar.zst`, `.tar.lzo`,
`.tar.lrz`, `.tar.lz4`, `.tar.lz` and `.tar.Z`, or simply `.tar` to
disable compression entirely.
**PACMAN_AUTH=()**::
Specify a command prefix for running pacman as root. If unset, makepkg will
check for the presence of sudo(8) and su(1) in turn, and try the first one
it finds.
+
If present, `%c` will be replaced with the shell-quoted form of the command
to run. Otherwise, the command to run is appended to the auth command.

View File

@@ -5,11 +5,12 @@ manpages = [
{ 'name': 'makepkg-template.1' },
{ 'name': 'repo-add.8' },
{ 'name': 'vercmp.8' },
{ 'name': 'testpkg.8' },
{ 'name': 'pacman-key.8' },
{ 'name': 'pacman-db-upgrade.8' },
{ 'name': 'PKGBUILD.5', 'extra_depends' : [ 'PKGBUILD-example.txt' ] },
{ 'name': 'makepkg.conf.5' },
{ 'name': 'pacman.conf.5' },
{ 'name': 'libalpm.3' },
{ 'name': 'BUILDINFO.5' },
{ 'name': 'pacman-conf.8' },
]
@@ -26,10 +27,10 @@ asciidoc_conf = join_paths(meson.current_source_dir(), 'asciidoc.conf')
asciidoc_opts = [
'-f', asciidoc_conf,
'-a', 'pacman_version="@0@"'.format(PACKAGE_VERSION),
'-a', 'pacman_date=@0@'.format(run_command('date', '+%Y-%m-%d').stdout().strip()),
'-a', 'srcext=@0@'.format(get_option('src-ext')),
'-a', 'pkgext=@0@'.format(get_option('pkg-ext')),
'-a', 'pkgdatadir=@0@'.format(PKGDATADIR),
'-a', 'keyringdir=@0@'.format(KEYRINGDIR),
'-a', 'localstatedir=@0@'.format(LOCALSTATEDIR),
'-a', 'sysconfdir=@0@'.format(SYSCONFDIR),
'-a', 'datarootdir=@0@'.format(DATAROOTDIR),
@@ -136,6 +137,7 @@ meson.add_install_script(MESON_MAKE_SYMLINK,
doxygen = find_program('doxygen', required : get_option('doxygen'))
if doxygen.found() and not get_option('doxygen').disabled()
doxyconf = configuration_data()
doxyconf.set('INPUT_DIRECTORY', meson.current_source_dir())
doxyconf.set('OUTPUT_DIRECTORY', meson.current_build_dir())
doxyfile = configure_file(
input : 'Doxyfile.in',

View File

@@ -34,7 +34,7 @@ Options
*-R, \--rootdir* <path>::
Specify an alternate installation root (default is `/`).
*-r, \--repo* <remote>::
*-r, \--repo* <repository>::
Query options for a specific repository.
*-v, \--verbose*::

View File

@@ -0,0 +1,36 @@
pacman-db-upgrade(8)
====================
Name
----
pacman-db-upgrade - upgrade the local pacman database to a newer format
Synopsis
--------
'pacman-db-upgrade' [options]
Description
-----------
'pacman-db-upgrade' is a script that upgrades the local database used
by linkman:pacman[8] to a newer format.
Options
--------------
*-h, \--help*::
Show the built-in help message and exit.
*-V, \--version*::
Show version information and exit.
*-d, \--dbpath* <path>::
Set an alternate database location.
*-r, \--root* <path>::
Set an alternate installation root.
*\--config* <path>::
Set an alternate configuration file.
*\--nocolor*::
Remove color from output.
See Also
--------
linkman:pacman[8]
include::footer.asciidoc[]

View File

@@ -86,7 +86,7 @@ Operations
*\--populate*::
Reload the default keys from the (optionally provided) keyrings in
+{pkgdatadir}/keyrings+. For more information, see
+{keyringdir}+. For more information, see
<<PK,Providing a Keyring for Import>> below.
*-u, \--updatedb*::
@@ -129,7 +129,7 @@ A distribution or other repository provided may want to provide a set of
PGP keys used in the signing of its packages and repository databases that can
be readily imported into the pacman keyring. This is achieved by providing a
PGP keyring file `foo.gpg` that contains the keys for the foo keyring in the
directory +{pkgdatadir}/keyrings+.
directory +{keyringdir}+.
Optionally, the file `foo-trusted` can be provided containing a list of trusted
key IDs for that keyring. This is a file in a format compatible with 'gpg

View File

@@ -212,7 +212,7 @@ Transaction Options (apply to '-S', '-R' and '-U')
*\--assume-installed* <package=version>::
Add a virtual package "package" with version "version" to the transaction
to satisfy dependencies. This allows to disable specific dependency checks
to satisfy dependencies. This allows disabling the specific dependency checks
without affecting all dependency checks. To disable all dependency
checking, see the '\--nodeps' option.
@@ -235,12 +235,20 @@ Transaction Options (apply to '-S', '-R' and '-U')
*\--print-format* <format>::
Specify a printf-like format to control the output of the '\--print'
operation. The possible attributes are: "%n" for pkgname, "%v" for pkgver,
"%l" for location, "%r" for repository, and "%s" for size. Implies '\--print'.
operation. The possible attributes are: "%a" for arch, "%b" for
builddate, "%d" for description, "%e" for pkgbase, "%f" for filename,
"%g" for base64 encoded PGP signature, "%h" for sha256sum, "%n" for
pkgname, "%p" for packager, "%v" for pkgver, "%l" for location, "%r"
for repository, "%s" for size, "%C" for checkdepends, "%D" for depends
and "%M" for makedepends.
Implies '\--print'.
Upgrade Options (apply to '-S' and '-U')[[UO]]
----------------------------------------------
*-w, \--downloadonly*::
Retrieve all packages from the server, but do not install/upgrade anything.
*\--asdeps*::
Install packages non-explicitly; in other words, fake their install reason
to be installed as a dependency. This is useful for makepkg and other
@@ -445,9 +453,6 @@ can be useful when the user switches from a testing repository to a stable one.
Additional targets can also be specified manually, so that '-Su foo' will do a
system upgrade and install/upgrade the "foo" package in the same operation.
*-w, \--downloadonly*::
Retrieve all packages from the server, but do not install/upgrade anything.
*-y, \--refresh*::
Download a fresh copy of the master package database from the server(s)
defined in linkman:pacman.conf[5]. This should typically be used each time

View File

@@ -113,15 +113,15 @@ Options
general configuration options. Wildcards in the specified paths will get
expanded based on linkman:glob[7] rules.
*Architecture =* auto | i686 | x86_64 | ...::
If set, pacman will only allow installation of packages of the given
architecture (e.g. 'i686', 'x86_64', etc). The special value 'auto' will
*Architecture =* auto &| i686 &| x86_64 | ...::
If set, pacman will only allow installation of packages with the given
architectures (e.g. 'i686', 'x86_64', etc). The special value 'auto' will
use the system architecture, provided via ``uname -m''. If unset, no
architecture checks are made. *NOTE*: Packages with the special
architecture 'any' can always be installed, as they are meant to be
architecture independent.
*XferCommand =* /path/to/command %u::
*XferCommand =* /path/to/command %u [%o]::
If set, an external program will be used to download all remote files.
All instances of `%u` will be replaced with the download URL. If present,
instances of `%o` will be replaced with the local filename, plus a
@@ -190,13 +190,6 @@ Options
Disables progress bars. This is useful for terminals which do
not support escape characters.
*TotalDownload*::
When downloading, display the amount downloaded, download rate, ETA,
and completed percentage of the entire download list rather
than the percent of each individual download target. The progress
bar is still based solely on the current file download.
This option won't work if XferCommand is used.
*CheckSpace*::
Performs an approximate check for adequate available disk space before
installing packages.
@@ -209,7 +202,7 @@ Options
Disable defaults for low speed limit and timeout on downloads. Use this
if you have issues downloading files with proxy and/or security gateway.
*ParallelDownloads*::
*ParallelDownloads =* ...::
Specifies number of concurrent download streams. The value needs to be a
positive integer. If this config option is not set then only one download
stream is used (i.e. downloads happen sequentially).
@@ -254,8 +247,8 @@ number.
During parsing, pacman will define the `$repo` variable to the name of the
current section. This is often utilized in files specified using the 'Include'
directive so all repositories can use the same mirrorfile. pacman also defines
the `$arch` variable to the value of `Architecture`, so the same mirrorfile can
even be used for different architectures.
the `$arch` variable to the first (or only) value of the `Architecture` option,
so the same mirrorfile can even be used for different architectures.
*SigLevel =* ...::
Set the signature verification level for this repository. For more

View File

@@ -70,6 +70,8 @@ repo-add Options
Remove old package files from the disk when updating their entry in the
database.
*\--include-sigs*::
Include package PGP signatures in the repository database (if available)
Example
-------

View File

@@ -20,7 +20,7 @@ started with GIT if you have not worked with it before.
The pacman code can be fetched using the following command:
git clone git://git.archlinux.org/pacman.git
git clone https://gitlab.archlinux.org/pacman/pacman.git
Creating your patch

20
doc/testpkg.8.asciidoc Normal file
View File

@@ -0,0 +1,20 @@
testpkg(8)
==========
Name
----
testpkg - test a pacman package for validity
Synopsis
--------
'testpkg' <package file>
Description
-----------
'testpkg' is a script used to make sure that a pacman package is valid.
See Also
--------
linkman:pacman[8]
include::footer.asciidoc[]

View File

@@ -55,7 +55,7 @@ Pre-release Updates
~~~~~~~~~~~~~~~~~~~
A week or two before each release, the codebase will go into a string freeze
and an email will be sent to the mailto:pacman-dev@archlinux.org[pacman-dev]
and an email will be sent to the mailto:pacman-dev@lists.archlinux.org[pacman-dev]
mailing list asking for translations. This email will have a prefix of
*[translation]* for anyone looking to set up an email filter.
@@ -78,7 +78,7 @@ Incremental Updates
If you have more advanced needs you will have to get a copy of the pacman
repository.
git clone git://git.archlinux.org/pacman.git pacman
git clone https://gitlab.archlinux.org/pacman/pacman.git
Next, you will need to run `./autogen.sh` and `./configure` in the base
directory to generate the correct Makefiles. At this point, all necessary
@@ -150,4 +150,4 @@ There are currently no efforts underway to include translated manual pages in
the pacman codebase. However, this is not to say translations are unwelcome. If
someone has experience with i18n man pages and how to best include them with our
source, please contact the pacman-dev mailing list at
mailto:pacman-dev@archlinux.org[].
mailto:pacman-dev@lists.archlinux.org[].

View File

@@ -9,10 +9,10 @@
#
#-- The download utilities that makepkg should use to acquire sources
# Format: 'protocol::agent'
DLAGENTS=('file::/usr/bin/curl -gqC - -o %o %u'
'ftp::/usr/bin/curl -gqfC - --ftp-pasv --retry 3 --retry-delay 3 -o %o %u'
'http::/usr/bin/curl -gqb "" -fLC - --retry 3 --retry-delay 3 -o %o %u'
'https::/usr/bin/curl -gqb "" -fLC - --retry 3 --retry-delay 3 -o %o %u'
DLAGENTS=('file::/usr/bin/curl -qgC - -o %o %u'
'ftp::/usr/bin/curl -qgfC - --ftp-pasv --retry 3 --retry-delay 3 -o %o %u'
'http::/usr/bin/curl -qgb "" -fLC - --retry 3 --retry-delay 3 -o %o %u'
'https::/usr/bin/curl -qgb "" -fLC - --retry 3 --retry-delay 3 -o %o %u'
'rsync::/usr/bin/rsync --no-motd -z %u %o'
'scp::/usr/bin/scp -C %u %o')
@@ -41,6 +41,7 @@ CHOST="@CHOST@"
#CFLAGS="-O2 -pipe"
#CXXFLAGS="-O2 -pipe"
#LDFLAGS=""
#LTOFLAGS="-flto"
#RUSTFLAGS="-C opt-level=2"
#-- Make Flags: change this for DistCC/SMP systems
#MAKEFLAGS="-j2"
@@ -76,7 +77,8 @@ BUILDENV=(!distcc color !ccache check !sign)
# These are default values for the options=() settings
#########################################################################
#
# Makepkg defaults: OPTIONS=(!strip docs libtool staticlibs emptydirs !zipman !purge !debug)
# Makepkg defaults:
# OPTIONS=(!strip docs libtool staticlibs emptydirs !zipman !purge !debug !lto !autodeps)
# A negated option will do the opposite of the comments below.
#
#-- strip: Strip symbols from binaries/libraries
@@ -87,8 +89,10 @@ BUILDENV=(!distcc color !ccache check !sign)
#-- zipman: Compress manual (man and info) pages in MAN_DIRS with gzip
#-- purge: Remove files specified by PURGE_TARGETS
#-- debug: Add debugging flags as specified in DEBUG_* variables
#-- lto: Add compile flags for building with link time optimization
#-- autodeps: Automatically add depends/provides
#
OPTIONS=(strip docs libtool staticlibs emptydirs zipman purge !debug)
OPTIONS=(strip docs libtool staticlibs emptydirs zipman purge !debug !lto !autodeps)
#-- File integrity checks to use. Valid: ck, md5, sha1, sha224, sha256, sha384, sha512, b2
INTEGRITY_CHECK=(ck)
@@ -106,6 +110,8 @@ DOC_DIRS=(usr/{,local/}{,share/}{doc,gtk-doc} opt/*/{doc,gtk-doc})
PURGE_TARGETS=(usr/{,share}/info/dir .packlist *.pod)
#-- Directory to store source code in for debug packages
DBGSRCDIR="/usr/src/debug"
#-- Prefix and directories for library autodeps
LIB_DIRS=('lib:/usr/lib' 'lib32:/usr/lib32')
#########################################################################
# PACKAGE OUTPUT
@@ -146,3 +152,10 @@ COMPRESSLZ=(lzip -c -f)
#
PKGEXT='@PKGEXT@'
SRCEXT='@SRCEXT@'
#########################################################################
# OTHER
#########################################################################
#
#-- Command used to run pacman as root, instead of trying sudo and su
PACMAN_AUTH=()

View File

@@ -32,7 +32,6 @@ Architecture = auto
#UseSyslog
#Color
#NoProgressBar
#TotalDownload
CheckSpace
#VerbosePkgLists
ParallelDownloads = 5
@@ -75,4 +74,4 @@ ParallelDownloads = 5
# tips on creating your own repositories.
#[custom]
#SigLevel = Optional TrustAll
#Server = file:///home/custompkgs
#Server = file:///home/packages

View File

@@ -1,7 +1,7 @@
/*
* add.c
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
*
* This program is free software; you can redistribute it and/or modify
@@ -119,6 +119,7 @@ static int perform_extraction(alpm_handle_t *handle, struct archive *archive,
ARCHIVE_EXTRACT_PERM |
ARCHIVE_EXTRACT_TIME |
ARCHIVE_EXTRACT_UNLINK |
ARCHIVE_EXTRACT_XATTR |
ARCHIVE_EXTRACT_SECURE_SYMLINKS;
archive_entry_set_pathname(entry, filename);

View File

@@ -1,7 +1,7 @@
/*
* add.h
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
*
* This program is free software; you can redistribute it and/or modify

View File

@@ -1,7 +1,7 @@
/*
* alpm.c
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
* Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
* Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
@@ -114,6 +114,7 @@ int SYMEXPORT alpm_release(alpm_handle_t *myhandle)
#ifdef HAVE_LIBCURL
curl_multi_cleanup(myhandle->curlm);
curl_global_cleanup();
FREELIST(myhandle->server_errors);
#endif
_alpm_handle_unlock(myhandle);

File diff suppressed because it is too large Load Diff

View File

@@ -1,7 +1,7 @@
/*
* alpm_list.c
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
*
* This program is free software; you can redistribute it and/or modify
@@ -30,25 +30,9 @@
/* check exported library symbols with: nm -C -D <lib> */
#define SYMEXPORT __attribute__((visibility("default")))
#define SYMHIDDEN __attribute__((visibility("internal")))
/**
* @addtogroup alpm_list List Functions
* @brief Functions to manipulate alpm_list_t lists.
*
* These functions are designed to create, destroy, and modify lists of
* type alpm_list_t. This is an internal list type used by libalpm that is
* publicly exposed for use by frontends if desired.
*
* @{ */
/* Allocation */
/**
* @brief Free a list, but not the contained data.
*
* @param list the list to free
*/
void SYMEXPORT alpm_list_free(alpm_list_t *list)
{
alpm_list_t *it = list;
@@ -60,12 +44,6 @@ void SYMEXPORT alpm_list_free(alpm_list_t *list)
}
}
/**
* @brief Free the internal data of a list structure.
*
* @param list the list to free
* @param fn a free function for the internal data
*/
void SYMEXPORT alpm_list_free_inner(alpm_list_t *list, alpm_list_fn_free fn)
{
alpm_list_t *it = list;
@@ -83,28 +61,12 @@ void SYMEXPORT alpm_list_free_inner(alpm_list_t *list, alpm_list_fn_free fn)
/* Mutators */
/**
* @brief Add a new item to the end of the list.
*
* @param list the list to add to
* @param data the new item to be added to the list
*
* @return the resultant list
*/
alpm_list_t SYMEXPORT *alpm_list_add(alpm_list_t *list, void *data)
{
alpm_list_append(&list, data);
return list;
}
/**
* @brief Add a new item to the end of the list.
*
* @param list the list to add to
* @param data the new item to be added to the list
*
* @return the newly added item
*/
alpm_list_t SYMEXPORT *alpm_list_append(alpm_list_t **list, void *data)
{
alpm_list_t *ptr;
@@ -131,14 +93,6 @@ alpm_list_t SYMEXPORT *alpm_list_append(alpm_list_t **list, void *data)
return ptr;
}
/**
* @brief Duplicate and append a string to a list.
*
* @param list the list to append to
* @param data the string to duplicate and append
*
* @return the newly added item
*/
alpm_list_t SYMEXPORT *alpm_list_append_strdup(alpm_list_t **list, const char *data)
{
alpm_list_t *ret;
@@ -151,15 +105,6 @@ alpm_list_t SYMEXPORT *alpm_list_append_strdup(alpm_list_t **list, const char *d
}
}
/**
* @brief Add items to a list in sorted order.
*
* @param list the list to add to
* @param data the new item to be added to the list
* @param fn the comparison function to use to determine order
*
* @return the resultant list
*/
alpm_list_t SYMEXPORT *alpm_list_add_sorted(alpm_list_t *list, void *data, alpm_list_fn_cmp fn)
{
if(!fn || !list) {
@@ -202,17 +147,6 @@ alpm_list_t SYMEXPORT *alpm_list_add_sorted(alpm_list_t *list, void *data, alpm_
}
}
/**
* @brief Join two lists.
* The two lists must be independent. Do not free the original lists after
* calling this function, as this is not a copy operation. The list pointers
* passed in should be considered invalid after calling this function.
*
* @param first the first list
* @param second the second list
*
* @return the resultant joined list
*/
alpm_list_t SYMEXPORT *alpm_list_join(alpm_list_t *first, alpm_list_t *second)
{
alpm_list_t *tmp;
@@ -235,15 +169,6 @@ alpm_list_t SYMEXPORT *alpm_list_join(alpm_list_t *first, alpm_list_t *second)
return first;
}
/**
* @brief Merge the two sorted sublists into one sorted list.
*
* @param left the first list
* @param right the second list
* @param fn comparison function for determining merge order
*
* @return the resultant list
*/
alpm_list_t SYMEXPORT *alpm_list_mmerge(alpm_list_t *left, alpm_list_t *right,
alpm_list_fn_cmp fn)
{
@@ -305,15 +230,6 @@ alpm_list_t SYMEXPORT *alpm_list_mmerge(alpm_list_t *left, alpm_list_t *right,
return newlist;
}
/**
* @brief Sort a list of size `n` using mergesort algorithm.
*
* @param list the list to sort
* @param n the size of the list
* @param fn the comparison function for determining order
*
* @return the resultant list
*/
alpm_list_t SYMEXPORT *alpm_list_msort(alpm_list_t *list, size_t n,
alpm_list_fn_cmp fn)
{
@@ -339,15 +255,6 @@ alpm_list_t SYMEXPORT *alpm_list_msort(alpm_list_t *list, size_t n,
return list;
}
/**
* @brief Remove an item from the list.
* item is not freed; this is the responsibility of the caller.
*
* @param haystack the list to remove the item from
* @param item the item to remove from the list
*
* @return the resultant list
*/
alpm_list_t SYMEXPORT *alpm_list_remove_item(alpm_list_t *haystack,
alpm_list_t *item)
{
@@ -385,17 +292,6 @@ alpm_list_t SYMEXPORT *alpm_list_remove_item(alpm_list_t *haystack,
return haystack;
}
/**
* @brief Remove an item from the list.
*
* @param haystack the list to remove the item from
* @param needle the data member of the item we're removing
* @param fn the comparison function for searching
* @param data output parameter containing data of the removed item
*
* @return the resultant list
*/
alpm_list_t SYMEXPORT *alpm_list_remove(alpm_list_t *haystack,
const void *needle, alpm_list_fn_cmp fn, void **data)
{
@@ -430,15 +326,6 @@ alpm_list_t SYMEXPORT *alpm_list_remove(alpm_list_t *haystack,
return haystack;
}
/**
* @brief Remove a string from a list.
*
* @param haystack the list to remove the item from
* @param needle the data member of the item we're removing
* @param data output parameter containing data of the removed item
*
* @return the resultant list
*/
alpm_list_t SYMEXPORT *alpm_list_remove_str(alpm_list_t *haystack,
const char *needle, char **data)
{
@@ -446,15 +333,6 @@ alpm_list_t SYMEXPORT *alpm_list_remove_str(alpm_list_t *haystack,
(alpm_list_fn_cmp)strcmp, (void **)data);
}
/**
* @brief Create a new list without any duplicates.
*
* This does NOT copy data members.
*
* @param list the list to copy
*
* @return a new list containing non-duplicate items
*/
alpm_list_t SYMEXPORT *alpm_list_remove_dupes(const alpm_list_t *list)
{
const alpm_list_t *lp = list;
@@ -471,13 +349,6 @@ alpm_list_t SYMEXPORT *alpm_list_remove_dupes(const alpm_list_t *list)
return newlist;
}
/**
* @brief Copy a string list, including data.
*
* @param list the list to copy
*
* @return a copy of the original list
*/
alpm_list_t SYMEXPORT *alpm_list_strdup(const alpm_list_t *list)
{
const alpm_list_t *lp = list;
@@ -492,13 +363,6 @@ alpm_list_t SYMEXPORT *alpm_list_strdup(const alpm_list_t *list)
return newlist;
}
/**
* @brief Copy a list, without copying data.
*
* @param list the list to copy
*
* @return a copy of the original list
*/
alpm_list_t SYMEXPORT *alpm_list_copy(const alpm_list_t *list)
{
const alpm_list_t *lp = list;
@@ -513,16 +377,6 @@ alpm_list_t SYMEXPORT *alpm_list_copy(const alpm_list_t *list)
return newlist;
}
/**
* @brief Copy a list and copy the data.
* Note that the data elements to be copied should not contain pointers
* and should also be of constant size.
*
* @param list the list to copy
* @param size the size of each data element
*
* @return a copy of the original list, data copied as well
*/
alpm_list_t SYMEXPORT *alpm_list_copy_data(const alpm_list_t *list,
size_t size)
{
@@ -546,13 +400,6 @@ alpm_list_t SYMEXPORT *alpm_list_copy_data(const alpm_list_t *list,
return newlist;
}
/**
* @brief Create a new list in reverse order.
*
* @param list the list to copy
*
* @return a new list in reverse order
*/
alpm_list_t SYMEXPORT *alpm_list_reverse(alpm_list_t *list)
{
const alpm_list_t *lp;
@@ -580,14 +427,6 @@ alpm_list_t SYMEXPORT *alpm_list_reverse(alpm_list_t *list)
/* Accessors */
/**
* @brief Return nth element from list (starting from 0).
*
* @param list the list
* @param n the index of the item to find (n < alpm_list_count(list) IS needed)
*
* @return an alpm_list_t node for index `n`
*/
alpm_list_t SYMEXPORT *alpm_list_nth(const alpm_list_t *list, size_t n)
{
const alpm_list_t *i = list;
@@ -597,13 +436,6 @@ alpm_list_t SYMEXPORT *alpm_list_nth(const alpm_list_t *list, size_t n)
return (alpm_list_t *)i;
}
/**
* @brief Get the next element of a list.
*
* @param node the list node
*
* @return the next element, or NULL when no more elements exist
*/
inline alpm_list_t SYMEXPORT *alpm_list_next(const alpm_list_t *node)
{
if(node) {
@@ -613,13 +445,6 @@ inline alpm_list_t SYMEXPORT *alpm_list_next(const alpm_list_t *node)
}
}
/**
* @brief Get the previous element of a list.
*
* @param list the list head
*
* @return the previous element, or NULL when no previous element exist
*/
inline alpm_list_t SYMEXPORT *alpm_list_previous(const alpm_list_t *list)
{
if(list && list->prev->next) {
@@ -629,13 +454,6 @@ inline alpm_list_t SYMEXPORT *alpm_list_previous(const alpm_list_t *list)
}
}
/**
* @brief Get the last item in the list.
*
* @param list the list
*
* @return the last element in the list
*/
alpm_list_t SYMEXPORT *alpm_list_last(const alpm_list_t *list)
{
if(list) {
@@ -647,13 +465,6 @@ alpm_list_t SYMEXPORT *alpm_list_last(const alpm_list_t *list)
/* Misc */
/**
* @brief Get the number of items in a list.
*
* @param list the list
*
* @return the number of list items
*/
size_t SYMEXPORT alpm_list_count(const alpm_list_t *list)
{
size_t i = 0;
@@ -665,15 +476,6 @@ size_t SYMEXPORT alpm_list_count(const alpm_list_t *list)
return i;
}
/**
* @brief Find an item in a list.
*
* @param needle the item to search
* @param haystack the list
* @param fn the comparison function for searching (!= NULL)
*
* @return `needle` if found, NULL otherwise
*/
void SYMEXPORT *alpm_list_find(const alpm_list_t *haystack, const void *needle,
alpm_list_fn_cmp fn)
{
@@ -693,30 +495,12 @@ static int ptr_cmp(const void *p, const void *q)
return (p != q);
}
/**
* @brief Find an item in a list.
*
* Search for the item whose data matches that of the `needle`.
*
* @param needle the data to search for (== comparison)
* @param haystack the list
*
* @return `needle` if found, NULL otherwise
*/
void SYMEXPORT *alpm_list_find_ptr(const alpm_list_t *haystack,
const void *needle)
{
return alpm_list_find(haystack, needle, ptr_cmp);
}
/**
* @brief Find a string in a list.
*
* @param needle the string to search for
* @param haystack the list
*
* @return `needle` if found, NULL otherwise
*/
char SYMEXPORT *alpm_list_find_str(const alpm_list_t *haystack,
const char *needle)
{
@@ -724,20 +508,6 @@ char SYMEXPORT *alpm_list_find_str(const alpm_list_t *haystack,
(alpm_list_fn_cmp)strcmp);
}
/**
* @brief Find the differences between list `left` and list `right`
*
* The two lists must be sorted. Items only in list `left` are added to the
* `onlyleft` list. Items only in list `right` are added to the `onlyright`
* list.
*
* @param left the first list
* @param right the second list
* @param fn the comparison function
* @param onlyleft pointer to the first result list
* @param onlyright pointer to the second result list
*
*/
void SYMEXPORT alpm_list_diff_sorted(const alpm_list_t *left,
const alpm_list_t *right, alpm_list_fn_cmp fn,
alpm_list_t **onlyleft, alpm_list_t **onlyright)
@@ -782,15 +552,6 @@ void SYMEXPORT alpm_list_diff_sorted(const alpm_list_t *left,
}
/**
* @brief Find the items in list `lhs` that are not present in list `rhs`.
*
* @param lhs the first list
* @param rhs the second list
* @param fn the comparison function
*
* @return a list containing all items in `lhs` not present in `rhs`
*/
alpm_list_t SYMEXPORT *alpm_list_diff(const alpm_list_t *lhs,
const alpm_list_t *rhs, alpm_list_fn_cmp fn)
{
@@ -809,17 +570,6 @@ alpm_list_t SYMEXPORT *alpm_list_diff(const alpm_list_t *lhs,
return ret;
}
/**
* @brief Copy a list and data into a standard C array of fixed length.
* Note that the data elements are shallow copied so any contained pointers
* will point to the original data.
*
* @param list the list to copy
* @param n the size of the list
* @param size the size of each data element
*
* @return an array version of the original list, data copied as well
*/
void SYMEXPORT *alpm_list_to_array(const alpm_list_t *list, size_t n,
size_t size)
{
@@ -840,5 +590,3 @@ void SYMEXPORT *alpm_list_to_array(const alpm_list_t *list, size_t n,
}
return array;
}
/** @} */

View File

@@ -1,7 +1,7 @@
/*
* alpm_list.h
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
*
* This program is free software; you can redistribute it and/or modify
@@ -17,6 +17,8 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef ALPM_LIST_H
#define ALPM_LIST_H
@@ -31,63 +33,346 @@ extern "C" {
#endif
/**
* @brief Linked list type used by libalpm.
* @ingroup libalpm
* @addtogroup libalpm_list libalpm_list(3)
* @brief Functions to manipulate alpm_list_t lists.
*
* These functions are designed to create, destroy, and modify lists of
* type alpm_list_t. This is an internal list type used by libalpm that is
* publicly exposed for use by frontends if desired.
*
* It is exposed so front ends can use it to prevent the need to reimplement
* lists of their own; however, it is not required that the front end uses
* it.
* @{
*/
typedef struct __alpm_list_t {
/** A doubly linked list */
typedef struct _alpm_list_t {
/** data held by the list node */
void *data;
/** pointer to the previous node */
struct __alpm_list_t *prev;
struct _alpm_list_t *prev;
/** pointer to the next node */
struct __alpm_list_t *next;
struct _alpm_list_t *next;
} alpm_list_t;
/** Frees a list and its contents */
#define FREELIST(p) do { alpm_list_free_inner(p, free); alpm_list_free(p); p = NULL; } while(0)
typedef void (*alpm_list_fn_free)(void *); /* item deallocation callback */
typedef int (*alpm_list_fn_cmp)(const void *, const void *); /* item comparison callback */
/** item deallocation callback.
* @param item the item to free
*/
typedef void (*alpm_list_fn_free)(void * item);
/** item comparison callback */
typedef int (*alpm_list_fn_cmp)(const void *, const void *);
/* allocation */
/** Free a list, but not the contained data.
*
* @param list the list to free
*/
void alpm_list_free(alpm_list_t *list);
/** Free the internal data of a list structure but not the list itself.
*
* @param list the list to free
* @param fn a free function for the internal data
*/
void alpm_list_free_inner(alpm_list_t *list, alpm_list_fn_free fn);
/* item mutators */
/** Add a new item to the end of the list.
*
* @param list the list to add to
* @param data the new item to be added to the list
*
* @return the resultant list
*/
alpm_list_t *alpm_list_add(alpm_list_t *list, void *data);
/**
* @brief Add a new item to the end of the list.
*
* @param list the list to add to
* @param data the new item to be added to the list
*
* @return the newly added item
*/
alpm_list_t *alpm_list_append(alpm_list_t **list, void *data);
/**
* @brief Duplicate and append a string to a list.
*
* @param list the list to append to
* @param data the string to duplicate and append
*
* @return the newly added item
*/
alpm_list_t *alpm_list_append_strdup(alpm_list_t **list, const char *data);
/**
* @brief Add items to a list in sorted order.
*
* @param list the list to add to
* @param data the new item to be added to the list
* @param fn the comparison function to use to determine order
*
* @return the resultant list
*/
alpm_list_t *alpm_list_add_sorted(alpm_list_t *list, void *data, alpm_list_fn_cmp fn);
/**
* @brief Join two lists.
* The two lists must be independent. Do not free the original lists after
* calling this function, as this is not a copy operation. The list pointers
* passed in should be considered invalid after calling this function.
*
* @param first the first list
* @param second the second list
*
* @return the resultant joined list
*/
alpm_list_t *alpm_list_join(alpm_list_t *first, alpm_list_t *second);
/**
* @brief Merge the two sorted sublists into one sorted list.
*
* @param left the first list
* @param right the second list
* @param fn comparison function for determining merge order
*
* @return the resultant list
*/
alpm_list_t *alpm_list_mmerge(alpm_list_t *left, alpm_list_t *right, alpm_list_fn_cmp fn);
/**
* @brief Sort a list of size `n` using mergesort algorithm.
*
* @param list the list to sort
* @param n the size of the list
* @param fn the comparison function for determining order
*
* @return the resultant list
*/
alpm_list_t *alpm_list_msort(alpm_list_t *list, size_t n, alpm_list_fn_cmp fn);
/**
* @brief Remove an item from the list.
* item is not freed; this is the responsibility of the caller.
*
* @param haystack the list to remove the item from
* @param item the item to remove from the list
*
* @return the resultant list
*/
alpm_list_t *alpm_list_remove_item(alpm_list_t *haystack, alpm_list_t *item);
/**
* @brief Remove an item from the list.
*
* @param haystack the list to remove the item from
* @param needle the data member of the item we're removing
* @param fn the comparison function for searching
* @param data output parameter containing data of the removed item
*
* @return the resultant list
*/
alpm_list_t *alpm_list_remove(alpm_list_t *haystack, const void *needle, alpm_list_fn_cmp fn, void **data);
/**
* @brief Remove a string from a list.
*
* @param haystack the list to remove the item from
* @param needle the data member of the item we're removing
* @param data output parameter containing data of the removed item
*
* @return the resultant list
*/
alpm_list_t *alpm_list_remove_str(alpm_list_t *haystack, const char *needle, char **data);
/**
* @brief Create a new list without any duplicates.
*
* This does NOT copy data members.
*
* @param list the list to copy
*
* @return a new list containing non-duplicate items
*/
alpm_list_t *alpm_list_remove_dupes(const alpm_list_t *list);
/**
* @brief Copy a string list, including data.
*
* @param list the list to copy
*
* @return a copy of the original list
*/
alpm_list_t *alpm_list_strdup(const alpm_list_t *list);
/**
* @brief Copy a list, without copying data.
*
* @param list the list to copy
*
* @return a copy of the original list
*/
alpm_list_t *alpm_list_copy(const alpm_list_t *list);
/**
* @brief Copy a list and copy the data.
* Note that the data elements to be copied should not contain pointers
* and should also be of constant size.
*
* @param list the list to copy
* @param size the size of each data element
*
* @return a copy of the original list, data copied as well
*/
alpm_list_t *alpm_list_copy_data(const alpm_list_t *list, size_t size);
/**
* @brief Create a new list in reverse order.
*
* @param list the list to copy
*
* @return a new list in reverse order
*/
alpm_list_t *alpm_list_reverse(alpm_list_t *list);
/* item accessors */
/**
* @brief Return nth element from list (starting from 0).
*
* @param list the list
* @param n the index of the item to find (n < alpm_list_count(list) IS needed)
*
* @return an alpm_list_t node for index `n`
*/
alpm_list_t *alpm_list_nth(const alpm_list_t *list, size_t n);
/**
* @brief Get the next element of a list.
*
* @param list the list node
*
* @return the next element, or NULL when no more elements exist
*/
alpm_list_t *alpm_list_next(const alpm_list_t *list);
/**
* @brief Get the previous element of a list.
*
* @param list the list head
*
* @return the previous element, or NULL when no previous element exist
*/
alpm_list_t *alpm_list_previous(const alpm_list_t *list);
/**
* @brief Get the last item in the list.
*
* @param list the list
*
* @return the last element in the list
*/
alpm_list_t *alpm_list_last(const alpm_list_t *list);
/* misc */
/**
* @brief Get the number of items in a list.
*
* @param list the list
*
* @return the number of list items
*/
size_t alpm_list_count(const alpm_list_t *list);
/**
* @brief Find an item in a list.
*
* @param needle the item to search
* @param haystack the list
* @param fn the comparison function for searching (!= NULL)
*
* @return `needle` if found, NULL otherwise
*/
void *alpm_list_find(const alpm_list_t *haystack, const void *needle, alpm_list_fn_cmp fn);
/**
* @brief Find an item in a list.
*
* Search for the item whose data matches that of the `needle`.
*
* @param needle the data to search for (== comparison)
* @param haystack the list
*
* @return `needle` if found, NULL otherwise
*/
void *alpm_list_find_ptr(const alpm_list_t *haystack, const void *needle);
/**
* @brief Find a string in a list.
*
* @param needle the string to search for
* @param haystack the list
*
* @return `needle` if found, NULL otherwise
*/
char *alpm_list_find_str(const alpm_list_t *haystack, const char *needle);
alpm_list_t *alpm_list_diff(const alpm_list_t *lhs, const alpm_list_t *rhs, alpm_list_fn_cmp fn);
/**
* @brief Find the differences between list `left` and list `right`
*
* The two lists must be sorted. Items only in list `left` are added to the
* `onlyleft` list. Items only in list `right` are added to the `onlyright`
* list.
*
* @param left the first list
* @param right the second list
* @param fn the comparison function
* @param onlyleft pointer to the first result list
* @param onlyright pointer to the second result list
*
*/
void alpm_list_diff_sorted(const alpm_list_t *left, const alpm_list_t *right,
alpm_list_fn_cmp fn, alpm_list_t **onlyleft, alpm_list_t **onlyright);
/**
* @brief Find the items in list `lhs` that are not present in list `rhs`.
*
* @param lhs the first list
* @param rhs the second list
* @param fn the comparison function
*
* @return a list containing all items in `lhs` not present in `rhs`
*/
alpm_list_t *alpm_list_diff(const alpm_list_t *lhs, const alpm_list_t *rhs, alpm_list_fn_cmp fn);
/**
* @brief Copy a list and data into a standard C array of fixed length.
* Note that the data elements are shallow copied so any contained pointers
* will point to the original data.
*
* @param list the list to copy
* @param n the size of the list
* @param size the size of each data element
*
* @return an array version of the original list, data copied as well
*/
void *alpm_list_to_array(const alpm_list_t *list, size_t n, size_t size);
/* End of alpm_list */
/** @} */
#ifdef __cplusplus
}
#endif

View File

@@ -1,7 +1,7 @@
/*
* backup.c
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2005 by Judd Vinet <jvinet@zeroflux.org>
* Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
* Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>

View File

@@ -1,7 +1,7 @@
/*
* backup.h
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
*
* This program is free software; you can redistribute it and/or modify

View File

@@ -1,7 +1,7 @@
/*
* be_local.c : backend for the local database
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
*
* This program is free software; you can redistribute it and/or modify
@@ -195,6 +195,12 @@ static alpm_list_t *_cache_get_backup(alpm_pkg_t *pkg)
return pkg->backup;
}
static alpm_list_t *_cache_get_xdata(alpm_pkg_t *pkg)
{
LAZY_LOAD(INFRQ_DESC);
return pkg->xdata;
}
/**
* Open a package changelog for reading. Similar to fopen in functionality,
* except that the returned 'file stream' is from the database.
@@ -326,7 +332,7 @@ static int _cache_force_load(alpm_pkg_t *pkg)
* lazy accessor methods that handle any backend loading and caching
* logic.
*/
static struct pkg_operations local_pkg_ops = {
static const struct pkg_operations local_pkg_ops = {
.get_base = _cache_get_base,
.get_desc = _cache_get_desc,
.get_url = _cache_get_url,
@@ -349,6 +355,7 @@ static struct pkg_operations local_pkg_ops = {
.get_replaces = _cache_get_replaces,
.get_files = _cache_get_files,
.get_backup = _cache_get_backup,
.get_xdata = _cache_get_xdata,
.changelog_open = _cache_changelog_open,
.changelog_read = _cache_changelog_read,
@@ -804,6 +811,18 @@ static int local_db_read(alpm_pkg_t *info, int inforeq)
READ_AND_SPLITDEP(info->conflicts);
} else if(strcmp(line, "%PROVIDES%") == 0) {
READ_AND_SPLITDEP(info->provides);
} else if(strcmp(line, "%XDATA%") == 0) {
alpm_list_t *i, *lines = NULL;
READ_AND_STORE_ALL(lines);
for(i = lines; i; i = i->next) {
alpm_pkg_xdata_t *pd = _alpm_pkg_parse_xdata(i->data);
if(pd == NULL || !alpm_list_append(&info->xdata, pd)) {
_alpm_pkg_xdata_free(pd);
FREELIST(lines);
goto error;
}
}
FREELIST(lines);
}
}
fclose(fp);
@@ -1040,6 +1059,15 @@ int _alpm_local_db_write(alpm_db_t *db, alpm_pkg_t *info, int inforeq)
write_deps(fp, "%CONFLICTS%", info->conflicts);
write_deps(fp, "%PROVIDES%", info->provides);
if(info->xdata) {
fputs("%XDATA%\n", fp);
for(lp = info->xdata; lp; lp = lp->next) {
alpm_pkg_xdata_t *pd = lp->data;
fprintf(fp, "%s=%s\n", pd->name, pd->value);
}
fputc('\n', fp);
}
fclose(fp);
fp = NULL;
}
@@ -1158,7 +1186,7 @@ int SYMEXPORT alpm_pkg_set_reason(alpm_pkg_t *pkg, alpm_pkgreason_t reason)
return 0;
}
struct db_operations local_db_ops = {
static const struct db_operations local_db_ops = {
.validate = local_db_validate,
.populate = local_db_populate,
.unregister = _alpm_db_unregister,

View File

@@ -1,7 +1,7 @@
/*
* be_package.c : backend for packages
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
*
* This program is free software; you can redistribute it and/or modify
@@ -134,11 +134,10 @@ static int _package_changelog_close(const alpm_pkg_t UNUSED *pkg, void *fp)
}
/** Package file operations struct accessor. We implement this as a method
* rather than a static struct as in be_files because we want to reuse the
* majority of the default_pkg_ops struct and add only a few operations of
* our own on top.
* because we want to reuse the majority of the default_pkg_ops struct and
* add only a few operations of our own on top.
*/
static struct pkg_operations *get_file_pkg_ops(void)
static const struct pkg_operations *get_file_pkg_ops(void)
{
static struct pkg_operations file_pkg_ops;
static int file_pkg_ops_initialized = 0;
@@ -245,10 +244,12 @@ static int parse_descfile(alpm_handle_t *handle, struct archive *a, alpm_pkg_t *
CALLOC(backup, 1, sizeof(alpm_backup_t), return -1);
STRDUP(backup->name, ptr, FREE(backup); return -1);
newpkg->backup = alpm_list_add(newpkg->backup, backup);
} else if(strcmp(key, "force") == 0) {
/* deprecated, skip it */
} else if(strcmp(key, "makepkgopt") == 0) {
/* not used atm */
} else if(strcmp(key, "xdata") == 0) {
alpm_pkg_xdata_t *pd = _alpm_pkg_parse_xdata(ptr);
if(pd == NULL || !alpm_list_append(&newpkg->xdata, pd)) {
_alpm_pkg_xdata_free(pd);
return -1;
}
} else {
_alpm_log(handle, ALPM_LOG_DEBUG, "%s: unknown key '%s' in description file line %d\n",
newpkg->name ? newpkg->name : "error", key, linenum);
@@ -652,7 +653,6 @@ alpm_pkg_t *_alpm_pkg_load_internal(alpm_handle_t *handle,
}
_alpm_archive_read_free(archive);
close(fd);
/* internal fields for package struct */
newpkg->origin = ALPM_PKG_FROM_FILE;
@@ -675,6 +675,7 @@ alpm_pkg_t *_alpm_pkg_load_internal(alpm_handle_t *handle,
newpkg->infolevel |= INFRQ_FILES;
}
close(fd);
return newpkg;
pkg_invalid:
@@ -724,7 +725,6 @@ int SYMEXPORT alpm_pkg_load(alpm_handle_t *handle, const char *filename, int ful
int validation = 0;
char *sigpath;
alpm_pkg_t *pkg_temp;
char *packager;
CHECK_HANDLE(handle, return -1);
ASSERT(pkg != NULL, RET_ERR(handle, ALPM_ERR_WRONG_ARGS, -1));
@@ -750,13 +750,7 @@ int SYMEXPORT alpm_pkg_load(alpm_handle_t *handle, const char *filename, int ful
char *key = k->data;
if(_alpm_key_in_keychain(handle, key) == 0) {
pkg_temp = _alpm_pkg_load_internal(handle, filename, full);
if(pkg_temp) {
packager = pkg_temp->packager;
} else {
packager = NULL;
}
if(_alpm_key_import(handle, packager, key) == -1) {
if(_alpm_key_import(handle, NULL, key) == -1) {
fail = 1;
}
_alpm_pkg_free(pkg_temp);

View File

@@ -1,7 +1,7 @@
/*
* be_sync.c : backend for sync databases
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
*
* This program is free software; you can redistribute it and/or modify
@@ -198,6 +198,10 @@ int SYMEXPORT alpm_db_update(alpm_handle_t *handle, alpm_list_t *dbs, int force)
payload->max_size = 128 * 1024 * 1024;
payloads = alpm_list_add(payloads, payload);
}
if(payloads == NULL) {
ret = 0;
goto cleanup;
}
event.type = ALPM_EVENT_DB_RETRIEVE_START;
EVENT(handle, &event);
@@ -281,6 +285,22 @@ static int _sync_get_validation(alpm_pkg_t *pkg)
return pkg->validation;
}
/** Package sync operations struct accessor. We implement this as a method
* because we want to reuse the majority of the default_pkg_ops struct and
* add only a few operations of our own on top.
*/
static const struct pkg_operations *get_sync_pkg_ops(void)
{
static struct pkg_operations sync_pkg_ops;
static int sync_pkg_ops_initalized = 0;
if(!sync_pkg_ops_initalized) {
sync_pkg_ops = default_pkg_ops;
sync_pkg_ops.get_validation = _sync_get_validation;
sync_pkg_ops_initalized = 1;
}
return &sync_pkg_ops;
}
static alpm_pkg_t *load_pkg_for_entry(alpm_db_t *db, const char *entryname,
const char **entry_filename, alpm_pkg_t *likely_pkg)
{
@@ -321,8 +341,7 @@ static alpm_pkg_t *load_pkg_for_entry(alpm_db_t *db, const char *entryname,
pkg->origin = ALPM_PKG_FROM_SYNCDB;
pkg->origin_data.db = db;
pkg->ops = &default_pkg_ops;
pkg->ops->get_validation = _sync_get_validation;
pkg->ops = get_sync_pkg_ops();
pkg->handle = db->handle;
/* add to the collection */
@@ -647,6 +666,18 @@ static int sync_db_read(alpm_db_t *db, struct archive *archive,
pkg->files.count = files_count;
pkg->files.files = files;
_alpm_filelist_sort(&pkg->files);
} else if(strcmp(line, "%DATA%") == 0) {
alpm_list_t *i, *lines = NULL;
READ_AND_STORE_ALL(lines);
for(i = lines; i; i = i->next) {
alpm_pkg_xdata_t *pd = _alpm_pkg_parse_xdata(i->data);
if(pd == NULL || !alpm_list_append(&pkg->xdata, pd)) {
_alpm_pkg_xdata_free(pd);
FREELIST(lines);
goto error;
}
}
FREELIST(lines);
}
}
if(ret != ARCHIVE_EOF) {

View File

@@ -1,7 +1,7 @@
/*
* conflict.c
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
* Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
* Copyright (c) 2006 by David Kimpe <dnaku@frugalware.org>

View File

@@ -1,7 +1,7 @@
/*
* conflict.h
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
*
* This program is free software; you can redistribute it and/or modify

View File

@@ -1,7 +1,7 @@
/*
* db.c
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
* Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
* Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
@@ -139,9 +139,15 @@ alpm_list_t SYMEXPORT *alpm_db_get_servers(const alpm_db_t *db)
int SYMEXPORT alpm_db_set_servers(alpm_db_t *db, alpm_list_t *servers)
{
alpm_list_t *i;
ASSERT(db != NULL, return -1);
FREELIST(db->servers);
db->servers = servers;
for(i = servers; i; i = i->next) {
char *url = i->data;
if(alpm_db_add_server(db, url) != 0) {
return -1;
}
}
return 0;
}
@@ -206,6 +212,12 @@ int SYMEXPORT alpm_db_remove_server(alpm_db_t *db, const char *url)
return ret;
}
alpm_handle_t SYMEXPORT *alpm_db_get_handle(alpm_db_t *db)
{
ASSERT(db != NULL, return NULL);
return db->handle;
}
const char SYMEXPORT *alpm_db_get_name(const alpm_db_t *db)
{
ASSERT(db != NULL, return NULL);

View File

@@ -1,7 +1,7 @@
/*
* db.h
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
* Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
* Copyright (c) 2006 by Miklos Vajna <vmiklos@frugalware.org>
@@ -62,7 +62,7 @@ struct db_operations {
};
/* Database */
struct __alpm_db_t {
struct _alpm_db_t {
alpm_handle_t *handle;
char *treename;
/* do not access directly, use _alpm_db_path(db) for lazy access */
@@ -70,7 +70,7 @@ struct __alpm_db_t {
alpm_pkghash_t *pkgcache;
alpm_list_t *grpcache;
alpm_list_t *servers;
struct db_operations *ops;
const struct db_operations *ops;
/* bitfields for validity, local, loaded caches, etc. */
/* From _alpm_dbstatus_t */

View File

@@ -1,7 +1,7 @@
/*
* deps.c
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
* Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
* Copyright (c) 2005, 2006 by Miklos Vajna <vmiklos@frugalware.org>

View File

@@ -1,7 +1,7 @@
/*
* deps.h
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
* Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
* Copyright (c) 2006 by Miklos Vajna <vmiklos@frugalware.org>

View File

@@ -1,7 +1,7 @@
/*
* diskspace.c
*
* Copyright (c) 2010-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2010-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@@ -1,7 +1,7 @@
/*
* diskspace.h
*
* Copyright (c) 2010-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2010-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -43,7 +43,7 @@ enum mount_fsinfo {
MOUNT_FSINFO_FAIL,
};
typedef struct __alpm_mountpoint_t {
typedef struct _alpm_mountpoint_t {
/* mount point information */
char *mount_dir;
size_t mount_dir_len;

View File

@@ -1,7 +1,7 @@
/*
* dload.c
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
*
* This program is free software; you can redistribute it and/or modify
@@ -51,8 +51,83 @@
#ifdef HAVE_LIBCURL
/* RFC1123 states applications should support this length */
#define HOSTNAME_SIZE 256
static int curl_add_payload(alpm_handle_t *handle, CURLM *curlm,
struct dload_payload *payload, const char *localpath);
static int curl_gethost(const char *url, char *buffer, size_t buf_len);
/* number of "soft" errors required to blacklist a server, set to 0 to disable
* server blacklisting */
const unsigned int server_error_limit = 3;
struct server_error_count {
char server[HOSTNAME_SIZE];
unsigned int errors;
};
static struct server_error_count *find_server_errors(alpm_handle_t *handle, const char *server)
{
alpm_list_t *i;
struct server_error_count *h;
char hostname[HOSTNAME_SIZE];
/* key off the hostname because a host may serve multiple repos under
* different url's and errors are likely to be host-wide */
if(curl_gethost(server, hostname, sizeof(hostname)) != 0) {
return NULL;
}
for(i = handle->server_errors; i; i = i->next) {
h = i->data;
if(strcmp(hostname, h->server) == 0) {
return h;
}
}
if((h = calloc(sizeof(struct server_error_count), 1))
&& alpm_list_append(&handle->server_errors, h)) {
strcpy(h->server, hostname);
h->errors = 0;
return h;
} else {
free(h);
return NULL;
}
}
static int should_skip_server(alpm_handle_t *handle, const char *server)
{
struct server_error_count *h;
if(server_error_limit && (h = find_server_errors(handle, server)) ) {
return h->errors >= server_error_limit;
}
return 0;
}
static void server_increment_error(alpm_handle_t *handle, const char *server, int count)
{
struct server_error_count *h;
if(server_error_limit
&& (h = find_server_errors(handle, server))
&& !should_skip_server(handle, server) ) {
h->errors += count;
if(should_skip_server(handle, server)) {
_alpm_log(handle, ALPM_LOG_WARNING,
_("too many errors from %s, skipping for the remainder of this transaction\n"),
h->server);
}
}
}
static void server_soft_error(alpm_handle_t *handle, const char *server)
{
server_increment_error(handle, server, 1);
}
static void server_hard_error(alpm_handle_t *handle, const char *server)
{
server_increment_error(handle, server, server_error_limit);
}
static const char *get_filename(const char *url)
{
@@ -78,8 +153,7 @@ static char *get_fullpath(const char *path, const char *filename,
}
enum {
ABORT_SIGINT = 1,
ABORT_OVER_MAXFILESIZE
ABORT_OVER_MAXFILESIZE = 1,
};
static int dload_interrupted;
@@ -91,11 +165,6 @@ static int dload_progress_cb(void *file, curl_off_t dltotal, curl_off_t dlnow,
off_t current_size, total_size;
alpm_download_event_progress_t cb_data = {0};
/* do not print signature files progress bar */
if(payload->signature) {
return 0;
}
/* avoid displaying progress bar for redirects with a body */
if(payload->respcode >= 300) {
return 0;
@@ -134,7 +203,8 @@ static int dload_progress_cb(void *file, curl_off_t dltotal, curl_off_t dlnow,
* download_size (nor included in the total download size callback) */
cb_data.total = dltotal;
cb_data.downloaded = dlnow;
payload->handle->dlcb(payload->remote_name, ALPM_DOWNLOAD_PROGRESS, &cb_data);
payload->handle->dlcb(payload->handle->dlcb_ctx,
payload->remote_name, ALPM_DOWNLOAD_PROGRESS, &cb_data);
payload->prevprogress = current_size;
return 0;
@@ -224,8 +294,11 @@ static size_t dload_parseheader_cb(void *ptr, size_t size, size_t nmemb, void *u
endptr--;
}
STRNDUP(payload->content_disp_name, fptr, endptr - fptr + 1,
RET_ERR(payload->handle, ALPM_ERR_MEMORY, realsize));
/* avoid information leakage with badly formed headers */
if(endptr > fptr) {
STRNDUP(payload->content_disp_name, fptr, endptr - fptr + 1,
RET_ERR(payload->handle, ALPM_ERR_MEMORY, realsize));
}
}
}
@@ -332,17 +405,15 @@ static FILE *create_tempfile(struct dload_payload *payload, const char *localpat
return fp;
}
/* RFC1123 states applications should support this length */
#define HOSTNAME_SIZE 256
/* Return 0 if retry was successful, -1 otherwise */
static int curl_retry_next_server(CURLM *curlm, CURL *curl, struct dload_payload *payload)
{
const char *server;
size_t len;
struct stat st;
alpm_handle_t *handle = payload->handle;
if(payload->servers) {
while(payload->servers && should_skip_server(handle, payload->servers->data)) {
payload->servers = payload->servers->next;
}
if(!payload->servers) {
@@ -351,22 +422,42 @@ static int curl_retry_next_server(CURLM *curlm, CURL *curl, struct dload_payload
return -1;
}
server = payload->servers->data;
payload->servers = payload->servers->next;
/* regenerate a new fileurl */
FREE(payload->fileurl);
len = strlen(server) + strlen(payload->filepath) + 2;
MALLOC(payload->fileurl, len, RET_ERR(handle, ALPM_ERR_MEMORY, -1));
snprintf(payload->fileurl, len, "%s/%s", server, payload->filepath);
_alpm_log(handle, ALPM_LOG_DEBUG,
"%s: retrying from %s\n",
payload->remote_name, payload->fileurl);
if(payload->unlink_on_fail) {
fflush(payload->localf);
if(payload->allow_resume && stat(payload->tempfile_name, &st) == 0) {
/* a previous partial download exists, resume from end of file. */
payload->tempfile_openmode = "ab";
curl_easy_setopt(curl, CURLOPT_RESUME_FROM_LARGE, (curl_off_t)st.st_size);
_alpm_log(handle, ALPM_LOG_DEBUG,
"%s: tempfile found, attempting continuation from %jd bytes\n",
payload->remote_name, (intmax_t)st.st_size);
payload->initial_size = st.st_size;
} else {
/* we keep the file for a new retry but remove its data if any */
fflush(payload->localf);
if(ftruncate(fileno(payload->localf), 0)) {
RET_ERR(handle, ALPM_ERR_SYSTEM, -1);
}
fseek(payload->localf, 0, SEEK_SET);
}
if(handle->dlcb) {
alpm_download_event_retry_t cb_data;
cb_data.resume = payload->allow_resume;
handle->dlcb(handle->dlcb_ctx, payload->remote_name, ALPM_DOWNLOAD_RETRY, &cb_data);
}
/* Set curl with the new URL */
curl_easy_setopt(curl, CURLOPT_URL, payload->fileurl);
@@ -382,16 +473,16 @@ static int curl_retry_next_server(CURLM *curlm, CURL *curl, struct dload_payload
* Returns -1 if an error happened for a required file
* Returns -2 if an error happened for an optional file
*/
static int curl_check_finished_download(CURLM *curlm, CURLMsg *msg,
const char *localpath)
static int curl_check_finished_download(alpm_handle_t *handle, CURLM *curlm, CURLMsg *msg,
const char *localpath, int *active_downloads_num)
{
alpm_handle_t *handle = NULL;
struct dload_payload *payload = NULL;
CURL *curl = msg->easy_handle;
CURLcode curlerr;
char *effective_url;
long timecond;
double remote_size, bytes_dl = 0;
curl_off_t remote_size;
curl_off_t bytes_dl = 0;
long remote_time = -1;
struct stat st;
char hostname[HOSTNAME_SIZE];
@@ -399,12 +490,11 @@ static int curl_check_finished_download(CURLM *curlm, CURLMsg *msg,
curlerr = curl_easy_getinfo(curl, CURLINFO_PRIVATE, &payload);
ASSERT(curlerr == CURLE_OK, RET_ERR(handle, ALPM_ERR_LIBCURL, -1));
handle = payload->handle;
curl_gethost(payload->fileurl, hostname, sizeof(hostname));
curlerr = msg->data.result;
_alpm_log(handle, ALPM_LOG_DEBUG, "%s: curl returned result %d from transfer\n",
payload->remote_name, curlerr);
_alpm_log(handle, ALPM_LOG_DEBUG, "%s: %s returned result %d from transfer\n",
payload->remote_name, "curl", curlerr);
/* was it a success? */
switch(curlerr) {
@@ -413,7 +503,6 @@ static int curl_check_finished_download(CURLM *curlm, CURLMsg *msg,
_alpm_log(handle, ALPM_LOG_DEBUG, "%s: response code %ld\n",
payload->remote_name, payload->respcode);
if(payload->respcode >= 400) {
payload->unlink_on_fail = 1;
if(!payload->errors_ok) {
handle->pm_errno = ALPM_ERR_RETRIEVE;
/* non-translated message is same as libcurl */
@@ -422,10 +511,23 @@ static int curl_check_finished_download(CURLM *curlm, CURLMsg *msg,
_alpm_log(handle, ALPM_LOG_ERROR,
_("failed retrieving file '%s' from %s : %s\n"),
payload->remote_name, hostname, payload->error_buffer);
server_soft_error(handle, payload->fileurl);
}
fflush(payload->localf);
if(fstat(fileno(payload->localf), &st) == 0 && st.st_size != payload->initial_size) {
/* an html error page was written to the file, reset it */
if(ftruncate(fileno(payload->localf), payload->initial_size)) {
RET_ERR(handle, ALPM_ERR_SYSTEM, -1);
}
fseek(payload->localf, payload->initial_size, SEEK_SET);
}
if(curl_retry_next_server(curlm, curl, payload) == 0) {
(*active_downloads_num)++;
return 2;
} else {
payload->unlink_on_fail = 1;
goto cleanup;
}
}
@@ -439,45 +541,50 @@ static int curl_check_finished_download(CURLM *curlm, CURLMsg *msg,
_alpm_log(handle, ALPM_LOG_ERROR,
_("failed retrieving file '%s' from %s : expected download size exceeded\n"),
payload->remote_name, hostname);
server_soft_error(handle, payload->fileurl);
}
goto cleanup;
case CURLE_COULDNT_RESOLVE_HOST:
payload->unlink_on_fail = 1;
handle->pm_errno = ALPM_ERR_SERVER_BAD_URL;
_alpm_log(handle, ALPM_LOG_ERROR,
_("failed retrieving file '%s' from %s : %s\n"),
payload->remote_name, hostname, payload->error_buffer);
server_hard_error(handle, payload->fileurl);
if(curl_retry_next_server(curlm, curl, payload) == 0) {
(*active_downloads_num)++;
return 2;
} else {
payload->unlink_on_fail = 1;
goto cleanup;
}
default:
/* delete zero length downloads */
if(fstat(fileno(payload->localf), &st) == 0 && st.st_size == 0) {
payload->unlink_on_fail = 1;
}
if(!payload->errors_ok) {
handle->pm_errno = ALPM_ERR_LIBCURL;
_alpm_log(handle, ALPM_LOG_ERROR,
_("failed retrieving file '%s' from %s : %s\n"),
payload->remote_name, hostname, payload->error_buffer);
server_soft_error(handle, payload->fileurl);
} else {
_alpm_log(handle, ALPM_LOG_DEBUG,
"failed retrieving file '%s' from %s : %s\n",
payload->remote_name, hostname, payload->error_buffer);
}
if(curl_retry_next_server(curlm, curl, payload) == 0) {
(*active_downloads_num)++;
return 2;
} else {
/* delete zero length downloads */
if(fstat(fileno(payload->localf), &st) == 0 && st.st_size == 0) {
payload->unlink_on_fail = 1;
}
goto cleanup;
}
}
/* retrieve info about the state of the transfer */
curl_easy_getinfo(curl, CURLINFO_FILETIME, &remote_time);
curl_easy_getinfo(curl, CURLINFO_CONTENT_LENGTH_DOWNLOAD, &remote_size);
curl_easy_getinfo(curl, CURLINFO_SIZE_DOWNLOAD, &bytes_dl);
curl_easy_getinfo(curl, CURLINFO_CONTENT_LENGTH_DOWNLOAD_T, &remote_size);
curl_easy_getinfo(curl, CURLINFO_SIZE_DOWNLOAD_T, &bytes_dl);
curl_easy_getinfo(curl, CURLINFO_CONDITION_UNMET, &timecond);
curl_easy_getinfo(curl, CURLINFO_EFFECTIVE_URL, &effective_url);
@@ -509,23 +616,50 @@ static int curl_check_finished_download(CURLM *curlm, CURLMsg *msg,
/* Let's check if client requested downloading accompanion *.sig file */
if(!payload->signature && payload->download_signature && curlerr == CURLE_OK && payload->respcode < 400) {
struct dload_payload *sig = NULL;
char *url = payload->fileurl;
char *_effective_filename;
const char *effective_filename;
char *query;
const char *dbext = alpm_option_get_dbext(handle);
const char* realname = payload->destfile_name ? payload->destfile_name : payload->tempfile_name;
int len;
int len = strlen(effective_url) + 5;
STRDUP(_effective_filename, effective_url, GOTO_ERR(handle, ALPM_ERR_MEMORY, cleanup));
effective_filename = get_filename(_effective_filename);
query = strrchr(effective_filename, '?');
if(query) {
query[0] = '\0';
}
/* Only use the effective url for sig downloads if the effective_url contains .dbext or .pkg */
if(strstr(effective_filename, dbext) || strstr(effective_filename, ".pkg")) {
url = effective_url;
}
free(_effective_filename);
len = strlen(url) + 5;
CALLOC(sig, 1, sizeof(*sig), GOTO_ERR(handle, ALPM_ERR_MEMORY, cleanup));
MALLOC(sig->fileurl, len, FREE(sig); GOTO_ERR(handle, ALPM_ERR_MEMORY, cleanup));
snprintf(sig->fileurl, len, "%s.sig", effective_url);
snprintf(sig->fileurl, len, "%s.sig", url);
if(payload->trust_remote_name) {
/* In this case server might provide a new name for the main payload.
* Choose *.sig filename based on this new name.
*/
const char* realname = payload->destfile_name ? payload->destfile_name : payload->tempfile_name;
const char *final_file = get_filename(realname);
int remote_name_len = strlen(final_file) + 5;
MALLOC(sig->remote_name, remote_name_len, FREE(sig->fileurl); FREE(sig); GOTO_ERR(handle, ALPM_ERR_MEMORY, cleanup));
snprintf(sig->remote_name, remote_name_len, "%s.sig", final_file);
}
/* force the filename to be realname + ".sig" */
int destfile_name_len = strlen(realname) + 5;
MALLOC(sig->destfile_name, destfile_name_len, FREE(sig->remote_name);
FREE(sig->fileurl); FREE(sig); GOTO_ERR(handle, ALPM_ERR_MEMORY, cleanup));
snprintf(sig->destfile_name, destfile_name_len, "%s.sig", realname);
sig->signature = 1;
sig->handle = handle;
sig->force = payload->force;
@@ -535,11 +669,12 @@ static int curl_check_finished_download(CURLM *curlm, CURLMsg *msg,
sig->max_size = 16 * 1024;
curl_add_payload(handle, curlm, sig, localpath);
(*active_downloads_num)++;
}
/* time condition was met and we didn't download anything. we need to
* clean up the 0 byte .part file that's left behind. */
if(timecond == 1 && DOUBLE_EQ(bytes_dl, 0)) {
if(timecond == 1 && bytes_dl == 0) {
_alpm_log(handle, ALPM_LOG_DEBUG, "%s: file met time condition\n",
payload->remote_name);
ret = 1;
@@ -550,8 +685,8 @@ static int curl_check_finished_download(CURLM *curlm, CURLMsg *msg,
/* remote_size isn't necessarily the full size of the file, just what the
* server reported as remaining to download. compare it to what curl reported
* as actually being transferred during curl_easy_perform() */
if(!DOUBLE_EQ(remote_size, -1) && !DOUBLE_EQ(bytes_dl, -1) &&
!DOUBLE_EQ(bytes_dl, remote_size)) {
if(remote_size != -1 && bytes_dl != -1 &&
bytes_dl != remote_size) {
_alpm_log(handle, ALPM_LOG_ERROR, _("%s appears to be truncated: %jd/%jd bytes\n"),
payload->remote_name, (intmax_t)bytes_dl, (intmax_t)remote_size);
GOTO_ERR(handle, ALPM_ERR_RETRIEVE, cleanup);
@@ -586,11 +721,11 @@ cleanup:
unlink(payload->tempfile_name);
}
if(handle->dlcb && !payload->signature) {
if(handle->dlcb) {
alpm_download_event_completed_t cb_data = {0};
cb_data.total = bytes_dl;
cb_data.result = ret;
handle->dlcb(payload->remote_name, ALPM_DOWNLOAD_COMPLETED, &cb_data);
handle->dlcb(handle->dlcb_ctx, payload->remote_name, ALPM_DOWNLOAD_COMPLETED, &cb_data);
}
curl_multi_remove_handle(curlm, curl);
@@ -631,11 +766,15 @@ static int curl_add_payload(alpm_handle_t *handle, CURLM *curlm,
ASSERT(!payload->filepath, GOTO_ERR(handle, ALPM_ERR_WRONG_ARGS, cleanup));
} else {
const char *server;
while(payload->servers && should_skip_server(handle, payload->servers->data)) {
payload->servers = payload->servers->next;
}
ASSERT(payload->servers, GOTO_ERR(handle, ALPM_ERR_SERVER_NONE, cleanup));
ASSERT(payload->filepath, GOTO_ERR(handle, ALPM_ERR_WRONG_ARGS, cleanup));
server = payload->servers->data;
payload->servers = payload->servers->next;
len = strlen(server) + strlen(payload->filepath) + 2;
MALLOC(payload->fileurl, len, GOTO_ERR(handle, ALPM_ERR_MEMORY, cleanup));
@@ -652,15 +791,18 @@ static int curl_add_payload(alpm_handle_t *handle, CURLM *curlm,
GOTO_ERR(handle, ALPM_ERR_SERVER_BAD_URL, cleanup);
}
if(payload->remote_name && strlen(payload->remote_name) > 0) {
payload->destfile_name = get_fullpath(localpath, payload->remote_name, "");
if(!payload->random_partfile && payload->remote_name && strlen(payload->remote_name) > 0) {
if(!payload->destfile_name) {
payload->destfile_name = get_fullpath(localpath, payload->remote_name, "");
}
payload->tempfile_name = get_fullpath(localpath, payload->remote_name, ".part");
if(!payload->destfile_name || !payload->tempfile_name) {
goto cleanup;
}
} else {
/* URL doesn't contain a filename, so make a tempfile. We can't support
* resuming this kind of download; partial transfers will be destroyed */
/* We want a random filename or the URL does not contain a filename, so download to a
* temporary location. We can not support resuming this kind of download; any partial
* transfers will be destroyed */
payload->unlink_on_fail = 1;
payload->localf = create_tempfile(payload, localpath);
@@ -695,6 +837,12 @@ static int curl_add_payload(alpm_handle_t *handle, CURLM *curlm,
curl_easy_setopt(curl, CURLOPT_WRITEDATA, payload->localf);
curl_multi_add_handle(curlm, curl);
if(handle->dlcb) {
alpm_download_event_init_t cb_data = {.optional = payload->errors_ok};
handle->dlcb(handle->dlcb_ctx, payload->remote_name, ALPM_DOWNLOAD_INIT, &cb_data);
}
return 0;
cleanup:
@@ -702,28 +850,44 @@ cleanup:
return ret;
}
/*
* Use to sort payloads by max size in decending order (largest -> smallest)
*/
static int compare_dload_payload_sizes(const void *left_ptr, const void *right_ptr)
{
struct dload_payload *left, *right;
left = (struct dload_payload *) left_ptr;
right = (struct dload_payload *) right_ptr;
return right->max_size - left->max_size;
}
/* Returns -1 if an error happened for a required file
* Returns 0 if a payload was actually downloaded
* Returns 1 if no files were downloaded and all errors were non-fatal
*/
static int curl_download_internal(alpm_handle_t *handle,
alpm_list_t *payloads /* struct dload_payload */,
const char *localpath)
{
int active_downloads_num = 0;
bool recheck_downloads = false;
int err = 0;
int max_streams = handle->parallel_downloads;
int updated = 0; /* was a file actually updated */
CURLM *curlm = handle->curlm;
size_t payloads_size = alpm_list_count(payloads);
while(active_downloads_num > 0 || payloads || recheck_downloads) {
/* Sort payloads by package size */
payloads = alpm_list_msort(payloads, payloads_size, &compare_dload_payload_sizes);
while(active_downloads_num > 0 || payloads) {
CURLMcode mc;
for(; active_downloads_num < max_streams && payloads; active_downloads_num++) {
struct dload_payload *payload = payloads->data;
if(curl_add_payload(handle, curlm, payload, localpath) == 0) {
if(handle->dlcb && !payload->signature) {
alpm_download_event_init_t cb_data = {.optional = payload->errors_ok};
handle->dlcb(payload->remote_name, ALPM_DOWNLOAD_INIT, &cb_data);
}
payloads = payloads->next;
} else {
/* The payload failed to start. Do not start any new downloads.
@@ -746,7 +910,6 @@ static int curl_download_internal(alpm_handle_t *handle,
err = -1;
}
recheck_downloads = false;
while(true) {
int msgs_left = 0;
CURLMsg *msg = curl_multi_info_read(curlm, &msgs_left);
@@ -754,19 +917,17 @@ static int curl_download_internal(alpm_handle_t *handle,
break;
}
if(msg->msg == CURLMSG_DONE) {
int ret = curl_check_finished_download(curlm, msg, localpath);
int ret = curl_check_finished_download(handle, curlm, msg,
localpath, &active_downloads_num);
if(ret == -1) {
/* if current payload failed to download then stop adding new payloads but wait for the
* current ones
*/
payloads = NULL;
err = -1;
} else if(ret == 0) {
updated = 1;
}
/* curl_multi_check_finished_download() might add more payloads e.g. in case of a retry
* from the next mirror. We need to execute curl_multi_perform() at least one more time
* to make sure new payload requests are processed.
*/
recheck_downloads = true;
} else {
_alpm_log(handle, ALPM_LOG_ERROR, _("curl transfer error: %d\n"), msg->msg);
}
@@ -774,11 +935,15 @@ static int curl_download_internal(alpm_handle_t *handle,
}
_alpm_log(handle, ALPM_LOG_DEBUG, "curl_download_internal return code is %d\n", err);
return err;
return err ? -1 : updated ? 0 : 1;
}
#endif
/* Returns -1 if an error happened for a required file
* Returns 0 if a payload was actually downloaded
* Returns 1 if no files were downloaded and all errors were non-fatal
*/
int _alpm_download(alpm_handle_t *handle,
alpm_list_t *payloads /* struct dload_payload */,
const char *localpath)
@@ -791,40 +956,35 @@ int _alpm_download(alpm_handle_t *handle,
#endif
} else {
alpm_list_t *p;
int updated = 0;
for(p = payloads; p; p = p->next) {
struct dload_payload *payload = p->data;
alpm_list_t *s;
int success = 0;
int ret = -1;
if(payload->fileurl) {
if (handle->fetchcb(payload->fileurl, localpath, payload->force) != -1) {
success = 1;
break;
}
ret = handle->fetchcb(handle->fetchcb_ctx, payload->fileurl, localpath, payload->force);
} else {
for(s = payload->servers; s; s = s->next) {
for(s = payload->servers; s && ret == -1; s = s->next) {
const char *server = s->data;
char *fileurl;
int ret;
size_t len = strlen(server) + strlen(payload->filepath) + 2;
MALLOC(fileurl, len, RET_ERR(handle, ALPM_ERR_MEMORY, -1));
snprintf(fileurl, len, "%s/%s", server, payload->filepath);
ret = handle->fetchcb(fileurl, localpath, payload->force);
ret = handle->fetchcb(handle->fetchcb_ctx, fileurl, localpath, payload->force);
free(fileurl);
if (ret != -1) {
success = 1;
break;
}
}
}
if(!success && !payload->errors_ok) {
if(ret == -1 && !payload->errors_ok) {
RET_ERR(handle, ALPM_ERR_EXTERNAL_DOWNLOAD, -1);
} else if(ret == 0) {
updated = 1;
}
}
return 0;
return updated ? 0 : 1;
}
}
@@ -850,7 +1010,7 @@ int SYMEXPORT alpm_fetch_pkgurl(alpm_handle_t *handle, const alpm_list_t *urls,
const char *cachedir;
alpm_list_t *payloads = NULL;
const alpm_list_t *i;
alpm_event_t event;
alpm_event_t event = {0};
CHECK_HANDLE(handle, return -1);
ASSERT(*fetched == NULL, RET_ERR(handle, ALPM_ERR_WRONG_ARGS, -1));
@@ -868,11 +1028,20 @@ int SYMEXPORT alpm_fetch_pkgurl(alpm_handle_t *handle, const alpm_list_t *urls,
alpm_list_append(fetched, filepath);
} else {
struct dload_payload *payload = NULL;
char *c;
ASSERT(url, GOTO_ERR(handle, ALPM_ERR_WRONG_ARGS, err));
CALLOC(payload, 1, sizeof(*payload), GOTO_ERR(handle, ALPM_ERR_MEMORY, err));
STRDUP(payload->fileurl, url, FREE(payload); GOTO_ERR(handle, ALPM_ERR_MEMORY, err));
payload->allow_resume = 1;
c = strrchr(url, '/');
if(strstr(c, ".pkg")) {
/* we probably have a usable package filename to download to */
payload->allow_resume = 1;
} else {
payload->random_partfile = 1;
}
payload->handle = handle;
payload->trust_remote_name = 1;
payload->download_signature = (handle->siglevel & ALPM_SIG_PACKAGE);
@@ -883,6 +1052,7 @@ int SYMEXPORT alpm_fetch_pkgurl(alpm_handle_t *handle, const alpm_list_t *urls,
if(payloads) {
event.type = ALPM_EVENT_PKG_RETRIEVE_START;
event.pkg_retrieve.num = alpm_list_count(payloads);
EVENT(handle, &event);
if(_alpm_download(handle, payloads, cachedir) == -1) {
_alpm_log(handle, ALPM_LOG_WARNING, _("failed to retrieve some files\n"));
@@ -899,10 +1069,6 @@ int SYMEXPORT alpm_fetch_pkgurl(alpm_handle_t *handle, const alpm_list_t *urls,
struct dload_payload *payload = i->data;
char *filepath;
if(payload->signature) {
continue;
}
if(payload->destfile_name) {
const char *filename = mbasename(payload->destfile_name);
filepath = _alpm_filecache_find(handle, filename);

View File

@@ -1,7 +1,7 @@
/*
* dload.h
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
*
* This program is free software; you can redistribute it and/or modify
@@ -44,6 +44,7 @@ struct dload_payload {
off_t prevprogress;
int force;
int allow_resume;
int random_partfile;
int errors_ok;
int unlink_on_fail;
int trust_remote_name;

View File

@@ -1,7 +1,7 @@
/*
* error.c
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
*
* This program is free software; you can redistribute it and/or modify
@@ -90,6 +90,8 @@ const char SYMEXPORT *alpm_strerror(alpm_errno_t err)
return _("transaction not initialized");
case ALPM_ERR_TRANS_DUP_TARGET:
return _("duplicate target");
case ALPM_ERR_TRANS_DUP_FILENAME:
return _("duplicate filename");
case ALPM_ERR_TRANS_NOT_INITIALIZED:
return _("transaction not initialized");
case ALPM_ERR_TRANS_NOT_PREPARED:
@@ -123,8 +125,6 @@ const char SYMEXPORT *alpm_strerror(alpm_errno_t err)
return _("package filename is not valid");
case ALPM_ERR_PKG_INVALID_ARCH:
return _("package architecture is not valid");
case ALPM_ERR_PKG_REPO_NOT_FOUND:
return _("could not find repository for target");
/* Signatures */
case ALPM_ERR_SIG_MISSING:
return _("missing PGP signature");

View File

@@ -1,7 +1,7 @@
/*
* filelist.c
*
* Copyright (c) 2012-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2012-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -118,7 +118,7 @@ static int _alpm_files_cmp(const void *f1, const void *f2)
return strcmp(file1->name, file2->name);
}
alpm_file_t SYMEXPORT *alpm_filelist_contains(alpm_filelist_t *filelist,
alpm_file_t SYMEXPORT *alpm_filelist_contains(const alpm_filelist_t *filelist,
const char *path)
{
alpm_file_t key;

View File

@@ -1,7 +1,7 @@
/*
* filelist.h
*
* Copyright (c) 2012-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2012-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@@ -1,7 +1,7 @@
/*
* graph.c - helpful graph structure and setup/teardown methods
*
* Copyright (c) 2007-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2007-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@@ -1,7 +1,7 @@
/*
* graph.h - helpful graph structure and setup/teardown methods
*
* Copyright (c) 2007-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2007-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -23,19 +23,19 @@
#include "alpm_list.h"
enum __alpm_graph_vertex_state {
enum _alpm_graph_vertex_state {
ALPM_GRAPH_STATE_UNPROCESSED,
ALPM_GRAPH_STATE_PROCESSING,
ALPM_GRAPH_STATE_PROCESSED
};
typedef struct __alpm_graph_t {
typedef struct _alpm_graph_t {
void *data;
struct __alpm_graph_t *parent; /* where did we come from? */
struct _alpm_graph_t *parent; /* where did we come from? */
alpm_list_t *children;
alpm_list_t *iterator; /* used for DFS without recursion */
off_t weight; /* weight of the node */
enum __alpm_graph_vertex_state state;
enum _alpm_graph_vertex_state state;
} alpm_graph_t;
alpm_graph_t *_alpm_graph_new(void);

View File

@@ -1,7 +1,7 @@
/*
* group.c
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
*
* This program is free software; you can redistribute it and/or modify

View File

@@ -1,7 +1,7 @@
/*
* group.h
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
*
* This program is free software; you can redistribute it and/or modify

View File

@@ -1,7 +1,7 @@
/*
* handle.c
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
* Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
* Copyright (c) 2005, 2006 by Miklos Vajna <vmiklos@frugalware.org>
@@ -77,7 +77,7 @@ void _alpm_handle_free(alpm_handle_t *handle)
FREELIST(handle->hookdirs);
FREE(handle->logfile);
FREE(handle->lockfile);
FREE(handle->arch);
FREELIST(handle->architectures);
FREE(handle->gpgdir);
FREELIST(handle->noupgrade);
FREELIST(handle->noextract);
@@ -162,22 +162,34 @@ alpm_cb_log SYMEXPORT alpm_option_get_logcb(alpm_handle_t *handle)
return handle->logcb;
}
void SYMEXPORT *alpm_option_get_logcb_ctx(alpm_handle_t *handle)
{
CHECK_HANDLE(handle, return NULL);
return handle->logcb_ctx;
}
alpm_cb_download SYMEXPORT alpm_option_get_dlcb(alpm_handle_t *handle)
{
CHECK_HANDLE(handle, return NULL);
return handle->dlcb;
}
void SYMEXPORT *alpm_option_get_dlcb_ctx(alpm_handle_t *handle)
{
CHECK_HANDLE(handle, return NULL);
return handle->dlcb_ctx;
}
alpm_cb_fetch SYMEXPORT alpm_option_get_fetchcb(alpm_handle_t *handle)
{
CHECK_HANDLE(handle, return NULL);
return handle->fetchcb;
}
alpm_cb_totaldl SYMEXPORT alpm_option_get_totaldlcb(alpm_handle_t *handle)
void SYMEXPORT *alpm_option_get_fetchcb_ctx(alpm_handle_t *handle)
{
CHECK_HANDLE(handle, return NULL);
return handle->totaldlcb;
return handle->fetchcb_ctx;
}
alpm_cb_event SYMEXPORT alpm_option_get_eventcb(alpm_handle_t *handle)
@@ -186,18 +198,36 @@ alpm_cb_event SYMEXPORT alpm_option_get_eventcb(alpm_handle_t *handle)
return handle->eventcb;
}
void SYMEXPORT *alpm_option_get_eventcb_ctx(alpm_handle_t *handle)
{
CHECK_HANDLE(handle, return NULL);
return handle->eventcb_ctx;
}
alpm_cb_question SYMEXPORT alpm_option_get_questioncb(alpm_handle_t *handle)
{
CHECK_HANDLE(handle, return NULL);
return handle->questioncb;
}
void SYMEXPORT *alpm_option_get_questioncb_ctx(alpm_handle_t *handle)
{
CHECK_HANDLE(handle, return NULL);
return handle->questioncb_ctx;
}
alpm_cb_progress SYMEXPORT alpm_option_get_progresscb(alpm_handle_t *handle)
{
CHECK_HANDLE(handle, return NULL);
return handle->progresscb;
}
void SYMEXPORT *alpm_option_get_progresscb_ctx(alpm_handle_t *handle)
{
CHECK_HANDLE(handle, return NULL);
return handle->progresscb_ctx;
}
const char SYMEXPORT *alpm_option_get_root(alpm_handle_t *handle)
{
CHECK_HANDLE(handle, return NULL);
@@ -282,10 +312,10 @@ alpm_list_t SYMEXPORT *alpm_option_get_assumeinstalled(alpm_handle_t *handle)
return handle->assumeinstalled;
}
const char SYMEXPORT *alpm_option_get_arch(alpm_handle_t *handle)
alpm_list_t SYMEXPORT *alpm_option_get_architectures(alpm_handle_t *handle)
{
CHECK_HANDLE(handle, return NULL);
return handle->arch;
return handle->architectures;
}
int SYMEXPORT alpm_option_get_checkspace(alpm_handle_t *handle)
@@ -303,59 +333,54 @@ const char SYMEXPORT *alpm_option_get_dbext(alpm_handle_t *handle)
int SYMEXPORT alpm_option_get_parallel_downloads(alpm_handle_t *handle)
{
CHECK_HANDLE(handle, return -1);
#ifdef HAVE_LIBCURL
return handle->parallel_downloads;
#else
return 1;
#endif
}
int SYMEXPORT alpm_option_set_logcb(alpm_handle_t *handle, alpm_cb_log cb)
int SYMEXPORT alpm_option_set_logcb(alpm_handle_t *handle, alpm_cb_log cb, void *ctx)
{
CHECK_HANDLE(handle, return -1);
handle->logcb = cb;
handle->logcb_ctx = ctx;
return 0;
}
int SYMEXPORT alpm_option_set_dlcb(alpm_handle_t *handle, alpm_cb_download cb)
int SYMEXPORT alpm_option_set_dlcb(alpm_handle_t *handle, alpm_cb_download cb, void *ctx)
{
CHECK_HANDLE(handle, return -1);
handle->dlcb = cb;
handle->dlcb_ctx = ctx;
return 0;
}
int SYMEXPORT alpm_option_set_fetchcb(alpm_handle_t *handle, alpm_cb_fetch cb)
int SYMEXPORT alpm_option_set_fetchcb(alpm_handle_t *handle, alpm_cb_fetch cb, void *ctx)
{
CHECK_HANDLE(handle, return -1);
handle->fetchcb = cb;
handle->fetchcb_ctx = ctx;
return 0;
}
int SYMEXPORT alpm_option_set_totaldlcb(alpm_handle_t *handle, alpm_cb_totaldl cb)
{
CHECK_HANDLE(handle, return -1);
handle->totaldlcb = cb;
return 0;
}
int SYMEXPORT alpm_option_set_eventcb(alpm_handle_t *handle, alpm_cb_event cb)
int SYMEXPORT alpm_option_set_eventcb(alpm_handle_t *handle, alpm_cb_event cb, void *ctx)
{
CHECK_HANDLE(handle, return -1);
handle->eventcb = cb;
handle->eventcb_ctx = ctx;
return 0;
}
int SYMEXPORT alpm_option_set_questioncb(alpm_handle_t *handle, alpm_cb_question cb)
int SYMEXPORT alpm_option_set_questioncb(alpm_handle_t *handle, alpm_cb_question cb, void *ctx)
{
CHECK_HANDLE(handle, return -1);
handle->questioncb = cb;
handle->questioncb_ctx = ctx;
return 0;
}
int SYMEXPORT alpm_option_set_progresscb(alpm_handle_t *handle, alpm_cb_progress cb)
int SYMEXPORT alpm_option_set_progresscb(alpm_handle_t *handle, alpm_cb_progress cb, void *ctx)
{
CHECK_HANDLE(handle, return -1);
handle->progresscb = cb;
handle->progresscb_ctx = ctx;
return 0;
}
@@ -737,11 +762,29 @@ int SYMEXPORT alpm_option_remove_assumeinstalled(alpm_handle_t *handle, const al
return 0;
}
int SYMEXPORT alpm_option_set_arch(alpm_handle_t *handle, const char *arch)
int SYMEXPORT alpm_option_add_architecture(alpm_handle_t *handle, const char *arch)
{
handle->architectures = alpm_list_add(handle->architectures, strdup(arch));
return 0;
}
int SYMEXPORT alpm_option_set_architectures(alpm_handle_t *handle, alpm_list_t *arches)
{
CHECK_HANDLE(handle, return -1);
if(handle->arch) FREE(handle->arch);
STRDUP(handle->arch, arch, RET_ERR(handle, ALPM_ERR_MEMORY, -1));
if(handle->architectures) FREELIST(handle->architectures);
handle->architectures = alpm_list_strdup(arches);
return 0;
}
int SYMEXPORT alpm_option_remove_architecture(alpm_handle_t *handle, const char *arch)
{
char *vdata = NULL;
CHECK_HANDLE(handle, return -1);
handle->architectures = alpm_list_remove_str(handle->architectures, arch, &vdata);
if(vdata != NULL) {
FREE(vdata);
return 1;
}
return 0;
}
@@ -854,11 +897,7 @@ int SYMEXPORT alpm_option_set_disable_dl_timeout(alpm_handle_t *handle,
unsigned short disable_dl_timeout)
{
CHECK_HANDLE(handle, return -1);
#ifdef HAVE_LIBCURL
handle->disable_dl_timeout = disable_dl_timeout;
#else
(void)disable_dl_timeout; /* silence unused variable warnings */
#endif
return 0;
}
@@ -866,11 +905,7 @@ int SYMEXPORT alpm_option_set_parallel_downloads(alpm_handle_t *handle,
unsigned int num_streams)
{
CHECK_HANDLE(handle, return -1);
#ifdef HAVE_LIBCURL
ASSERT(num_streams >= 1, RET_ERR(handle, ALPM_ERR_WRONG_ARGS, -1));
handle->parallel_downloads = num_streams;
#else
(void)num_streams; /* silence unused variable warnings */
#endif
return 0;
}

View File

@@ -1,7 +1,7 @@
/*
* handle.h
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
*
* This program is free software; you can redistribute it and/or modify
@@ -26,6 +26,7 @@
#include "alpm_list.h"
#include "alpm.h"
#include "trans.h"
#ifdef HAVE_LIBCURL
#include <curl/curl.h>
@@ -34,23 +35,23 @@
#define EVENT(h, e) \
do { \
if((h)->eventcb) { \
(h)->eventcb((alpm_event_t *) (e)); \
(h)->eventcb((h)->eventcb_ctx, (alpm_event_t *) (e)); \
} \
} while(0)
#define QUESTION(h, q) \
do { \
if((h)->questioncb) { \
(h)->questioncb((alpm_question_t *) (q)); \
(h)->questioncb((h)->questioncb_ctx, (alpm_question_t *) (q)); \
} \
} while(0)
#define PROGRESS(h, e, p, per, n, r) \
do { \
if((h)->progresscb) { \
(h)->progresscb(e, p, per, n, r); \
(h)->progresscb((h)->progresscb_ctx, e, p, per, n, r); \
} \
} while(0)
struct __alpm_handle_t {
struct _alpm_handle_t {
/* internal usage */
alpm_db_t *db_local; /* local db pointer */
alpm_list_t *dbs_sync; /* List of (alpm_db_t *) */
@@ -60,9 +61,11 @@ struct __alpm_handle_t {
#ifdef HAVE_LIBCURL
/* libcurl handle */
CURLM *curlm;
alpm_list_t *server_errors;
#endif
unsigned short disable_dl_timeout;
unsigned int parallel_downloads; /* number of download streams */
#endif
#ifdef HAVE_LIBGPGME
alpm_list_t *known_keys; /* keys verified to be in our keychain */
@@ -70,12 +73,17 @@ struct __alpm_handle_t {
/* callback functions */
alpm_cb_log logcb; /* Log callback function */
void *logcb_ctx;
alpm_cb_download dlcb; /* Download callback function */
alpm_cb_totaldl totaldlcb; /* Total download callback function */
void *dlcb_ctx;
alpm_cb_fetch fetchcb; /* Download file callback function */
void *fetchcb_ctx;
alpm_cb_event eventcb;
void *eventcb_ctx;
alpm_cb_question questioncb;
void *questioncb_ctx;
alpm_cb_progress progresscb;
void *progresscb_ctx;
/* filesystem paths */
char *root; /* Root path, default '/' */
@@ -95,7 +103,7 @@ struct __alpm_handle_t {
alpm_list_t *assumeinstalled; /* List of virtual packages used to satisfy dependencies */
/* options */
char *arch; /* Architecture of packages we should allow */
alpm_list_t *architectures; /* Architectures of packages we should allow */
int usesyslog; /* Use syslog instead of logfile? */ /* TODO move to frontend */
int checkspace; /* Check disk space before installing */
char *dbext; /* Sync DB extension */

View File

@@ -1,7 +1,7 @@
/*
* hook.c
*
* Copyright (c) 2015-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2015-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@@ -1,7 +1,7 @@
/*
* hook.h
*
* Copyright (c) 2015-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2015-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

226
lib/libalpm/info.c Normal file
View File

@@ -0,0 +1,226 @@
#include <errno.h>
#include <string.h>
#include "alpm.h"
#include "util.h"
#include "mfmt.h"
typedef enum field_t {
FILENAME,
NAME,
BASE,
DESCRIPTION,
VERSION,
ORIGIN,
REASON,
LICENSE,
GROUP,
DEPENDS,
OPTDEPENDS,
CONFLICTS,
PROVIDES,
REPLACES,
REQUIREDBY,
DELTAS,
FILES,
BACKUP,
DB,
VALIDATION,
URL,
BUILDDATE,
INSTALLDATE,
PACKAGER,
MD5SUM,
SHA256SUM,
ARCH,
SIZE,
ISIZE,
BASE64SIG,
UNKNOWN,
} field_t;
static struct field_map_t {
const char *input;
field_t field;
} field_map[] = {
{"filename", FILENAME},
{"name", NAME},
{"base", BASE},
{"description", DESCRIPTION},
{"version", VERSION},
{"license", LICENSE},
{"group", GROUP},
{"groups", GROUP},
{"depends", DEPENDS},
{"optdepends", OPTDEPENDS},
{"conflicts", CONFLICTS},
{"provides", PROVIDES},
{"replaces", REPLACES},
{"requiredby", REQUIREDBY},
{"url", URL},
{"builddate", BUILDDATE},
{"installdate", INSTALLDATE},
{"packager", PACKAGER},
{"md5sum", MD5SUM},
{"sha256sum", SHA256SUM},
{"arch", ARCH},
{"size", SIZE},
{"isize", ISIZE},
{"base64sig", BASE64SIG},
{NULL, 0}
};
static char *_alpm_hr_size(off_t bytes, char *dest)
{
static const char *suff[] = {"B", "K", "M", "G", "T", "P", "E", NULL};
float hrsize;
int s = 0;
while((bytes >= 1000000 || bytes <= -1000000) && suff[s + 1]) {
bytes /= 1024;
++s;
}
hrsize = bytes;
if((hrsize >= 1000 || hrsize <= -1000) && suff[s + 1]) {
hrsize /= 1024;
++s;
}
sprintf(dest, "%.2f %s", hrsize, suff[s]);
return dest;
}
static field_t _alpm_info_lookup_field(const char *name) {
struct field_map_t *m;
for(m = field_map; m->input; m++) {
if(strcmp(name, m->input) == 0) { return m->field; }
}
return UNKNOWN;
}
static size_t _alpm_info_print_str(mfmt_token_callback_t *t, const char *str, FILE *f) {
return mfmt_render_str(t, str ? str : "NULL", f);
}
static size_t _alpm_info_print_size(mfmt_token_callback_t *t, const off_t s, FILE *f) {
if(s) {
char hrsize[50];
if(t->conversion == 'd') {
snprintf(hrsize, 50, "%lld", (long long)s);
} else {
_alpm_hr_size(s, hrsize);
}
return mfmt_render_str(t, hrsize, f);
} else {
return mfmt_render_str(t, "NULL", f);
}
}
static size_t _alpm_info_print_strlist(mfmt_token_callback_t *t, alpm_list_t *l, FILE *f) {
if(l) {
size_t len = 0;
while(l) {
len += mfmt_render_str(t, l->data, f) + 1;
fputc('\n', f);
l = l->next;
}
return len;
} else {
return mfmt_render_str(t, "NULL", f);
}
}
static size_t _alpm_info_print_deplist(mfmt_token_callback_t *t, alpm_list_t *l, FILE *f) {
if(l) {
size_t len = 0;
while(l) {
char *s = alpm_dep_compute_string(l->data);
len += mfmt_render_str(t, s, f) + 1;
fputc('\n', f);
l = l->next;
free(s);
}
return len;
} else {
return mfmt_render_str(t, "NULL", f);
}
}
static size_t _alpm_info_print_timestamp(mfmt_token_callback_t *t, const alpm_time_t s, FILE *f) {
if(s) {
char datestr[50] = "";
if(strftime(datestr, 50, " %c", localtime(&s)) == 0) { return 0; }
return mfmt_render_str(t, datestr + 1, f);
} else {
return mfmt_render_str(t, "NULL", f);
}
}
static size_t _alpm_info_process_token(FILE *f, mfmt_token_callback_t *t, void *ctx, void *arg) {
alpm_pkg_t *p = arg;
(void)ctx;
switch(_alpm_info_lookup_field(t->name)) {
case NAME: return _alpm_info_print_str(t, alpm_pkg_get_name(p), f);
case DESCRIPTION: return _alpm_info_print_str(t, alpm_pkg_get_desc(p), f);
case PACKAGER: return _alpm_info_print_str(t, alpm_pkg_get_packager(p), f);
case MD5SUM: return _alpm_info_print_str(t, alpm_pkg_get_md5sum(p), f);
case FILENAME: return _alpm_info_print_str(t, alpm_pkg_get_filename(p), f);
case BASE: return _alpm_info_print_str(t, alpm_pkg_get_base(p), f);
case VERSION: return _alpm_info_print_str(t, alpm_pkg_get_version(p), f);
case URL: return _alpm_info_print_str(t, alpm_pkg_get_url(p), f);
case SHA256SUM: return _alpm_info_print_str(t, alpm_pkg_get_sha256sum(p), f);
case ARCH: return _alpm_info_print_str(t, alpm_pkg_get_arch(p), f);
case BASE64SIG: return _alpm_info_print_str(t, alpm_pkg_get_base64_sig(p), f);
case SIZE: return _alpm_info_print_size(t, alpm_pkg_get_size(p), f);
case ISIZE: return _alpm_info_print_size(t, alpm_pkg_get_isize(p), f);
case BUILDDATE: return _alpm_info_print_timestamp(t, alpm_pkg_get_builddate(p), f);
case INSTALLDATE: return _alpm_info_print_timestamp(t, alpm_pkg_get_installdate(p), f);
case DEPENDS: return _alpm_info_print_deplist(t, alpm_pkg_get_depends(p), f);
case OPTDEPENDS: return _alpm_info_print_deplist(t, alpm_pkg_get_optdepends(p), f);
case CONFLICTS: return _alpm_info_print_deplist(t, alpm_pkg_get_conflicts(p), f);
case PROVIDES: return _alpm_info_print_deplist(t, alpm_pkg_get_provides(p), f);
case REPLACES: return _alpm_info_print_deplist(t, alpm_pkg_get_replaces(p), f);
case REQUIREDBY: {
alpm_list_t *rb = alpm_pkg_compute_requiredby(p);
size_t len = _alpm_info_print_strlist(t, rb, f);
FREELIST(rb);
return len;
}
default: errno = EINVAL; return 0;
}
}
size_t SYMEXPORT alpm_info_print_pkg(const char *format, alpm_pkg_t *pkg) {
alpm_list_t l = {
.data = pkg,
.next = NULL,
};
l.prev = &l;
return alpm_info_print_pkgs(format, &l);
}
size_t SYMEXPORT alpm_info_print_pkgs(const char *format, alpm_list_t *pkgs) {
mfmt_t *mfmt = mfmt_parse(format, _alpm_info_process_token, NULL);
size_t len = 0;
if(mfmt == NULL) {
return 0;
}
for(alpm_list_t *i = pkgs; i; i = i->next) {
size_t plen = mfmt_printf(mfmt, i->data, stdout);
if(plen == 0) { return 0; }
len += plen;
}
return len;
}
/* vim: set ts=2 sw=2 et: */

View File

@@ -5,7 +5,7 @@ includedir=@includedir@
Name: libalpm
Description: Arch Linux package management library
URL: http://www.archlinux.org/pacman/
URL: http://archlinux.org/pacman/
Version: @LIB_VERSION@
Requires.private: libarchive @pc_crypto@ @pc_libcurl@ @pc_gpgme@
Cflags: -I${includedir} @LFS_CFLAGS@

View File

@@ -4,7 +4,7 @@
/*
* libarchive-compat.h
*
* Copyright (c) 2013-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2013-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -24,48 +24,28 @@
static inline int _alpm_archive_read_free(struct archive *archive)
{
#if ARCHIVE_VERSION_NUMBER >= 3000000
return archive_read_free(archive);
#else
return archive_read_finish(archive);
#endif
}
static inline int64_t _alpm_archive_compressed_ftell(struct archive *archive)
{
#if ARCHIVE_VERSION_NUMBER >= 3000000
return archive_filter_bytes(archive, -1);
#else
return archive_position_compressed(archive);
#endif
}
static inline int _alpm_archive_read_open_file(struct archive *archive,
const char *filename, size_t block_size)
{
#if ARCHIVE_VERSION_NUMBER >= 3000000
return archive_read_open_filename(archive, filename, block_size);
#else
return archive_read_open_file(archive, filename, block_size);
#endif
}
static inline int _alpm_archive_filter_code(struct archive *archive)
{
#if ARCHIVE_VERSION_NUMBER >= 3000000
return archive_filter_code(archive, 0);
#else
return archive_compression(archive);
#endif
}
static inline int _alpm_archive_read_support_filter_all(struct archive *archive)
{
#if ARCHIVE_VERSION_NUMBER >= 3000000
return archive_read_support_filter_all(archive);
#else
return archive_read_support_compression_all(archive);
#endif
}
#endif /* LIBARCHIVE_COMPAT_H */

View File

@@ -1,7 +1,7 @@
/*
* log.c
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
*
* This program is free software; you can redistribute it and/or modify
@@ -107,6 +107,6 @@ void _alpm_log(alpm_handle_t *handle, alpm_loglevel_t flag, const char *fmt, ...
}
va_start(args, fmt);
handle->logcb(flag, fmt, args);
handle->logcb(handle->logcb_ctx, flag, fmt, args);
va_end(args);
}

View File

@@ -1,7 +1,7 @@
/*
* log.h
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
*
* This program is free software; you can redistribute it and/or modify

View File

@@ -28,5 +28,7 @@ libalpm_sources = files('''
sync.h sync.c
trans.h trans.c
util.h util.c
info.c
mfmt.c mfmt.h
version.c
'''.split())

193
lib/libalpm/mfmt.c Normal file
View File

@@ -0,0 +1,193 @@
#define _GNU_SOURCE
#include <errno.h>
#include <string.h>
#include <stdlib.h>
#include "mfmt.h"
char *_mfmt_find_unescaped_char(char *haystack, char needle) {
while(1) {
haystack = strchrnul(haystack, needle);
if(*haystack && *(haystack + 1) == needle) { haystack += 2; continue; }
else { break; }
}
return haystack;
}
void _mfmt_brace_dedup(char *str) {
char *c = str, *end = str + strlen(str);
while((c = strchr(c, '{'))) {
memmove(c, c + 1, end - c);
c++;
}
c = str;
while((c = strchr(c, '}'))) {
memmove(c, c + 1, end - c);
c++;
}
}
mfmt_t *mfmt_parse(const char *tmpl, mfmt_callback_t *cb, void *ctx) {
mfmt_t *mfmt;
char *c;
mfmt = calloc(sizeof(mfmt_t), 1);
if(mfmt == NULL) { return NULL; }
mfmt->cb = cb;
mfmt->ctx = ctx;
for(c = (char*) tmpl; c && *c; ) {
mfmt->token_count++;
if(*c == '{' && *(c + 1) != '{') {
/* replacement */
if(!*(c = _mfmt_find_unescaped_char(c + 1, '}'))) {
errno = EINVAL;
free(mfmt);
return NULL;
} else {
c++;
}
} else {
/* literal */
c = _mfmt_find_unescaped_char(c, '{');
}
}
if((mfmt->tokens = calloc(sizeof(mfmt_token_t), mfmt->token_count)) == NULL) {
free(mfmt);
return NULL;
}
size_t i;
for(c = (char*) tmpl, i = 0; c && *c; i++) {
if(*c == '{' && *(c + 1) != '{') {
/* replacement */
mfmt_token_callback_t *t = &mfmt->tokens[i].callback;
char *end = _mfmt_find_unescaped_char(c + 1, '}');
t->type = MFMT_TOKEN_CALLBACK;
t->name = strndup(c + 1, end - c - 1);
c = end + 1;
} else {
/* literal */
char *end = _mfmt_find_unescaped_char(c, '{');
mfmt_token_literal_t *t = &mfmt->tokens[i].literal;
t->type = MFMT_TOKEN_LITERAL;
t->string = strndup(c, end - c);
_mfmt_brace_dedup(t->string);
c = end;
}
}
return mfmt;
}
size_t mfmt_printf(mfmt_t *mfmt, void *args, FILE *f) {
size_t len = 0;
size_t i;
for(i = 0; i < mfmt->token_count; i++) {
mfmt_token_t *t = &mfmt->tokens[i];
switch(t->base.type) {
case MFMT_TOKEN_LITERAL:
len += fputs(t->literal.string, f);
break;
case MFMT_TOKEN_CALLBACK:
len += mfmt->cb(f, &t->callback, mfmt->ctx, args);
break;
default:
errno = EINVAL;
return 0;
}
}
return len;
}
static size_t _mfmt_printf_close(mfmt_t *mfmt, void *args, FILE *f) {
if(f) {
size_t len = mfmt_printf(mfmt, args, f);
fclose(f);
return len;
}
return -1;
}
size_t mfmt_printd(mfmt_t *mfmt, void *args, int fd) {
return _mfmt_printf_close(mfmt, args, fdopen(fd, "w"));
}
size_t mfmt_printb(mfmt_t *mfmt, void *args, char *buf, size_t buflen) {
return _mfmt_printf_close(mfmt, args, fmemopen(buf, buflen, "w"));
}
size_t mfmt_prints(mfmt_t *mfmt, void *args, char **buf, size_t *buflen) {
return _mfmt_printf_close(mfmt, args, open_memstream(buf, buflen));
}
size_t mfmt_fmt(const char *tmpl, mfmt_val_t *args, FILE *f) {
mfmt_t *mfmt = mfmt_parse(tmpl, NULL, NULL);
size_t len;
for(size_t i = 0; i < mfmt->token_count; i++) {
mfmt_token_t *t = &mfmt->tokens[i];
switch(t->base.type) {
case MFMT_TOKEN_LITERAL:
len += fputs(t->literal.string, f);
break;
case MFMT_TOKEN_CALLBACK:
/* fprintf(stderr, "token: %s\n", t->callback.name); */
if(t->callback.name[0]) {
for(mfmt_val_t *v = args; v; v++) {
/* fprintf(stderr, "val: %s\n", v->name); */
if(strcmp(v->name, t->callback.name) == 0) {
len += fputs(v->string, f);
break;
}
}
} else {
len += fputs(args->string, f);
args++;
}
break;
}
}
return len;
}
size_t mfmt_mfmt(mfmt_t *mfmt, mfmt_val_t *args, FILE *f) {
size_t len;
for(size_t i = 0; i < mfmt->token_count; i++) {
mfmt_token_t *t = &mfmt->tokens[i];
switch(t->base.type) {
case MFMT_TOKEN_LITERAL:
len += fputs(t->literal.string, f);
break;
case MFMT_TOKEN_CALLBACK:
/* fprintf(stderr, "token: %s\n", t->callback.name); */
if(t->callback.name[0]) {
for(mfmt_val_t *v = args; v; v++) {
/* fprintf(stderr, "val: %s\n", v->name); */
if(strcmp(v->name, t->callback.name) == 0) {
len += fputs(v->string, f);
break;
}
}
} else {
len += fputs(args->string, f);
args++;
}
break;
}
}
return len;
}
size_t mfmt_render_int(mfmt_token_callback_t *t, const intmax_t i, FILE *f) {
(void)t;
return fprintf(f, "%jd", i);
}
size_t mfmt_render_str(mfmt_token_callback_t *t, const char *str, FILE *f) {
(void)t;
return fputs(str, f);
}

66
lib/libalpm/mfmt.h Normal file
View File

@@ -0,0 +1,66 @@
#include <stdio.h>
#include <stddef.h>
#include <inttypes.h>
typedef enum mfmt_token_type_t {
MFMT_TOKEN_LITERAL,
MFMT_TOKEN_CALLBACK,
} mfmt_token_type_t;
typedef struct mfmt_token_literal_t {
mfmt_token_type_t type;
char *string;
} mfmt_token_literal_t;
typedef struct mfmt_token_base_t {
mfmt_token_type_t type;
} mfmt_token_base_t;
typedef struct mfmt_token_callback_t {
mfmt_token_type_t type;
size_t position;
char *name;
size_t width;
size_t precision;
char align;
char fill;
char conversion;
int sign;
} mfmt_token_callback_t;
typedef union mfmt_token_t {
mfmt_token_base_t base;
mfmt_token_literal_t literal;
mfmt_token_callback_t callback;
} mfmt_token_t;
typedef size_t (mfmt_callback_t)(FILE *f, mfmt_token_callback_t *token, void *ctx, void *args);
typedef struct mfmt_t {
mfmt_callback_t *cb;
void *ctx;
size_t token_count;
mfmt_token_t *tokens;
} mfmt_t;
typedef struct mfmt_val_t {
const char *name;
const char *string;
} mfmt_val_t;
mfmt_t *mfmt_parse(const char *tmpl, mfmt_callback_t *cb, void *ctx);
size_t mfmt_printf(mfmt_t *mfmt, void *args, FILE *f);
size_t mfmt_printd(mfmt_t *mfmt, void *args, int fd);
size_t mfmt_printb(mfmt_t *mfmt, void *args, char *buf, size_t buflen);
size_t mfmt_prints(mfmt_t *mfmt, void *args, char **buf, size_t *buflen);
void mfmt_free(mfmt_t *mfmt);
size_t mfmt_render_int(mfmt_token_callback_t *token, intmax_t i, FILE *f);
size_t mfmt_render_uint(mfmt_token_callback_t *token, uintmax_t i, FILE *f);
size_t mfmt_render_str(mfmt_token_callback_t *token, const char *str, FILE *f);
size_t mfmt_formatf(const char *tmpl, mfmt_callback_t *cb, void *ctx, FILE *f);
size_t mfmt_formatd(const char *tmpl, mfmt_callback_t *cb, void *ctx, int fd);
size_t mfmt_formatb(const char *tmpl, mfmt_callback_t *cb, void *ctx, char *buf, size_t buflen);
size_t mfmt_formats(const char *tmpl, mfmt_callback_t *cb, void *ctx, char **buf);

View File

@@ -1,7 +1,7 @@
/*
* package.c
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
* Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
* Copyright (c) 2005, 2006 by Christian Hamar <krics@linuxforum.hu>
@@ -98,6 +98,7 @@ static alpm_list_t *_pkg_get_provides(alpm_pkg_t *pkg) { return pkg->provides;
static alpm_list_t *_pkg_get_replaces(alpm_pkg_t *pkg) { return pkg->replaces; }
static alpm_filelist_t *_pkg_get_files(alpm_pkg_t *pkg) { return &(pkg->files); }
static alpm_list_t *_pkg_get_backup(alpm_pkg_t *pkg) { return pkg->backup; }
static alpm_list_t *_pkg_get_xdata(alpm_pkg_t *pkg) { return pkg->xdata; }
static void *_pkg_changelog_open(alpm_pkg_t UNUSED *pkg)
{
@@ -138,7 +139,7 @@ static int _pkg_force_load(alpm_pkg_t UNUSED *pkg) { return 0; }
/** The standard package operations struct. Get fields directly from the
* struct itself with no abstraction layer or any type of lazy loading.
*/
struct pkg_operations default_pkg_ops = {
const struct pkg_operations default_pkg_ops = {
.get_base = _pkg_get_base,
.get_desc = _pkg_get_desc,
.get_url = _pkg_get_url,
@@ -162,6 +163,7 @@ struct pkg_operations default_pkg_ops = {
.get_replaces = _pkg_get_replaces,
.get_files = _pkg_get_files,
.get_backup = _pkg_get_backup,
.get_xdata = _pkg_get_xdata,
.changelog_open = _pkg_changelog_open,
.changelog_read = _pkg_changelog_read,
@@ -191,6 +193,12 @@ const char SYMEXPORT *alpm_pkg_get_base(alpm_pkg_t *pkg)
return pkg->ops->get_base(pkg);
}
alpm_handle_t SYMEXPORT *alpm_pkg_get_handle(alpm_pkg_t *pkg)
{
ASSERT(pkg != NULL, return NULL);
return pkg->handle;
}
const char SYMEXPORT *alpm_pkg_get_name(alpm_pkg_t *pkg)
{
ASSERT(pkg != NULL, return NULL);
@@ -479,6 +487,13 @@ int SYMEXPORT alpm_pkg_has_scriptlet(alpm_pkg_t *pkg)
return pkg->ops->has_scriptlet(pkg);
}
alpm_list_t SYMEXPORT *alpm_pkg_get_xdata(alpm_pkg_t *pkg)
{
ASSERT(pkg != NULL, return NULL);
pkg->handle->pm_errno = ALPM_ERR_OK;
return pkg->ops->get_xdata(pkg);
}
static void find_requiredby(alpm_pkg_t *pkg, alpm_db_t *db, alpm_list_t **reqs,
int optional)
{
@@ -671,6 +686,30 @@ static void free_deplist(alpm_list_t *deps)
alpm_list_free(deps);
}
alpm_pkg_xdata_t *_alpm_pkg_parse_xdata(const char *string)
{
alpm_pkg_xdata_t *pd;
const char *sep;
if(string == NULL || (sep = strchr(string, '=')) == NULL) {
return NULL;
}
CALLOC(pd, 1, sizeof(alpm_pkg_xdata_t), return NULL);
STRNDUP(pd->name, string, sep - string, FREE(pd); return NULL);
STRDUP(pd->value, sep + 1, FREE(pd->name); FREE(pd); return NULL);
return pd;
}
void _alpm_pkg_xdata_free(alpm_pkg_xdata_t *pd)
{
if(pd) {
free(pd->name);
free(pd->value);
free(pd);
}
}
void _alpm_pkg_free(alpm_pkg_t *pkg)
{
if(pkg == NULL) {
@@ -701,6 +740,8 @@ void _alpm_pkg_free(alpm_pkg_t *pkg)
}
alpm_list_free_inner(pkg->backup, (alpm_list_fn_free)_alpm_backup_free);
alpm_list_free(pkg->backup);
alpm_list_free_inner(pkg->xdata, (alpm_list_fn_free)_alpm_pkg_xdata_free);
alpm_list_free(pkg->xdata);
free_deplist(pkg->depends);
free_deplist(pkg->optdepends);
free_deplist(pkg->checkdepends);

View File

@@ -1,7 +1,7 @@
/*
* package.h
*
* Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2006-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
* Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
* Copyright (c) 2006 by David Kimpe <dnaku@frugalware.org>
@@ -67,6 +67,8 @@ struct pkg_operations {
alpm_filelist_t *(*get_files) (alpm_pkg_t *);
alpm_list_t *(*get_backup) (alpm_pkg_t *);
alpm_list_t *(*get_xdata) (alpm_pkg_t *);
void *(*changelog_open) (alpm_pkg_t *);
size_t (*changelog_read) (void *, size_t, const alpm_pkg_t *, void *);
int (*changelog_close) (const alpm_pkg_t *, void *);
@@ -83,9 +85,9 @@ struct pkg_operations {
* The actual definition is in package.c so it can have access to the
* default accessor functions which are defined there.
*/
extern struct pkg_operations default_pkg_ops;
extern const struct pkg_operations default_pkg_ops;
struct __alpm_pkg_t {
struct _alpm_pkg_t {
unsigned long name_hash;
char *filename;
char *base;
@@ -121,7 +123,7 @@ struct __alpm_pkg_t {
alpm_list_t *removes; /* in transaction targets only */
alpm_pkg_t *oldpkg; /* in transaction targets only */
struct pkg_operations *ops;
const struct pkg_operations *ops;
alpm_filelist_t files;
@@ -136,6 +138,8 @@ struct __alpm_pkg_t {
alpm_pkgreason_t reason;
int scriptlet;
alpm_list_t *xdata;
/* Bitfield from alpm_dbinfrq_t */
int infolevel;
/* Bitfield from alpm_pkgvalidation_t */
@@ -158,4 +162,7 @@ alpm_pkg_t *_alpm_pkg_load_internal(alpm_handle_t *handle,
int _alpm_pkg_cmp(const void *p1, const void *p2);
int _alpm_pkg_compare_versions(alpm_pkg_t *local_pkg, alpm_pkg_t *pkg);
alpm_pkg_xdata_t *_alpm_pkg_parse_xdata(const char *string);
void _alpm_pkg_xdata_free(alpm_pkg_xdata_t *pd);
#endif /* ALPM_PACKAGE_H */

View File

@@ -1,7 +1,7 @@
/*
* pkghash.c
*
* Copyright (c) 2011-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2011-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by

View File

@@ -1,7 +1,7 @@
/*
* pkghash.h
*
* Copyright (c) 2011-2020 Pacman Development Team <pacman-dev@archlinux.org>
* Copyright (c) 2011-2022 Pacman Development Team <pacman-dev@lists.archlinux.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -32,7 +32,7 @@
* A combination of a hash table and a list, allowing for fast look-up
* by package name but also iteration over the packages.
*/
struct __alpm_pkghash_t {
struct _alpm_pkghash_t {
/** data held by the hash table */
alpm_list_t **hash_table;
/** head node of the hash table data in normal list format */
@@ -45,7 +45,7 @@ struct __alpm_pkghash_t {
unsigned int limit;
};
typedef struct __alpm_pkghash_t alpm_pkghash_t;
typedef struct _alpm_pkghash_t alpm_pkghash_t;
alpm_pkghash_t *_alpm_pkghash_create(unsigned int size);

View File

@@ -1,6 +1,7 @@
# Set of available languages.
ar
ast
az_AZ
bg
br
ca
@@ -17,6 +18,7 @@ eu_ES
fi
fr
gl
hi
hr
hu
id

View File

@@ -15,7 +15,7 @@ XGETTEXT_OPTIONS = \
# This is the copyright holder that gets inserted into the header of the
# $(DOMAIN).pot file. Set this to the copyright holder of the surrounding
# package.
COPYRIGHT_HOLDER = Pacman Development Team <pacman-dev@archlinux.org>
COPYRIGHT_HOLDER = Pacman Development Team <pacman-dev@lists.archlinux.org>
# This is the email address or URL to which the translators shall report
# bugs in the untranslated strings.

View File

@@ -1,6 +1,6 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Pacman Development Team <pacman-dev@archlinux.org>
# This file is distributed under the same license as the PACKAGE package.
# Copyright (C) YEAR "Pacman Development Team <pacman-dev@archlinux.org>"
# This file is distributed under the same license as the libalpm package.
#
# Translators:
# kraim <biskraim@gmail.com>, 2013
@@ -17,8 +17,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Arch Linux Pacman package manager\n"
"Report-Msgid-Bugs-To: http://bugs.archlinux.org/index.php?project=3\n"
"POT-Creation-Date: 2019-10-21 17:23+1000\n"
"PO-Revision-Date: 2019-10-07 08:12+0000\n"
"POT-Creation-Date: 2021-09-04 16:15+1000\n"
"PO-Revision-Date: 2021-05-20 02:25+0000\n"
"Last-Translator: Allan McRae <allan@archlinux.org>\n"
"Language-Team: Arabic (http://www.transifex.com/toofishes/archlinux-pacman/"
"language/ar/)\n"
@@ -29,17 +29,17 @@ msgstr ""
"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
"&& n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"
#: lib/libalpm/add.c:91 lib/libalpm/sync.c:290
#: lib/libalpm/add.c:90 lib/libalpm/sync.c:279
#, c-format
msgid "%s-%s is up to date -- skipping\n"
msgstr "%s-%s محدّثة -- سأتجاوزها\n"
#: lib/libalpm/add.c:95
#: lib/libalpm/add.c:94
#, c-format
msgid "%s-%s is up to date -- reinstalling\n"
msgstr "%s-%s محدّثة -- سأعيد تثبيتها\n"
#: lib/libalpm/add.c:100
#: lib/libalpm/add.c:99
#, c-format
msgid "downgrading package %s (%s => %s)\n"
msgstr "سأُنزِل الحزمة %s (من %s إلى %s)\n"
@@ -49,17 +49,17 @@ msgstr "سأُنزِل الحزمة %s (من %s إلى %s)\n"
msgid "cannot allocate disk archive object"
msgstr ""
#: lib/libalpm/add.c:143 lib/libalpm/util.c:382
#: lib/libalpm/add.c:143 lib/libalpm/util.c:384
#, c-format
msgid "warning given when extracting %s (%s)\n"
msgstr "تحذير عند الاستخراج %s (%s)\n"
#: lib/libalpm/add.c:146 lib/libalpm/util.c:385
#: lib/libalpm/add.c:146 lib/libalpm/util.c:387
#, c-format
msgid "could not extract %s (%s)\n"
msgstr "تعذّر استخراج %s (%s)\n"
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:574 lib/libalpm/remove.c:542
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:709 lib/libalpm/remove.c:534
#, c-format
msgid "could not rename %s to %s (%s)\n"
msgstr "تعذر إعادة تسمية %s إلى %s (%s)\n"
@@ -102,137 +102,137 @@ msgstr "الاستخراج: عدم الكتابة فوق المجلد بالمل
msgid "unable to extract %s.pacnew: path too long"
msgstr ""
#: lib/libalpm/add.c:513 lib/libalpm/util.c:334 lib/libalpm/util.c:592
#: lib/libalpm/add.c:510 lib/libalpm/util.c:335 lib/libalpm/util.c:600
#, c-format
msgid "could not get current working directory\n"
msgstr "غير قادر على جلب مجلد العمل الحالي\n"
#: lib/libalpm/add.c:518 lib/libalpm/util.c:339 lib/libalpm/util.c:597
#: lib/libalpm/util.c:650
#: lib/libalpm/add.c:515 lib/libalpm/util.c:340 lib/libalpm/util.c:605
#: lib/libalpm/util.c:658
#, c-format
msgid "could not change directory to %s (%s)\n"
msgstr "غير قادر على تحويل المجلد إلى %s (%s)\n"
#: lib/libalpm/add.c:575 lib/libalpm/util.c:403 lib/libalpm/util.c:766
#: lib/libalpm/add.c:571 lib/libalpm/util.c:405 lib/libalpm/util.c:774
#, c-format
msgid "could not restore working directory (%s)\n"
msgstr "تعذر استعادة مجلد العمل (%s)\n"
#: lib/libalpm/add.c:583
#: lib/libalpm/add.c:579
#, c-format
msgid "problem occurred while upgrading %s\n"
msgstr "حدثت مشكلة أثناء ترقية %s\n"
#: lib/libalpm/add.c:589
#: lib/libalpm/add.c:585
#, c-format
msgid "problem occurred while installing %s\n"
msgstr "حدثت مشكلة أثناء تثبيت %s\n"
#: lib/libalpm/add.c:604
#: lib/libalpm/add.c:600
#, c-format
msgid "could not update database entry %s-%s\n"
msgstr "غير قادر على تحديث مدخل قاعدة البيانات %s-%s\n"
#: lib/libalpm/add.c:615
#: lib/libalpm/add.c:610
#, c-format
msgid "could not add entry '%s' in cache\n"
msgstr "غير قادر على إضافة المدخل '%s' إلى المخبئيات\n"
#: lib/libalpm/be_local.c:267
#: lib/libalpm/be_local.c:266
#, c-format
msgid "error while reading file %s: %s\n"
msgstr "خطأ أثناء قراءة الملف %s: %s\n"
#: lib/libalpm/be_local.c:364
#: lib/libalpm/be_local.c:376
#, c-format
msgid "removing invalid database: %s\n"
msgstr "تجري إزالة قاعدة البيانات الغير صالحة: %s\n"
#: lib/libalpm/be_local.c:415 lib/libalpm/be_local.c:905
#: lib/libalpm/be_local.c:427 lib/libalpm/be_local.c:909
#, c-format
msgid "could not create directory %s: %s\n"
msgstr "غير قادر على إنشاء الدليل %s : %s\n"
#: lib/libalpm/be_local.c:590 lib/libalpm/be_sync.c:386
#: lib/libalpm/be_local.c:602 lib/libalpm/be_sync.c:322
#, c-format
msgid "invalid name for database entry '%s'\n"
msgstr "مدخل قاعدة بيانات غير صالح '%s'\n"
#: lib/libalpm/be_local.c:598
#: lib/libalpm/be_local.c:610
#, c-format
msgid "duplicated database entry '%s'\n"
msgstr "مدخل قاعدة بيانات مكرر '%s'\n"
#: lib/libalpm/be_local.c:610
#: lib/libalpm/be_local.c:622
#, c-format
msgid "corrupted database entry '%s'\n"
msgstr "مدخل قاعدة بيانات معطوب '%s'\n"
#: lib/libalpm/be_local.c:713 lib/libalpm/be_local.c:809
#: lib/libalpm/be_local.c:954 lib/libalpm/be_local.c:1051
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:422 lib/libalpm/util.c:253
#: lib/libalpm/util.c:269
#: lib/libalpm/be_local.c:722 lib/libalpm/be_local.c:818
#: lib/libalpm/be_local.c:958 lib/libalpm/be_local.c:1055
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:823 lib/libalpm/util.c:254
#: lib/libalpm/util.c:270
#, c-format
msgid "could not open file %s: %s\n"
msgstr "غير قادر على فتح اللمف %s: %s\n"
#: lib/libalpm/be_local.c:729 lib/libalpm/be_sync.c:650
#: lib/libalpm/be_local.c:738 lib/libalpm/be_sync.c:582
#, c-format
msgid "%s database is inconsistent: name mismatch on package %s\n"
msgstr "%s قاعدة البيانات غير متناسقة : اسم الحزمة غير مطابق %s\n"
#: lib/libalpm/be_local.c:735 lib/libalpm/be_sync.c:656
#: lib/libalpm/be_local.c:744 lib/libalpm/be_sync.c:588
#, c-format
msgid "%s database is inconsistent: version mismatch on package %s\n"
msgstr "%s قاعدة البيانات غير متناسقة : إصدار الحزمة غير مطابق %s\n"
#: lib/libalpm/be_local.c:776
#: lib/libalpm/be_local.c:785
#, c-format
msgid "unknown validation type for package %s: %s\n"
msgstr "نوع التّحقق غير مألوف في الحزمة %s: %s\n"
#: lib/libalpm/be_package.c:479 lib/libalpm/be_package.c:637
#: lib/libalpm/be_package.c:650
#: lib/libalpm/be_package.c:478 lib/libalpm/be_package.c:631
#: lib/libalpm/be_package.c:643
#, c-format
msgid "error while reading package %s: %s\n"
msgstr "خطأ أثناء قراءة الحزمة %s: %s\n"
#: lib/libalpm/be_package.c:493 lib/libalpm/be_package.c:517
#: lib/libalpm/be_package.c:491 lib/libalpm/be_package.c:514
#, c-format
msgid "error while reading mtree of package %s: %s\n"
msgstr "خطأ أثناء قراءة mtree في الحزمة %s: %s\n"
#: lib/libalpm/be_package.c:603
#: lib/libalpm/be_package.c:597
#, c-format
msgid "could not parse package description file in %s\n"
msgstr "تعذّر تحليل ملف وصف الحزمة في %s\n"
#: lib/libalpm/be_package.c:608
#: lib/libalpm/be_package.c:602
#, c-format
msgid "missing package name in %s\n"
msgstr "اسم الحزمة مفقود في %s\n"
#: lib/libalpm/be_package.c:612
#: lib/libalpm/be_package.c:606
#, c-format
msgid "missing package version in %s\n"
msgstr "إصدارة الحزمة مفقودة في %s\n"
#: lib/libalpm/be_package.c:616
#: lib/libalpm/be_package.c:610
#, c-format
msgid "invalid package version in %s\n"
msgstr "إصدارة الحزمة غير صالح في %s\n"
#: lib/libalpm/be_package.c:657
#: lib/libalpm/be_package.c:649
#, c-format
msgid "missing package metadata in %s\n"
msgstr "معلومات الحزمة مفقودة في %s\n"
#: lib/libalpm/be_package.c:750
#: lib/libalpm/be_package.c:741
#, c-format
msgid "failed to read signature file: %s\n"
msgstr "فشل في قراءة ملف التّوقيع: %s\n"
#: lib/libalpm/be_package.c:779 lib/libalpm/sync.c:953
#: lib/libalpm/be_package.c:770 lib/libalpm/sync.c:953
#, c-format
msgid "required key missing from keyring\n"
msgstr "مفتاح ضروري غير موجود في حلقة المفاتيح\n"
@@ -242,32 +242,32 @@ msgstr "مفتاح ضروري غير موجود في حلقة المفاتيح\n
msgid "removing invalid file: %s\n"
msgstr "يجري حذف ملف غير صالح: %s\n"
#: lib/libalpm/be_sync.c:515
#: lib/libalpm/be_sync.c:449
#, c-format
msgid "could not parse package description file '%s' from db '%s'\n"
msgstr "تعذّر تحليل ملف وصف الحزمة '%s' من قاعدة البيانات '%s'\n"
#: lib/libalpm/be_sync.c:522
#: lib/libalpm/be_sync.c:456
#, c-format
msgid "could not read db '%s' (%s)\n"
msgstr ""
#: lib/libalpm/be_sync.c:556 lib/libalpm/be_sync.c:561
#: lib/libalpm/be_sync.c:489 lib/libalpm/be_sync.c:494
#, c-format
msgid "%s database is inconsistent: filename of package %s is illegal\n"
msgstr "%s قاعدة البيانات غير متناسقة : اسم ملف الحزمة غير قانوني %s\n"
#: lib/libalpm/be_sync.c:566
#: lib/libalpm/be_sync.c:499
#, c-format
msgid "%s database is inconsistent: filename of package %s is too long\n"
msgstr "%s قاعدة البيانات غير متناسقة : اسم ملف الحزمة طويل جدًا %s\n"
#: lib/libalpm/be_sync.c:632
#: lib/libalpm/be_sync.c:564
#, c-format
msgid "unknown database file: %s\n"
msgstr "ملف قاعدة البيانات مجهول : %s\n"
#: lib/libalpm/db.c:370
#: lib/libalpm/db.c:344
#, c-format
msgid "database path is undefined\n"
msgstr "مسار قاعدة البيانات غير معروف\n"
@@ -287,12 +287,12 @@ msgstr "%s سيتم إزالتها بعد %s اعتمادياتها\n"
msgid "%s will be installed before its %s dependency\n"
msgstr "%s سيتم تثبيتها قبل %s اعتمادياتها\n"
#: lib/libalpm/deps.c:681 lib/libalpm/deps.c:712
#: lib/libalpm/deps.c:666 lib/libalpm/deps.c:697
#, c-format
msgid "ignoring package %s-%s\n"
msgstr "تجاهل الحزمة %s-%s\n"
#: lib/libalpm/deps.c:869
#: lib/libalpm/deps.c:842
#, c-format
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
msgstr "تعذّر تحليل \"%s\"، اعتمادية لـ \"%s\"\n"
@@ -347,40 +347,66 @@ msgstr "غير قادر على تحديد نقطة وصل الجذر %s\n"
msgid "Partition %s is mounted read only\n"
msgstr "القسم %s موصول بصفة القراءة فقط\n"
#: lib/libalpm/dload.c:161
#: lib/libalpm/dload.c:116
#, c-format
msgid ""
"too many errors from %s, skipping for the remainder of this transaction\n"
msgstr ""
#: lib/libalpm/dload.c:220
#, c-format
msgid "disk"
msgstr "القرص"
#: lib/libalpm/dload.c:348
#: lib/libalpm/dload.c:392
#, c-format
msgid "failed to create temporary file for download\n"
msgstr "غير قادر على إنشاء ملف مؤقت للتحميل\n"
#: lib/libalpm/dload.c:393
#, c-format
msgid "url '%s' is invalid\n"
msgstr "العنوان '%s' غير صالح\n"
#: lib/libalpm/dload.c:464 lib/libalpm/dload.c:485 lib/libalpm/dload.c:496
#: lib/libalpm/dload.c:509 lib/libalpm/dload.c:547 lib/libalpm/dload.c:561
#, c-format
msgid "failed retrieving file '%s' from %s : %s\n"
msgstr "فشل في استقبال الملف '%s' من %s : %s\n"
#: lib/libalpm/dload.c:477
#: lib/libalpm/dload.c:539
#, c-format
msgid "failed retrieving file '%s' from %s : expected download size exceeded\n"
msgstr "فشل في استقبال الملف '%s' من %s : تم تجاوز حجم التحميل\n"
#: lib/libalpm/dload.c:532
#: lib/libalpm/dload.c:687
#, c-format
msgid "%s appears to be truncated: %jd/%jd bytes\n"
msgstr "%s يبدو غير موثوقًا: %jd/%jd بايت\n"
#: lib/libalpm/dload.c:677 lib/libalpm/dload.c:706
#: lib/libalpm/dload.c:787
#, c-format
msgid "failed to download %s\n"
msgstr "tag td jpldg %s\n"
msgid "url '%s' is invalid\n"
msgstr "العنوان '%s' غير صالح\n"
#: lib/libalpm/dload.c:893
#, c-format
msgid "failed to setup a download payload for %s\n"
msgstr ""
#: lib/libalpm/dload.c:905
#, c-format
msgid "curl returned error %d from transfer\n"
msgstr ""
#: lib/libalpm/dload.c:929
#, c-format
msgid "curl transfer error: %d\n"
msgstr ""
#: lib/libalpm/dload.c:1055 lib/libalpm/sync.c:840
#, c-format
msgid "failed to retrieve some files\n"
msgstr "تعذّر استقبال بعض الملفات\n"
#: lib/libalpm/dload.c:1078
#, c-format
msgid "download completed successfully but no file in the cache\n"
msgstr ""
#: lib/libalpm/error.c:40
#, c-format
@@ -497,7 +523,7 @@ msgstr "لا يوجد خواديم مهيأة للمستودع"
msgid "transaction already initialized"
msgstr "المُبادلة مهيأة بالفعل"
#: lib/libalpm/error.c:90 lib/libalpm/error.c:94
#: lib/libalpm/error.c:90 lib/libalpm/error.c:96
#, c-format
msgid "transaction not initialized"
msgstr "لم يتم تهيئة المُبادلة"
@@ -507,86 +533,86 @@ msgstr "لم يتم تهيئة المُبادلة"
msgid "duplicate target"
msgstr "الهدف مكرر"
#: lib/libalpm/error.c:96
#: lib/libalpm/error.c:94
#, c-format
msgid "duplicate filename"
msgstr ""
#: lib/libalpm/error.c:98
#, c-format
msgid "transaction not prepared"
msgstr "المُبادلة غير مجهزة"
#: lib/libalpm/error.c:98
#: lib/libalpm/error.c:100
#, c-format
msgid "transaction aborted"
msgstr "أحبطت المُبادلة"
#: lib/libalpm/error.c:100
#: lib/libalpm/error.c:102
#, c-format
msgid "operation not compatible with the transaction type"
msgstr "العملية غير متوافقة مع نوع المُبادلة"
#: lib/libalpm/error.c:102
#: lib/libalpm/error.c:104
#, c-format
msgid "transaction commit attempt when database is not locked"
msgstr "تتم محاولة بدء المُبادلة عند إلغاء قفل قاعدة البيانات"
#: lib/libalpm/error.c:104
#: lib/libalpm/error.c:106
#, c-format
msgid "failed to run transaction hooks"
msgstr ""
#: lib/libalpm/error.c:107
#: lib/libalpm/error.c:109
#, c-format
msgid "could not find or read package"
msgstr "غير قادر على إيجاد أو قراءة الحزمة"
#: lib/libalpm/error.c:109
#: lib/libalpm/error.c:111
#, c-format
msgid "operation cancelled due to ignorepkg"
msgstr "ألغيت العملية بسبب حزمة متجاهلة"
#: lib/libalpm/error.c:111
#: lib/libalpm/error.c:113
#, c-format
msgid "invalid or corrupted package"
msgstr "حزمة غير صالحة أو معطوبة"
#: lib/libalpm/error.c:113
#: lib/libalpm/error.c:115
#, c-format
msgid "invalid or corrupted package (checksum)"
msgstr "حزمة معطوبة أو غير صالحة (البصمة)"
#: lib/libalpm/error.c:115
#: lib/libalpm/error.c:117
#, c-format
msgid "invalid or corrupted package (PGP signature)"
msgstr "حزمة معطوبة أو غير صالحة (توقيع PGP)"
#: lib/libalpm/error.c:117
#: lib/libalpm/error.c:119
#, c-format
msgid "package missing required signature"
msgstr "الحزمة مفقودة مطلوب توقيع"
#: lib/libalpm/error.c:119
#: lib/libalpm/error.c:121
#, c-format
msgid "cannot open package file"
msgstr "غير قادر على فتح ملف الحزمة"
#: lib/libalpm/error.c:121
#: lib/libalpm/error.c:123
#, c-format
msgid "cannot remove all files for package"
msgstr "غير قادر على مسح جميع ملفات الجزمة"
#: lib/libalpm/error.c:123
#: lib/libalpm/error.c:125
#, c-format
msgid "package filename is not valid"
msgstr "اسم ملف الحزمة غير سليم"
#: lib/libalpm/error.c:125
#: lib/libalpm/error.c:127
#, c-format
msgid "package architecture is not valid"
msgstr "معمارية الحزمة غير سليمة"
#: lib/libalpm/error.c:127
#, c-format
msgid "could not find repository for target"
msgstr "تعذّر العثور على المستودع الهدف"
#: lib/libalpm/error.c:130
#, c-format
msgid "missing PGP signature"
@@ -652,12 +678,12 @@ msgstr ""
msgid "unexpected error"
msgstr "خطأ غير متوقع"
#: lib/libalpm/handle.c:153
#: lib/libalpm/handle.c:142
#, c-format
msgid "lock file missing %s\n"
msgstr "الملف المغلق مفقود %s\n"
#: lib/libalpm/handle.c:159
#: lib/libalpm/handle.c:148
#, c-format
msgid "could not remove lock file %s\n"
msgstr "تعذّر إزالة ملف القفل %s\n"
@@ -729,7 +755,7 @@ msgstr ""
msgid "unable to run hook %s: %s\n"
msgstr ""
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:386
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:378
#, c-format
msgid "could not open directory: %s: %s\n"
msgstr "تعذّر فتح المجلد: %s: %s\n"
@@ -739,7 +765,7 @@ msgstr "تعذّر فتح المجلد: %s: %s\n"
msgid "could not open file: %s%s: %s\n"
msgstr ""
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:259
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:260
#, c-format
msgid "could not stat file %s: %s\n"
msgstr "تعذّر إحصاء الملف %s: %s\n"
@@ -749,185 +775,185 @@ msgstr "تعذّر إحصاء الملف %s: %s\n"
msgid "could not read directory: %s: %s\n"
msgstr ""
#: lib/libalpm/package.c:578
#: lib/libalpm/package.c:598
#, c-format
msgid "could not fully load metadata for package %s-%s\n"
msgstr "غير قادر على استيراد معلومات الميتا للحزمة %s-%s\n"
#: lib/libalpm/remove.c:119
#: lib/libalpm/remove.c:111
#, c-format
msgid "could not find %s in database -- skipping\n"
msgstr "لم يعثر على %s في قاعدة البيانات -- يجري التجاوز\n"
#: lib/libalpm/remove.c:154
#: lib/libalpm/remove.c:146
#, c-format
msgid "removing %s from target list\n"
msgstr "يجري حذف %s من قائمة الأهداف\n"
#: lib/libalpm/remove.c:346
#: lib/libalpm/remove.c:338
#, c-format
msgid "cannot remove file '%s': %s\n"
msgstr ""
"تعذر إزالة الملف '%s': %s\n"
"\n"
#: lib/libalpm/remove.c:411 lib/libalpm/remove.c:420
#: lib/libalpm/remove.c:403 lib/libalpm/remove.c:412
#, c-format
msgid "could not backup %s due to PATH_MAX overflow\n"
msgstr ""
#: lib/libalpm/remove.c:562
#: lib/libalpm/remove.c:554
#, c-format
msgid "cannot remove %s (%s)\n"
msgstr "تعذّر إزالة %s (%s)\n"
#: lib/libalpm/remove.c:735
#: lib/libalpm/remove.c:727
#, c-format
msgid "could not remove database entry %s-%s\n"
msgstr "تعذّر إزالة مدخل قاعدة البيانات %s-%s\n"
#: lib/libalpm/remove.c:740
#: lib/libalpm/remove.c:732
#, c-format
msgid "could not remove entry '%s' from cache\n"
msgstr "تعذر إزالة المدخل '%s' من المخبئيات\n"
#: lib/libalpm/signing.c:171
#: lib/libalpm/signing.c:163
#, c-format
msgid "Public keyring not found; have you run '%s'?\n"
msgstr ""
#: lib/libalpm/signing.c:207 lib/libalpm/signing.c:784
#: lib/libalpm/signing.c:199 lib/libalpm/signing.c:767
#, c-format
msgid "GPGME error: %s\n"
msgstr ""
#: lib/libalpm/signing.c:284
#: lib/libalpm/signing.c:274
#, c-format
msgid "looking up key %s using WKD\n"
msgstr ""
#: lib/libalpm/signing.c:293
#: lib/libalpm/signing.c:283
#, c-format
msgid "gpg error: %s\n"
msgstr ""
#: lib/libalpm/signing.c:441 lib/libalpm/signing.c:515
#: lib/libalpm/signing.c:430 lib/libalpm/signing.c:503
#, c-format
msgid "keyring is not writable\n"
msgstr ""
#: lib/libalpm/signing.c:539
#: lib/libalpm/signing.c:531
#, c-format
msgid "key \"%s\" on keyserver\n"
msgstr ""
#: lib/libalpm/signing.c:544
#: lib/libalpm/signing.c:536
#, c-format
msgid "key \"%s\" could not be imported\n"
msgstr ""
#: lib/libalpm/signing.c:548
#: lib/libalpm/signing.c:540
#, c-format
msgid "key \"%s\" could not be looked up remotely\n"
msgstr ""
#: lib/libalpm/signing.c:943 lib/libalpm/sync.c:1022
#: lib/libalpm/signing.c:926 lib/libalpm/sync.c:1022
#, c-format
msgid "%s: missing required signature\n"
msgstr "التوقيع المطلوب مفقود :%s\n"
#: lib/libalpm/signing.c:958
#: lib/libalpm/signing.c:941
#, c-format
msgid "%s: signature from \"%s\" is marginal trust\n"
msgstr ""
#: lib/libalpm/signing.c:966
#: lib/libalpm/signing.c:949
#, c-format
msgid "%s: signature from \"%s\" is unknown trust\n"
msgstr ""
#: lib/libalpm/signing.c:973
#: lib/libalpm/signing.c:956
#, c-format
msgid "%s: signature from \"%s\" should never be trusted\n"
msgstr ""
#: lib/libalpm/signing.c:985
#: lib/libalpm/signing.c:968
#, c-format
msgid "%s: key \"%s\" is unknown\n"
msgstr ""
#: lib/libalpm/signing.c:994
#: lib/libalpm/signing.c:977
#, c-format
msgid "%s: key \"%s\" is disabled\n"
msgstr ""
#: lib/libalpm/signing.c:998
#: lib/libalpm/signing.c:981
#, c-format
msgid "%s: signature from \"%s\" is expired\n"
msgstr ""
#: lib/libalpm/signing.c:1002
#: lib/libalpm/signing.c:985
#, c-format
msgid "%s: signature from \"%s\" is invalid\n"
msgstr ""
#: lib/libalpm/signing.c:1079 lib/libalpm/signing.c:1147
#: lib/libalpm/signing.c:1226
#: lib/libalpm/signing.c:1043 lib/libalpm/signing.c:1104
#: lib/libalpm/signing.c:1183
#, c-format
msgid "%s: signature format error\n"
msgstr ""
#: lib/libalpm/signing.c:1179 lib/libalpm/signing.c:1212
#: lib/libalpm/signing.c:1220
#: lib/libalpm/signing.c:1136 lib/libalpm/signing.c:1169
#: lib/libalpm/signing.c:1177
#, c-format
msgid "%s: unsupported signature format\n"
msgstr ""
#: lib/libalpm/sync.c:99
#: lib/libalpm/sync.c:96
#, c-format
msgid "%s: ignoring package upgrade (%s => %s)\n"
msgstr "%s: يجري تجاهل تحديث الحزمة (%s => %s) \n"
#: lib/libalpm/sync.c:111
#: lib/libalpm/sync.c:108
#, c-format
msgid "%s: ignoring package downgrade (%s => %s)\n"
msgstr "%s: يجري تجاهل إرجاع الحزمة (%s => %s) \n"
#: lib/libalpm/sync.c:114
#: lib/libalpm/sync.c:111
#, c-format
msgid "%s: downgrading from version %s to version %s\n"
msgstr "%s: يجري الإرجاع من الإصدار %s إلى الإصدار %s\n"
#: lib/libalpm/sync.c:120
#: lib/libalpm/sync.c:117
#, c-format
msgid "%s: local (%s) is newer than %s (%s)\n"
msgstr "%s: (%s) المحلّي أحدث من %s (%s)\n"
#: lib/libalpm/sync.c:161
#: lib/libalpm/sync.c:158
#, c-format
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
msgstr "يجري تجاهل استبدال الحزمة (%s-%s => %s-%s)\n"
#: lib/libalpm/sync.c:177
#: lib/libalpm/sync.c:174
#, c-format
msgid "cannot replace %s by %s\n"
msgstr "تعذر استبدال %s بـ %s\n"
#: lib/libalpm/sync.c:535 lib/libalpm/sync.c:605
#: lib/libalpm/sync.c:476
#, c-format
msgid "packages %s and %s have the same filename: %s\n"
msgstr ""
#: lib/libalpm/sync.c:542 lib/libalpm/sync.c:612
#, c-format
msgid "unresolvable package conflicts detected\n"
msgstr "حدثت تعارضات حزميّة تعذّر تحليلها\n"
#: lib/libalpm/sync.c:555
#: lib/libalpm/sync.c:562
#, c-format
msgid "removing '%s' from target list because it conflicts with '%s'\n"
msgstr " يجري حذف '%s' من قائمة الأهداف بسبب تعارضها مع '%s'\n"
#: lib/libalpm/sync.c:849
#, c-format
msgid "failed to retrieve some files\n"
msgstr "تعذّر استقبال بعض الملفات\n"
#: lib/libalpm/sync.c:1036
#, c-format
msgid "failed to read file %s: %s\n"
@@ -948,84 +974,84 @@ msgstr "تعذّر بدء مُبادلة الإزالة\n"
msgid "could not commit transaction\n"
msgstr "فشل في بدء المُبادلة\n"
#: lib/libalpm/trans.c:364
#: lib/libalpm/trans.c:365
#, c-format
msgid "could not create temp directory\n"
msgstr "تعذّر إنشاء مجلد مؤقت\n"
#: lib/libalpm/trans.c:379
#: lib/libalpm/trans.c:380
#, c-format
msgid "could not copy tempfile to %s (%s)\n"
msgstr "تعذّر نسخ الملف المؤقّت إلى %s (%s)\n"
#: lib/libalpm/trans.c:410
#: lib/libalpm/trans.c:411
#, c-format
msgid "could not remove %s\n"
msgstr ""
"تعذر إزالة %s\n"
"\n"
#: lib/libalpm/trans.c:414
#: lib/libalpm/trans.c:415
#, c-format
msgid "could not remove tmpdir %s\n"
msgstr "تعذّر إزالة المجلد المؤقّت %s\n"
#: lib/libalpm/util.c:486
#: lib/libalpm/util.c:488
#, c-format
msgid "unable to write to pipe (%s)\n"
msgstr "تعذّرت الكتابة إلى الأنبوب (%s)\n"
#: lib/libalpm/util.c:545
#: lib/libalpm/util.c:547
#, c-format
msgid "unable to read from pipe (%s)\n"
msgstr "تعذّرت القراءة من الأنبوب (%s)\n"
#: lib/libalpm/util.c:609 lib/libalpm/util.c:615
#: lib/libalpm/util.c:617 lib/libalpm/util.c:623
#, c-format
msgid "could not create pipe (%s)\n"
msgstr "غير قادر على إنشاء العبارة (%s)\n"
#: lib/libalpm/util.c:623
#: lib/libalpm/util.c:631
#, c-format
msgid "could not fork a new process (%s)\n"
msgstr "تعذّر تفريع العملية إلى عملية جديدة (%s)\n"
#: lib/libalpm/util.c:646
#: lib/libalpm/util.c:654
#, c-format
msgid "could not change the root directory (%s)\n"
msgstr "تعذّر التعديل على مجلد الجذر (%s)\n"
#: lib/libalpm/util.c:658
#: lib/libalpm/util.c:666
#, c-format
msgid "call to execv failed (%s)\n"
msgstr "تعذّر مخاطبة execv (%s)\n"
#: lib/libalpm/util.c:737
#: lib/libalpm/util.c:745
#, c-format
msgid "call to waitpid failed (%s)\n"
msgstr "تعذّر مخاطبةwaitpid (%s)\n"
#: lib/libalpm/util.c:747
#: lib/libalpm/util.c:755
#, c-format
msgid "command failed to execute correctly\n"
msgstr "فشل تطبيق الأمر بشكل صحيح\n"
#: lib/libalpm/util.c:754
#: lib/libalpm/util.c:762
#, c-format
msgid "Unknown signal"
msgstr "إشارة مجهوله"
#: lib/libalpm/util.c:756
#: lib/libalpm/util.c:764
#, c-format
msgid "command terminated by signal %d: %s\n"
msgstr "تم انهاء الامر بواسطة الاشارة %d: %s\n"
#: lib/libalpm/util.c:853
#: lib/libalpm/util.c:875
#, c-format
msgid "no %s cache exists, creating...\n"
msgstr "لا يوجد %s مخبئي، يجري الإنشاء...\n"
#: lib/libalpm/util.c:884
#: lib/libalpm/util.c:906
#, c-format
msgid "couldn't find or create package cache, using %s instead\n"
msgstr "تعذّر إيجاد أو إنشاء مخبئية للحزم ، استخدم %s بدلًا عنها\n"

View File

@@ -1,18 +1,19 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Pacman Development Team <pacman-dev@archlinux.org>
# This file is distributed under the same license as the PACKAGE package.
# Copyright (C) YEAR "Pacman Development Team <pacman-dev@archlinux.org>"
# This file is distributed under the same license as the libalpm package.
#
# Translators:
# enolp <enolp@softastur.org>, 2015-2016,2018-2019
# Ḷḷumex03 <tornes@opmbx.org>, 2014
# Ḷḷumex03 <tornes@opmbx.org>, 2014
# Ḷḷumex03 <tornes@opmbx.org>, 2014-2015
# enolp <enolp@softastur.org>, 2015-2016,2018-2020
# Ḷḷumex03, 2014
# Ḷḷumex03, 2014
# Ḷḷumex03, 2014
# Ḷḷumex03, 2014-2015
msgid ""
msgstr ""
"Project-Id-Version: Arch Linux Pacman package manager\n"
"Report-Msgid-Bugs-To: http://bugs.archlinux.org/index.php?project=3\n"
"POT-Creation-Date: 2019-10-21 17:23+1000\n"
"PO-Revision-Date: 2019-10-07 08:12+0000\n"
"POT-Creation-Date: 2021-09-04 16:15+1000\n"
"PO-Revision-Date: 2021-05-20 02:25+0000\n"
"Last-Translator: Allan McRae <allan@archlinux.org>\n"
"Language-Team: Asturian (http://www.transifex.com/toofishes/archlinux-pacman/"
"language/ast/)\n"
@@ -22,17 +23,17 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: lib/libalpm/add.c:91 lib/libalpm/sync.c:290
#: lib/libalpm/add.c:90 lib/libalpm/sync.c:279
#, c-format
msgid "%s-%s is up to date -- skipping\n"
msgstr "%s-%s ta anováu -- saltando\n"
#: lib/libalpm/add.c:95
#: lib/libalpm/add.c:94
#, c-format
msgid "%s-%s is up to date -- reinstalling\n"
msgstr "%s-%s ta anováu -- reinstalando\n"
#: lib/libalpm/add.c:100
#: lib/libalpm/add.c:99
#, c-format
msgid "downgrading package %s (%s => %s)\n"
msgstr "baxando de versión el paquete %s (%s => %s)\n"
@@ -42,17 +43,17 @@ msgstr "baxando de versión el paquete %s (%s => %s)\n"
msgid "cannot allocate disk archive object"
msgstr "nun pue allugase l'oxetu del archivu del discu"
#: lib/libalpm/add.c:143 lib/libalpm/util.c:382
#: lib/libalpm/add.c:143 lib/libalpm/util.c:384
#, c-format
msgid "warning given when extracting %s (%s)\n"
msgstr "alvertencia dada al estrayer el paquete %s (%s)\n"
#: lib/libalpm/add.c:146 lib/libalpm/util.c:385
#: lib/libalpm/add.c:146 lib/libalpm/util.c:387
#, c-format
msgid "could not extract %s (%s)\n"
msgstr "nun pudo estrayese %s (%s)\n"
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:574 lib/libalpm/remove.c:542
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:709 lib/libalpm/remove.c:534
#, c-format
msgid "could not rename %s to %s (%s)\n"
msgstr "nun pudo renomase %s a %s (%s)\n"
@@ -97,139 +98,139 @@ msgstr "estración: nun pue sobrescribise'l direutoriu col ficheru %s\n"
msgid "unable to extract %s.pacnew: path too long"
msgstr "nun pue estrayese %s.pacnew: camín perllargu"
#: lib/libalpm/add.c:513 lib/libalpm/util.c:334 lib/libalpm/util.c:592
#: lib/libalpm/add.c:510 lib/libalpm/util.c:335 lib/libalpm/util.c:600
#, c-format
msgid "could not get current working directory\n"
msgstr "nun pudo consiguise'l direutoriu de trabayu actual\n"
#: lib/libalpm/add.c:518 lib/libalpm/util.c:339 lib/libalpm/util.c:597
#: lib/libalpm/util.c:650
#: lib/libalpm/add.c:515 lib/libalpm/util.c:340 lib/libalpm/util.c:605
#: lib/libalpm/util.c:658
#, c-format
msgid "could not change directory to %s (%s)\n"
msgstr "nun pudo cambiase'l direutoriu a %s (%s)\n"
#: lib/libalpm/add.c:575 lib/libalpm/util.c:403 lib/libalpm/util.c:766
#: lib/libalpm/add.c:571 lib/libalpm/util.c:405 lib/libalpm/util.c:774
#, c-format
msgid "could not restore working directory (%s)\n"
msgstr "nun pudo restaurase'l direutoriu de trabayu (%s)\n"
#: lib/libalpm/add.c:583
#: lib/libalpm/add.c:579
#, c-format
msgid "problem occurred while upgrading %s\n"
msgstr "asocedió un problema al anovar %s\n"
#: lib/libalpm/add.c:589
#: lib/libalpm/add.c:585
#, c-format
msgid "problem occurred while installing %s\n"
msgstr "asocedió un problema al instalar %s\n"
#: lib/libalpm/add.c:604
#: lib/libalpm/add.c:600
#, c-format
msgid "could not update database entry %s-%s\n"
msgstr "nun pudo anovase la entrada de base de datos %s-%s\n"
#: lib/libalpm/add.c:615
#: lib/libalpm/add.c:610
#, c-format
msgid "could not add entry '%s' in cache\n"
msgstr "nun pudo amestase la entrada '%s' na caché\n"
#: lib/libalpm/be_local.c:267
#: lib/libalpm/be_local.c:266
#, c-format
msgid "error while reading file %s: %s\n"
msgstr "fallu al lleer el ficheru %s: %s\n"
#: lib/libalpm/be_local.c:364
#: lib/libalpm/be_local.c:376
#, c-format
msgid "removing invalid database: %s\n"
msgstr "desaniciando base de datos non válida: %s\n"
#: lib/libalpm/be_local.c:415 lib/libalpm/be_local.c:905
#: lib/libalpm/be_local.c:427 lib/libalpm/be_local.c:909
#, c-format
msgid "could not create directory %s: %s\n"
msgstr "nun pudo crease'l direutoriu %s: %s\n"
#: lib/libalpm/be_local.c:590 lib/libalpm/be_sync.c:386
#: lib/libalpm/be_local.c:602 lib/libalpm/be_sync.c:322
#, c-format
msgid "invalid name for database entry '%s'\n"
msgstr "nome non válidu pa la base de datos '%s'\n"
#: lib/libalpm/be_local.c:598
#: lib/libalpm/be_local.c:610
#, c-format
msgid "duplicated database entry '%s'\n"
msgstr "entrada de base de datos duplicada '%s'\n"
#: lib/libalpm/be_local.c:610
#: lib/libalpm/be_local.c:622
#, c-format
msgid "corrupted database entry '%s'\n"
msgstr "entrada de base de datos toyida '%s'\n"
#: lib/libalpm/be_local.c:713 lib/libalpm/be_local.c:809
#: lib/libalpm/be_local.c:954 lib/libalpm/be_local.c:1051
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:422 lib/libalpm/util.c:253
#: lib/libalpm/util.c:269
#: lib/libalpm/be_local.c:722 lib/libalpm/be_local.c:818
#: lib/libalpm/be_local.c:958 lib/libalpm/be_local.c:1055
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:823 lib/libalpm/util.c:254
#: lib/libalpm/util.c:270
#, c-format
msgid "could not open file %s: %s\n"
msgstr "nun pudo abrise'l ficheru %s: %s\n"
#: lib/libalpm/be_local.c:729 lib/libalpm/be_sync.c:650
#: lib/libalpm/be_local.c:738 lib/libalpm/be_sync.c:582
#, c-format
msgid "%s database is inconsistent: name mismatch on package %s\n"
msgstr ""
"la base de datos %s ye inconsistente: el nome nun concasa nel paquete %s\n"
#: lib/libalpm/be_local.c:735 lib/libalpm/be_sync.c:656
#: lib/libalpm/be_local.c:744 lib/libalpm/be_sync.c:588
#, c-format
msgid "%s database is inconsistent: version mismatch on package %s\n"
msgstr ""
"la base de datos %s ye inconsistente: la versión nun concasa nel paquete %s\n"
#: lib/libalpm/be_local.c:776
#: lib/libalpm/be_local.c:785
#, c-format
msgid "unknown validation type for package %s: %s\n"
msgstr "triba de validación desconocida pal paquete %s: %s\n"
#: lib/libalpm/be_package.c:479 lib/libalpm/be_package.c:637
#: lib/libalpm/be_package.c:650
#: lib/libalpm/be_package.c:478 lib/libalpm/be_package.c:631
#: lib/libalpm/be_package.c:643
#, c-format
msgid "error while reading package %s: %s\n"
msgstr "fallu al lleer el paquete %s: %s\n"
#: lib/libalpm/be_package.c:493 lib/libalpm/be_package.c:517
#: lib/libalpm/be_package.c:491 lib/libalpm/be_package.c:514
#, c-format
msgid "error while reading mtree of package %s: %s\n"
msgstr "fallu al lleer el mtree del paquete %s: %s\n"
#: lib/libalpm/be_package.c:603
#: lib/libalpm/be_package.c:597
#, c-format
msgid "could not parse package description file in %s\n"
msgstr "nun pudo analizase'l ficheru de descripción del paquete en %s\n"
#: lib/libalpm/be_package.c:608
#: lib/libalpm/be_package.c:602
#, c-format
msgid "missing package name in %s\n"
msgstr "nome de paquete faltante en %s\n"
#: lib/libalpm/be_package.c:612
#: lib/libalpm/be_package.c:606
#, c-format
msgid "missing package version in %s\n"
msgstr "versión de paquete faltante en %s\n"
#: lib/libalpm/be_package.c:616
#: lib/libalpm/be_package.c:610
#, c-format
msgid "invalid package version in %s\n"
msgstr "versión del paquete non válida en %s\n"
#: lib/libalpm/be_package.c:657
#: lib/libalpm/be_package.c:649
#, c-format
msgid "missing package metadata in %s\n"
msgstr "datos meta de paquete faltantes en %s\n"
#: lib/libalpm/be_package.c:750
#: lib/libalpm/be_package.c:741
#, c-format
msgid "failed to read signature file: %s\n"
msgstr "fallu al lleer el ficheru de robla: %s\n"
#: lib/libalpm/be_package.c:779 lib/libalpm/sync.c:953
#: lib/libalpm/be_package.c:770 lib/libalpm/sync.c:953
#, c-format
msgid "required key missing from keyring\n"
msgstr "clave riquida del aniellu claves faltante\n"
@@ -239,36 +240,36 @@ msgstr "clave riquida del aniellu claves faltante\n"
msgid "removing invalid file: %s\n"
msgstr "desaniciando ficheru non válidu: %s\n"
#: lib/libalpm/be_sync.c:515
#: lib/libalpm/be_sync.c:449
#, c-format
msgid "could not parse package description file '%s' from db '%s'\n"
msgstr ""
"nun pudo analizase'l ficheru de descripción del paquete '%s' de la base de "
"datos '%s'\n"
#: lib/libalpm/be_sync.c:522
#: lib/libalpm/be_sync.c:456
#, c-format
msgid "could not read db '%s' (%s)\n"
msgstr ""
#: lib/libalpm/be_sync.c:556 lib/libalpm/be_sync.c:561
#: lib/libalpm/be_sync.c:489 lib/libalpm/be_sync.c:494
#, c-format
msgid "%s database is inconsistent: filename of package %s is illegal\n"
msgstr ""
"la base de datos %s ye inconsistente: el nome del paquete %s ye illegal\n"
#: lib/libalpm/be_sync.c:566
#: lib/libalpm/be_sync.c:499
#, c-format
msgid "%s database is inconsistent: filename of package %s is too long\n"
msgstr ""
"la base de datos %s ye inconsistente: el nome del paquete %s ye perllargu\n"
#: lib/libalpm/be_sync.c:632
#: lib/libalpm/be_sync.c:564
#, c-format
msgid "unknown database file: %s\n"
msgstr "ficheru de base de datos desconocíu: %s\n"
#: lib/libalpm/db.c:370
#: lib/libalpm/db.c:344
#, c-format
msgid "database path is undefined\n"
msgstr "nun ta definíu'l camín de la base de datos\n"
@@ -288,12 +289,12 @@ msgstr "%s desaniciaráse dempués de la so dependencia %s\n"
msgid "%s will be installed before its %s dependency\n"
msgstr "%s desaniciaráse enantes de la so dependencia %s\n"
#: lib/libalpm/deps.c:681 lib/libalpm/deps.c:712
#: lib/libalpm/deps.c:666 lib/libalpm/deps.c:697
#, c-format
msgid "ignoring package %s-%s\n"
msgstr "inorando paquete %s-%s\n"
#: lib/libalpm/deps.c:869
#: lib/libalpm/deps.c:842
#, c-format
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
msgstr "nun pue iguase \"%s\", una dependencia de \"%s\"\n"
@@ -348,40 +349,66 @@ msgstr "nun pudo determinase'l puntu de montaxe root %s\n"
msgid "Partition %s is mounted read only\n"
msgstr "La partición %s ta montada como namái llectura\n"
#: lib/libalpm/dload.c:161
#: lib/libalpm/dload.c:116
#, c-format
msgid ""
"too many errors from %s, skipping for the remainder of this transaction\n"
msgstr ""
#: lib/libalpm/dload.c:220
#, c-format
msgid "disk"
msgstr "discu"
#: lib/libalpm/dload.c:348
#: lib/libalpm/dload.c:392
#, c-format
msgid "failed to create temporary file for download\n"
msgstr "fallu al crear el ficheru temporal pa la descarga\n"
#: lib/libalpm/dload.c:393
#, c-format
msgid "url '%s' is invalid\n"
msgstr "l'enllaz '%s' ye inválidu\n"
#: lib/libalpm/dload.c:464 lib/libalpm/dload.c:485 lib/libalpm/dload.c:496
#: lib/libalpm/dload.c:509 lib/libalpm/dload.c:547 lib/libalpm/dload.c:561
#, c-format
msgid "failed retrieving file '%s' from %s : %s\n"
msgstr "fallu recibiendo'l ficheru '%s' de %s: %s\n"
#: lib/libalpm/dload.c:477
#: lib/libalpm/dload.c:539
#, c-format
msgid "failed retrieving file '%s' from %s : expected download size exceeded\n"
msgstr "fallu recibiendo'l ficheru '%s' de %s: tamañu de descarga superáu\n"
#: lib/libalpm/dload.c:532
#: lib/libalpm/dload.c:687
#, c-format
msgid "%s appears to be truncated: %jd/%jd bytes\n"
msgstr ""
#: lib/libalpm/dload.c:677 lib/libalpm/dload.c:706
#: lib/libalpm/dload.c:787
#, c-format
msgid "failed to download %s\n"
msgstr "fallu al lleer %s\n"
msgid "url '%s' is invalid\n"
msgstr "l'enllaz '%s' ye inválidu\n"
#: lib/libalpm/dload.c:893
#, c-format
msgid "failed to setup a download payload for %s\n"
msgstr ""
#: lib/libalpm/dload.c:905
#, c-format
msgid "curl returned error %d from transfer\n"
msgstr ""
#: lib/libalpm/dload.c:929
#, c-format
msgid "curl transfer error: %d\n"
msgstr ""
#: lib/libalpm/dload.c:1055 lib/libalpm/sync.c:840
#, c-format
msgid "failed to retrieve some files\n"
msgstr "fallu al recuperar dellos ficheros\n"
#: lib/libalpm/dload.c:1078
#, c-format
msgid "download completed successfully but no file in the cache\n"
msgstr ""
#: lib/libalpm/error.c:40
#, c-format
@@ -498,7 +525,7 @@ msgstr "nun se configuró dengún sirvidor pal repositoriu"
msgid "transaction already initialized"
msgstr "yá s'anició la transaición"
#: lib/libalpm/error.c:90 lib/libalpm/error.c:94
#: lib/libalpm/error.c:90 lib/libalpm/error.c:96
#, c-format
msgid "transaction not initialized"
msgstr "nun s'anició la transaición"
@@ -508,86 +535,86 @@ msgstr "nun s'anició la transaición"
msgid "duplicate target"
msgstr "oxetivu duplicáu"
#: lib/libalpm/error.c:96
#: lib/libalpm/error.c:94
#, c-format
msgid "duplicate filename"
msgstr ""
#: lib/libalpm/error.c:98
#, c-format
msgid "transaction not prepared"
msgstr "nun se tresnó la transaición"
#: lib/libalpm/error.c:98
#: lib/libalpm/error.c:100
#, c-format
msgid "transaction aborted"
msgstr "albortóse la transaición"
#: lib/libalpm/error.c:100
#: lib/libalpm/error.c:102
#, c-format
msgid "operation not compatible with the transaction type"
msgstr "la operación nun ye compatible cola triba de transaición"
#: lib/libalpm/error.c:102
#: lib/libalpm/error.c:104
#, c-format
msgid "transaction commit attempt when database is not locked"
msgstr "intentu d'unviu de transaiciones al nun tar bloquiada la base de datos"
#: lib/libalpm/error.c:104
#: lib/libalpm/error.c:106
#, c-format
msgid "failed to run transaction hooks"
msgstr "fallu al executar los gabitos de transaiciones"
#: lib/libalpm/error.c:107
#: lib/libalpm/error.c:109
#, c-format
msgid "could not find or read package"
msgstr "nun pudo alcontrase o lleese'l paquete"
#: lib/libalpm/error.c:109
#: lib/libalpm/error.c:111
#, c-format
msgid "operation cancelled due to ignorepkg"
msgstr "operación encaboxada pola mor de ignorepkg"
#: lib/libalpm/error.c:111
#: lib/libalpm/error.c:113
#, c-format
msgid "invalid or corrupted package"
msgstr "paquete toriáu o non válidu"
#: lib/libalpm/error.c:113
#: lib/libalpm/error.c:115
#, c-format
msgid "invalid or corrupted package (checksum)"
msgstr "paquete toriáu o non válidu (suma de comprobación)"
#: lib/libalpm/error.c:115
#: lib/libalpm/error.c:117
#, c-format
msgid "invalid or corrupted package (PGP signature)"
msgstr "paquete toriáu o non válidu (robla PGP)"
#: lib/libalpm/error.c:117
#: lib/libalpm/error.c:119
#, c-format
msgid "package missing required signature"
msgstr "el paquete rique una robla que falta"
#: lib/libalpm/error.c:119
#: lib/libalpm/error.c:121
#, c-format
msgid "cannot open package file"
msgstr "nun pue abrise'l ficheru de paquete"
#: lib/libalpm/error.c:121
#: lib/libalpm/error.c:123
#, c-format
msgid "cannot remove all files for package"
msgstr "nun puen desaniciase tolos ficheros del paquete"
#: lib/libalpm/error.c:123
#: lib/libalpm/error.c:125
#, c-format
msgid "package filename is not valid"
msgstr "el nome del paquete nun ye válidu"
#: lib/libalpm/error.c:125
#: lib/libalpm/error.c:127
#, c-format
msgid "package architecture is not valid"
msgstr "l'arquietctura del paquete nun ye válida"
#: lib/libalpm/error.c:127
#, c-format
msgid "could not find repository for target"
msgstr "nun pudo alcontrase'l repositoriu pal oxetivu"
#: lib/libalpm/error.c:130
#, c-format
msgid "missing PGP signature"
@@ -653,12 +680,12 @@ msgstr ""
msgid "unexpected error"
msgstr "fallu inesperáu"
#: lib/libalpm/handle.c:153
#: lib/libalpm/handle.c:142
#, c-format
msgid "lock file missing %s\n"
msgstr "falta'l ficheru de bloquéu %s\n"
#: lib/libalpm/handle.c:159
#: lib/libalpm/handle.c:148
#, c-format
msgid "could not remove lock file %s\n"
msgstr "nun pudo desaniciase'l ficheru de bloquéu %s\n"
@@ -730,7 +757,7 @@ msgstr ""
msgid "unable to run hook %s: %s\n"
msgstr ""
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:386
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:378
#, c-format
msgid "could not open directory: %s: %s\n"
msgstr "nun pudo abrise'l direutoriu: %s: %s\n"
@@ -738,9 +765,9 @@ msgstr "nun pudo abrise'l direutoriu: %s: %s\n"
#: lib/libalpm/hook.c:575
#, c-format
msgid "could not open file: %s%s: %s\n"
msgstr ""
msgstr "nun pudo abrise'l ficheru: %s%s: %s\n"
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:259
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:260
#, c-format
msgid "could not stat file %s: %s\n"
msgstr ""
@@ -748,186 +775,186 @@ msgstr ""
#: lib/libalpm/hook.c:621
#, c-format
msgid "could not read directory: %s: %s\n"
msgstr ""
msgstr "nun pudo lleese'l ficheru: %s: %s\n"
#: lib/libalpm/package.c:578
#: lib/libalpm/package.c:598
#, c-format
msgid "could not fully load metadata for package %s-%s\n"
msgstr "nun pudieron cargase dafechu los datos meta pal paquete %s-%s\n"
#: lib/libalpm/remove.c:119
#: lib/libalpm/remove.c:111
#, c-format
msgid "could not find %s in database -- skipping\n"
msgstr "nun pudo alcontrase %s na base de datos -- saltando\n"
#: lib/libalpm/remove.c:154
#: lib/libalpm/remove.c:146
#, c-format
msgid "removing %s from target list\n"
msgstr "desaniciando %s de la llista d'oxetivos\n"
#: lib/libalpm/remove.c:346
#: lib/libalpm/remove.c:338
#, c-format
msgid "cannot remove file '%s': %s\n"
msgstr "nun pue desaniciase'l ficheru '%s': %s\n"
#: lib/libalpm/remove.c:411 lib/libalpm/remove.c:420
#: lib/libalpm/remove.c:403 lib/libalpm/remove.c:412
#, c-format
msgid "could not backup %s due to PATH_MAX overflow\n"
msgstr ""
#: lib/libalpm/remove.c:562
#: lib/libalpm/remove.c:554
#, c-format
msgid "cannot remove %s (%s)\n"
msgstr "nun pue desaniciase %s (%s)\n"
#: lib/libalpm/remove.c:735
#: lib/libalpm/remove.c:727
#, c-format
msgid "could not remove database entry %s-%s\n"
msgstr "nun pudo desaniciase la entrada de la base de datos %s-%s\n"
#: lib/libalpm/remove.c:740
#: lib/libalpm/remove.c:732
#, c-format
msgid "could not remove entry '%s' from cache\n"
msgstr "nun pudo desaniciase la entrada '%s' de la caché\n"
#: lib/libalpm/signing.c:171
#: lib/libalpm/signing.c:163
#, c-format
msgid "Public keyring not found; have you run '%s'?\n"
msgstr ""
#: lib/libalpm/signing.c:207 lib/libalpm/signing.c:784
#: lib/libalpm/signing.c:199 lib/libalpm/signing.c:767
#, c-format
msgid "GPGME error: %s\n"
msgstr ""
#: lib/libalpm/signing.c:284
#: lib/libalpm/signing.c:274
#, c-format
msgid "looking up key %s using WKD\n"
msgstr ""
#: lib/libalpm/signing.c:293
#: lib/libalpm/signing.c:283
#, c-format
msgid "gpg error: %s\n"
msgstr ""
#: lib/libalpm/signing.c:441 lib/libalpm/signing.c:515
#: lib/libalpm/signing.c:430 lib/libalpm/signing.c:503
#, c-format
msgid "keyring is not writable\n"
msgstr ""
#: lib/libalpm/signing.c:539
#: lib/libalpm/signing.c:531
#, c-format
msgid "key \"%s\" on keyserver\n"
msgstr ""
#: lib/libalpm/signing.c:544
#: lib/libalpm/signing.c:536
#, c-format
msgid "key \"%s\" could not be imported\n"
msgstr ""
#: lib/libalpm/signing.c:548
#: lib/libalpm/signing.c:540
#, c-format
msgid "key \"%s\" could not be looked up remotely\n"
msgstr ""
#: lib/libalpm/signing.c:943 lib/libalpm/sync.c:1022
#: lib/libalpm/signing.c:926 lib/libalpm/sync.c:1022
#, c-format
msgid "%s: missing required signature\n"
msgstr "%s: falta la robla riquida\n"
#: lib/libalpm/signing.c:958
#: lib/libalpm/signing.c:941
#, c-format
msgid "%s: signature from \"%s\" is marginal trust\n"
msgstr ""
#: lib/libalpm/signing.c:966
#: lib/libalpm/signing.c:949
#, c-format
msgid "%s: signature from \"%s\" is unknown trust\n"
msgstr ""
#: lib/libalpm/signing.c:973
#: lib/libalpm/signing.c:956
#, c-format
msgid "%s: signature from \"%s\" should never be trusted\n"
msgstr ""
#: lib/libalpm/signing.c:985
#: lib/libalpm/signing.c:968
#, c-format
msgid "%s: key \"%s\" is unknown\n"
msgstr ""
#: lib/libalpm/signing.c:994
#: lib/libalpm/signing.c:977
#, c-format
msgid "%s: key \"%s\" is disabled\n"
msgstr ""
#: lib/libalpm/signing.c:998
#: lib/libalpm/signing.c:981
#, c-format
msgid "%s: signature from \"%s\" is expired\n"
msgstr ""
#: lib/libalpm/signing.c:1002
#: lib/libalpm/signing.c:985
#, c-format
msgid "%s: signature from \"%s\" is invalid\n"
msgstr ""
#: lib/libalpm/signing.c:1079 lib/libalpm/signing.c:1147
#: lib/libalpm/signing.c:1226
#: lib/libalpm/signing.c:1043 lib/libalpm/signing.c:1104
#: lib/libalpm/signing.c:1183
#, c-format
msgid "%s: signature format error\n"
msgstr ""
#: lib/libalpm/signing.c:1179 lib/libalpm/signing.c:1212
#: lib/libalpm/signing.c:1220
#: lib/libalpm/signing.c:1136 lib/libalpm/signing.c:1169
#: lib/libalpm/signing.c:1177
#, c-format
msgid "%s: unsupported signature format\n"
msgstr ""
#: lib/libalpm/sync.c:99
#: lib/libalpm/sync.c:96
#, c-format
msgid "%s: ignoring package upgrade (%s => %s)\n"
msgstr "%s: inorando anovamientu del paquete (%s => %s)\n"
#: lib/libalpm/sync.c:111
#: lib/libalpm/sync.c:108
#, c-format
msgid "%s: ignoring package downgrade (%s => %s)\n"
msgstr "%s: inorando baxada de versión del paquete (%s => %s)\n"
#: lib/libalpm/sync.c:114
#: lib/libalpm/sync.c:111
#, c-format
msgid "%s: downgrading from version %s to version %s\n"
msgstr "%s: baxando de la versión %s a la %s\n"
#: lib/libalpm/sync.c:120
#: lib/libalpm/sync.c:117
#, c-format
msgid "%s: local (%s) is newer than %s (%s)\n"
msgstr "%s: llocal (%s) ye más nuevu que %s (%s)\n"
#: lib/libalpm/sync.c:161
#: lib/libalpm/sync.c:158
#, c-format
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
msgstr "inorando troquéu de paquete (%s-%s => %s-%s)\n"
#: lib/libalpm/sync.c:177
#: lib/libalpm/sync.c:174
#, c-format
msgid "cannot replace %s by %s\n"
msgstr "nun pue trocase %s por %s\n"
#: lib/libalpm/sync.c:535 lib/libalpm/sync.c:605
#: lib/libalpm/sync.c:476
#, c-format
msgid "packages %s and %s have the same filename: %s\n"
msgstr ""
#: lib/libalpm/sync.c:542 lib/libalpm/sync.c:612
#, c-format
msgid "unresolvable package conflicts detected\n"
msgstr "deteutaos conflictos de paquete que nun puen iguase\n"
#: lib/libalpm/sync.c:555
#: lib/libalpm/sync.c:562
#, c-format
msgid "removing '%s' from target list because it conflicts with '%s'\n"
msgstr ""
"desaniciando '%s' de la llista d'oxetivos porque ta en conflictu con '%s'\n"
#: lib/libalpm/sync.c:849
#, c-format
msgid "failed to retrieve some files\n"
msgstr "fallu al recuperar dellos ficheros\n"
#: lib/libalpm/sync.c:1036
#, c-format
msgid "failed to read file %s: %s\n"
@@ -948,82 +975,82 @@ msgstr "nun pudo unviase la transaición de desaniciu\n"
msgid "could not commit transaction\n"
msgstr "nun pudo unviase la transaición\n"
#: lib/libalpm/trans.c:364
#: lib/libalpm/trans.c:365
#, c-format
msgid "could not create temp directory\n"
msgstr "nun pudo creaase'l direutoriu temporal\n"
#: lib/libalpm/trans.c:379
#: lib/libalpm/trans.c:380
#, c-format
msgid "could not copy tempfile to %s (%s)\n"
msgstr "nun pudo copiase'l ficheru temporal a %s (%s)\n"
#: lib/libalpm/trans.c:410
#: lib/libalpm/trans.c:411
#, c-format
msgid "could not remove %s\n"
msgstr "nun pudo desaniciase %s\n"
#: lib/libalpm/trans.c:414
#: lib/libalpm/trans.c:415
#, c-format
msgid "could not remove tmpdir %s\n"
msgstr "nun pudo desaniciase'l direutoriu temporal %s\n"
#: lib/libalpm/util.c:486
#: lib/libalpm/util.c:488
#, c-format
msgid "unable to write to pipe (%s)\n"
msgstr ""
#: lib/libalpm/util.c:545
#: lib/libalpm/util.c:547
#, c-format
msgid "unable to read from pipe (%s)\n"
msgstr ""
#: lib/libalpm/util.c:609 lib/libalpm/util.c:615
#: lib/libalpm/util.c:617 lib/libalpm/util.c:623
#, c-format
msgid "could not create pipe (%s)\n"
msgstr ""
#: lib/libalpm/util.c:623
#: lib/libalpm/util.c:631
#, c-format
msgid "could not fork a new process (%s)\n"
msgstr "Nun pudo bifurcase un procesu nuevu (%s)\n"
#: lib/libalpm/util.c:646
#: lib/libalpm/util.c:654
#, c-format
msgid "could not change the root directory (%s)\n"
msgstr "nun pudo cambiase'l direutoriu root (%s)\n"
#: lib/libalpm/util.c:658
#: lib/libalpm/util.c:666
#, c-format
msgid "call to execv failed (%s)\n"
msgstr "llamada a execv fallida (%s)\n"
#: lib/libalpm/util.c:737
#: lib/libalpm/util.c:745
#, c-format
msgid "call to waitpid failed (%s)\n"
msgstr "llamada a waitpid fallida (%s)\n"
#: lib/libalpm/util.c:747
#: lib/libalpm/util.c:755
#, c-format
msgid "command failed to execute correctly\n"
msgstr "el comandu falló al executase afayadizamente\n"
#: lib/libalpm/util.c:754
#: lib/libalpm/util.c:762
#, c-format
msgid "Unknown signal"
msgstr "Señal desconocida"
#: lib/libalpm/util.c:756
#: lib/libalpm/util.c:764
#, c-format
msgid "command terminated by signal %d: %s\n"
msgstr "comandu fináu pola señal %d: %s\n"
#: lib/libalpm/util.c:853
#: lib/libalpm/util.c:875
#, c-format
msgid "no %s cache exists, creating...\n"
msgstr "nun esiste'l caché %s, creando...\n"
#: lib/libalpm/util.c:884
#: lib/libalpm/util.c:906
#, c-format
msgid "couldn't find or create package cache, using %s instead\n"
msgstr ""

1040
lib/libalpm/po/az_AZ.po Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Pacman Development Team <pacman-dev@archlinux.org>
# This file is distributed under the same license as the PACKAGE package.
# Copyright (C) YEAR "Pacman Development Team <pacman-dev@archlinux.org>"
# This file is distributed under the same license as the libalpm package.
#
# Translators:
# Galin Iskrenov <loot270@abv.bg>, 2017-2019
@@ -9,9 +9,9 @@ msgid ""
msgstr ""
"Project-Id-Version: Arch Linux Pacman package manager\n"
"Report-Msgid-Bugs-To: http://bugs.archlinux.org/index.php?project=3\n"
"POT-Creation-Date: 2019-10-21 17:23+1000\n"
"PO-Revision-Date: 2019-10-11 13:05+0000\n"
"Last-Translator: Galin Iskrenov <loot270@abv.bg>\n"
"POT-Creation-Date: 2021-09-04 16:15+1000\n"
"PO-Revision-Date: 2021-05-20 02:25+0000\n"
"Last-Translator: Allan McRae <allan@archlinux.org>\n"
"Language-Team: Bulgarian (http://www.transifex.com/toofishes/archlinux-"
"pacman/language/bg/)\n"
"Language: bg\n"
@@ -20,17 +20,17 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: lib/libalpm/add.c:91 lib/libalpm/sync.c:290
#: lib/libalpm/add.c:90 lib/libalpm/sync.c:279
#, c-format
msgid "%s-%s is up to date -- skipping\n"
msgstr "%s-%s е актуален -- пропускане\n"
#: lib/libalpm/add.c:95
#: lib/libalpm/add.c:94
#, c-format
msgid "%s-%s is up to date -- reinstalling\n"
msgstr "%s-%s е актуален -- преинсталиране\n"
#: lib/libalpm/add.c:100
#: lib/libalpm/add.c:99
#, c-format
msgid "downgrading package %s (%s => %s)\n"
msgstr "понижаване на пакет %s (%s => %s)\n"
@@ -40,17 +40,17 @@ msgstr "понижаване на пакет %s (%s => %s)\n"
msgid "cannot allocate disk archive object"
msgstr "не се открие указания архив на диск"
#: lib/libalpm/add.c:143 lib/libalpm/util.c:382
#: lib/libalpm/add.c:143 lib/libalpm/util.c:384
#, c-format
msgid "warning given when extracting %s (%s)\n"
msgstr "има предупреждение при извличане %s (%s)\n"
#: lib/libalpm/add.c:146 lib/libalpm/util.c:385
#: lib/libalpm/add.c:146 lib/libalpm/util.c:387
#, c-format
msgid "could not extract %s (%s)\n"
msgstr "не може да се извлече %s (%s)\n"
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:574 lib/libalpm/remove.c:542
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:709 lib/libalpm/remove.c:534
#, c-format
msgid "could not rename %s to %s (%s)\n"
msgstr "не може да се преименува %s на %s (%s)\n"
@@ -95,137 +95,137 @@ msgstr "извличане: не се презаписва папка с фай
msgid "unable to extract %s.pacnew: path too long"
msgstr "неспешно извличането на %s.pacnew: пътят е твърде дълъг"
#: lib/libalpm/add.c:513 lib/libalpm/util.c:334 lib/libalpm/util.c:592
#: lib/libalpm/add.c:510 lib/libalpm/util.c:335 lib/libalpm/util.c:600
#, c-format
msgid "could not get current working directory\n"
msgstr "не може да се разбере текущата директория\n"
#: lib/libalpm/add.c:518 lib/libalpm/util.c:339 lib/libalpm/util.c:597
#: lib/libalpm/util.c:650
#: lib/libalpm/add.c:515 lib/libalpm/util.c:340 lib/libalpm/util.c:605
#: lib/libalpm/util.c:658
#, c-format
msgid "could not change directory to %s (%s)\n"
msgstr "не може да се смени директория на %s (%s)\n"
#: lib/libalpm/add.c:575 lib/libalpm/util.c:403 lib/libalpm/util.c:766
#: lib/libalpm/add.c:571 lib/libalpm/util.c:405 lib/libalpm/util.c:774
#, c-format
msgid "could not restore working directory (%s)\n"
msgstr "не може да се възстанови работната директория (%s)\n"
#: lib/libalpm/add.c:583
#: lib/libalpm/add.c:579
#, c-format
msgid "problem occurred while upgrading %s\n"
msgstr "възникнал проблем при подновяване %s\n"
#: lib/libalpm/add.c:589
#: lib/libalpm/add.c:585
#, c-format
msgid "problem occurred while installing %s\n"
msgstr "възникнал проблем при инсталиране %s\n"
#: lib/libalpm/add.c:604
#: lib/libalpm/add.c:600
#, c-format
msgid "could not update database entry %s-%s\n"
msgstr "не може да се поднови запис в базата %s-%s\n"
#: lib/libalpm/add.c:615
#: lib/libalpm/add.c:610
#, c-format
msgid "could not add entry '%s' in cache\n"
msgstr "не може да се добави запис '%s' в кеша\n"
#: lib/libalpm/be_local.c:267
#: lib/libalpm/be_local.c:266
#, c-format
msgid "error while reading file %s: %s\n"
msgstr "грешка при четене на файл %s: %s\n"
#: lib/libalpm/be_local.c:364
#: lib/libalpm/be_local.c:376
#, c-format
msgid "removing invalid database: %s\n"
msgstr "премахване на невалидна база: %s\n"
#: lib/libalpm/be_local.c:415 lib/libalpm/be_local.c:905
#: lib/libalpm/be_local.c:427 lib/libalpm/be_local.c:909
#, c-format
msgid "could not create directory %s: %s\n"
msgstr "не се създава директория %s: %s\n"
#: lib/libalpm/be_local.c:590 lib/libalpm/be_sync.c:386
#: lib/libalpm/be_local.c:602 lib/libalpm/be_sync.c:322
#, c-format
msgid "invalid name for database entry '%s'\n"
msgstr "невалидно име за запис в базата '%s'\n"
#: lib/libalpm/be_local.c:598
#: lib/libalpm/be_local.c:610
#, c-format
msgid "duplicated database entry '%s'\n"
msgstr "дублиран запис в базата '%s'\n"
#: lib/libalpm/be_local.c:610
#: lib/libalpm/be_local.c:622
#, c-format
msgid "corrupted database entry '%s'\n"
msgstr "повреден запис в базата '%s'\n"
#: lib/libalpm/be_local.c:713 lib/libalpm/be_local.c:809
#: lib/libalpm/be_local.c:954 lib/libalpm/be_local.c:1051
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:422 lib/libalpm/util.c:253
#: lib/libalpm/util.c:269
#: lib/libalpm/be_local.c:722 lib/libalpm/be_local.c:818
#: lib/libalpm/be_local.c:958 lib/libalpm/be_local.c:1055
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:823 lib/libalpm/util.c:254
#: lib/libalpm/util.c:270
#, c-format
msgid "could not open file %s: %s\n"
msgstr "не се отваря файл %s: %s\n"
#: lib/libalpm/be_local.c:729 lib/libalpm/be_sync.c:650
#: lib/libalpm/be_local.c:738 lib/libalpm/be_sync.c:582
#, c-format
msgid "%s database is inconsistent: name mismatch on package %s\n"
msgstr "%s несъответствие в базата: името не съответства на пакета %s\n"
#: lib/libalpm/be_local.c:735 lib/libalpm/be_sync.c:656
#: lib/libalpm/be_local.c:744 lib/libalpm/be_sync.c:588
#, c-format
msgid "%s database is inconsistent: version mismatch on package %s\n"
msgstr "%s несъответствие в базата: версията не съответства на пакета %s\n"
#: lib/libalpm/be_local.c:776
#: lib/libalpm/be_local.c:785
#, c-format
msgid "unknown validation type for package %s: %s\n"
msgstr "непознат валидиращ тип на пакета %s: %s\n"
#: lib/libalpm/be_package.c:479 lib/libalpm/be_package.c:637
#: lib/libalpm/be_package.c:650
#: lib/libalpm/be_package.c:478 lib/libalpm/be_package.c:631
#: lib/libalpm/be_package.c:643
#, c-format
msgid "error while reading package %s: %s\n"
msgstr "грешка при четене на пакет %s: %s\n"
#: lib/libalpm/be_package.c:493 lib/libalpm/be_package.c:517
#: lib/libalpm/be_package.c:491 lib/libalpm/be_package.c:514
#, c-format
msgid "error while reading mtree of package %s: %s\n"
msgstr "грешка при зареждане на mtree на пакет %s: %s\n"
#: lib/libalpm/be_package.c:603
#: lib/libalpm/be_package.c:597
#, c-format
msgid "could not parse package description file in %s\n"
msgstr "не може да се анализира описателния файл в %s\n"
#: lib/libalpm/be_package.c:608
#: lib/libalpm/be_package.c:602
#, c-format
msgid "missing package name in %s\n"
msgstr "липсващо име на пакет в %s\n"
#: lib/libalpm/be_package.c:612
#: lib/libalpm/be_package.c:606
#, c-format
msgid "missing package version in %s\n"
msgstr "липсваща версия на пакет в %s\n"
#: lib/libalpm/be_package.c:616
#: lib/libalpm/be_package.c:610
#, c-format
msgid "invalid package version in %s\n"
msgstr "невалидна версия на пакет в %s\n"
#: lib/libalpm/be_package.c:657
#: lib/libalpm/be_package.c:649
#, c-format
msgid "missing package metadata in %s\n"
msgstr "липсват метаданни за пакета %s\n"
#: lib/libalpm/be_package.c:750
#: lib/libalpm/be_package.c:741
#, c-format
msgid "failed to read signature file: %s\n"
msgstr "не се чете подписващият файл: %s\n"
#: lib/libalpm/be_package.c:779 lib/libalpm/sync.c:953
#: lib/libalpm/be_package.c:770 lib/libalpm/sync.c:953
#, c-format
msgid "required key missing from keyring\n"
msgstr "нужния ключ липсва от keyring\n"
@@ -235,32 +235,32 @@ msgstr "нужния ключ липсва от keyring\n"
msgid "removing invalid file: %s\n"
msgstr "премахване невалиден файл: %s\n"
#: lib/libalpm/be_sync.c:515
#: lib/libalpm/be_sync.c:449
#, c-format
msgid "could not parse package description file '%s' from db '%s'\n"
msgstr "не може да се анализира описателния файл '%s' от db '%s'\n"
#: lib/libalpm/be_sync.c:522
#: lib/libalpm/be_sync.c:456
#, c-format
msgid "could not read db '%s' (%s)\n"
msgstr "не да се прочете db '%s' (%s)\n"
#: lib/libalpm/be_sync.c:556 lib/libalpm/be_sync.c:561
#: lib/libalpm/be_sync.c:489 lib/libalpm/be_sync.c:494
#, c-format
msgid "%s database is inconsistent: filename of package %s is illegal\n"
msgstr "%s базата е непълна: името на пакета %s е недопустимо\n"
#: lib/libalpm/be_sync.c:566
#: lib/libalpm/be_sync.c:499
#, c-format
msgid "%s database is inconsistent: filename of package %s is too long\n"
msgstr "%s базата е непълна: името на пакета %s е твърде дълго\n"
#: lib/libalpm/be_sync.c:632
#: lib/libalpm/be_sync.c:564
#, c-format
msgid "unknown database file: %s\n"
msgstr "непознат датабаза файл: %s\n"
#: lib/libalpm/db.c:370
#: lib/libalpm/db.c:344
#, c-format
msgid "database path is undefined\n"
msgstr "пътя към базата е неопределен\n"
@@ -280,12 +280,12 @@ msgstr "%s ще бъде премахната след зависимостта
msgid "%s will be installed before its %s dependency\n"
msgstr "%s ще бъде инсталиран преди зависимостта %s\n"
#: lib/libalpm/deps.c:681 lib/libalpm/deps.c:712
#: lib/libalpm/deps.c:666 lib/libalpm/deps.c:697
#, c-format
msgid "ignoring package %s-%s\n"
msgstr "пренебрегване на пакет %s-%s\n"
#: lib/libalpm/deps.c:869
#: lib/libalpm/deps.c:842
#, c-format
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
msgstr "не може да се разреши \"%s\", зависи от \"%s\"\n"
@@ -342,42 +342,68 @@ msgstr "не може да се определи root mount point %s\n"
msgid "Partition %s is mounted read only\n"
msgstr "Дялът %s е монтиран само за четене\n"
#: lib/libalpm/dload.c:161
#: lib/libalpm/dload.c:116
#, c-format
msgid ""
"too many errors from %s, skipping for the remainder of this transaction\n"
msgstr ""
#: lib/libalpm/dload.c:220
#, c-format
msgid "disk"
msgstr "диск"
#: lib/libalpm/dload.c:348
#: lib/libalpm/dload.c:392
#, c-format
msgid "failed to create temporary file for download\n"
msgstr "не може да се създаде временен файл за сваляне\n"
#: lib/libalpm/dload.c:393
#, c-format
msgid "url '%s' is invalid\n"
msgstr "url '%s' е невалиден\n"
#: lib/libalpm/dload.c:464 lib/libalpm/dload.c:485 lib/libalpm/dload.c:496
#: lib/libalpm/dload.c:509 lib/libalpm/dload.c:547 lib/libalpm/dload.c:561
#, c-format
msgid "failed retrieving file '%s' from %s : %s\n"
msgstr "неуспех при извличане на файл '%s' от %s : %s\n"
#: lib/libalpm/dload.c:477
#: lib/libalpm/dload.c:539
#, c-format
msgid "failed retrieving file '%s' from %s : expected download size exceeded\n"
msgstr ""
"неуспех при получаването на файл '%s' от %s : очакваният размер за сваляне е "
"надвишен\n"
#: lib/libalpm/dload.c:532
#: lib/libalpm/dload.c:687
#, c-format
msgid "%s appears to be truncated: %jd/%jd bytes\n"
msgstr "%s изглежда частичен: %jd/%jd bytes\n"
#: lib/libalpm/dload.c:677 lib/libalpm/dload.c:706
#: lib/libalpm/dload.c:787
#, c-format
msgid "failed to download %s\n"
msgstr "неуспех при сваляне на %s\n"
msgid "url '%s' is invalid\n"
msgstr "url '%s' е невалиден\n"
#: lib/libalpm/dload.c:893
#, c-format
msgid "failed to setup a download payload for %s\n"
msgstr ""
#: lib/libalpm/dload.c:905
#, c-format
msgid "curl returned error %d from transfer\n"
msgstr ""
#: lib/libalpm/dload.c:929
#, c-format
msgid "curl transfer error: %d\n"
msgstr ""
#: lib/libalpm/dload.c:1055 lib/libalpm/sync.c:840
#, c-format
msgid "failed to retrieve some files\n"
msgstr "неуспех при извличане на файлове\n"
#: lib/libalpm/dload.c:1078
#, c-format
msgid "download completed successfully but no file in the cache\n"
msgstr ""
#: lib/libalpm/error.c:40
#, c-format
@@ -494,7 +520,7 @@ msgstr "няма конфигуриран сърър за източник"
msgid "transaction already initialized"
msgstr "транзакцията вече е инициализирана"
#: lib/libalpm/error.c:90 lib/libalpm/error.c:94
#: lib/libalpm/error.c:90 lib/libalpm/error.c:96
#, c-format
msgid "transaction not initialized"
msgstr " транзакцията не е инициализирана"
@@ -504,86 +530,86 @@ msgstr " транзакцията не е инициализирана"
msgid "duplicate target"
msgstr "дублирана цел"
#: lib/libalpm/error.c:96
#: lib/libalpm/error.c:94
#, c-format
msgid "duplicate filename"
msgstr ""
#: lib/libalpm/error.c:98
#, c-format
msgid "transaction not prepared"
msgstr "транзакцията не е подготвена"
#: lib/libalpm/error.c:98
#: lib/libalpm/error.c:100
#, c-format
msgid "transaction aborted"
msgstr "транзакцията е преустановена"
#: lib/libalpm/error.c:100
#: lib/libalpm/error.c:102
#, c-format
msgid "operation not compatible with the transaction type"
msgstr "операцията е несъвместима с типа транзакция"
#: lib/libalpm/error.c:102
#: lib/libalpm/error.c:104
#, c-format
msgid "transaction commit attempt when database is not locked"
msgstr "транзакцията иска достъп до незаключена база"
#: lib/libalpm/error.c:104
#: lib/libalpm/error.c:106
#, c-format
msgid "failed to run transaction hooks"
msgstr "неуспех при пускането на транзакционни куки"
#: lib/libalpm/error.c:107
#: lib/libalpm/error.c:109
#, c-format
msgid "could not find or read package"
msgstr "няма или не се чете пакет"
#: lib/libalpm/error.c:109
#: lib/libalpm/error.c:111
#, c-format
msgid "operation cancelled due to ignorepkg"
msgstr "отменена операция според ignorepkg"
#: lib/libalpm/error.c:111
#: lib/libalpm/error.c:113
#, c-format
msgid "invalid or corrupted package"
msgstr "невалиден или повреден пакет"
#: lib/libalpm/error.c:113
#: lib/libalpm/error.c:115
#, c-format
msgid "invalid or corrupted package (checksum)"
msgstr "невалиден или повреден пакет (checksum)"
#: lib/libalpm/error.c:115
#: lib/libalpm/error.c:117
#, c-format
msgid "invalid or corrupted package (PGP signature)"
msgstr "невалиден или повреден пакет (PGP signature)"
#: lib/libalpm/error.c:117
#: lib/libalpm/error.c:119
#, c-format
msgid "package missing required signature"
msgstr "липсва изискващ се подпис на пакет"
#: lib/libalpm/error.c:119
#: lib/libalpm/error.c:121
#, c-format
msgid "cannot open package file"
msgstr "не се отваря пакетен файл"
#: lib/libalpm/error.c:121
#: lib/libalpm/error.c:123
#, c-format
msgid "cannot remove all files for package"
msgstr "не се премахват всички файлове на пакета"
#: lib/libalpm/error.c:123
#: lib/libalpm/error.c:125
#, c-format
msgid "package filename is not valid"
msgstr "името на пакета не е валидно"
#: lib/libalpm/error.c:125
#: lib/libalpm/error.c:127
#, c-format
msgid "package architecture is not valid"
msgstr "архитектурата на пакета не е валидна"
#: lib/libalpm/error.c:127
#, c-format
msgid "could not find repository for target"
msgstr "не може да се открие източник за целта"
#: lib/libalpm/error.c:130
#, c-format
msgid "missing PGP signature"
@@ -649,12 +675,12 @@ msgstr "компилиран без поддръжка на подпис"
msgid "unexpected error"
msgstr "неочаквана грешка"
#: lib/libalpm/handle.c:153
#: lib/libalpm/handle.c:142
#, c-format
msgid "lock file missing %s\n"
msgstr "липсва заключващ файл %s\n"
#: lib/libalpm/handle.c:159
#: lib/libalpm/handle.c:148
#, c-format
msgid "could not remove lock file %s\n"
msgstr "не се премахва заключен файл %s\n"
@@ -726,7 +752,7 @@ msgstr "кука %s ред %d: невъзможно да се зададе оп
msgid "unable to run hook %s: %s\n"
msgstr "невъзможно е пускане на куката %s: %s\n"
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:386
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:378
#, c-format
msgid "could not open directory: %s: %s\n"
msgstr "не се отваря папка: %s: %s\n"
@@ -736,7 +762,7 @@ msgstr "не се отваря папка: %s: %s\n"
msgid "could not open file: %s%s: %s\n"
msgstr "не може да се отвори файл: %s%s: %s\n"
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:259
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:260
#, c-format
msgid "could not stat file %s: %s\n"
msgstr "не се коригира %s: %s\n"
@@ -746,183 +772,183 @@ msgstr "не се коригира %s: %s\n"
msgid "could not read directory: %s: %s\n"
msgstr "не може да се прочете папката: %s: %s\n"
#: lib/libalpm/package.c:578
#: lib/libalpm/package.c:598
#, c-format
msgid "could not fully load metadata for package %s-%s\n"
msgstr "не пълно извеждане на метаданни за пакет %s-%s\n"
#: lib/libalpm/remove.c:119
#: lib/libalpm/remove.c:111
#, c-format
msgid "could not find %s in database -- skipping\n"
msgstr "няма %s в базата -- пропускане\n"
#: lib/libalpm/remove.c:154
#: lib/libalpm/remove.c:146
#, c-format
msgid "removing %s from target list\n"
msgstr "премахване %s от списъка с целите\n"
#: lib/libalpm/remove.c:346
#: lib/libalpm/remove.c:338
#, c-format
msgid "cannot remove file '%s': %s\n"
msgstr "не се премахва файла '%s': %s\n"
#: lib/libalpm/remove.c:411 lib/libalpm/remove.c:420
#: lib/libalpm/remove.c:403 lib/libalpm/remove.c:412
#, c-format
msgid "could not backup %s due to PATH_MAX overflow\n"
msgstr "не може да се архивира %s поради препълване на PATH_MAX\n"
#: lib/libalpm/remove.c:562
#: lib/libalpm/remove.c:554
#, c-format
msgid "cannot remove %s (%s)\n"
msgstr "не се премахва %s (%s)\n"
#: lib/libalpm/remove.c:735
#: lib/libalpm/remove.c:727
#, c-format
msgid "could not remove database entry %s-%s\n"
msgstr "не може да се премахне запис в базата %s-%s\n"
#: lib/libalpm/remove.c:740
#: lib/libalpm/remove.c:732
#, c-format
msgid "could not remove entry '%s' from cache\n"
msgstr "не може да се премахне '%s' от кеша\n"
#: lib/libalpm/signing.c:171
#: lib/libalpm/signing.c:163
#, c-format
msgid "Public keyring not found; have you run '%s'?\n"
msgstr "Публичният ключодържател не е открит; Ще пуснете ли '%s'?\n"
#: lib/libalpm/signing.c:207 lib/libalpm/signing.c:784
#: lib/libalpm/signing.c:199 lib/libalpm/signing.c:767
#, c-format
msgid "GPGME error: %s\n"
msgstr "GPGME грешка: %s\n"
#: lib/libalpm/signing.c:284
#: lib/libalpm/signing.c:274
#, c-format
msgid "looking up key %s using WKD\n"
msgstr "търсене на ключ %s използвайки WKD\n"
#: lib/libalpm/signing.c:293
#: lib/libalpm/signing.c:283
#, c-format
msgid "gpg error: %s\n"
msgstr "gpg грешка: %s\n"
#: lib/libalpm/signing.c:441 lib/libalpm/signing.c:515
#: lib/libalpm/signing.c:430 lib/libalpm/signing.c:503
#, c-format
msgid "keyring is not writable\n"
msgstr "ключодържателя не се записва\n"
#: lib/libalpm/signing.c:539
#: lib/libalpm/signing.c:531
#, c-format
msgid "key \"%s\" on keyserver\n"
msgstr "ключ \"%s\" на ключов съвър\n"
#: lib/libalpm/signing.c:544
#: lib/libalpm/signing.c:536
#, c-format
msgid "key \"%s\" could not be imported\n"
msgstr "ключ \"%s\" не може да се внесе\n"
#: lib/libalpm/signing.c:548
#: lib/libalpm/signing.c:540
#, c-format
msgid "key \"%s\" could not be looked up remotely\n"
msgstr "ключ \"%s\" не може да се прегледа отдалечено\n"
#: lib/libalpm/signing.c:943 lib/libalpm/sync.c:1022
#: lib/libalpm/signing.c:926 lib/libalpm/sync.c:1022
#, c-format
msgid "%s: missing required signature\n"
msgstr "%s: липсва изискващ се подпис\n"
#: lib/libalpm/signing.c:958
#: lib/libalpm/signing.c:941
#, c-format
msgid "%s: signature from \"%s\" is marginal trust\n"
msgstr "%s: подписът от \"%s\" е изрично доверен\n"
#: lib/libalpm/signing.c:966
#: lib/libalpm/signing.c:949
#, c-format
msgid "%s: signature from \"%s\" is unknown trust\n"
msgstr "%s: подписът от \"%s\" е с непознато доверие\n"
#: lib/libalpm/signing.c:973
#: lib/libalpm/signing.c:956
#, c-format
msgid "%s: signature from \"%s\" should never be trusted\n"
msgstr "%s: подписът от \"%s\" никога да не се му вярва\n"
#: lib/libalpm/signing.c:985
#: lib/libalpm/signing.c:968
#, c-format
msgid "%s: key \"%s\" is unknown\n"
msgstr "%s: ключ \"%s\" е непознат\n"
#: lib/libalpm/signing.c:994
#: lib/libalpm/signing.c:977
#, c-format
msgid "%s: key \"%s\" is disabled\n"
msgstr "%s: ключа е \"%s\" е негоден\n"
#: lib/libalpm/signing.c:998
#: lib/libalpm/signing.c:981
#, c-format
msgid "%s: signature from \"%s\" is expired\n"
msgstr "%s: подписът от \"%s\" е изтекъл\n"
#: lib/libalpm/signing.c:1002
#: lib/libalpm/signing.c:985
#, c-format
msgid "%s: signature from \"%s\" is invalid\n"
msgstr "%s: подписът от \"%s\" е невалиден\n"
#: lib/libalpm/signing.c:1079 lib/libalpm/signing.c:1147
#: lib/libalpm/signing.c:1226
#: lib/libalpm/signing.c:1043 lib/libalpm/signing.c:1104
#: lib/libalpm/signing.c:1183
#, c-format
msgid "%s: signature format error\n"
msgstr "%s: грешен формат на подписа\n"
#: lib/libalpm/signing.c:1179 lib/libalpm/signing.c:1212
#: lib/libalpm/signing.c:1220
#: lib/libalpm/signing.c:1136 lib/libalpm/signing.c:1169
#: lib/libalpm/signing.c:1177
#, c-format
msgid "%s: unsupported signature format\n"
msgstr "%s: неподдържан формат на подписа\n"
#: lib/libalpm/sync.c:99
#: lib/libalpm/sync.c:96
#, c-format
msgid "%s: ignoring package upgrade (%s => %s)\n"
msgstr "%s: игнориране надграждането на пакет (%s => %s)\n"
#: lib/libalpm/sync.c:111
#: lib/libalpm/sync.c:108
#, c-format
msgid "%s: ignoring package downgrade (%s => %s)\n"
msgstr "%s: игнориране на пакетен downgrade (%s => %s)\n"
#: lib/libalpm/sync.c:114
#: lib/libalpm/sync.c:111
#, c-format
msgid "%s: downgrading from version %s to version %s\n"
msgstr "%s: снижаване на версията от %s към версия %s\n"
#: lib/libalpm/sync.c:120
#: lib/libalpm/sync.c:117
#, c-format
msgid "%s: local (%s) is newer than %s (%s)\n"
msgstr "%s: текущият (%s) е по-нов от %s (%s)\n"
#: lib/libalpm/sync.c:161
#: lib/libalpm/sync.c:158
#, c-format
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
msgstr "игнориране замяната на пакет (%s-%s => %s-%s)\n"
#: lib/libalpm/sync.c:177
#: lib/libalpm/sync.c:174
#, c-format
msgid "cannot replace %s by %s\n"
msgstr "не може да се замести %s от %s\n"
#: lib/libalpm/sync.c:535 lib/libalpm/sync.c:605
#: lib/libalpm/sync.c:476
#, c-format
msgid "packages %s and %s have the same filename: %s\n"
msgstr ""
#: lib/libalpm/sync.c:542 lib/libalpm/sync.c:612
#, c-format
msgid "unresolvable package conflicts detected\n"
msgstr "засечени нерешени пакетни конфликти\n"
#: lib/libalpm/sync.c:555
#: lib/libalpm/sync.c:562
#, c-format
msgid "removing '%s' from target list because it conflicts with '%s'\n"
msgstr "премахване '%s' от целевия списък заради конфликт с '%s'\n"
#: lib/libalpm/sync.c:849
#, c-format
msgid "failed to retrieve some files\n"
msgstr "неуспех при извличане на файлове\n"
#: lib/libalpm/sync.c:1036
#, c-format
msgid "failed to read file %s: %s\n"
@@ -943,82 +969,82 @@ msgstr "не се потвърждава транзакцията по прем
msgid "could not commit transaction\n"
msgstr "не се потвърждава транзакцията\n"
#: lib/libalpm/trans.c:364
#: lib/libalpm/trans.c:365
#, c-format
msgid "could not create temp directory\n"
msgstr "не се създава temp папка\n"
#: lib/libalpm/trans.c:379
#: lib/libalpm/trans.c:380
#, c-format
msgid "could not copy tempfile to %s (%s)\n"
msgstr "не се копира tempfile в %s (%s)\n"
#: lib/libalpm/trans.c:410
#: lib/libalpm/trans.c:411
#, c-format
msgid "could not remove %s\n"
msgstr "не се премахва %s\n"
#: lib/libalpm/trans.c:414
#: lib/libalpm/trans.c:415
#, c-format
msgid "could not remove tmpdir %s\n"
msgstr "не се премахва tmpdir %s\n"
#: lib/libalpm/util.c:486
#: lib/libalpm/util.c:488
#, c-format
msgid "unable to write to pipe (%s)\n"
msgstr "неъспешно записването в тръбата (%s)\n"
#: lib/libalpm/util.c:545
#: lib/libalpm/util.c:547
#, c-format
msgid "unable to read from pipe (%s)\n"
msgstr "неуспешно четенето от тръбата (%s)\n"
#: lib/libalpm/util.c:609 lib/libalpm/util.c:615
#: lib/libalpm/util.c:617 lib/libalpm/util.c:623
#, c-format
msgid "could not create pipe (%s)\n"
msgstr "не се създава pipe (%s)\n"
#: lib/libalpm/util.c:623
#: lib/libalpm/util.c:631
#, c-format
msgid "could not fork a new process (%s)\n"
msgstr "could not fork a new process (%s)\n"
#: lib/libalpm/util.c:646
#: lib/libalpm/util.c:654
#, c-format
msgid "could not change the root directory (%s)\n"
msgstr "не може да се промени root папката (%s)\n"
#: lib/libalpm/util.c:658
#: lib/libalpm/util.c:666
#, c-format
msgid "call to execv failed (%s)\n"
msgstr "неуспех при извикване execv (%s)\n"
#: lib/libalpm/util.c:737
#: lib/libalpm/util.c:745
#, c-format
msgid "call to waitpid failed (%s)\n"
msgstr "неуспех при извикване на waitpid (%s)\n"
#: lib/libalpm/util.c:747
#: lib/libalpm/util.c:755
#, c-format
msgid "command failed to execute correctly\n"
msgstr "неуспешно правилно изпълнение на команда\n"
#: lib/libalpm/util.c:754
#: lib/libalpm/util.c:762
#, c-format
msgid "Unknown signal"
msgstr "Неизвестен сигнал"
#: lib/libalpm/util.c:756
#: lib/libalpm/util.c:764
#, c-format
msgid "command terminated by signal %d: %s\n"
msgstr "командата прекратена от сигнал %d: %s\n"
#: lib/libalpm/util.c:853
#: lib/libalpm/util.c:875
#, c-format
msgid "no %s cache exists, creating...\n"
msgstr "не %s съществуваш кеш, създаване...\n"
#: lib/libalpm/util.c:884
#: lib/libalpm/util.c:906
#, c-format
msgid "couldn't find or create package cache, using %s instead\n"
msgstr "не се открива или създава пакетен кеш, използва се %s\n"

View File

@@ -1,6 +1,6 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Pacman Development Team <pacman-dev@archlinux.org>
# This file is distributed under the same license as the PACKAGE package.
# Copyright (C) YEAR "Pacman Development Team <pacman-dev@archlinux.org>"
# This file is distributed under the same license as the libalpm package.
#
# Translators:
# Gwenn M <tornoz@laposte.net>, 2015
@@ -9,8 +9,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Arch Linux Pacman package manager\n"
"Report-Msgid-Bugs-To: http://bugs.archlinux.org/index.php?project=3\n"
"POT-Creation-Date: 2019-10-21 17:23+1000\n"
"PO-Revision-Date: 2019-10-07 08:12+0000\n"
"POT-Creation-Date: 2021-09-04 16:15+1000\n"
"PO-Revision-Date: 2021-05-20 02:25+0000\n"
"Last-Translator: Allan McRae <allan@archlinux.org>\n"
"Language-Team: Breton (http://www.transifex.com/toofishes/archlinux-pacman/"
"language/br/)\n"
@@ -24,17 +24,17 @@ msgstr ""
"19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 "
"&& n % 1000000 == 0) ? 3 : 4);\n"
#: lib/libalpm/add.c:91 lib/libalpm/sync.c:290
#: lib/libalpm/add.c:90 lib/libalpm/sync.c:279
#, c-format
msgid "%s-%s is up to date -- skipping\n"
msgstr "hizivaet eo %s - %s -- laosket a-gostez\n"
#: lib/libalpm/add.c:95
#: lib/libalpm/add.c:94
#, c-format
msgid "%s-%s is up to date -- reinstalling\n"
msgstr "Hizivaet eo %s - %s -- adstaliadur\n"
#: lib/libalpm/add.c:100
#: lib/libalpm/add.c:99
#, c-format
msgid "downgrading package %s (%s => %s)\n"
msgstr "o pellgargañ ar pakad %s (%s => %s)\n"
@@ -44,17 +44,17 @@ msgstr "o pellgargañ ar pakad %s (%s => %s)\n"
msgid "cannot allocate disk archive object"
msgstr "n'haller ket derannañ an ergorenn kantenn diell"
#: lib/libalpm/add.c:143 lib/libalpm/util.c:382
#: lib/libalpm/add.c:143 lib/libalpm/util.c:384
#, c-format
msgid "warning given when extracting %s (%s)\n"
msgstr "ur galv diwall a zo bet roet en ur eztennañ %s (%s)\n"
#: lib/libalpm/add.c:146 lib/libalpm/util.c:385
#: lib/libalpm/add.c:146 lib/libalpm/util.c:387
#, c-format
msgid "could not extract %s (%s)\n"
msgstr "n'haller ket eztennañ %s (%s)\n"
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:574 lib/libalpm/remove.c:542
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:709 lib/libalpm/remove.c:534
#, c-format
msgid "could not rename %s to %s (%s)\n"
msgstr "n'haller ket adenvel %s e %s (%s)\n"
@@ -99,138 +99,138 @@ msgstr "eztannadur : flastradur kavlec'h gant restr %s ebet \n"
msgid "unable to extract %s.pacnew: path too long"
msgstr "n'haller ket eztennañ %s.pacnew : re hir eo an treug"
#: lib/libalpm/add.c:513 lib/libalpm/util.c:334 lib/libalpm/util.c:592
#: lib/libalpm/add.c:510 lib/libalpm/util.c:335 lib/libalpm/util.c:600
#, c-format
msgid "could not get current working directory\n"
msgstr "n'haller ket kaout ar c'havlec'h labour bremanel\n"
#: lib/libalpm/add.c:518 lib/libalpm/util.c:339 lib/libalpm/util.c:597
#: lib/libalpm/util.c:650
#: lib/libalpm/add.c:515 lib/libalpm/util.c:340 lib/libalpm/util.c:605
#: lib/libalpm/util.c:658
#, c-format
msgid "could not change directory to %s (%s)\n"
msgstr "n'haller ket kemmañ ar c'havlec'h da %s (%s)\n"
#: lib/libalpm/add.c:575 lib/libalpm/util.c:403 lib/libalpm/util.c:766
#: lib/libalpm/add.c:571 lib/libalpm/util.c:405 lib/libalpm/util.c:774
#, c-format
msgid "could not restore working directory (%s)\n"
msgstr "n'haller ket assav ar c'havlec'h labour (%s)\n"
#: lib/libalpm/add.c:583
#: lib/libalpm/add.c:579
#, c-format
msgid "problem occurred while upgrading %s\n"
msgstr "ur fazi a zo bet en ur hizivaat %s\n"
#: lib/libalpm/add.c:589
#: lib/libalpm/add.c:585
#, c-format
msgid "problem occurred while installing %s\n"
msgstr "ur fazi a zo bet en ur staliañ %s\n"
#: lib/libalpm/add.c:604
#: lib/libalpm/add.c:600
#, c-format
msgid "could not update database entry %s-%s\n"
msgstr "n'haller ket hizivaat an enankad stlennvon %s-%s\n"
#: lib/libalpm/add.c:615
#: lib/libalpm/add.c:610
#, c-format
msgid "could not add entry '%s' in cache\n"
msgstr "n'haller ket ouzhpennañ an enankad '%s' er skurzer\n"
#: lib/libalpm/be_local.c:267
#: lib/libalpm/be_local.c:266
#, c-format
msgid "error while reading file %s: %s\n"
msgstr "fazi en ul lenn ar restr %s : %s\n"
#: lib/libalpm/be_local.c:364
#: lib/libalpm/be_local.c:376
#, c-format
msgid "removing invalid database: %s\n"
msgstr "o dilemel ar stlennvon direizh : %s\n"
#: lib/libalpm/be_local.c:415 lib/libalpm/be_local.c:905
#: lib/libalpm/be_local.c:427 lib/libalpm/be_local.c:909
#, c-format
msgid "could not create directory %s: %s\n"
msgstr "n'haller ker krouiñ ar c'havlec'h %s : %s\n"
#: lib/libalpm/be_local.c:590 lib/libalpm/be_sync.c:386
#: lib/libalpm/be_local.c:602 lib/libalpm/be_sync.c:322
#, c-format
msgid "invalid name for database entry '%s'\n"
msgstr "anv direizh evit an enankad stlennvon '%s'\n"
#: lib/libalpm/be_local.c:598
#: lib/libalpm/be_local.c:610
#, c-format
msgid "duplicated database entry '%s'\n"
msgstr "enankad stlennvon eilet '%s'\n"
#: lib/libalpm/be_local.c:610
#: lib/libalpm/be_local.c:622
#, c-format
msgid "corrupted database entry '%s'\n"
msgstr "enankad stlennvon kontronet '%s'\n"
#: lib/libalpm/be_local.c:713 lib/libalpm/be_local.c:809
#: lib/libalpm/be_local.c:954 lib/libalpm/be_local.c:1051
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:422 lib/libalpm/util.c:253
#: lib/libalpm/util.c:269
#: lib/libalpm/be_local.c:722 lib/libalpm/be_local.c:818
#: lib/libalpm/be_local.c:958 lib/libalpm/be_local.c:1055
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:823 lib/libalpm/util.c:254
#: lib/libalpm/util.c:270
#, c-format
msgid "could not open file %s: %s\n"
msgstr "n'haller ket digeriñ ar restr %s : %s\n"
#: lib/libalpm/be_local.c:729 lib/libalpm/be_sync.c:650
#: lib/libalpm/be_local.c:738 lib/libalpm/be_sync.c:582
#, c-format
msgid "%s database is inconsistent: name mismatch on package %s\n"
msgstr "digantalc'hek eo ar stlennvon %s : digenglotus eo anvioù ar pakad %s\n"
#: lib/libalpm/be_local.c:735 lib/libalpm/be_sync.c:656
#: lib/libalpm/be_local.c:744 lib/libalpm/be_sync.c:588
#, c-format
msgid "%s database is inconsistent: version mismatch on package %s\n"
msgstr ""
"digantalc'hek eo ar stlennvon %s : digenglotus eo handelvioù ar pakad %s\n"
#: lib/libalpm/be_local.c:776
#: lib/libalpm/be_local.c:785
#, c-format
msgid "unknown validation type for package %s: %s\n"
msgstr "doare gwiriadur dianav evit ar pakad %s : %s\n"
#: lib/libalpm/be_package.c:479 lib/libalpm/be_package.c:637
#: lib/libalpm/be_package.c:650
#: lib/libalpm/be_package.c:478 lib/libalpm/be_package.c:631
#: lib/libalpm/be_package.c:643
#, c-format
msgid "error while reading package %s: %s\n"
msgstr "fazi en ul lenn ar pakad %s : %s\n"
#: lib/libalpm/be_package.c:493 lib/libalpm/be_package.c:517
#: lib/libalpm/be_package.c:491 lib/libalpm/be_package.c:514
#, c-format
msgid "error while reading mtree of package %s: %s\n"
msgstr "fazi en ul lenn mtree ar pakad %s : %s\n"
#: lib/libalpm/be_package.c:603
#: lib/libalpm/be_package.c:597
#, c-format
msgid "could not parse package description file in %s\n"
msgstr "n'haller ket dezrannañ restr deskrivañ ar pakad e %s\n"
#: lib/libalpm/be_package.c:608
#: lib/libalpm/be_package.c:602
#, c-format
msgid "missing package name in %s\n"
msgstr "mankout a ra an anv pakad e %s\n"
#: lib/libalpm/be_package.c:612
#: lib/libalpm/be_package.c:606
#, c-format
msgid "missing package version in %s\n"
msgstr "mankout a ra handelv ar pakad e %s\n"
#: lib/libalpm/be_package.c:616
#: lib/libalpm/be_package.c:610
#, c-format
msgid "invalid package version in %s\n"
msgstr "handelv pakad direizh e %s\n"
#: lib/libalpm/be_package.c:657
#: lib/libalpm/be_package.c:649
#, c-format
msgid "missing package metadata in %s\n"
msgstr "mankout a ra metaroadennoù ar pakad e %s\n"
#: lib/libalpm/be_package.c:750
#: lib/libalpm/be_package.c:741
#, c-format
msgid "failed to read signature file: %s\n"
msgstr "fazi en ul lenn ar restr sinadur : %s\n"
#: lib/libalpm/be_package.c:779 lib/libalpm/sync.c:953
#: lib/libalpm/be_package.c:770 lib/libalpm/sync.c:953
#, c-format
msgid "required key missing from keyring\n"
msgstr "mankout a ra an alc'hwez goulennet en droñsell\n"
@@ -240,34 +240,34 @@ msgstr "mankout a ra an alc'hwez goulennet en droñsell\n"
msgid "removing invalid file: %s\n"
msgstr "o dilemel ar restr direizh : %s\n"
#: lib/libalpm/be_sync.c:515
#: lib/libalpm/be_sync.c:449
#, c-format
msgid "could not parse package description file '%s' from db '%s'\n"
msgstr ""
"n'haller ket dezrannañ ar restr deskrivadur pakadoù '%s' adalek ar sv '%s'\n"
#: lib/libalpm/be_sync.c:522
#: lib/libalpm/be_sync.c:456
#, c-format
msgid "could not read db '%s' (%s)\n"
msgstr "n'haller ket lenn ar stlennvon '%s' (%s)\n"
#: lib/libalpm/be_sync.c:556 lib/libalpm/be_sync.c:561
#: lib/libalpm/be_sync.c:489 lib/libalpm/be_sync.c:494
#, c-format
msgid "%s database is inconsistent: filename of package %s is illegal\n"
msgstr ""
"digantalc'hek eo ar stlennvon %s : didalvoudek eo anv restr ar pakad %s\n"
#: lib/libalpm/be_sync.c:566
#: lib/libalpm/be_sync.c:499
#, c-format
msgid "%s database is inconsistent: filename of package %s is too long\n"
msgstr "digantalc'hek eo ar stlennvon %s : re hir eo anv restr ar pakad %s\n"
#: lib/libalpm/be_sync.c:632
#: lib/libalpm/be_sync.c:564
#, c-format
msgid "unknown database file: %s\n"
msgstr "restr stlennvon dianav : %s\n"
#: lib/libalpm/db.c:370
#: lib/libalpm/db.c:344
#, c-format
msgid "database path is undefined\n"
msgstr "andespizet eo treug ar stlennvon\n"
@@ -287,12 +287,12 @@ msgstr "dilamet e vo %s goude e %s amzalc'h\n"
msgid "%s will be installed before its %s dependency\n"
msgstr "staliet e vo %s goude e %s amzalc'h\n"
#: lib/libalpm/deps.c:681 lib/libalpm/deps.c:712
#: lib/libalpm/deps.c:666 lib/libalpm/deps.c:697
#, c-format
msgid "ignoring package %s-%s\n"
msgstr "o leuskel ar pakad %s - %s a-gostez\n"
#: lib/libalpm/deps.c:869
#: lib/libalpm/deps.c:842
#, c-format
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
msgstr "n'haller ket diskoulmañ \"%s\", un amzalc'h \"%s\"\n"
@@ -348,42 +348,68 @@ msgstr "n'haller ket despizañ poent kenstrollañ ar gwrizienn %s\n"
msgid "Partition %s is mounted read only\n"
msgstr "E mod lenn nemetken eo kenstrollet ar parzhad %s\n"
#: lib/libalpm/dload.c:161
#: lib/libalpm/dload.c:116
#, c-format
msgid ""
"too many errors from %s, skipping for the remainder of this transaction\n"
msgstr ""
#: lib/libalpm/dload.c:220
#, c-format
msgid "disk"
msgstr "pladenn"
#: lib/libalpm/dload.c:348
#: lib/libalpm/dload.c:392
#, c-format
msgid "failed to create temporary file for download\n"
msgstr "fazi en ur c'hrouiñ ar restr padennek evit ar pellgargañ\n"
#: lib/libalpm/dload.c:393
#, c-format
msgid "url '%s' is invalid\n"
msgstr "direizh eo an url '%s'\n"
#: lib/libalpm/dload.c:464 lib/libalpm/dload.c:485 lib/libalpm/dload.c:496
#: lib/libalpm/dload.c:509 lib/libalpm/dload.c:547 lib/libalpm/dload.c:561
#, c-format
msgid "failed retrieving file '%s' from %s : %s\n"
msgstr "fazi en ur adkavout ar restr '%s' adalek %s : %s\n"
#: lib/libalpm/dload.c:477
#: lib/libalpm/dload.c:539
#, c-format
msgid "failed retrieving file '%s' from %s : expected download size exceeded\n"
msgstr ""
"fazi en ur adkavout ar restr '%s' adalek %s : re vras eo ment ar "
"pellgargadur\n"
#: lib/libalpm/dload.c:532
#: lib/libalpm/dload.c:687
#, c-format
msgid "%s appears to be truncated: %jd/%jd bytes\n"
msgstr "krennet e seblant bezañ %s : %jd/%jd eizhbit\n"
#: lib/libalpm/dload.c:677 lib/libalpm/dload.c:706
#: lib/libalpm/dload.c:787
#, c-format
msgid "failed to download %s\n"
msgstr "fazi en ur pellgargañ %s\n"
msgid "url '%s' is invalid\n"
msgstr "direizh eo an url '%s'\n"
#: lib/libalpm/dload.c:893
#, c-format
msgid "failed to setup a download payload for %s\n"
msgstr ""
#: lib/libalpm/dload.c:905
#, c-format
msgid "curl returned error %d from transfer\n"
msgstr ""
#: lib/libalpm/dload.c:929
#, c-format
msgid "curl transfer error: %d\n"
msgstr ""
#: lib/libalpm/dload.c:1055 lib/libalpm/sync.c:840
#, c-format
msgid "failed to retrieve some files\n"
msgstr "c'hwitadenn war atoradur restroù 'zo\n"
#: lib/libalpm/dload.c:1078
#, c-format
msgid "download completed successfully but no file in the cache\n"
msgstr ""
#: lib/libalpm/error.c:40
#, c-format
@@ -500,7 +526,7 @@ msgstr "n'eus dafariad ebet kefluniet evit ar mirlec'h"
msgid "transaction already initialized"
msgstr "deraouekaet eo bet an treuzkas"
#: lib/libalpm/error.c:90 lib/libalpm/error.c:94
#: lib/libalpm/error.c:90 lib/libalpm/error.c:96
#, c-format
msgid "transaction not initialized"
msgstr "n'eo ket bet deraouekaet an treuzkas"
@@ -510,87 +536,87 @@ msgstr "n'eo ket bet deraouekaet an treuzkas"
msgid "duplicate target"
msgstr "bukenn eilet"
#: lib/libalpm/error.c:96
#: lib/libalpm/error.c:94
#, c-format
msgid "duplicate filename"
msgstr ""
#: lib/libalpm/error.c:98
#, c-format
msgid "transaction not prepared"
msgstr "n'eo ket bet prientet an treuzkas"
#: lib/libalpm/error.c:98
#: lib/libalpm/error.c:100
#, c-format
msgid "transaction aborted"
msgstr "dilezet eo bet an treuzkas"
#: lib/libalpm/error.c:100
#: lib/libalpm/error.c:102
#, c-format
msgid "operation not compatible with the transaction type"
msgstr "n'eo ket kenglotus an oberatadenn gant doare an treuzkas"
#: lib/libalpm/error.c:102
#: lib/libalpm/error.c:104
#, c-format
msgid "transaction commit attempt when database is not locked"
msgstr ""
"klasket eo bet erounit an treuzkas padal ne oa ket prennet ar stlennvon"
#: lib/libalpm/error.c:104
#: lib/libalpm/error.c:106
#, c-format
msgid "failed to run transaction hooks"
msgstr "c'hwitadenn war erounezadur krogoù treuzkas"
#: lib/libalpm/error.c:107
#: lib/libalpm/error.c:109
#, c-format
msgid "could not find or read package"
msgstr "n'haller ket kavout pe lenn ar pakad"
#: lib/libalpm/error.c:109
#: lib/libalpm/error.c:111
#, c-format
msgid "operation cancelled due to ignorepkg"
msgstr "nullet eo bet an oberatadenn abalamour da ignorepkg"
#: lib/libalpm/error.c:111
#: lib/libalpm/error.c:113
#, c-format
msgid "invalid or corrupted package"
msgstr "direizh pe kontronet eo ar pakad"
#: lib/libalpm/error.c:113
#: lib/libalpm/error.c:115
#, c-format
msgid "invalid or corrupted package (checksum)"
msgstr "direizh pe kontronet eo ar pakad (checksum)"
#: lib/libalpm/error.c:115
#: lib/libalpm/error.c:117
#, c-format
msgid "invalid or corrupted package (PGP signature)"
msgstr "direizh pe kontronet eo ar pakad (sinadur PGP)"
#: lib/libalpm/error.c:117
#: lib/libalpm/error.c:119
#, c-format
msgid "package missing required signature"
msgstr "mankout a ra ar sinadur dleet gant ar pakad"
#: lib/libalpm/error.c:119
#: lib/libalpm/error.c:121
#, c-format
msgid "cannot open package file"
msgstr "n'haller ket digeriñ restr ar pakad"
#: lib/libalpm/error.c:121
#: lib/libalpm/error.c:123
#, c-format
msgid "cannot remove all files for package"
msgstr "n'haller ket dilemel holl restroù ar pakad"
#: lib/libalpm/error.c:123
#: lib/libalpm/error.c:125
#, c-format
msgid "package filename is not valid"
msgstr "direizh eo anv restr ar pakad"
#: lib/libalpm/error.c:125
#: lib/libalpm/error.c:127
#, c-format
msgid "package architecture is not valid"
msgstr "direizh eo savouriezh ar pakad"
#: lib/libalpm/error.c:127
#, c-format
msgid "could not find repository for target"
msgstr "n'haller ket kavout mirlec'h ar vukenn"
#: lib/libalpm/error.c:130
#, c-format
msgid "missing PGP signature"
@@ -656,12 +682,12 @@ msgstr ""
msgid "unexpected error"
msgstr "fazi dic'hortoz"
#: lib/libalpm/handle.c:153
#: lib/libalpm/handle.c:142
#, c-format
msgid "lock file missing %s\n"
msgstr "mankout a ra ar restr marilhañ %s\n"
#: lib/libalpm/handle.c:159
#: lib/libalpm/handle.c:148
#, c-format
msgid "could not remove lock file %s\n"
msgstr "n'haller ket dilemel ar restr marilhañ %s\n"
@@ -733,7 +759,7 @@ msgstr "krog %s linenn %d: n'haller ket arventennañ an dibarzh (%s)\n"
msgid "unable to run hook %s: %s\n"
msgstr "n'haller ket lañsañ ar c'hrog %s: %s\n"
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:386
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:378
#, c-format
msgid "could not open directory: %s: %s\n"
msgstr "n'haller ket digeriñ ar c'havlec'h : %s : %s\n"
@@ -743,7 +769,7 @@ msgstr "n'haller ket digeriñ ar c'havlec'h : %s : %s\n"
msgid "could not open file: %s%s: %s\n"
msgstr "n'haller ket digeriñ ar restr: %s %s: %s\n"
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:259
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:260
#, c-format
msgid "could not stat file %s: %s\n"
msgstr "n'heller ket kaout stad ar restr %s : %s\n"
@@ -753,183 +779,183 @@ msgstr "n'heller ket kaout stad ar restr %s : %s\n"
msgid "could not read directory: %s: %s\n"
msgstr "n'haller ket lenn ar c'havlec'h: %s: %s\n"
#: lib/libalpm/package.c:578
#: lib/libalpm/package.c:598
#, c-format
msgid "could not fully load metadata for package %s-%s\n"
msgstr "n'haller ket kargañ ar metaroadennoù a-bezh evit ar pakad %s-%s\n"
#: lib/libalpm/remove.c:119
#: lib/libalpm/remove.c:111
#, c-format
msgid "could not find %s in database -- skipping\n"
msgstr "n'haller ket kavout %s er stlennvon -- laosket a-gostez\n"
#: lib/libalpm/remove.c:154
#: lib/libalpm/remove.c:146
#, c-format
msgid "removing %s from target list\n"
msgstr "o dilemel %s eus ar roll bukenn\n"
#: lib/libalpm/remove.c:346
#: lib/libalpm/remove.c:338
#, c-format
msgid "cannot remove file '%s': %s\n"
msgstr "n'heller ket dilemel ar restr '%s' : %s\n"
#: lib/libalpm/remove.c:411 lib/libalpm/remove.c:420
#: lib/libalpm/remove.c:403 lib/libalpm/remove.c:412
#, c-format
msgid "could not backup %s due to PATH_MAX overflow\n"
msgstr "n'haller ket gwarediñ %sabalamour d'an dic'hlann PATH_MAX\n"
#: lib/libalpm/remove.c:562
#: lib/libalpm/remove.c:554
#, c-format
msgid "cannot remove %s (%s)\n"
msgstr "n'heller ket dilemel %s (%s)\n"
#: lib/libalpm/remove.c:735
#: lib/libalpm/remove.c:727
#, c-format
msgid "could not remove database entry %s-%s\n"
msgstr "n'haller ket dilemel an enankad stlennvon %s-%s\n"
#: lib/libalpm/remove.c:740
#: lib/libalpm/remove.c:732
#, c-format
msgid "could not remove entry '%s' from cache\n"
msgstr "n'haller ket dilemel an enankad '%s' eus ar c'hrubuilh\n"
#: lib/libalpm/signing.c:171
#: lib/libalpm/signing.c:163
#, c-format
msgid "Public keyring not found; have you run '%s'?\n"
msgstr "Ne gaver ket an droñsell foran; lañset ho peus '%s'?\n"
#: lib/libalpm/signing.c:207 lib/libalpm/signing.c:784
#: lib/libalpm/signing.c:199 lib/libalpm/signing.c:767
#, c-format
msgid "GPGME error: %s\n"
msgstr "Fazi GPGME: %s\n"
#: lib/libalpm/signing.c:284
#: lib/libalpm/signing.c:274
#, c-format
msgid "looking up key %s using WKD\n"
msgstr ""
#: lib/libalpm/signing.c:293
#: lib/libalpm/signing.c:283
#, c-format
msgid "gpg error: %s\n"
msgstr ""
#: lib/libalpm/signing.c:441 lib/libalpm/signing.c:515
#: lib/libalpm/signing.c:430 lib/libalpm/signing.c:503
#, c-format
msgid "keyring is not writable\n"
msgstr "n'haller ket skrivañ en droñsell\n"
#: lib/libalpm/signing.c:539
#: lib/libalpm/signing.c:531
#, c-format
msgid "key \"%s\" on keyserver\n"
msgstr ""
#: lib/libalpm/signing.c:544
#: lib/libalpm/signing.c:536
#, c-format
msgid "key \"%s\" could not be imported\n"
msgstr ""
#: lib/libalpm/signing.c:548
#: lib/libalpm/signing.c:540
#, c-format
msgid "key \"%s\" could not be looked up remotely\n"
msgstr ""
#: lib/libalpm/signing.c:943 lib/libalpm/sync.c:1022
#: lib/libalpm/signing.c:926 lib/libalpm/sync.c:1022
#, c-format
msgid "%s: missing required signature\n"
msgstr "%s : mankout a ra ar sinadur dleet\n"
#: lib/libalpm/signing.c:958
#: lib/libalpm/signing.c:941
#, c-format
msgid "%s: signature from \"%s\" is marginal trust\n"
msgstr "%s: mentrezh ar sinadur \"%s\" n'eo ket fizius-tre\n"
#: lib/libalpm/signing.c:966
#: lib/libalpm/signing.c:949
#, c-format
msgid "%s: signature from \"%s\" is unknown trust\n"
msgstr ""
#: lib/libalpm/signing.c:973
#: lib/libalpm/signing.c:956
#, c-format
msgid "%s: signature from \"%s\" should never be trusted\n"
msgstr ""
#: lib/libalpm/signing.c:985
#: lib/libalpm/signing.c:968
#, c-format
msgid "%s: key \"%s\" is unknown\n"
msgstr "%s: dianav zo an alc'hwez \"%s\"\n"
#: lib/libalpm/signing.c:994
#: lib/libalpm/signing.c:977
#, c-format
msgid "%s: key \"%s\" is disabled\n"
msgstr ""
#: lib/libalpm/signing.c:998
#: lib/libalpm/signing.c:981
#, c-format
msgid "%s: signature from \"%s\" is expired\n"
msgstr ""
#: lib/libalpm/signing.c:1002
#: lib/libalpm/signing.c:985
#, c-format
msgid "%s: signature from \"%s\" is invalid\n"
msgstr ""
#: lib/libalpm/signing.c:1079 lib/libalpm/signing.c:1147
#: lib/libalpm/signing.c:1226
#: lib/libalpm/signing.c:1043 lib/libalpm/signing.c:1104
#: lib/libalpm/signing.c:1183
#, c-format
msgid "%s: signature format error\n"
msgstr ""
#: lib/libalpm/signing.c:1179 lib/libalpm/signing.c:1212
#: lib/libalpm/signing.c:1220
#: lib/libalpm/signing.c:1136 lib/libalpm/signing.c:1169
#: lib/libalpm/signing.c:1177
#, c-format
msgid "%s: unsupported signature format\n"
msgstr "%s: mentrezh sinadur anskor\n"
#: lib/libalpm/sync.c:99
#: lib/libalpm/sync.c:96
#, c-format
msgid "%s: ignoring package upgrade (%s => %s)\n"
msgstr "%s : o leuskel an hizivadenn pakad a-gostez (%s => %s)\n"
#: lib/libalpm/sync.c:111
#: lib/libalpm/sync.c:108
#, c-format
msgid "%s: ignoring package downgrade (%s => %s)\n"
msgstr "%s : o leuskel a-gostez an distro d'an handelv kozhoc'h (%s => %s)\n"
#: lib/libalpm/sync.c:114
#: lib/libalpm/sync.c:111
#, c-format
msgid "%s: downgrading from version %s to version %s\n"
msgstr "%s : o distreiñ eus an handelv %s betek an hini %s\n"
#: lib/libalpm/sync.c:120
#: lib/libalpm/sync.c:117
#, c-format
msgid "%s: local (%s) is newer than %s (%s)\n"
msgstr "%s : nevezoc'h eo an handelv lec'hel (%s) evit %s (%s)\n"
#: lib/libalpm/sync.c:161
#: lib/libalpm/sync.c:158
#, c-format
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
msgstr "o leuskel an erlec'hiadur pakad a-gostez (%s-%s => %s-%s)\n"
#: lib/libalpm/sync.c:177
#: lib/libalpm/sync.c:174
#, c-format
msgid "cannot replace %s by %s\n"
msgstr "n'haller ket erlec'hiañ %s gant %s\n"
#: lib/libalpm/sync.c:535 lib/libalpm/sync.c:605
#: lib/libalpm/sync.c:476
#, c-format
msgid "packages %s and %s have the same filename: %s\n"
msgstr ""
#: lib/libalpm/sync.c:542 lib/libalpm/sync.c:612
#, c-format
msgid "unresolvable package conflicts detected\n"
msgstr "tabutoù n'haller ket diskoulmañ a zo bet dinoet\n"
#: lib/libalpm/sync.c:555
#: lib/libalpm/sync.c:562
#, c-format
msgid "removing '%s' from target list because it conflicts with '%s'\n"
msgstr "o dilemel '%s' eus ar roll bukenn dre m'en deus un tabut gant '%s'\n"
#: lib/libalpm/sync.c:849
#, c-format
msgid "failed to retrieve some files\n"
msgstr "c'hwitadenn war atoradur restroù 'zo\n"
#: lib/libalpm/sync.c:1036
#, c-format
msgid "failed to read file %s: %s\n"
@@ -950,82 +976,82 @@ msgstr "n'haller ket erounit an treuzkas dilemel\n"
msgid "could not commit transaction\n"
msgstr "n'haller ket erounit an treuzkas\n"
#: lib/libalpm/trans.c:364
#: lib/libalpm/trans.c:365
#, c-format
msgid "could not create temp directory\n"
msgstr "n'haller ket krouiñ ur c'havlec'h padennek\n"
#: lib/libalpm/trans.c:379
#: lib/libalpm/trans.c:380
#, c-format
msgid "could not copy tempfile to %s (%s)\n"
msgstr "n'haller ket eilañ ar restr padennek e %s (%s)\n"
#: lib/libalpm/trans.c:410
#: lib/libalpm/trans.c:411
#, c-format
msgid "could not remove %s\n"
msgstr "n'haller ket dilemel %s\n"
#: lib/libalpm/trans.c:414
#: lib/libalpm/trans.c:415
#, c-format
msgid "could not remove tmpdir %s\n"
msgstr "n'haller ket dilemel ar c'havlec'h padennek e %s\n"
#: lib/libalpm/util.c:486
#: lib/libalpm/util.c:488
#, c-format
msgid "unable to write to pipe (%s)\n"
msgstr "n'haller ket skrivañ er gorzenn (%s)\n"
#: lib/libalpm/util.c:545
#: lib/libalpm/util.c:547
#, c-format
msgid "unable to read from pipe (%s)\n"
msgstr "n'haller ket lenn ar gorzenn (%s)\n"
#: lib/libalpm/util.c:609 lib/libalpm/util.c:615
#: lib/libalpm/util.c:617 lib/libalpm/util.c:623
#, c-format
msgid "could not create pipe (%s)\n"
msgstr "n'haller ket krouiñ ar gorzenn (%s)\n"
#: lib/libalpm/util.c:623
#: lib/libalpm/util.c:631
#, c-format
msgid "could not fork a new process (%s)\n"
msgstr "n'haller ket genel un araezad nevez (%s)\n"
#: lib/libalpm/util.c:646
#: lib/libalpm/util.c:654
#, c-format
msgid "could not change the root directory (%s)\n"
msgstr "n'haller ket kemmañ ar c'havlec'h gwrizienn (%s)\n"
#: lib/libalpm/util.c:658
#: lib/libalpm/util.c:666
#, c-format
msgid "call to execv failed (%s)\n"
msgstr "c'hwitadenn war galv execv (%s)\n"
#: lib/libalpm/util.c:737
#: lib/libalpm/util.c:745
#, c-format
msgid "call to waitpid failed (%s)\n"
msgstr "c'hwitadenn war galv waitpid (%s)\n"
#: lib/libalpm/util.c:747
#: lib/libalpm/util.c:755
#, c-format
msgid "command failed to execute correctly\n"
msgstr "c'hwitadenn war erounezadur an urzh\n"
#: lib/libalpm/util.c:754
#: lib/libalpm/util.c:762
#, c-format
msgid "Unknown signal"
msgstr "Arhent dianav"
#: lib/libalpm/util.c:756
#: lib/libalpm/util.c:764
#, c-format
msgid "command terminated by signal %d: %s\n"
msgstr "arsavet eo bet an urzh gant an arhent %d : %s\n"
#: lib/libalpm/util.c:853
#: lib/libalpm/util.c:875
#, c-format
msgid "no %s cache exists, creating...\n"
msgstr "n'eus krubuilh %s ebet, o krouiñ...\n"
#: lib/libalpm/util.c:884
#: lib/libalpm/util.c:906
#, c-format
msgid "couldn't find or create package cache, using %s instead\n"
msgstr ""

View File

@@ -1,6 +1,6 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Pacman Development Team <pacman-dev@archlinux.org>
# This file is distributed under the same license as the PACKAGE package.
# Copyright (C) YEAR "Pacman Development Team <pacman-dev@archlinux.org>"
# This file is distributed under the same license as the libalpm package.
#
# Translators:
# Alberto Sánchez Molero <alsamolero@gmail.com>, 2013
@@ -10,14 +10,14 @@
# Josep <jpreales@gmail.com>, 2011,2013
# Josep <jpreales@gmail.com>, 2011,2013
# Josep <jpreales@gmail.com>, 2011
# Davidmp <medipas@gmail.com>, 2015-2019
# Davidmp <medipas@gmail.com>, 2015-2019,2021
# Ramon Buldó <rbuldo@gmail.com>, 2014
msgid ""
msgstr ""
"Project-Id-Version: Arch Linux Pacman package manager\n"
"Report-Msgid-Bugs-To: http://bugs.archlinux.org/index.php?project=3\n"
"POT-Creation-Date: 2019-10-21 17:23+1000\n"
"PO-Revision-Date: 2019-10-07 14:57+0000\n"
"POT-Creation-Date: 2021-09-04 16:15+1000\n"
"PO-Revision-Date: 2021-05-20 08:01+0000\n"
"Last-Translator: Davidmp <medipas@gmail.com>\n"
"Language-Team: Catalan (http://www.transifex.com/toofishes/archlinux-pacman/"
"language/ca/)\n"
@@ -27,17 +27,17 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: lib/libalpm/add.c:91 lib/libalpm/sync.c:290
#: lib/libalpm/add.c:90 lib/libalpm/sync.c:279
#, c-format
msgid "%s-%s is up to date -- skipping\n"
msgstr "%s-%s està al dia. S'omet.\n"
#: lib/libalpm/add.c:95
#: lib/libalpm/add.c:94
#, c-format
msgid "%s-%s is up to date -- reinstalling\n"
msgstr "%s-%s està al dia. Es reinstal·larà.\n"
#: lib/libalpm/add.c:100
#: lib/libalpm/add.c:99
#, c-format
msgid "downgrading package %s (%s => %s)\n"
msgstr "Es degrada el paquet %s (%s => %s).\n"
@@ -47,17 +47,17 @@ msgstr "Es degrada el paquet %s (%s => %s).\n"
msgid "cannot allocate disk archive object"
msgstr "no es pot assignar l'objecte d'arxiu del disc."
#: lib/libalpm/add.c:143 lib/libalpm/util.c:382
#: lib/libalpm/add.c:143 lib/libalpm/util.c:384
#, c-format
msgid "warning given when extracting %s (%s)\n"
msgstr "avís en extreure %s (%s)\n"
#: lib/libalpm/add.c:146 lib/libalpm/util.c:385
#: lib/libalpm/add.c:146 lib/libalpm/util.c:387
#, c-format
msgid "could not extract %s (%s)\n"
msgstr "no s'ha pogut extreure %s (%s).\n"
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:574 lib/libalpm/remove.c:542
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:709 lib/libalpm/remove.c:534
#, c-format
msgid "could not rename %s to %s (%s)\n"
msgstr "no s'ha pogut canviar el nom %s a %s (%s).\n"
@@ -102,140 +102,140 @@ msgstr "extracció: no se sobreescriurà el directori amb el fitxer %s.\n"
msgid "unable to extract %s.pacnew: path too long"
msgstr "no es pot extreure %s.pacnew: camí massa llarg."
#: lib/libalpm/add.c:513 lib/libalpm/util.c:334 lib/libalpm/util.c:592
#: lib/libalpm/add.c:510 lib/libalpm/util.c:335 lib/libalpm/util.c:600
#, c-format
msgid "could not get current working directory\n"
msgstr "no s'ha pogut obtenir el directori de treball actual.\n"
#: lib/libalpm/add.c:518 lib/libalpm/util.c:339 lib/libalpm/util.c:597
#: lib/libalpm/util.c:650
#: lib/libalpm/add.c:515 lib/libalpm/util.c:340 lib/libalpm/util.c:605
#: lib/libalpm/util.c:658
#, c-format
msgid "could not change directory to %s (%s)\n"
msgstr "no s'ha pogut canviar el directori a %s (%s).\n"
#: lib/libalpm/add.c:575 lib/libalpm/util.c:403 lib/libalpm/util.c:766
#: lib/libalpm/add.c:571 lib/libalpm/util.c:405 lib/libalpm/util.c:774
#, c-format
msgid "could not restore working directory (%s)\n"
msgstr "no s'ha pogut restaurar el directori de treball (%s).\n"
#: lib/libalpm/add.c:583
#: lib/libalpm/add.c:579
#, c-format
msgid "problem occurred while upgrading %s\n"
msgstr "ha ocorregut un problema en actualitzar %s.\n"
#: lib/libalpm/add.c:589
#: lib/libalpm/add.c:585
#, c-format
msgid "problem occurred while installing %s\n"
msgstr "ha ocorregut un problema en instal·lar %s.\n"
#: lib/libalpm/add.c:604
#: lib/libalpm/add.c:600
#, c-format
msgid "could not update database entry %s-%s\n"
msgstr "no s'ha pogut actualitzar l'entrada de la base de dades %s-%s.\n"
#: lib/libalpm/add.c:615
#: lib/libalpm/add.c:610
#, c-format
msgid "could not add entry '%s' in cache\n"
msgstr "no s'ha pogut afegir l'entrada \"%s\" a la memòria cau.\n"
#: lib/libalpm/be_local.c:267
#: lib/libalpm/be_local.c:266
#, c-format
msgid "error while reading file %s: %s\n"
msgstr "error en llegir el fitxer %s: %s\n"
#: lib/libalpm/be_local.c:364
#: lib/libalpm/be_local.c:376
#, c-format
msgid "removing invalid database: %s\n"
msgstr "Se suprimeix la base de dades no vàlida: %s.\n"
#: lib/libalpm/be_local.c:415 lib/libalpm/be_local.c:905
#: lib/libalpm/be_local.c:427 lib/libalpm/be_local.c:909
#, c-format
msgid "could not create directory %s: %s\n"
msgstr "no s'ha pogut crear el directori %s: %s\n"
#: lib/libalpm/be_local.c:590 lib/libalpm/be_sync.c:386
#: lib/libalpm/be_local.c:602 lib/libalpm/be_sync.c:322
#, c-format
msgid "invalid name for database entry '%s'\n"
msgstr "nom no vàlid per a l'entrada de la base de dades \"%s\".\n"
#: lib/libalpm/be_local.c:598
#: lib/libalpm/be_local.c:610
#, c-format
msgid "duplicated database entry '%s'\n"
msgstr "entrada de la base de dades duplicada \"%s\".\n"
#: lib/libalpm/be_local.c:610
#: lib/libalpm/be_local.c:622
#, c-format
msgid "corrupted database entry '%s'\n"
msgstr "entrada de la base de dades corrupta \"%s'\".\n"
#: lib/libalpm/be_local.c:713 lib/libalpm/be_local.c:809
#: lib/libalpm/be_local.c:954 lib/libalpm/be_local.c:1051
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:422 lib/libalpm/util.c:253
#: lib/libalpm/util.c:269
#: lib/libalpm/be_local.c:722 lib/libalpm/be_local.c:818
#: lib/libalpm/be_local.c:958 lib/libalpm/be_local.c:1055
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:823 lib/libalpm/util.c:254
#: lib/libalpm/util.c:270
#, c-format
msgid "could not open file %s: %s\n"
msgstr "no s'ha pogut obrir el fitxer %s: %s\n"
#: lib/libalpm/be_local.c:729 lib/libalpm/be_sync.c:650
#: lib/libalpm/be_local.c:738 lib/libalpm/be_sync.c:582
#, c-format
msgid "%s database is inconsistent: name mismatch on package %s\n"
msgstr ""
"la base de dades %s és inconsistent: no coincidència de nom al paquet %s.\n"
#: lib/libalpm/be_local.c:735 lib/libalpm/be_sync.c:656
#: lib/libalpm/be_local.c:744 lib/libalpm/be_sync.c:588
#, c-format
msgid "%s database is inconsistent: version mismatch on package %s\n"
msgstr ""
"la base de dades %s és inconsistent: no coincidència de versió al paquet "
"%s.\n"
#: lib/libalpm/be_local.c:776
#: lib/libalpm/be_local.c:785
#, c-format
msgid "unknown validation type for package %s: %s\n"
msgstr "tipus de validació desconeguda per al paquet %s: %s\n"
#: lib/libalpm/be_package.c:479 lib/libalpm/be_package.c:637
#: lib/libalpm/be_package.c:650
#: lib/libalpm/be_package.c:478 lib/libalpm/be_package.c:631
#: lib/libalpm/be_package.c:643
#, c-format
msgid "error while reading package %s: %s\n"
msgstr "error en llegir el paquet %s: %s\n"
#: lib/libalpm/be_package.c:493 lib/libalpm/be_package.c:517
#: lib/libalpm/be_package.c:491 lib/libalpm/be_package.c:514
#, c-format
msgid "error while reading mtree of package %s: %s\n"
msgstr "error en llegir mtree del paquet %s: %s.\n"
#: lib/libalpm/be_package.c:603
#: lib/libalpm/be_package.c:597
#, c-format
msgid "could not parse package description file in %s\n"
msgstr "no s'ha pogut analitzar el fitxer de descripció de paquet a %s.\n"
#: lib/libalpm/be_package.c:608
#: lib/libalpm/be_package.c:602
#, c-format
msgid "missing package name in %s\n"
msgstr "manca el nom del paquet a %s.\n"
#: lib/libalpm/be_package.c:612
#: lib/libalpm/be_package.c:606
#, c-format
msgid "missing package version in %s\n"
msgstr "manca la versió del paquet a %s.\n"
#: lib/libalpm/be_package.c:616
#: lib/libalpm/be_package.c:610
#, c-format
msgid "invalid package version in %s\n"
msgstr "versió del paquet no vàlida a %s.\n"
#: lib/libalpm/be_package.c:657
#: lib/libalpm/be_package.c:649
#, c-format
msgid "missing package metadata in %s\n"
msgstr "manquen les metadades del paquet a %s.\n"
#: lib/libalpm/be_package.c:750
#: lib/libalpm/be_package.c:741
#, c-format
msgid "failed to read signature file: %s\n"
msgstr "ha fallat llegir el fitxer de signatures: %s.\n"
#: lib/libalpm/be_package.c:779 lib/libalpm/sync.c:953
#: lib/libalpm/be_package.c:770 lib/libalpm/sync.c:953
#, c-format
msgid "required key missing from keyring\n"
msgstr "la clau requerida manca al clauer.\n"
@@ -245,35 +245,35 @@ msgstr "la clau requerida manca al clauer.\n"
msgid "removing invalid file: %s\n"
msgstr "Se suprimeix el fitxer no vàlid %s.\n"
#: lib/libalpm/be_sync.c:515
#: lib/libalpm/be_sync.c:449
#, c-format
msgid "could not parse package description file '%s' from db '%s'\n"
msgstr ""
"no s'ha pogut analitzar el fitxer de descripció de paquet \"%s\" de la base "
"de dades \"%s\".\n"
#: lib/libalpm/be_sync.c:522
#: lib/libalpm/be_sync.c:456
#, c-format
msgid "could not read db '%s' (%s)\n"
msgstr "no s'ha pogut llegir la base de dades \"%s\" (%s).\n"
#: lib/libalpm/be_sync.c:556 lib/libalpm/be_sync.c:561
#: lib/libalpm/be_sync.c:489 lib/libalpm/be_sync.c:494
#, c-format
msgid "%s database is inconsistent: filename of package %s is illegal\n"
msgstr "La base de dades %s és inconsistent: nom erroni al paquet %s.\\n\n"
#: lib/libalpm/be_sync.c:566
#: lib/libalpm/be_sync.c:499
#, c-format
msgid "%s database is inconsistent: filename of package %s is too long\n"
msgstr ""
"La base de dades %s és inconsistent: el nom del paquet %s és massa llarg\\n\n"
#: lib/libalpm/be_sync.c:632
#: lib/libalpm/be_sync.c:564
#, c-format
msgid "unknown database file: %s\n"
msgstr "fitxer de base de dades desconegut: %s.\n"
#: lib/libalpm/db.c:370
#: lib/libalpm/db.c:344
#, c-format
msgid "database path is undefined\n"
msgstr "no s'ha definit el camí de la base de dades.\n"
@@ -293,12 +293,12 @@ msgstr "%s se suprimirà després de la seva dependència: %s.\n"
msgid "%s will be installed before its %s dependency\n"
msgstr "%s s'instal·larà abans de la seva dependència: %s.\n"
#: lib/libalpm/deps.c:681 lib/libalpm/deps.c:712
#: lib/libalpm/deps.c:666 lib/libalpm/deps.c:697
#, c-format
msgid "ignoring package %s-%s\n"
msgstr "s'ignora el paquet %s-%s.\n"
#: lib/libalpm/deps.c:869
#: lib/libalpm/deps.c:842
#, c-format
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
msgstr "no es pot resoldre \"%s\", una dependència de \"%s\".\n"
@@ -357,42 +357,70 @@ msgstr ""
msgid "Partition %s is mounted read only\n"
msgstr "La partició %s està muntada només en mode de lectura.\n"
#: lib/libalpm/dload.c:161
#: lib/libalpm/dload.c:116
#, c-format
msgid ""
"too many errors from %s, skipping for the remainder of this transaction\n"
msgstr ""
"hi ha massa errors de %s, s'ometen per a la resta d'aquesta transacció\n"
#: lib/libalpm/dload.c:220
#, c-format
msgid "disk"
msgstr "disc"
#: lib/libalpm/dload.c:348
#: lib/libalpm/dload.c:392
#, c-format
msgid "failed to create temporary file for download\n"
msgstr "ha fallat crear un fitxer temporal per a la baixada.\n"
#: lib/libalpm/dload.c:393
#, c-format
msgid "url '%s' is invalid\n"
msgstr "l'url \"%s\" no és vàlid.\n"
#: lib/libalpm/dload.c:464 lib/libalpm/dload.c:485 lib/libalpm/dload.c:496
#: lib/libalpm/dload.c:509 lib/libalpm/dload.c:547 lib/libalpm/dload.c:561
#, c-format
msgid "failed retrieving file '%s' from %s : %s\n"
msgstr "ha fallat la recuperació del fitxer \"%s\" des de %s: %s\n"
#: lib/libalpm/dload.c:477
#: lib/libalpm/dload.c:539
#, c-format
msgid "failed retrieving file '%s' from %s : expected download size exceeded\n"
msgstr ""
"ha fallat recuperar el fitxer \"%s\" des de %s: mida de la baixada superior "
"a l'esperada.\n"
#: lib/libalpm/dload.c:532
#: lib/libalpm/dload.c:687
#, c-format
msgid "%s appears to be truncated: %jd/%jd bytes\n"
msgstr "%s sembla que està truncat: %jd/%jd bytes.\n"
#: lib/libalpm/dload.c:677 lib/libalpm/dload.c:706
#: lib/libalpm/dload.c:787
#, c-format
msgid "failed to download %s\n"
msgstr "ha fallat baixar %s.\n"
msgid "url '%s' is invalid\n"
msgstr "l'url \"%s\" no és vàlid.\n"
#: lib/libalpm/dload.c:893
#, c-format
msgid "failed to setup a download payload for %s\n"
msgstr "ha fallat configurar una càrrega de baixada per a %s\n"
#: lib/libalpm/dload.c:905
#, c-format
msgid "curl returned error %d from transfer\n"
msgstr "curl ha retornat l'error %d de la transferència\n"
#: lib/libalpm/dload.c:929
#, c-format
msgid "curl transfer error: %d\n"
msgstr "error de transferència de curl: %d\n"
#: lib/libalpm/dload.c:1055 lib/libalpm/sync.c:840
#, c-format
msgid "failed to retrieve some files\n"
msgstr "ha fallat la recuperació d'alguns fitxers.\n"
#: lib/libalpm/dload.c:1078
#, c-format
msgid "download completed successfully but no file in the cache\n"
msgstr ""
"la baixada s'ha completat correctament però no hi ha cap fitxer a la cau\n"
#: lib/libalpm/error.c:40
#, c-format
@@ -509,7 +537,7 @@ msgstr "no s'ha configurat cap servidor per al repositori."
msgid "transaction already initialized"
msgstr "ja s'ha iniciat la transacció."
#: lib/libalpm/error.c:90 lib/libalpm/error.c:94
#: lib/libalpm/error.c:90 lib/libalpm/error.c:96
#, c-format
msgid "transaction not initialized"
msgstr "no s'ha iniciat la transacció."
@@ -519,87 +547,87 @@ msgstr "no s'ha iniciat la transacció."
msgid "duplicate target"
msgstr "objectiu duplicat."
#: lib/libalpm/error.c:96
#: lib/libalpm/error.c:94
#, c-format
msgid "duplicate filename"
msgstr "nom de fitxer duplicat"
#: lib/libalpm/error.c:98
#, c-format
msgid "transaction not prepared"
msgstr "transacció no preparada."
#: lib/libalpm/error.c:98
#: lib/libalpm/error.c:100
#, c-format
msgid "transaction aborted"
msgstr "transacció cancel·lada."
#: lib/libalpm/error.c:100
#: lib/libalpm/error.c:102
#, c-format
msgid "operation not compatible with the transaction type"
msgstr "l'operació no és compatible amb el tipus de transacció."
#: lib/libalpm/error.c:102
#: lib/libalpm/error.c:104
#, c-format
msgid "transaction commit attempt when database is not locked"
msgstr ""
"intent de publicació de la transacció amb la base de dades no bloquejada."
#: lib/libalpm/error.c:104
#: lib/libalpm/error.c:106
#, c-format
msgid "failed to run transaction hooks"
msgstr "ha fallat l'execució dels ganxos de la transacció."
#: lib/libalpm/error.c:107
#: lib/libalpm/error.c:109
#, c-format
msgid "could not find or read package"
msgstr "no s'ha pogut trobar o llegir el paquet."
#: lib/libalpm/error.c:109
#: lib/libalpm/error.c:111
#, c-format
msgid "operation cancelled due to ignorepkg"
msgstr "operació cancel·lada a causa d'ignorepkg."
#: lib/libalpm/error.c:111
#: lib/libalpm/error.c:113
#, c-format
msgid "invalid or corrupted package"
msgstr "paquet no vàlid o corrupte"
#: lib/libalpm/error.c:113
#: lib/libalpm/error.c:115
#, c-format
msgid "invalid or corrupted package (checksum)"
msgstr "paquet no vàlid o corrupte (suma de comprovació)."
#: lib/libalpm/error.c:115
#: lib/libalpm/error.c:117
#, c-format
msgid "invalid or corrupted package (PGP signature)"
msgstr "paquet no vàlid o corrupte (signatura PGP)"
#: lib/libalpm/error.c:117
#: lib/libalpm/error.c:119
#, c-format
msgid "package missing required signature"
msgstr "la signatura requerida manca al paquet."
#: lib/libalpm/error.c:119
#: lib/libalpm/error.c:121
#, c-format
msgid "cannot open package file"
msgstr "no s'ha pogut obrir el fitxer del paquet."
#: lib/libalpm/error.c:121
#: lib/libalpm/error.c:123
#, c-format
msgid "cannot remove all files for package"
msgstr "no s'han pogut suprimir tots els fitxers del paquet."
#: lib/libalpm/error.c:123
#: lib/libalpm/error.c:125
#, c-format
msgid "package filename is not valid"
msgstr "el nom de fitxer del paquet no és vàlid."
#: lib/libalpm/error.c:125
#: lib/libalpm/error.c:127
#, c-format
msgid "package architecture is not valid"
msgstr "l'arquitectura del paquet no és vàlida."
#: lib/libalpm/error.c:127
#, c-format
msgid "could not find repository for target"
msgstr "no s'ha pogut trobar el repositori per a l'objectiu."
#: lib/libalpm/error.c:130
#, c-format
msgid "missing PGP signature"
@@ -665,12 +693,12 @@ msgstr "compilat sense suport de signatura."
msgid "unexpected error"
msgstr "error inesperat."
#: lib/libalpm/handle.c:153
#: lib/libalpm/handle.c:142
#, c-format
msgid "lock file missing %s\n"
msgstr "manca el fitxer de bloqueig %s.\n"
#: lib/libalpm/handle.c:159
#: lib/libalpm/handle.c:148
#, c-format
msgid "could not remove lock file %s\n"
msgstr "no s'ha pogut suprimir el fitxer de bloqueig %s.\n"
@@ -742,7 +770,7 @@ msgstr "ganxo %s, línia %d: no es pot establir l'opció (%s).\n"
msgid "unable to run hook %s: %s\n"
msgstr "no es pot executar el ganxo %s: %s\n"
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:386
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:378
#, c-format
msgid "could not open directory: %s: %s\n"
msgstr "no s'ha pogut obrir el directori: %s: %s\n"
@@ -752,7 +780,7 @@ msgstr "no s'ha pogut obrir el directori: %s: %s\n"
msgid "could not open file: %s%s: %s\n"
msgstr "no s'ha pogut obrir el fitxer: %s%s: %s\n"
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:259
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:260
#, c-format
msgid "could not stat file %s: %s\n"
msgstr "no s'ha pogut determinar l'estat del fitxer %s: %s\n"
@@ -762,188 +790,188 @@ msgstr "no s'ha pogut determinar l'estat del fitxer %s: %s\n"
msgid "could not read directory: %s: %s\n"
msgstr "no s'ha pogut llegir el directori: %s: %s\n"
#: lib/libalpm/package.c:578
#: lib/libalpm/package.c:598
#, c-format
msgid "could not fully load metadata for package %s-%s\n"
msgstr ""
"no s'han pogut carregar completament les metadades per al paquet %s-%s.\n"
#: lib/libalpm/remove.c:119
#: lib/libalpm/remove.c:111
#, c-format
msgid "could not find %s in database -- skipping\n"
msgstr "No s'ha pogut trobar %s a la base de dades. S'omet.\n"
#: lib/libalpm/remove.c:154
#: lib/libalpm/remove.c:146
#, c-format
msgid "removing %s from target list\n"
msgstr "Se suprimeix %s de la llista d'objectius.\n"
#: lib/libalpm/remove.c:346
#: lib/libalpm/remove.c:338
#, c-format
msgid "cannot remove file '%s': %s\n"
msgstr "no s'ha pogut suprimir el fitxer \"%s\": %s\n"
#: lib/libalpm/remove.c:411 lib/libalpm/remove.c:420
#: lib/libalpm/remove.c:403 lib/libalpm/remove.c:412
#, c-format
msgid "could not backup %s due to PATH_MAX overflow\n"
msgstr ""
"no s'ha pogut fer una còpia de seguretat de %s a causa d'un desbordament de "
"CAMÍ_MAX.\n"
#: lib/libalpm/remove.c:562
#: lib/libalpm/remove.c:554
#, c-format
msgid "cannot remove %s (%s)\n"
msgstr "no es pot suprimir %s (%s).\n"
#: lib/libalpm/remove.c:735
#: lib/libalpm/remove.c:727
#, c-format
msgid "could not remove database entry %s-%s\n"
msgstr "no s'ha pogut suprimir l'entrada de la base de dades %s-%s.\n"
#: lib/libalpm/remove.c:740
#: lib/libalpm/remove.c:732
#, c-format
msgid "could not remove entry '%s' from cache\n"
msgstr "no s'ha pogut suprimir l'entrada \"%s\" de la memòria cau.\n"
#: lib/libalpm/signing.c:171
#: lib/libalpm/signing.c:163
#, c-format
msgid "Public keyring not found; have you run '%s'?\n"
msgstr "No s'ha trobat el clauer públic. Heu executat \"%s\"?\n"
#: lib/libalpm/signing.c:207 lib/libalpm/signing.c:784
#: lib/libalpm/signing.c:199 lib/libalpm/signing.c:767
#, c-format
msgid "GPGME error: %s\n"
msgstr "error de GPGME: %s\n"
#: lib/libalpm/signing.c:284
#: lib/libalpm/signing.c:274
#, c-format
msgid "looking up key %s using WKD\n"
msgstr "se cerca la clau %s amb WKD\n"
#: lib/libalpm/signing.c:293
#: lib/libalpm/signing.c:283
#, c-format
msgid "gpg error: %s\n"
msgstr "error de gpg: %s\n"
#: lib/libalpm/signing.c:441 lib/libalpm/signing.c:515
#: lib/libalpm/signing.c:430 lib/libalpm/signing.c:503
#, c-format
msgid "keyring is not writable\n"
msgstr "el clauer no és escrivible.\n"
#: lib/libalpm/signing.c:539
#: lib/libalpm/signing.c:531
#, c-format
msgid "key \"%s\" on keyserver\n"
msgstr "clau \"%s\" al servidor de claus\n"
#: lib/libalpm/signing.c:544
#: lib/libalpm/signing.c:536
#, c-format
msgid "key \"%s\" could not be imported\n"
msgstr "la clau \"%s\" no s'ha pogut importar.\n"
#: lib/libalpm/signing.c:548
#: lib/libalpm/signing.c:540
#, c-format
msgid "key \"%s\" could not be looked up remotely\n"
msgstr "la clau \"%s\" no s'ha pogut cercar remotament.\n"
#: lib/libalpm/signing.c:943 lib/libalpm/sync.c:1022
#: lib/libalpm/signing.c:926 lib/libalpm/sync.c:1022
#, c-format
msgid "%s: missing required signature\n"
msgstr "%s: manca la signatura requerida.\n"
#: lib/libalpm/signing.c:958
#: lib/libalpm/signing.c:941
#, c-format
msgid "%s: signature from \"%s\" is marginal trust\n"
msgstr "%s: la signatura de \"%s\" és de confiança marginal.\n"
#: lib/libalpm/signing.c:966
#: lib/libalpm/signing.c:949
#, c-format
msgid "%s: signature from \"%s\" is unknown trust\n"
msgstr "%s: la signatura de \"%s\" és de confiança desconeguda.\n"
#: lib/libalpm/signing.c:973
#: lib/libalpm/signing.c:956
#, c-format
msgid "%s: signature from \"%s\" should never be trusted\n"
msgstr "%s: en la signatura de \"%s\" no s'hi hauria de confiar mai.\n"
#: lib/libalpm/signing.c:985
#: lib/libalpm/signing.c:968
#, c-format
msgid "%s: key \"%s\" is unknown\n"
msgstr "%s: la clau \"%s\" és desconeguda.\n"
#: lib/libalpm/signing.c:994
#: lib/libalpm/signing.c:977
#, c-format
msgid "%s: key \"%s\" is disabled\n"
msgstr "%s: la clau \"%s\" està inhabilitada.\n"
#: lib/libalpm/signing.c:998
#: lib/libalpm/signing.c:981
#, c-format
msgid "%s: signature from \"%s\" is expired\n"
msgstr "%s: la signatura de \"%s\" està caducada.\n"
#: lib/libalpm/signing.c:1002
#: lib/libalpm/signing.c:985
#, c-format
msgid "%s: signature from \"%s\" is invalid\n"
msgstr "%s: la signatura de \"%s\" no és vàlida.\n"
#: lib/libalpm/signing.c:1079 lib/libalpm/signing.c:1147
#: lib/libalpm/signing.c:1226
#: lib/libalpm/signing.c:1043 lib/libalpm/signing.c:1104
#: lib/libalpm/signing.c:1183
#, c-format
msgid "%s: signature format error\n"
msgstr "%s: error de format de la signatura.\n"
#: lib/libalpm/signing.c:1179 lib/libalpm/signing.c:1212
#: lib/libalpm/signing.c:1220
#: lib/libalpm/signing.c:1136 lib/libalpm/signing.c:1169
#: lib/libalpm/signing.c:1177
#, c-format
msgid "%s: unsupported signature format\n"
msgstr "%s: format de la signatura no admès.\n"
#: lib/libalpm/sync.c:99
#: lib/libalpm/sync.c:96
#, c-format
msgid "%s: ignoring package upgrade (%s => %s)\n"
msgstr "%s: s'ha ignorat l'actualització del paquet (%s => %s).\n"
#: lib/libalpm/sync.c:111
#: lib/libalpm/sync.c:108
#, c-format
msgid "%s: ignoring package downgrade (%s => %s)\n"
msgstr "%s: s'ha ignorat la degradació del paquet (%s => %s).\n"
#: lib/libalpm/sync.c:114
#: lib/libalpm/sync.c:111
#, c-format
msgid "%s: downgrading from version %s to version %s\n"
msgstr "%s: es degrada de la versió %s a la versió %s.\n"
#: lib/libalpm/sync.c:120
#: lib/libalpm/sync.c:117
#, c-format
msgid "%s: local (%s) is newer than %s (%s)\n"
msgstr "%s: local (%s) és més nou que %s (%s).\n"
#: lib/libalpm/sync.c:161
#: lib/libalpm/sync.c:158
#, c-format
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
msgstr "S'ignora el reemplaçament del paquet (%s-%s => %s-%s).\n"
#: lib/libalpm/sync.c:177
#: lib/libalpm/sync.c:174
#, c-format
msgid "cannot replace %s by %s\n"
msgstr "no es pot reemplaçar %s per %s.\n"
#: lib/libalpm/sync.c:535 lib/libalpm/sync.c:605
#: lib/libalpm/sync.c:476
#, c-format
msgid "packages %s and %s have the same filename: %s\n"
msgstr "els paquets %s i %s tenen el mateix nom de fitxer: %s\n"
#: lib/libalpm/sync.c:542 lib/libalpm/sync.c:612
#, c-format
msgid "unresolvable package conflicts detected\n"
msgstr "s'han detectat conflictes de paquets impossibles de resoldre.\n"
#: lib/libalpm/sync.c:555
#: lib/libalpm/sync.c:562
#, c-format
msgid "removing '%s' from target list because it conflicts with '%s'\n"
msgstr ""
"Se suprimeix \"%s\" de la llista d'objectius perquè té conflictes amb \"%s"
"\".\n"
#: lib/libalpm/sync.c:849
#, c-format
msgid "failed to retrieve some files\n"
msgstr "ha fallat la recuperació d'alguns fitxers.\n"
#: lib/libalpm/sync.c:1036
#, c-format
msgid "failed to read file %s: %s\n"
@@ -964,82 +992,82 @@ msgstr "no s'ha pogut fer la transacció de supressió.\n"
msgid "could not commit transaction\n"
msgstr "no s'ha pogut fer la transacció.\n"
#: lib/libalpm/trans.c:364
#: lib/libalpm/trans.c:365
#, c-format
msgid "could not create temp directory\n"
msgstr "no s'ha pogut crear el directori temporal.\n"
#: lib/libalpm/trans.c:379
#: lib/libalpm/trans.c:380
#, c-format
msgid "could not copy tempfile to %s (%s)\n"
msgstr "no s'ha pogut copiar el fitxer temporal a %s (%s).\n"
#: lib/libalpm/trans.c:410
#: lib/libalpm/trans.c:411
#, c-format
msgid "could not remove %s\n"
msgstr "no s'ha pogut suprimir %s\n"
#: lib/libalpm/trans.c:414
#: lib/libalpm/trans.c:415
#, c-format
msgid "could not remove tmpdir %s\n"
msgstr "no s'ha pogut suprimir el directori temporal %s.\n"
#: lib/libalpm/util.c:486
#: lib/libalpm/util.c:488
#, c-format
msgid "unable to write to pipe (%s)\n"
msgstr "no es pot escriure al conducte (%s).\n"
#: lib/libalpm/util.c:545
#: lib/libalpm/util.c:547
#, c-format
msgid "unable to read from pipe (%s)\n"
msgstr "no es pot llegir des del conducte (%s).\n"
#: lib/libalpm/util.c:609 lib/libalpm/util.c:615
#: lib/libalpm/util.c:617 lib/libalpm/util.c:623
#, c-format
msgid "could not create pipe (%s)\n"
msgstr "no s'ha pogut crear el conducte (%s).\n"
#: lib/libalpm/util.c:623
#: lib/libalpm/util.c:631
#, c-format
msgid "could not fork a new process (%s)\n"
msgstr "no s'ha pogut bifurcar un procés nou (%s).\n"
#: lib/libalpm/util.c:646
#: lib/libalpm/util.c:654
#, c-format
msgid "could not change the root directory (%s)\n"
msgstr "no s'ha pogut canviar el directori d'arrel (%s).\n"
#: lib/libalpm/util.c:658
#: lib/libalpm/util.c:666
#, c-format
msgid "call to execv failed (%s)\n"
msgstr "la crida a execv ha fallat (%s).\n"
#: lib/libalpm/util.c:737
#: lib/libalpm/util.c:745
#, c-format
msgid "call to waitpid failed (%s)\n"
msgstr "ha fallat la crida a waitpid (%s).\n"
#: lib/libalpm/util.c:747
#: lib/libalpm/util.c:755
#, c-format
msgid "command failed to execute correctly\n"
msgstr "l'ordre ha fallat executar-se correctament.\n"
#: lib/libalpm/util.c:754
#: lib/libalpm/util.c:762
#, c-format
msgid "Unknown signal"
msgstr "senyal desconegut"
#: lib/libalpm/util.c:756
#: lib/libalpm/util.c:764
#, c-format
msgid "command terminated by signal %d: %s\n"
msgstr "orde cancel·lada pel senyal %d: %s\n"
#: lib/libalpm/util.c:853
#: lib/libalpm/util.c:875
#, c-format
msgid "no %s cache exists, creating...\n"
msgstr "no existeix la memòria cau %s, es crea...\n"
#: lib/libalpm/util.c:884
#: lib/libalpm/util.c:906
#, c-format
msgid "couldn't find or create package cache, using %s instead\n"
msgstr ""

View File

@@ -1,6 +1,6 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Pacman Development Team <pacman-dev@archlinux.org>
# This file is distributed under the same license as the PACKAGE package.
# Copyright (C) YEAR "Pacman Development Team <pacman-dev@archlinux.org>"
# This file is distributed under the same license as the libalpm package.
#
# Translators:
# Dan McGee <dpmcgee@gmail.com>, 2011
@@ -9,6 +9,7 @@
# IAmNotImportant, 2017
# Jaroslav Lichtblau <jlichtblau@seznam.cz>, 2014-2015
# Jaroslav Lichtblau <jlichtblau@seznam.cz>, 2014
# Lukáš Kucharczyk <lukas@kucharczyk.xyz>, 2020
# mmm <markotahal@gmail.com>, 2013
# mmm <markotahal@gmail.com>, 2011
# IAmNotImportant, 2017
@@ -18,8 +19,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Arch Linux Pacman package manager\n"
"Report-Msgid-Bugs-To: http://bugs.archlinux.org/index.php?project=3\n"
"POT-Creation-Date: 2019-10-21 17:23+1000\n"
"PO-Revision-Date: 2019-10-07 08:12+0000\n"
"POT-Creation-Date: 2021-09-04 16:15+1000\n"
"PO-Revision-Date: 2021-05-20 02:25+0000\n"
"Last-Translator: Allan McRae <allan@archlinux.org>\n"
"Language-Team: Czech (http://www.transifex.com/toofishes/archlinux-pacman/"
"language/cs/)\n"
@@ -30,17 +31,17 @@ msgstr ""
"Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n "
"<= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"
#: lib/libalpm/add.c:91 lib/libalpm/sync.c:290
#: lib/libalpm/add.c:90 lib/libalpm/sync.c:279
#, c-format
msgid "%s-%s is up to date -- skipping\n"
msgstr "%s-%s je aktuální -- vynechat\n"
#: lib/libalpm/add.c:95
#: lib/libalpm/add.c:94
#, c-format
msgid "%s-%s is up to date -- reinstalling\n"
msgstr "%s-%s je aktuální -- přeinstalovat\n"
#: lib/libalpm/add.c:100
#: lib/libalpm/add.c:99
#, c-format
msgid "downgrading package %s (%s => %s)\n"
msgstr "snížení verze balíčku %s (%s => %s)\n"
@@ -50,17 +51,17 @@ msgstr "snížení verze balíčku %s (%s => %s)\n"
msgid "cannot allocate disk archive object"
msgstr "nedostatek paměti pro alokaci objektu"
#: lib/libalpm/add.c:143 lib/libalpm/util.c:382
#: lib/libalpm/add.c:143 lib/libalpm/util.c:384
#, c-format
msgid "warning given when extracting %s (%s)\n"
msgstr "varování při rozbalování %s (%s)\n"
#: lib/libalpm/add.c:146 lib/libalpm/util.c:385
#: lib/libalpm/add.c:146 lib/libalpm/util.c:387
#, c-format
msgid "could not extract %s (%s)\n"
msgstr "nelze rozbalit %s (%s)\n"
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:574 lib/libalpm/remove.c:542
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:709 lib/libalpm/remove.c:534
#, c-format
msgid "could not rename %s to %s (%s)\n"
msgstr "nelze přejmenovat %s na %s (%s)\n"
@@ -104,137 +105,137 @@ msgstr "rozbalení: adresář nebyl přepsán souborem %s\n"
msgid "unable to extract %s.pacnew: path too long"
msgstr "nelze rozbalit %s.pacnew: příliš dlouhá cesta"
#: lib/libalpm/add.c:513 lib/libalpm/util.c:334 lib/libalpm/util.c:592
#: lib/libalpm/add.c:510 lib/libalpm/util.c:335 lib/libalpm/util.c:600
#, c-format
msgid "could not get current working directory\n"
msgstr "nelze určit aktuální pracovní adresář\n"
#: lib/libalpm/add.c:518 lib/libalpm/util.c:339 lib/libalpm/util.c:597
#: lib/libalpm/util.c:650
#: lib/libalpm/add.c:515 lib/libalpm/util.c:340 lib/libalpm/util.c:605
#: lib/libalpm/util.c:658
#, c-format
msgid "could not change directory to %s (%s)\n"
msgstr "nelze změnit adresář na %s (%s)\n"
#: lib/libalpm/add.c:575 lib/libalpm/util.c:403 lib/libalpm/util.c:766
#: lib/libalpm/add.c:571 lib/libalpm/util.c:405 lib/libalpm/util.c:774
#, c-format
msgid "could not restore working directory (%s)\n"
msgstr "nelze obnovit pracovní adresář (%s)\n"
#: lib/libalpm/add.c:583
#: lib/libalpm/add.c:579
#, c-format
msgid "problem occurred while upgrading %s\n"
msgstr "nastal problém při aktualizaci %s\n"
#: lib/libalpm/add.c:589
#: lib/libalpm/add.c:585
#, c-format
msgid "problem occurred while installing %s\n"
msgstr "nastal problém při instalaci %s\n"
#: lib/libalpm/add.c:604
#: lib/libalpm/add.c:600
#, c-format
msgid "could not update database entry %s-%s\n"
msgstr "nelze aktualizovat záznam databáze %s-%s\n"
#: lib/libalpm/add.c:615
#: lib/libalpm/add.c:610
#, c-format
msgid "could not add entry '%s' in cache\n"
msgstr "nelze přidat položku '%s' do mezipaměti\n"
#: lib/libalpm/be_local.c:267
#: lib/libalpm/be_local.c:266
#, c-format
msgid "error while reading file %s: %s\n"
msgstr "chyba při čtení souboru %s: %s\n"
#: lib/libalpm/be_local.c:364
#: lib/libalpm/be_local.c:376
#, c-format
msgid "removing invalid database: %s\n"
msgstr "odstraňuje se chybná databáze: %s\n"
#: lib/libalpm/be_local.c:415 lib/libalpm/be_local.c:905
#: lib/libalpm/be_local.c:427 lib/libalpm/be_local.c:909
#, c-format
msgid "could not create directory %s: %s\n"
msgstr "nelze změnit adresář %s: %s\n"
#: lib/libalpm/be_local.c:590 lib/libalpm/be_sync.c:386
#: lib/libalpm/be_local.c:602 lib/libalpm/be_sync.c:322
#, c-format
msgid "invalid name for database entry '%s'\n"
msgstr "chybný název záznamu v databázi '%s'\n"
#: lib/libalpm/be_local.c:598
#: lib/libalpm/be_local.c:610
#, c-format
msgid "duplicated database entry '%s'\n"
msgstr "duplicitní záznam v databázi '%s'\n"
#: lib/libalpm/be_local.c:610
#: lib/libalpm/be_local.c:622
#, c-format
msgid "corrupted database entry '%s'\n"
msgstr "poškozený záznam v databázi '%s'\n"
#: lib/libalpm/be_local.c:713 lib/libalpm/be_local.c:809
#: lib/libalpm/be_local.c:954 lib/libalpm/be_local.c:1051
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:422 lib/libalpm/util.c:253
#: lib/libalpm/util.c:269
#: lib/libalpm/be_local.c:722 lib/libalpm/be_local.c:818
#: lib/libalpm/be_local.c:958 lib/libalpm/be_local.c:1055
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:823 lib/libalpm/util.c:254
#: lib/libalpm/util.c:270
#, c-format
msgid "could not open file %s: %s\n"
msgstr "nelze otevřít soubor %s: %s\n"
#: lib/libalpm/be_local.c:729 lib/libalpm/be_sync.c:650
#: lib/libalpm/be_local.c:738 lib/libalpm/be_sync.c:582
#, c-format
msgid "%s database is inconsistent: name mismatch on package %s\n"
msgstr "databáze %s je nekonzistentní: nesouhlasí jméno balíčku %s\n"
#: lib/libalpm/be_local.c:735 lib/libalpm/be_sync.c:656
#: lib/libalpm/be_local.c:744 lib/libalpm/be_sync.c:588
#, c-format
msgid "%s database is inconsistent: version mismatch on package %s\n"
msgstr "databáze %s je nekonzistentní: nesouhlasí verze balíčku %s\n"
#: lib/libalpm/be_local.c:776
#: lib/libalpm/be_local.c:785
#, c-format
msgid "unknown validation type for package %s: %s\n"
msgstr "neznámý způsob ověření pro balíček %s: %s\n"
#: lib/libalpm/be_package.c:479 lib/libalpm/be_package.c:637
#: lib/libalpm/be_package.c:650
#: lib/libalpm/be_package.c:478 lib/libalpm/be_package.c:631
#: lib/libalpm/be_package.c:643
#, c-format
msgid "error while reading package %s: %s\n"
msgstr "chyba při čtení balíčku %s: %s\n"
#: lib/libalpm/be_package.c:493 lib/libalpm/be_package.c:517
#: lib/libalpm/be_package.c:491 lib/libalpm/be_package.c:514
#, c-format
msgid "error while reading mtree of package %s: %s\n"
msgstr "chyba při čtení souboru mtree balíčku %s: %s\n"
#: lib/libalpm/be_package.c:603
#: lib/libalpm/be_package.c:597
#, c-format
msgid "could not parse package description file in %s\n"
msgstr "nelze zpracovat soubor s popisem balíčku v %s\n"
#: lib/libalpm/be_package.c:608
#: lib/libalpm/be_package.c:602
#, c-format
msgid "missing package name in %s\n"
msgstr "chybí jméno balíčku v %s\n"
#: lib/libalpm/be_package.c:612
#: lib/libalpm/be_package.c:606
#, c-format
msgid "missing package version in %s\n"
msgstr "chybí veze balíčku v %s\n"
#: lib/libalpm/be_package.c:616
#: lib/libalpm/be_package.c:610
#, c-format
msgid "invalid package version in %s\n"
msgstr "neplatná verze balíčku v %s\n"
#: lib/libalpm/be_package.c:657
#: lib/libalpm/be_package.c:649
#, c-format
msgid "missing package metadata in %s\n"
msgstr "chybí metadata balíčku v %s\n"
#: lib/libalpm/be_package.c:750
#: lib/libalpm/be_package.c:741
#, c-format
msgid "failed to read signature file: %s\n"
msgstr "nelze načíst soubor s podpisy: %s\n"
#: lib/libalpm/be_package.c:779 lib/libalpm/sync.c:953
#: lib/libalpm/be_package.c:770 lib/libalpm/sync.c:953
#, c-format
msgid "required key missing from keyring\n"
msgstr "požadovaný klíč není v klíčence\n"
@@ -244,32 +245,32 @@ msgstr "požadovaný klíč není v klíčence\n"
msgid "removing invalid file: %s\n"
msgstr "odstraněn neplatný soubor: %s\n"
#: lib/libalpm/be_sync.c:515
#: lib/libalpm/be_sync.c:449
#, c-format
msgid "could not parse package description file '%s' from db '%s'\n"
msgstr "nelze načíst soubor s popisem balíčku '%s' z databáze '%s'\n"
#: lib/libalpm/be_sync.c:522
#: lib/libalpm/be_sync.c:456
#, c-format
msgid "could not read db '%s' (%s)\n"
msgstr "nelze přečíst databázi '%s' (%s)\n"
#: lib/libalpm/be_sync.c:556 lib/libalpm/be_sync.c:561
#: lib/libalpm/be_sync.c:489 lib/libalpm/be_sync.c:494
#, c-format
msgid "%s database is inconsistent: filename of package %s is illegal\n"
msgstr "databáze %s je nekonzistentní: jméno balíčku %s je nepřípustné\n"
#: lib/libalpm/be_sync.c:566
#: lib/libalpm/be_sync.c:499
#, c-format
msgid "%s database is inconsistent: filename of package %s is too long\n"
msgstr "databáze %s je nekonzistentní: jméno balíčku %s je příliš dlouhé\n"
#: lib/libalpm/be_sync.c:632
#: lib/libalpm/be_sync.c:564
#, c-format
msgid "unknown database file: %s\n"
msgstr "neznámý soubor databáze: %s\n"
#: lib/libalpm/db.c:370
#: lib/libalpm/db.c:344
#, c-format
msgid "database path is undefined\n"
msgstr "cesta k databázi není definována\n"
@@ -289,12 +290,12 @@ msgstr "%s bude odstraněn po %s, na kterém závisí\n"
msgid "%s will be installed before its %s dependency\n"
msgstr "%s bude nainstalován před %s, na kterém závisí\n"
#: lib/libalpm/deps.c:681 lib/libalpm/deps.c:712
#: lib/libalpm/deps.c:666 lib/libalpm/deps.c:697
#, c-format
msgid "ignoring package %s-%s\n"
msgstr "ignoruje se balíček %s-%s\n"
#: lib/libalpm/deps.c:869
#: lib/libalpm/deps.c:842
#, c-format
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
msgstr "nelze vyřešit \"%s\", závislost \"%s\"\n"
@@ -349,42 +350,68 @@ msgstr "nepodařilo se určit kořen přípojného bodu %s\n"
msgid "Partition %s is mounted read only\n"
msgstr "Diskový oddíl %s je připojen jen pro čtení\n"
#: lib/libalpm/dload.c:161
#: lib/libalpm/dload.c:116
#, c-format
msgid ""
"too many errors from %s, skipping for the remainder of this transaction\n"
msgstr ""
#: lib/libalpm/dload.c:220
#, c-format
msgid "disk"
msgstr "disk"
#: lib/libalpm/dload.c:348
#: lib/libalpm/dload.c:392
#, c-format
msgid "failed to create temporary file for download\n"
msgstr "nepodařilo se vytvořit dočasný soubor pro stahování\n"
#: lib/libalpm/dload.c:393
#, c-format
msgid "url '%s' is invalid\n"
msgstr "URL '%s' je chybná\n"
#: lib/libalpm/dload.c:464 lib/libalpm/dload.c:485 lib/libalpm/dload.c:496
#: lib/libalpm/dload.c:509 lib/libalpm/dload.c:547 lib/libalpm/dload.c:561
#, c-format
msgid "failed retrieving file '%s' from %s : %s\n"
msgstr "selhalo získání souboru '%s' z %s: %s\n"
#: lib/libalpm/dload.c:477
#: lib/libalpm/dload.c:539
#, c-format
msgid "failed retrieving file '%s' from %s : expected download size exceeded\n"
msgstr ""
"selhalo získání souboru '%s' z %s : překročení očekávané velikosti "
"stahování\n"
#: lib/libalpm/dload.c:532
#: lib/libalpm/dload.c:687
#, c-format
msgid "%s appears to be truncated: %jd/%jd bytes\n"
msgstr "%s se zdá být zkrácen: %jd/%jd bytů\n"
#: lib/libalpm/dload.c:677 lib/libalpm/dload.c:706
#: lib/libalpm/dload.c:787
#, c-format
msgid "failed to download %s\n"
msgstr "selhalo stahování %s\n"
msgid "url '%s' is invalid\n"
msgstr "URL '%s' je chybná\n"
#: lib/libalpm/dload.c:893
#, c-format
msgid "failed to setup a download payload for %s\n"
msgstr ""
#: lib/libalpm/dload.c:905
#, c-format
msgid "curl returned error %d from transfer\n"
msgstr ""
#: lib/libalpm/dload.c:929
#, c-format
msgid "curl transfer error: %d\n"
msgstr ""
#: lib/libalpm/dload.c:1055 lib/libalpm/sync.c:840
#, c-format
msgid "failed to retrieve some files\n"
msgstr "selhalo získání některých souborů\n"
#: lib/libalpm/dload.c:1078
#, c-format
msgid "download completed successfully but no file in the cache\n"
msgstr ""
#: lib/libalpm/error.c:40
#, c-format
@@ -501,7 +528,7 @@ msgstr "pro repositář nejsou nastaveny žádné servery"
msgid "transaction already initialized"
msgstr "transakce inicializována"
#: lib/libalpm/error.c:90 lib/libalpm/error.c:94
#: lib/libalpm/error.c:90 lib/libalpm/error.c:96
#, c-format
msgid "transaction not initialized"
msgstr "transakce neinicializována"
@@ -511,86 +538,86 @@ msgstr "transakce neinicializována"
msgid "duplicate target"
msgstr "duplicitní cíl"
#: lib/libalpm/error.c:96
#: lib/libalpm/error.c:94
#, c-format
msgid "duplicate filename"
msgstr ""
#: lib/libalpm/error.c:98
#, c-format
msgid "transaction not prepared"
msgstr "transakce není připravena"
#: lib/libalpm/error.c:98
#: lib/libalpm/error.c:100
#, c-format
msgid "transaction aborted"
msgstr "transakce byla zrušena"
#: lib/libalpm/error.c:100
#: lib/libalpm/error.c:102
#, c-format
msgid "operation not compatible with the transaction type"
msgstr "operace není kompatibilní s typem transakce"
#: lib/libalpm/error.c:102
#: lib/libalpm/error.c:104
#, c-format
msgid "transaction commit attempt when database is not locked"
msgstr "pokus o uskutečnění transakce v době, kdy není uzamčena databáze"
#: lib/libalpm/error.c:104
#: lib/libalpm/error.c:106
#, c-format
msgid "failed to run transaction hooks"
msgstr "selhalo spuštění hooků transakce"
#: lib/libalpm/error.c:107
#: lib/libalpm/error.c:109
#, c-format
msgid "could not find or read package"
msgstr "nelze nalézt nebo přečíst balíček"
#: lib/libalpm/error.c:109
#: lib/libalpm/error.c:111
#, c-format
msgid "operation cancelled due to ignorepkg"
msgstr "operace byla zrušena kvůli ignorovanému balíčku"
#: lib/libalpm/error.c:111
#: lib/libalpm/error.c:113
#, c-format
msgid "invalid or corrupted package"
msgstr "neplatný nebo poškozený balíček"
#: lib/libalpm/error.c:113
#: lib/libalpm/error.c:115
#, c-format
msgid "invalid or corrupted package (checksum)"
msgstr "neplatná nebo poškozená databáze (kontrolní součty)"
#: lib/libalpm/error.c:115
#: lib/libalpm/error.c:117
#, c-format
msgid "invalid or corrupted package (PGP signature)"
msgstr "neplatný nebo poškozený balíček (PGP podpis)"
#: lib/libalpm/error.c:117
#: lib/libalpm/error.c:119
#, c-format
msgid "package missing required signature"
msgstr "balíčku chybí vyžadovaný podpis"
#: lib/libalpm/error.c:119
#: lib/libalpm/error.c:121
#, c-format
msgid "cannot open package file"
msgstr "nelze otevřít soubor balíčku"
#: lib/libalpm/error.c:121
#: lib/libalpm/error.c:123
#, c-format
msgid "cannot remove all files for package"
msgstr "nelze odstranit všechny soubory balíčku"
#: lib/libalpm/error.c:123
#: lib/libalpm/error.c:125
#, c-format
msgid "package filename is not valid"
msgstr "jméno souboru balíčku není platné"
#: lib/libalpm/error.c:125
#: lib/libalpm/error.c:127
#, c-format
msgid "package architecture is not valid"
msgstr "architektura balíčku není platná"
#: lib/libalpm/error.c:127
#, c-format
msgid "could not find repository for target"
msgstr "nelze nalézt repositář cíle"
#: lib/libalpm/error.c:130
#, c-format
msgid "missing PGP signature"
@@ -649,19 +676,19 @@ msgstr "chyba volání externího programu pro stahování souborů"
#: lib/libalpm/error.c:159
#, c-format
msgid "compiled without signature support"
msgstr ""
msgstr "zkompilováno bez podpory podepisování"
#: lib/libalpm/error.c:162
#, c-format
msgid "unexpected error"
msgstr "neočekávaná chyba"
#: lib/libalpm/handle.c:153
#: lib/libalpm/handle.c:142
#, c-format
msgid "lock file missing %s\n"
msgstr "chybí soubor zámku %s\n"
#: lib/libalpm/handle.c:159
#: lib/libalpm/handle.c:148
#, c-format
msgid "could not remove lock file %s\n"
msgstr "nelze odstranit zamykací soubor %s\n"
@@ -733,7 +760,7 @@ msgstr "v hooku %s na řádku %d: nelze nastavit volbu (%s)\n"
msgid "unable to run hook %s: %s\n"
msgstr "nelze spustit hook %s: %s\n"
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:386
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:378
#, c-format
msgid "could not open directory: %s: %s\n"
msgstr "nelze otevřít adresář %s: %s\n"
@@ -743,7 +770,7 @@ msgstr "nelze otevřít adresář %s: %s\n"
msgid "could not open file: %s%s: %s\n"
msgstr "nelze otevřít soubor: %s%s: %s\n"
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:259
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:260
#, c-format
msgid "could not stat file %s: %s\n"
msgstr "nelze najít soubor %s: %s\n"
@@ -753,187 +780,187 @@ msgstr "nelze najít soubor %s: %s\n"
msgid "could not read directory: %s: %s\n"
msgstr "nelze přečíst adresář: %s: %s\n"
#: lib/libalpm/package.c:578
#: lib/libalpm/package.c:598
#, c-format
msgid "could not fully load metadata for package %s-%s\n"
msgstr "nelze zcela načíst metadata pro balíček %s-%s\n"
#: lib/libalpm/remove.c:119
#: lib/libalpm/remove.c:111
#, c-format
msgid "could not find %s in database -- skipping\n"
msgstr "nelze nalézt %s v databázi -- vynechat\n"
#: lib/libalpm/remove.c:154
#: lib/libalpm/remove.c:146
#, c-format
msgid "removing %s from target list\n"
msgstr "'%s' odstraněn ze seznamu cílů\n"
#: lib/libalpm/remove.c:346
#: lib/libalpm/remove.c:338
#, c-format
msgid "cannot remove file '%s': %s\n"
msgstr "nelze odstranit soubor '%s': %s\n"
#: lib/libalpm/remove.c:411 lib/libalpm/remove.c:420
#: lib/libalpm/remove.c:403 lib/libalpm/remove.c:412
#, c-format
msgid "could not backup %s due to PATH_MAX overflow\n"
msgstr "nelze zazálohovat %s kvůli přetečení PATH_MAX\n"
#: lib/libalpm/remove.c:562
#: lib/libalpm/remove.c:554
#, c-format
msgid "cannot remove %s (%s)\n"
msgstr "nelze odstranit %s (%s)\n"
#: lib/libalpm/remove.c:735
#: lib/libalpm/remove.c:727
#, c-format
msgid "could not remove database entry %s-%s\n"
msgstr "nelze odstranit záznam databáze %s-%s\n"
#: lib/libalpm/remove.c:740
#: lib/libalpm/remove.c:732
#, c-format
msgid "could not remove entry '%s' from cache\n"
msgstr "nelze odstranit položku '%s' z mezipaměti\n"
#: lib/libalpm/signing.c:171
#: lib/libalpm/signing.c:163
#, c-format
msgid "Public keyring not found; have you run '%s'?\n"
msgstr "Nebyla nalezena veřejná klíčenka; spustili jste '%s'?\n"
#: lib/libalpm/signing.c:207 lib/libalpm/signing.c:784
#: lib/libalpm/signing.c:199 lib/libalpm/signing.c:767
#, c-format
msgid "GPGME error: %s\n"
msgstr "Chyba GPGME: %s\n"
#: lib/libalpm/signing.c:284
#: lib/libalpm/signing.c:274
#, c-format
msgid "looking up key %s using WKD\n"
msgstr ""
msgstr "vyhledávání klíče %s pomocí WKD\n"
#: lib/libalpm/signing.c:293
#: lib/libalpm/signing.c:283
#, c-format
msgid "gpg error: %s\n"
msgstr ""
msgstr "chyba gpg: %s\n"
#: lib/libalpm/signing.c:441 lib/libalpm/signing.c:515
#: lib/libalpm/signing.c:430 lib/libalpm/signing.c:503
#, c-format
msgid "keyring is not writable\n"
msgstr "do klíčenky nelze zapisovat\n"
#: lib/libalpm/signing.c:539
#: lib/libalpm/signing.c:531
#, c-format
msgid "key \"%s\" on keyserver\n"
msgstr ""
msgstr "klíč \"%s\" na serveru\n"
#: lib/libalpm/signing.c:544
#: lib/libalpm/signing.c:536
#, c-format
msgid "key \"%s\" could not be imported\n"
msgstr "klíč \"%s\" se nepodařilo importovat\n"
#: lib/libalpm/signing.c:548
#: lib/libalpm/signing.c:540
#, c-format
msgid "key \"%s\" could not be looked up remotely\n"
msgstr "klíč \"%s\" nebylo možné vzdáleně vyhledat\n"
#: lib/libalpm/signing.c:943 lib/libalpm/sync.c:1022
#: lib/libalpm/signing.c:926 lib/libalpm/sync.c:1022
#, c-format
msgid "%s: missing required signature\n"
msgstr "%s: chybí vyžadovaný podpis\n"
#: lib/libalpm/signing.c:958
#: lib/libalpm/signing.c:941
#, c-format
msgid "%s: signature from \"%s\" is marginal trust\n"
msgstr "%s: podpis od \"%s\" má částečnou důvěru\n"
#: lib/libalpm/signing.c:966
#: lib/libalpm/signing.c:949
#, c-format
msgid "%s: signature from \"%s\" is unknown trust\n"
msgstr "%s: u podpisu od \"%s\" není známá úroveň důvěry\n"
#: lib/libalpm/signing.c:973
#: lib/libalpm/signing.c:956
#, c-format
msgid "%s: signature from \"%s\" should never be trusted\n"
msgstr "%s: podpis od \"%s\" je nedůvěryhodný\n"
#: lib/libalpm/signing.c:985
#: lib/libalpm/signing.c:968
#, c-format
msgid "%s: key \"%s\" is unknown\n"
msgstr "%s: klíč \"%s\" je neznámý\n"
#: lib/libalpm/signing.c:994
#: lib/libalpm/signing.c:977
#, c-format
msgid "%s: key \"%s\" is disabled\n"
msgstr "%s: klíč \"%s\" je vypnut\n"
#: lib/libalpm/signing.c:998
#: lib/libalpm/signing.c:981
#, c-format
msgid "%s: signature from \"%s\" is expired\n"
msgstr "%s: podpis od \"%s\" vypršel\n"
#: lib/libalpm/signing.c:1002
#: lib/libalpm/signing.c:985
#, c-format
msgid "%s: signature from \"%s\" is invalid\n"
msgstr "%s: podpis od \"%s\" je neplatný\n"
#: lib/libalpm/signing.c:1079 lib/libalpm/signing.c:1147
#: lib/libalpm/signing.c:1226
#: lib/libalpm/signing.c:1043 lib/libalpm/signing.c:1104
#: lib/libalpm/signing.c:1183
#, c-format
msgid "%s: signature format error\n"
msgstr "%s: chyba formátu podpisu\n"
#: lib/libalpm/signing.c:1179 lib/libalpm/signing.c:1212
#: lib/libalpm/signing.c:1220
#: lib/libalpm/signing.c:1136 lib/libalpm/signing.c:1169
#: lib/libalpm/signing.c:1177
#, c-format
msgid "%s: unsupported signature format\n"
msgstr "%s: nepodporovaný formát podpisu\n"
#: lib/libalpm/sync.c:99
#: lib/libalpm/sync.c:96
#, c-format
msgid "%s: ignoring package upgrade (%s => %s)\n"
msgstr "%s: ignoruje se aktualizace balíčku (%s => %s)\n"
#: lib/libalpm/sync.c:111
#: lib/libalpm/sync.c:108
#, c-format
msgid "%s: ignoring package downgrade (%s => %s)\n"
msgstr "%s: ignoruje se snížení verze balíčku (%s => %s)\n"
#: lib/libalpm/sync.c:114
#: lib/libalpm/sync.c:111
#, c-format
msgid "%s: downgrading from version %s to version %s\n"
msgstr "%s: snížení z verze %s na verzi %s\n"
#: lib/libalpm/sync.c:120
#: lib/libalpm/sync.c:117
#, c-format
msgid "%s: local (%s) is newer than %s (%s)\n"
msgstr "%s: lokální verze (%s) je novější než v %s (%s)\n"
#: lib/libalpm/sync.c:161
#: lib/libalpm/sync.c:158
#, c-format
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
msgstr "ignoruje se náhrada balíčku (%s-%s => %s-%s)\n"
#: lib/libalpm/sync.c:177
#: lib/libalpm/sync.c:174
#, c-format
msgid "cannot replace %s by %s\n"
msgstr "nelze nahradit soubor %s souborem %s\n"
#: lib/libalpm/sync.c:535 lib/libalpm/sync.c:605
#: lib/libalpm/sync.c:476
#, c-format
msgid "packages %s and %s have the same filename: %s\n"
msgstr ""
#: lib/libalpm/sync.c:542 lib/libalpm/sync.c:612
#, c-format
msgid "unresolvable package conflicts detected\n"
msgstr "zjištěn konflikt nerozlišitelných balíčků\n"
#: lib/libalpm/sync.c:555
#: lib/libalpm/sync.c:562
#, c-format
msgid "removing '%s' from target list because it conflicts with '%s'\n"
msgstr "'%s' odstraněn ze seznamu cílů, protože je konfliktní s '%s'\n"
#: lib/libalpm/sync.c:849
#, c-format
msgid "failed to retrieve some files\n"
msgstr "selhalo získání některých souborů\n"
#: lib/libalpm/sync.c:1036
#, c-format
msgid "failed to read file %s: %s\n"
msgstr ""
msgstr "načtení souboru %s se nezdařilo: %s\n"
#: lib/libalpm/sync.c:1223
#, c-format
@@ -950,82 +977,82 @@ msgstr "nelze provést transakci pro odstranění\n"
msgid "could not commit transaction\n"
msgstr "nelze provést transakci\n"
#: lib/libalpm/trans.c:364
#: lib/libalpm/trans.c:365
#, c-format
msgid "could not create temp directory\n"
msgstr "nelze vytvořit dočasný adresář\n"
#: lib/libalpm/trans.c:379
#: lib/libalpm/trans.c:380
#, c-format
msgid "could not copy tempfile to %s (%s)\n"
msgstr "nelze zkopírovat dočasný soubor do %s (%s)\n"
#: lib/libalpm/trans.c:410
#: lib/libalpm/trans.c:411
#, c-format
msgid "could not remove %s\n"
msgstr "nelze odstranit %s\n"
#: lib/libalpm/trans.c:414
#: lib/libalpm/trans.c:415
#, c-format
msgid "could not remove tmpdir %s\n"
msgstr "nelze odstranit dočasný adresář %s\n"
#: lib/libalpm/util.c:486
#: lib/libalpm/util.c:488
#, c-format
msgid "unable to write to pipe (%s)\n"
msgstr "nelze zapisovat do roury (%s)\n"
#: lib/libalpm/util.c:545
#: lib/libalpm/util.c:547
#, c-format
msgid "unable to read from pipe (%s)\n"
msgstr "nelze číst z roury (%s)\n"
#: lib/libalpm/util.c:609 lib/libalpm/util.c:615
#: lib/libalpm/util.c:617 lib/libalpm/util.c:623
#, c-format
msgid "could not create pipe (%s)\n"
msgstr "nepodařilo se vytvořit rouru (%s)\n"
#: lib/libalpm/util.c:623
#: lib/libalpm/util.c:631
#, c-format
msgid "could not fork a new process (%s)\n"
msgstr "nelze spustit nový proces (%s)\n"
#: lib/libalpm/util.c:646
#: lib/libalpm/util.c:654
#, c-format
msgid "could not change the root directory (%s)\n"
msgstr "nelze změnit kořenový adresář (%s)\n"
#: lib/libalpm/util.c:658
#: lib/libalpm/util.c:666
#, c-format
msgid "call to execv failed (%s)\n"
msgstr "volání execv selhalo (%s)\n"
#: lib/libalpm/util.c:737
#: lib/libalpm/util.c:745
#, c-format
msgid "call to waitpid failed (%s)\n"
msgstr "volání waitpid selhalo (%s)\n"
#: lib/libalpm/util.c:747
#: lib/libalpm/util.c:755
#, c-format
msgid "command failed to execute correctly\n"
msgstr "příkaz se nepodařilo spustit správně\n"
#: lib/libalpm/util.c:754
#: lib/libalpm/util.c:762
#, c-format
msgid "Unknown signal"
msgstr "Neznámý signál"
#: lib/libalpm/util.c:756
#: lib/libalpm/util.c:764
#, c-format
msgid "command terminated by signal %d: %s\n"
msgstr "příkaz ukončen signálem %d: %s\n"
#: lib/libalpm/util.c:853
#: lib/libalpm/util.c:875
#, c-format
msgid "no %s cache exists, creating...\n"
msgstr "neexistuje mezipaměť %s, vytváří se...\n"
#: lib/libalpm/util.c:884
#: lib/libalpm/util.c:906
#, c-format
msgid "couldn't find or create package cache, using %s instead\n"
msgstr ""

View File

@@ -1,6 +1,6 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Pacman Development Team <pacman-dev@archlinux.org>
# This file is distributed under the same license as the PACKAGE package.
# Copyright (C) YEAR "Pacman Development Team <pacman-dev@archlinux.org>"
# This file is distributed under the same license as the libalpm package.
#
# Translators:
# Chris Darnell <chris@cedeel.com>, 2013
@@ -14,9 +14,9 @@ msgid ""
msgstr ""
"Project-Id-Version: Arch Linux Pacman package manager\n"
"Report-Msgid-Bugs-To: http://bugs.archlinux.org/index.php?project=3\n"
"POT-Creation-Date: 2019-10-21 17:23+1000\n"
"PO-Revision-Date: 2019-10-14 00:27+0000\n"
"Last-Translator: scootergrisen\n"
"POT-Creation-Date: 2021-09-04 16:15+1000\n"
"PO-Revision-Date: 2021-05-20 02:25+0000\n"
"Last-Translator: Allan McRae <allan@archlinux.org>\n"
"Language-Team: Danish (http://www.transifex.com/toofishes/archlinux-pacman/"
"language/da/)\n"
"Language: da\n"
@@ -25,17 +25,17 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: lib/libalpm/add.c:91 lib/libalpm/sync.c:290
#: lib/libalpm/add.c:90 lib/libalpm/sync.c:279
#, c-format
msgid "%s-%s is up to date -- skipping\n"
msgstr "%s-%s er opdateret - springer over\n"
#: lib/libalpm/add.c:95
#: lib/libalpm/add.c:94
#, c-format
msgid "%s-%s is up to date -- reinstalling\n"
msgstr "%s-%s er opdateret - springer over\n"
#: lib/libalpm/add.c:100
#: lib/libalpm/add.c:99
#, c-format
msgid "downgrading package %s (%s => %s)\n"
msgstr "nedgraderer pakke %s (%s => %s)\n"
@@ -45,17 +45,17 @@ msgstr "nedgraderer pakke %s (%s => %s)\n"
msgid "cannot allocate disk archive object"
msgstr "kan ikke allokere diskarkiv-objekt"
#: lib/libalpm/add.c:143 lib/libalpm/util.c:382
#: lib/libalpm/add.c:143 lib/libalpm/util.c:384
#, c-format
msgid "warning given when extracting %s (%s)\n"
msgstr "advarsel givet under udpakning %s (%s)\n"
#: lib/libalpm/add.c:146 lib/libalpm/util.c:385
#: lib/libalpm/add.c:146 lib/libalpm/util.c:387
#, c-format
msgid "could not extract %s (%s)\n"
msgstr "kunne ikke udpakke %s (%s)\n"
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:574 lib/libalpm/remove.c:542
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:709 lib/libalpm/remove.c:534
#, c-format
msgid "could not rename %s to %s (%s)\n"
msgstr "kunne ikke omdøbe %s til %s (%s)\n"
@@ -99,137 +99,137 @@ msgstr "udtræk: overskriver ikke mappe med fil %s\n"
msgid "unable to extract %s.pacnew: path too long"
msgstr "kan ikke pakke %s.pacnew ud: sti for lang"
#: lib/libalpm/add.c:513 lib/libalpm/util.c:334 lib/libalpm/util.c:592
#: lib/libalpm/add.c:510 lib/libalpm/util.c:335 lib/libalpm/util.c:600
#, c-format
msgid "could not get current working directory\n"
msgstr "kunne ikke hente nuværende arbejdsmappe\n"
#: lib/libalpm/add.c:518 lib/libalpm/util.c:339 lib/libalpm/util.c:597
#: lib/libalpm/util.c:650
#: lib/libalpm/add.c:515 lib/libalpm/util.c:340 lib/libalpm/util.c:605
#: lib/libalpm/util.c:658
#, c-format
msgid "could not change directory to %s (%s)\n"
msgstr "kunne ikke ændre mappe til %s (%s)\n"
#: lib/libalpm/add.c:575 lib/libalpm/util.c:403 lib/libalpm/util.c:766
#: lib/libalpm/add.c:571 lib/libalpm/util.c:405 lib/libalpm/util.c:774
#, c-format
msgid "could not restore working directory (%s)\n"
msgstr "kunne ikke genskabe arbejdsmappe (%s)\n"
#: lib/libalpm/add.c:583
#: lib/libalpm/add.c:579
#, c-format
msgid "problem occurred while upgrading %s\n"
msgstr "der opstod et problem under opgradering %s\n"
#: lib/libalpm/add.c:589
#: lib/libalpm/add.c:585
#, c-format
msgid "problem occurred while installing %s\n"
msgstr "der opstod et problem under installation af %s\n"
#: lib/libalpm/add.c:604
#: lib/libalpm/add.c:600
#, c-format
msgid "could not update database entry %s-%s\n"
msgstr "kunne ikke opdatere databasepunkt %s-%s\n"
#: lib/libalpm/add.c:615
#: lib/libalpm/add.c:610
#, c-format
msgid "could not add entry '%s' in cache\n"
msgstr "kunne ikke tilføje punkt »%s« i cache\n"
#: lib/libalpm/be_local.c:267
#: lib/libalpm/be_local.c:266
#, c-format
msgid "error while reading file %s: %s\n"
msgstr "der opstod en fejl under læsning af fil %s: %s\n"
#: lib/libalpm/be_local.c:364
#: lib/libalpm/be_local.c:376
#, c-format
msgid "removing invalid database: %s\n"
msgstr "fjerner ugyldig database: %s\n"
#: lib/libalpm/be_local.c:415 lib/libalpm/be_local.c:905
#: lib/libalpm/be_local.c:427 lib/libalpm/be_local.c:909
#, c-format
msgid "could not create directory %s: %s\n"
msgstr "kunne ikke oprette mappe %s: %s\n"
#: lib/libalpm/be_local.c:590 lib/libalpm/be_sync.c:386
#: lib/libalpm/be_local.c:602 lib/libalpm/be_sync.c:322
#, c-format
msgid "invalid name for database entry '%s'\n"
msgstr "ugyldigt navn for databasepunkt '%s'\n"
#: lib/libalpm/be_local.c:598
#: lib/libalpm/be_local.c:610
#, c-format
msgid "duplicated database entry '%s'\n"
msgstr "duplikeret databasepunkt '%s'\n"
#: lib/libalpm/be_local.c:610
#: lib/libalpm/be_local.c:622
#, c-format
msgid "corrupted database entry '%s'\n"
msgstr "beskadiget databasepunkt '%s'\n"
#: lib/libalpm/be_local.c:713 lib/libalpm/be_local.c:809
#: lib/libalpm/be_local.c:954 lib/libalpm/be_local.c:1051
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:422 lib/libalpm/util.c:253
#: lib/libalpm/util.c:269
#: lib/libalpm/be_local.c:722 lib/libalpm/be_local.c:818
#: lib/libalpm/be_local.c:958 lib/libalpm/be_local.c:1055
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:823 lib/libalpm/util.c:254
#: lib/libalpm/util.c:270
#, c-format
msgid "could not open file %s: %s\n"
msgstr "kunne ikke åbne fil %s: %s\n"
#: lib/libalpm/be_local.c:729 lib/libalpm/be_sync.c:650
#: lib/libalpm/be_local.c:738 lib/libalpm/be_sync.c:582
#, c-format
msgid "%s database is inconsistent: name mismatch on package %s\n"
msgstr "%s-database er inkonsistent: forskellige navne på pakke %s\n"
#: lib/libalpm/be_local.c:735 lib/libalpm/be_sync.c:656
#: lib/libalpm/be_local.c:744 lib/libalpm/be_sync.c:588
#, c-format
msgid "%s database is inconsistent: version mismatch on package %s\n"
msgstr "%s-database er inkonsistent: forskellige versioner på pakke %s\n"
#: lib/libalpm/be_local.c:776
#: lib/libalpm/be_local.c:785
#, c-format
msgid "unknown validation type for package %s: %s\n"
msgstr "ukendt valideringstype for pakke %s: %s\n"
#: lib/libalpm/be_package.c:479 lib/libalpm/be_package.c:637
#: lib/libalpm/be_package.c:650
#: lib/libalpm/be_package.c:478 lib/libalpm/be_package.c:631
#: lib/libalpm/be_package.c:643
#, c-format
msgid "error while reading package %s: %s\n"
msgstr "der opstod en fejl under læsning af pakke %s: %s\n"
#: lib/libalpm/be_package.c:493 lib/libalpm/be_package.c:517
#: lib/libalpm/be_package.c:491 lib/libalpm/be_package.c:514
#, c-format
msgid "error while reading mtree of package %s: %s\n"
msgstr "fejl ved læsning af mtree af pakke %s: %s\n"
#: lib/libalpm/be_package.c:603
#: lib/libalpm/be_package.c:597
#, c-format
msgid "could not parse package description file in %s\n"
msgstr "kunne ikke fortolke pakkebeskrivelsesfil i %s\n"
#: lib/libalpm/be_package.c:608
#: lib/libalpm/be_package.c:602
#, c-format
msgid "missing package name in %s\n"
msgstr "manglende pakkenavn i %s\n"
#: lib/libalpm/be_package.c:612
#: lib/libalpm/be_package.c:606
#, c-format
msgid "missing package version in %s\n"
msgstr "manglende pakkeversion i %s\n"
#: lib/libalpm/be_package.c:616
#: lib/libalpm/be_package.c:610
#, c-format
msgid "invalid package version in %s\n"
msgstr "ugyldig pakkeversion i %s\n"
#: lib/libalpm/be_package.c:657
#: lib/libalpm/be_package.c:649
#, c-format
msgid "missing package metadata in %s\n"
msgstr "manglende pakkemetadata i %s\n"
#: lib/libalpm/be_package.c:750
#: lib/libalpm/be_package.c:741
#, c-format
msgid "failed to read signature file: %s\n"
msgstr "kunne ikke læse underskriftfil: %s\n"
#: lib/libalpm/be_package.c:779 lib/libalpm/sync.c:953
#: lib/libalpm/be_package.c:770 lib/libalpm/sync.c:953
#, c-format
msgid "required key missing from keyring\n"
msgstr "krævede nøgle mangler fra nøglering\n"
@@ -239,32 +239,32 @@ msgstr "krævede nøgle mangler fra nøglering\n"
msgid "removing invalid file: %s\n"
msgstr "fjerner ugyldig fil: %s\n"
#: lib/libalpm/be_sync.c:515
#: lib/libalpm/be_sync.c:449
#, c-format
msgid "could not parse package description file '%s' from db '%s'\n"
msgstr "kunne ikke fortolke pakkebeskrivelsesfil '%s' fra db '%s'\n"
#: lib/libalpm/be_sync.c:522
#: lib/libalpm/be_sync.c:456
#, c-format
msgid "could not read db '%s' (%s)\n"
msgstr "kunne ikke læse db '%s' (%s)\n"
#: lib/libalpm/be_sync.c:556 lib/libalpm/be_sync.c:561
#: lib/libalpm/be_sync.c:489 lib/libalpm/be_sync.c:494
#, c-format
msgid "%s database is inconsistent: filename of package %s is illegal\n"
msgstr "%s-database er inkonsistent: filnavnet på pakken %s er ugyldigt\n"
#: lib/libalpm/be_sync.c:566
#: lib/libalpm/be_sync.c:499
#, c-format
msgid "%s database is inconsistent: filename of package %s is too long\n"
msgstr "%s-database er inkonsistent: filnavnet på pakken %s er for langt\n"
#: lib/libalpm/be_sync.c:632
#: lib/libalpm/be_sync.c:564
#, c-format
msgid "unknown database file: %s\n"
msgstr "ukendt databaseful: %s\n"
#: lib/libalpm/db.c:370
#: lib/libalpm/db.c:344
#, c-format
msgid "database path is undefined\n"
msgstr "databasesti er udefineret\n"
@@ -284,12 +284,12 @@ msgstr "%s vil blive fjernet efter dennes %s-afhængighed\n"
msgid "%s will be installed before its %s dependency\n"
msgstr "%s vil blive installeret før dennes %s-afhængighed\n"
#: lib/libalpm/deps.c:681 lib/libalpm/deps.c:712
#: lib/libalpm/deps.c:666 lib/libalpm/deps.c:697
#, c-format
msgid "ignoring package %s-%s\n"
msgstr "ignorerer pakke %s-%s\n"
#: lib/libalpm/deps.c:869
#: lib/libalpm/deps.c:842
#, c-format
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
msgstr "kan ikke læse '%s', en afhængighed af '%s'\n"
@@ -344,42 +344,68 @@ msgstr "kunne ikke bestemme rodmonteringspunkt %s\n"
msgid "Partition %s is mounted read only\n"
msgstr "Partition %s er monteret som læs-kun\n"
#: lib/libalpm/dload.c:161
#: lib/libalpm/dload.c:116
#, c-format
msgid ""
"too many errors from %s, skipping for the remainder of this transaction\n"
msgstr ""
#: lib/libalpm/dload.c:220
#, c-format
msgid "disk"
msgstr "disk"
#: lib/libalpm/dload.c:348
#: lib/libalpm/dload.c:392
#, c-format
msgid "failed to create temporary file for download\n"
msgstr "kunne ikke oprette midlertidig fil til hentning\n"
#: lib/libalpm/dload.c:393
#, c-format
msgid "url '%s' is invalid\n"
msgstr "adressen '%s' er ugyldig\n"
#: lib/libalpm/dload.c:464 lib/libalpm/dload.c:485 lib/libalpm/dload.c:496
#: lib/libalpm/dload.c:509 lib/libalpm/dload.c:547 lib/libalpm/dload.c:561
#, c-format
msgid "failed retrieving file '%s' from %s : %s\n"
msgstr "fejlede i indhentning af fil '%s' fra %s: %s\n"
#: lib/libalpm/dload.c:477
#: lib/libalpm/dload.c:539
#, c-format
msgid "failed retrieving file '%s' from %s : expected download size exceeded\n"
msgstr ""
"kunne ikke indhente fil '%s' fra %s: forventet downloadstørrelse "
"overskredet\n"
#: lib/libalpm/dload.c:532
#: lib/libalpm/dload.c:687
#, c-format
msgid "%s appears to be truncated: %jd/%jd bytes\n"
msgstr "%s ser ud til at være afkortet: %jd/%jd byte\n"
#: lib/libalpm/dload.c:677 lib/libalpm/dload.c:706
#: lib/libalpm/dload.c:787
#, c-format
msgid "failed to download %s\n"
msgstr "kunne ikke hente %s\n"
msgid "url '%s' is invalid\n"
msgstr "adressen '%s' er ugyldig\n"
#: lib/libalpm/dload.c:893
#, c-format
msgid "failed to setup a download payload for %s\n"
msgstr ""
#: lib/libalpm/dload.c:905
#, c-format
msgid "curl returned error %d from transfer\n"
msgstr ""
#: lib/libalpm/dload.c:929
#, c-format
msgid "curl transfer error: %d\n"
msgstr ""
#: lib/libalpm/dload.c:1055 lib/libalpm/sync.c:840
#, c-format
msgid "failed to retrieve some files\n"
msgstr "kunne ikke indhente nogle filer\n"
#: lib/libalpm/dload.c:1078
#, c-format
msgid "download completed successfully but no file in the cache\n"
msgstr ""
#: lib/libalpm/error.c:40
#, c-format
@@ -496,7 +522,7 @@ msgstr "ingen servere konfigureret for arkiv"
msgid "transaction already initialized"
msgstr "transaktion allerede initialiseret"
#: lib/libalpm/error.c:90 lib/libalpm/error.c:94
#: lib/libalpm/error.c:90 lib/libalpm/error.c:96
#, c-format
msgid "transaction not initialized"
msgstr "transaktion er ikke initialiseret"
@@ -506,86 +532,86 @@ msgstr "transaktion er ikke initialiseret"
msgid "duplicate target"
msgstr "dupliker mål"
#: lib/libalpm/error.c:96
#: lib/libalpm/error.c:94
#, c-format
msgid "duplicate filename"
msgstr ""
#: lib/libalpm/error.c:98
#, c-format
msgid "transaction not prepared"
msgstr "transaktion er ikke forberedt"
#: lib/libalpm/error.c:98
#: lib/libalpm/error.c:100
#, c-format
msgid "transaction aborted"
msgstr "transaktion afbrudt"
#: lib/libalpm/error.c:100
#: lib/libalpm/error.c:102
#, c-format
msgid "operation not compatible with the transaction type"
msgstr "handling er ikke kompatibel med transaktionstype"
#: lib/libalpm/error.c:102
#: lib/libalpm/error.c:104
#, c-format
msgid "transaction commit attempt when database is not locked"
msgstr "forsøg på transaktionsindsendelse (commit) når database ikke er låst"
#: lib/libalpm/error.c:104
#: lib/libalpm/error.c:106
#, c-format
msgid "failed to run transaction hooks"
msgstr "kunne ikke køre transaktionskroge"
#: lib/libalpm/error.c:107
#: lib/libalpm/error.c:109
#, c-format
msgid "could not find or read package"
msgstr "kunne ikke finde eller læse pakke"
#: lib/libalpm/error.c:109
#: lib/libalpm/error.c:111
#, c-format
msgid "operation cancelled due to ignorepkg"
msgstr "handling afbrudt på grund af igonrepkg"
#: lib/libalpm/error.c:111
#: lib/libalpm/error.c:113
#, c-format
msgid "invalid or corrupted package"
msgstr "ugyldig eller beskadiget pakke"
#: lib/libalpm/error.c:113
#: lib/libalpm/error.c:115
#, c-format
msgid "invalid or corrupted package (checksum)"
msgstr "ugyldig eller beskadiget database (kontrolsum)"
#: lib/libalpm/error.c:115
#: lib/libalpm/error.c:117
#, c-format
msgid "invalid or corrupted package (PGP signature)"
msgstr "ugyldig eller beskadiget pakke (PGP-signatur)"
#: lib/libalpm/error.c:117
#: lib/libalpm/error.c:119
#, c-format
msgid "package missing required signature"
msgstr "pakke mangler krævet signatur"
#: lib/libalpm/error.c:119
#: lib/libalpm/error.c:121
#, c-format
msgid "cannot open package file"
msgstr "kan ikke åbne pakkefil"
#: lib/libalpm/error.c:121
#: lib/libalpm/error.c:123
#, c-format
msgid "cannot remove all files for package"
msgstr "kan ikke fjerne alle filer for pakke"
#: lib/libalpm/error.c:123
#: lib/libalpm/error.c:125
#, c-format
msgid "package filename is not valid"
msgstr "pakkefilnavn er ugyldigt"
#: lib/libalpm/error.c:125
#: lib/libalpm/error.c:127
#, c-format
msgid "package architecture is not valid"
msgstr "pakkearkitektur er ikke gyldig"
#: lib/libalpm/error.c:127
#, c-format
msgid "could not find repository for target"
msgstr "kunne ikke finde arkiv for mål"
#: lib/libalpm/error.c:130
#, c-format
msgid "missing PGP signature"
@@ -651,12 +677,12 @@ msgstr "kompileret uden understøttelse af signatur"
msgid "unexpected error"
msgstr "uventet fejl"
#: lib/libalpm/handle.c:153
#: lib/libalpm/handle.c:142
#, c-format
msgid "lock file missing %s\n"
msgstr "låsefil mangler %s\n"
#: lib/libalpm/handle.c:159
#: lib/libalpm/handle.c:148
#, c-format
msgid "could not remove lock file %s\n"
msgstr "kunne ikke fjerne låsningsfil %s\n"
@@ -728,7 +754,7 @@ msgstr "hook %s linje %d: kan ikke sætte tilvalg (%s)\n"
msgid "unable to run hook %s: %s\n"
msgstr "kan ikke køre hook %s: %s\n"
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:386
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:378
#, c-format
msgid "could not open directory: %s: %s\n"
msgstr "kunne ikke åbne mappe: %s: %s\n"
@@ -738,7 +764,7 @@ msgstr "kunne ikke åbne mappe: %s: %s\n"
msgid "could not open file: %s%s: %s\n"
msgstr "kunne ikke åbne fil: %s%s: %s\n"
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:259
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:260
#, c-format
msgid "could not stat file %s: %s\n"
msgstr "kunne ikke køre (stat) fil %s: %s\n"
@@ -748,183 +774,183 @@ msgstr "kunne ikke køre (stat) fil %s: %s\n"
msgid "could not read directory: %s: %s\n"
msgstr "kunne ikke læse mappe: %s: %s\n"
#: lib/libalpm/package.c:578
#: lib/libalpm/package.c:598
#, c-format
msgid "could not fully load metadata for package %s-%s\n"
msgstr "kunne ikke fuldt indlæse metadata for pakke %s-%s\n"
#: lib/libalpm/remove.c:119
#: lib/libalpm/remove.c:111
#, c-format
msgid "could not find %s in database -- skipping\n"
msgstr "kunne ikke finde %s i database - springer over\n"
#: lib/libalpm/remove.c:154
#: lib/libalpm/remove.c:146
#, c-format
msgid "removing %s from target list\n"
msgstr "fjerner %s fra målliste\n"
#: lib/libalpm/remove.c:346
#: lib/libalpm/remove.c:338
#, c-format
msgid "cannot remove file '%s': %s\n"
msgstr "kan ikke fjerne fil »%s«:%s\n"
#: lib/libalpm/remove.c:411 lib/libalpm/remove.c:420
#: lib/libalpm/remove.c:403 lib/libalpm/remove.c:412
#, c-format
msgid "could not backup %s due to PATH_MAX overflow\n"
msgstr "kunne ikke sikkerhedskopiere %s på grund af PATH_MAX-overløb\n"
#: lib/libalpm/remove.c:562
#: lib/libalpm/remove.c:554
#, c-format
msgid "cannot remove %s (%s)\n"
msgstr "kan ikke fjerne %s (%s)\n"
#: lib/libalpm/remove.c:735
#: lib/libalpm/remove.c:727
#, c-format
msgid "could not remove database entry %s-%s\n"
msgstr "kunne ikke fjerne databasepunkt %s-%s\n"
#: lib/libalpm/remove.c:740
#: lib/libalpm/remove.c:732
#, c-format
msgid "could not remove entry '%s' from cache\n"
msgstr "kunne ikke fjerne punkt '%s' fra cache\n"
#: lib/libalpm/signing.c:171
#: lib/libalpm/signing.c:163
#, c-format
msgid "Public keyring not found; have you run '%s'?\n"
msgstr "Offentlig nøglering ikke fundet. Har du kørt '%s'?\n"
#: lib/libalpm/signing.c:207 lib/libalpm/signing.c:784
#: lib/libalpm/signing.c:199 lib/libalpm/signing.c:767
#, c-format
msgid "GPGME error: %s\n"
msgstr "Fejl ved GPGME: %s\n"
#: lib/libalpm/signing.c:284
#: lib/libalpm/signing.c:274
#, c-format
msgid "looking up key %s using WKD\n"
msgstr "slår nøglen %s op med WKD\n"
#: lib/libalpm/signing.c:293
#: lib/libalpm/signing.c:283
#, c-format
msgid "gpg error: %s\n"
msgstr "fejl ved gpg: %s\n"
#: lib/libalpm/signing.c:441 lib/libalpm/signing.c:515
#: lib/libalpm/signing.c:430 lib/libalpm/signing.c:503
#, c-format
msgid "keyring is not writable\n"
msgstr "der kan ikke skrives til nøglering\n"
#: lib/libalpm/signing.c:539
#: lib/libalpm/signing.c:531
#, c-format
msgid "key \"%s\" on keyserver\n"
msgstr "nøglen\"%s\" på nøgleserver\n"
#: lib/libalpm/signing.c:544
#: lib/libalpm/signing.c:536
#, c-format
msgid "key \"%s\" could not be imported\n"
msgstr "nøglen \"%s\" kunne ikke importeres\n"
#: lib/libalpm/signing.c:548
#: lib/libalpm/signing.c:540
#, c-format
msgid "key \"%s\" could not be looked up remotely\n"
msgstr "nøglen \"%s\" kunne ikke opslås eksternt\n"
#: lib/libalpm/signing.c:943 lib/libalpm/sync.c:1022
#: lib/libalpm/signing.c:926 lib/libalpm/sync.c:1022
#, c-format
msgid "%s: missing required signature\n"
msgstr "%s: mangler krævet signatur\n"
#: lib/libalpm/signing.c:958
#: lib/libalpm/signing.c:941
#, c-format
msgid "%s: signature from \"%s\" is marginal trust\n"
msgstr "%s: signatur fra \"%s\" er marginelt betroet\n"
#: lib/libalpm/signing.c:966
#: lib/libalpm/signing.c:949
#, c-format
msgid "%s: signature from \"%s\" is unknown trust\n"
msgstr "%s: signatur fra \"%s\" er ukendt betroet\n"
#: lib/libalpm/signing.c:973
#: lib/libalpm/signing.c:956
#, c-format
msgid "%s: signature from \"%s\" should never be trusted\n"
msgstr "%s: signatur fra \"%s\" skal aldrig betroes\n"
#: lib/libalpm/signing.c:985
#: lib/libalpm/signing.c:968
#, c-format
msgid "%s: key \"%s\" is unknown\n"
msgstr "%s: nøgelen \"%s\" er ukendt\n"
#: lib/libalpm/signing.c:994
#: lib/libalpm/signing.c:977
#, c-format
msgid "%s: key \"%s\" is disabled\n"
msgstr "%s: nøglen \"%s\" er deaktiveret\n"
#: lib/libalpm/signing.c:998
#: lib/libalpm/signing.c:981
#, c-format
msgid "%s: signature from \"%s\" is expired\n"
msgstr "%s: signatur fra \"%s\" er udløbet\n"
#: lib/libalpm/signing.c:1002
#: lib/libalpm/signing.c:985
#, c-format
msgid "%s: signature from \"%s\" is invalid\n"
msgstr "%s: signatur fra \"%s\" er ugyldig\n"
#: lib/libalpm/signing.c:1079 lib/libalpm/signing.c:1147
#: lib/libalpm/signing.c:1226
#: lib/libalpm/signing.c:1043 lib/libalpm/signing.c:1104
#: lib/libalpm/signing.c:1183
#, c-format
msgid "%s: signature format error\n"
msgstr "%s: fejl i signaturformat\n"
#: lib/libalpm/signing.c:1179 lib/libalpm/signing.c:1212
#: lib/libalpm/signing.c:1220
#: lib/libalpm/signing.c:1136 lib/libalpm/signing.c:1169
#: lib/libalpm/signing.c:1177
#, c-format
msgid "%s: unsupported signature format\n"
msgstr "%s: signaturformat understøttes ikke\n"
#: lib/libalpm/sync.c:99
#: lib/libalpm/sync.c:96
#, c-format
msgid "%s: ignoring package upgrade (%s => %s)\n"
msgstr "%s: ignorerer pakkeopgradering (%s => %s)\n"
#: lib/libalpm/sync.c:111
#: lib/libalpm/sync.c:108
#, c-format
msgid "%s: ignoring package downgrade (%s => %s)\n"
msgstr "%s: ignorerer pakkenedgradering (%s => %s)\n"
#: lib/libalpm/sync.c:114
#: lib/libalpm/sync.c:111
#, c-format
msgid "%s: downgrading from version %s to version %s\n"
msgstr "%s: nedgraderer fra version %s til version %s\n"
#: lib/libalpm/sync.c:120
#: lib/libalpm/sync.c:117
#, c-format
msgid "%s: local (%s) is newer than %s (%s)\n"
msgstr "%s: lokal (%s) er nyere end %s (%s)\n"
#: lib/libalpm/sync.c:161
#: lib/libalpm/sync.c:158
#, c-format
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
msgstr "ignorerer pakkeerstatning (%s-%s => %s-%s)\n"
#: lib/libalpm/sync.c:177
#: lib/libalpm/sync.c:174
#, c-format
msgid "cannot replace %s by %s\n"
msgstr "kan ikke erstatte %s med %s\n"
#: lib/libalpm/sync.c:535 lib/libalpm/sync.c:605
#: lib/libalpm/sync.c:476
#, c-format
msgid "packages %s and %s have the same filename: %s\n"
msgstr ""
#: lib/libalpm/sync.c:542 lib/libalpm/sync.c:612
#, c-format
msgid "unresolvable package conflicts detected\n"
msgstr "pakkekonflikter, der ikke kan løses, er detekteret\n"
#: lib/libalpm/sync.c:555
#: lib/libalpm/sync.c:562
#, c-format
msgid "removing '%s' from target list because it conflicts with '%s'\n"
msgstr "fjerner »%s« fra målliste da det konflikter med »%s«\n"
#: lib/libalpm/sync.c:849
#, c-format
msgid "failed to retrieve some files\n"
msgstr "kunne ikke indhente nogle filer\n"
#: lib/libalpm/sync.c:1036
#, c-format
msgid "failed to read file %s: %s\n"
@@ -945,82 +971,82 @@ msgstr "kunne ikke indsende (commit) fjernelsestransaktion\n"
msgid "could not commit transaction\n"
msgstr "kunne ikke indsende (commit) transaktion\n"
#: lib/libalpm/trans.c:364
#: lib/libalpm/trans.c:365
#, c-format
msgid "could not create temp directory\n"
msgstr "kunne ikke oprette midlertidig mappe\n"
#: lib/libalpm/trans.c:379
#: lib/libalpm/trans.c:380
#, c-format
msgid "could not copy tempfile to %s (%s)\n"
msgstr "kunne ikke kopier midlertidig fil til %s (%s)\n"
#: lib/libalpm/trans.c:410
#: lib/libalpm/trans.c:411
#, c-format
msgid "could not remove %s\n"
msgstr "kunne ikke slette %s\n"
#: lib/libalpm/trans.c:414
#: lib/libalpm/trans.c:415
#, c-format
msgid "could not remove tmpdir %s\n"
msgstr "kunne ikke fjerne tmpdir %s\n"
#: lib/libalpm/util.c:486
#: lib/libalpm/util.c:488
#, c-format
msgid "unable to write to pipe (%s)\n"
msgstr "kan ikke skrive til pipe (%s)\n"
#: lib/libalpm/util.c:545
#: lib/libalpm/util.c:547
#, c-format
msgid "unable to read from pipe (%s)\n"
msgstr "kan ikke læse fra pipe (%s)\n"
#: lib/libalpm/util.c:609 lib/libalpm/util.c:615
#: lib/libalpm/util.c:617 lib/libalpm/util.c:623
#, c-format
msgid "could not create pipe (%s)\n"
msgstr "kunne ikke oprette pipe (%s)\n"
#: lib/libalpm/util.c:623
#: lib/libalpm/util.c:631
#, c-format
msgid "could not fork a new process (%s)\n"
msgstr "kunne ikke forgren en ny proces (%s)\n"
#: lib/libalpm/util.c:646
#: lib/libalpm/util.c:654
#, c-format
msgid "could not change the root directory (%s)\n"
msgstr "kunne ikke ændre rodmappen (%s)\n"
#: lib/libalpm/util.c:658
#: lib/libalpm/util.c:666
#, c-format
msgid "call to execv failed (%s)\n"
msgstr "kald til execv fejlede (%s)\n"
#: lib/libalpm/util.c:737
#: lib/libalpm/util.c:745
#, c-format
msgid "call to waitpid failed (%s)\n"
msgstr "kald til waitpid fejlede (%s)\n"
#: lib/libalpm/util.c:747
#: lib/libalpm/util.c:755
#, c-format
msgid "command failed to execute correctly\n"
msgstr "kommando kunne ikke udføres korrekt\n"
#: lib/libalpm/util.c:754
#: lib/libalpm/util.c:762
#, c-format
msgid "Unknown signal"
msgstr "Ukendt signal"
#: lib/libalpm/util.c:756
#: lib/libalpm/util.c:764
#, c-format
msgid "command terminated by signal %d: %s\n"
msgstr "kommando afbrudt af signal %d: %s\n"
#: lib/libalpm/util.c:853
#: lib/libalpm/util.c:875
#, c-format
msgid "no %s cache exists, creating...\n"
msgstr "ingen %s-cache findes, opretter...\n"
#: lib/libalpm/util.c:884
#: lib/libalpm/util.c:906
#, c-format
msgid "couldn't find or create package cache, using %s instead\n"
msgstr "kunne ikke finde eller oprette pakke-cache, bruger i stedet %s\n"

View File

@@ -1,19 +1,20 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Pacman Development Team <pacman-dev@archlinux.org>
# This file is distributed under the same license as the PACKAGE package.
# Copyright (C) YEAR "Pacman Development Team <pacman-dev@archlinux.org>"
# This file is distributed under the same license as the libalpm package.
#
# Translators:
# 65138391f015e4001c6ef9d675c96796_707a378 <99e420e9f3ea1b91cb2cbbb4cbc7cd27_2862>, 2013
# Dan McGee <dpmcgee@gmail.com>, 2011
# Dieter S <ptpsmail@web.de>, 2019
# 21db53640bd6018c4a99700a4cf2ee28_f478df7 <98034cbca98620f1cf39d6ebdfa44311_785827>, 2019-2020
# Frank Theile, 2018
# Frank Theile, 2018
# Jakob Gahde <j5lx@fmail.co.uk>, 2014-2015
# mar77i <inactive+mar77i@transifex.com>, 2013
# mar77i <inactive+mar77i@transifex.com>, 2013
# 65138391f015e4001c6ef9d675c96796_707a378 <99e420e9f3ea1b91cb2cbbb4cbc7cd27_2862>, 2013
# 65138391f015e4001c6ef9d675c96796_707a378 <99e420e9f3ea1b91cb2cbbb4cbc7cd27_2862>, 2013
# Martin Kühne <mysatyre@gmail.com>, 2017
# Matthias Gorissen <matthias@archlinux.de>, 2011
# Wieland Hoffmann <themineo+transifex@googlemail.com>, 2013
# mar77i <inactive+mar77i@transifex.com>, 2013
# 65138391f015e4001c6ef9d675c96796_707a378 <99e420e9f3ea1b91cb2cbbb4cbc7cd27_2862>, 2013
# Silvan Jegen <s.jegen@gmail.com>, 2015
# Wieland Hoffmann <themineo+transifex@googlemail.com>, 2013
# Wieland Hoffmann <themineo+transifex@googlemail.com>, 2013
@@ -21,8 +22,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Arch Linux Pacman package manager\n"
"Report-Msgid-Bugs-To: http://bugs.archlinux.org/index.php?project=3\n"
"POT-Creation-Date: 2019-10-21 17:23+1000\n"
"PO-Revision-Date: 2019-10-07 08:12+0000\n"
"POT-Creation-Date: 2021-09-04 16:15+1000\n"
"PO-Revision-Date: 2021-05-20 02:25+0000\n"
"Last-Translator: Allan McRae <allan@archlinux.org>\n"
"Language-Team: German (http://www.transifex.com/toofishes/archlinux-pacman/"
"language/de/)\n"
@@ -32,17 +33,17 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: lib/libalpm/add.c:91 lib/libalpm/sync.c:290
#: lib/libalpm/add.c:90 lib/libalpm/sync.c:279
#, c-format
msgid "%s-%s is up to date -- skipping\n"
msgstr "%s-%s ist aktuell -- Überspringe\n"
#: lib/libalpm/add.c:95
#: lib/libalpm/add.c:94
#, c-format
msgid "%s-%s is up to date -- reinstalling\n"
msgstr "%s-%s ist aktuell -- Reinstalliere\n"
#: lib/libalpm/add.c:100
#: lib/libalpm/add.c:99
#, c-format
msgid "downgrading package %s (%s => %s)\n"
msgstr "Downgrade des Paketes %s (%s => %s)\n"
@@ -52,17 +53,17 @@ msgstr "Downgrade des Paketes %s (%s => %s)\n"
msgid "cannot allocate disk archive object"
msgstr "Archivobjekt konnte nicht reserviert werden"
#: lib/libalpm/add.c:143 lib/libalpm/util.c:382
#: lib/libalpm/add.c:143 lib/libalpm/util.c:384
#, c-format
msgid "warning given when extracting %s (%s)\n"
msgstr "Es erscheint eine Warnung, wenn %s extrahiert wird (%s)\n"
#: lib/libalpm/add.c:146 lib/libalpm/util.c:385
#: lib/libalpm/add.c:146 lib/libalpm/util.c:387
#, c-format
msgid "could not extract %s (%s)\n"
msgstr "Konnte %s nicht entpacken (%s)\n"
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:574 lib/libalpm/remove.c:542
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:709 lib/libalpm/remove.c:534
#, c-format
msgid "could not rename %s to %s (%s)\n"
msgstr "Konnte %s nicht in %s umbenennen (%s)\n"
@@ -107,141 +108,141 @@ msgstr "Entpacken: Überschreibe Verzeichnis nicht mit Datei %s\n"
msgid "unable to extract %s.pacnew: path too long"
msgstr "konnte %s.pacnew nicht entpacken: Pfad zu lang"
#: lib/libalpm/add.c:513 lib/libalpm/util.c:334 lib/libalpm/util.c:592
#: lib/libalpm/add.c:510 lib/libalpm/util.c:335 lib/libalpm/util.c:600
#, c-format
msgid "could not get current working directory\n"
msgstr "Konnte aktuelles Arbeitsverzeichnis nicht ermitteln\n"
#: lib/libalpm/add.c:518 lib/libalpm/util.c:339 lib/libalpm/util.c:597
#: lib/libalpm/util.c:650
#: lib/libalpm/add.c:515 lib/libalpm/util.c:340 lib/libalpm/util.c:605
#: lib/libalpm/util.c:658
#, c-format
msgid "could not change directory to %s (%s)\n"
msgstr "Konnte nicht zu Verzeichnis %s wechseln (%s)\n"
#: lib/libalpm/add.c:575 lib/libalpm/util.c:403 lib/libalpm/util.c:766
#: lib/libalpm/add.c:571 lib/libalpm/util.c:405 lib/libalpm/util.c:774
#, c-format
msgid "could not restore working directory (%s)\n"
msgstr "Konnte das Arbeitsverzeichnis (%s) nicht wiederherstellen\n"
#: lib/libalpm/add.c:583
#: lib/libalpm/add.c:579
#, c-format
msgid "problem occurred while upgrading %s\n"
msgstr "Fehler traten auf, während %s aktualisiert wurde\n"
#: lib/libalpm/add.c:589
#: lib/libalpm/add.c:585
#, c-format
msgid "problem occurred while installing %s\n"
msgstr "Fehler traten bei der Installation von %s auf\n"
#: lib/libalpm/add.c:604
#: lib/libalpm/add.c:600
#, c-format
msgid "could not update database entry %s-%s\n"
msgstr "Konnte Datenbankeintrag %s-%s nicht aktualisieren\n"
#: lib/libalpm/add.c:615
#: lib/libalpm/add.c:610
#, c-format
msgid "could not add entry '%s' in cache\n"
msgstr "Konnte Eintrag '%s' nicht zum Pufferspeicher hinzufügen\n"
#: lib/libalpm/be_local.c:267
#: lib/libalpm/be_local.c:266
#, c-format
msgid "error while reading file %s: %s\n"
msgstr "Fehler beim Lesen der Datei %s: %s\n"
#: lib/libalpm/be_local.c:364
#: lib/libalpm/be_local.c:376
#, c-format
msgid "removing invalid database: %s\n"
msgstr "Entferne die ungültige Datenbank: %s\n"
#: lib/libalpm/be_local.c:415 lib/libalpm/be_local.c:905
#: lib/libalpm/be_local.c:427 lib/libalpm/be_local.c:909
#, c-format
msgid "could not create directory %s: %s\n"
msgstr "Konnte Verzeichnis %s nicht erstellen: %s\n"
#: lib/libalpm/be_local.c:590 lib/libalpm/be_sync.c:386
#: lib/libalpm/be_local.c:602 lib/libalpm/be_sync.c:322
#, c-format
msgid "invalid name for database entry '%s'\n"
msgstr "Ungültiger Name für Datenbank-Eintrag '%s'\n"
#: lib/libalpm/be_local.c:598
#: lib/libalpm/be_local.c:610
#, c-format
msgid "duplicated database entry '%s'\n"
msgstr "Doppelter Datenbank-Eintrag '%s'\n"
#: lib/libalpm/be_local.c:610
#: lib/libalpm/be_local.c:622
#, c-format
msgid "corrupted database entry '%s'\n"
msgstr "Beschädigter Datenbank-Eintrag '%s'\n"
#: lib/libalpm/be_local.c:713 lib/libalpm/be_local.c:809
#: lib/libalpm/be_local.c:954 lib/libalpm/be_local.c:1051
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:422 lib/libalpm/util.c:253
#: lib/libalpm/util.c:269
#: lib/libalpm/be_local.c:722 lib/libalpm/be_local.c:818
#: lib/libalpm/be_local.c:958 lib/libalpm/be_local.c:1055
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:823 lib/libalpm/util.c:254
#: lib/libalpm/util.c:270
#, c-format
msgid "could not open file %s: %s\n"
msgstr "Konnte Datei %s nicht öffnen: %s\n"
#: lib/libalpm/be_local.c:729 lib/libalpm/be_sync.c:650
#: lib/libalpm/be_local.c:738 lib/libalpm/be_sync.c:582
#, c-format
msgid "%s database is inconsistent: name mismatch on package %s\n"
msgstr ""
"Die Datenbank von %s ist inkonsistent: Die Paketnamen für %s stimmen nicht "
"überein\n"
#: lib/libalpm/be_local.c:735 lib/libalpm/be_sync.c:656
#: lib/libalpm/be_local.c:744 lib/libalpm/be_sync.c:588
#, c-format
msgid "%s database is inconsistent: version mismatch on package %s\n"
msgstr ""
"Die Datenbank von %s ist inkonsistent: Die Versionsnummern für das Paket %s "
"stimmen nicht überein\n"
#: lib/libalpm/be_local.c:776
#: lib/libalpm/be_local.c:785
#, c-format
msgid "unknown validation type for package %s: %s\n"
msgstr "Unbekannter Validierungstyp für das Paket %s: %s\n"
#: lib/libalpm/be_package.c:479 lib/libalpm/be_package.c:637
#: lib/libalpm/be_package.c:650
#: lib/libalpm/be_package.c:478 lib/libalpm/be_package.c:631
#: lib/libalpm/be_package.c:643
#, c-format
msgid "error while reading package %s: %s\n"
msgstr "Fehler beim Lesen des Paketes %s: %s\n"
#: lib/libalpm/be_package.c:493 lib/libalpm/be_package.c:517
#: lib/libalpm/be_package.c:491 lib/libalpm/be_package.c:514
#, c-format
msgid "error while reading mtree of package %s: %s\n"
msgstr "Fehler beim Lesen des mtrees des Pakets %s: %s\n"
#: lib/libalpm/be_package.c:603
#: lib/libalpm/be_package.c:597
#, c-format
msgid "could not parse package description file in %s\n"
msgstr "Konnte Paket-Beschreibungsdatei in %s nicht analysieren\n"
#: lib/libalpm/be_package.c:608
#: lib/libalpm/be_package.c:602
#, c-format
msgid "missing package name in %s\n"
msgstr "Fehlender Paketname in %s\n"
#: lib/libalpm/be_package.c:612
#: lib/libalpm/be_package.c:606
#, c-format
msgid "missing package version in %s\n"
msgstr "Fehlende Paketversion in %s\n"
#: lib/libalpm/be_package.c:616
#: lib/libalpm/be_package.c:610
#, c-format
msgid "invalid package version in %s\n"
msgstr "Ungültige Paketversion in %s\n"
#: lib/libalpm/be_package.c:657
#: lib/libalpm/be_package.c:649
#, c-format
msgid "missing package metadata in %s\n"
msgstr "Fehlende Paket-Metadaten in %s\n"
#: lib/libalpm/be_package.c:750
#: lib/libalpm/be_package.c:741
#, c-format
msgid "failed to read signature file: %s\n"
msgstr "Konnte die Signatur-Datei nicht lesen: %s\n"
#: lib/libalpm/be_package.c:779 lib/libalpm/sync.c:953
#: lib/libalpm/be_package.c:770 lib/libalpm/sync.c:953
#, c-format
msgid "required key missing from keyring\n"
msgstr "Erforderlicher Schlüssel fehlt im Schlüsselbund\n"
@@ -251,37 +252,37 @@ msgstr "Erforderlicher Schlüssel fehlt im Schlüsselbund\n"
msgid "removing invalid file: %s\n"
msgstr "Entferne ungültige Datei: %s\n"
#: lib/libalpm/be_sync.c:515
#: lib/libalpm/be_sync.c:449
#, c-format
msgid "could not parse package description file '%s' from db '%s'\n"
msgstr ""
"Konnte Paket-Beschreibungsdatei '%s' der Datenbank '%s' nicht analysieren\n"
#: lib/libalpm/be_sync.c:522
#: lib/libalpm/be_sync.c:456
#, c-format
msgid "could not read db '%s' (%s)\n"
msgstr "konnte Datenbank '%s' (%s) nicht lesen\n"
#: lib/libalpm/be_sync.c:556 lib/libalpm/be_sync.c:561
#: lib/libalpm/be_sync.c:489 lib/libalpm/be_sync.c:494
#, c-format
msgid "%s database is inconsistent: filename of package %s is illegal\n"
msgstr ""
"Datenbank %s ist inkonsistent: Der Dateiname des Paketes %s ist nicht "
"erlaubt\n"
#: lib/libalpm/be_sync.c:566
#: lib/libalpm/be_sync.c:499
#, c-format
msgid "%s database is inconsistent: filename of package %s is too long\n"
msgstr ""
"Die Datenbank von %s ist inkonsistent: Der Dateiname des Paketes %s ist zu "
"lang\n"
#: lib/libalpm/be_sync.c:632
#: lib/libalpm/be_sync.c:564
#, c-format
msgid "unknown database file: %s\n"
msgstr "Unbekannte Datenbankdatei: %s\n"
#: lib/libalpm/db.c:370
#: lib/libalpm/db.c:344
#, c-format
msgid "database path is undefined\n"
msgstr "Datenbank-Pfad ist nicht definiert\n"
@@ -301,12 +302,12 @@ msgstr "%s wird nach seiner Abhängigkeit %s entfernt werden\n"
msgid "%s will be installed before its %s dependency\n"
msgstr "%s wird vor seiner Abhängigkeit %s installiert werden\n"
#: lib/libalpm/deps.c:681 lib/libalpm/deps.c:712
#: lib/libalpm/deps.c:666 lib/libalpm/deps.c:697
#, c-format
msgid "ignoring package %s-%s\n"
msgstr "Ignoriere Paket %s-%s\n"
#: lib/libalpm/deps.c:869
#: lib/libalpm/deps.c:842
#, c-format
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
msgstr "Kann \"%s\" nicht auflösen (eine Abhängigkeit von \"%s\")\n"
@@ -363,42 +364,68 @@ msgstr "Konnte den Root-Einhängepunkt %s nicht ermitteln\n"
msgid "Partition %s is mounted read only\n"
msgstr "Die Partition %s ist so eingehängt, dass sie nur gelesen werden kann\n"
#: lib/libalpm/dload.c:161
#: lib/libalpm/dload.c:116
#, c-format
msgid ""
"too many errors from %s, skipping for the remainder of this transaction\n"
msgstr ""
#: lib/libalpm/dload.c:220
#, c-format
msgid "disk"
msgstr "Platte"
#: lib/libalpm/dload.c:348
#: lib/libalpm/dload.c:392
#, c-format
msgid "failed to create temporary file for download\n"
msgstr "Konnte temporäre Datei für den Download nicht anlegen\n"
#: lib/libalpm/dload.c:393
#, c-format
msgid "url '%s' is invalid\n"
msgstr "URL '%s' ist ungültig\n"
#: lib/libalpm/dload.c:464 lib/libalpm/dload.c:485 lib/libalpm/dload.c:496
#: lib/libalpm/dload.c:509 lib/libalpm/dload.c:547 lib/libalpm/dload.c:561
#, c-format
msgid "failed retrieving file '%s' from %s : %s\n"
msgstr "Konnte Datei '%s' nicht von %s übertragen : %s\n"
#: lib/libalpm/dload.c:477
#: lib/libalpm/dload.c:539
#, c-format
msgid "failed retrieving file '%s' from %s : expected download size exceeded\n"
msgstr ""
"Konnte Datei '%s' nicht von %s empfangen: Erwartete Downloadgröße "
"überschritten\n"
#: lib/libalpm/dload.c:532
#: lib/libalpm/dload.c:687
#, c-format
msgid "%s appears to be truncated: %jd/%jd bytes\n"
msgstr "%s scheint abgeschnitten zu sein: %jd/%jd Bytes\n"
#: lib/libalpm/dload.c:677 lib/libalpm/dload.c:706
#: lib/libalpm/dload.c:787
#, c-format
msgid "failed to download %s\n"
msgstr "Konnte %s nicht herunterladen\n"
msgid "url '%s' is invalid\n"
msgstr "URL '%s' ist ungültig\n"
#: lib/libalpm/dload.c:893
#, c-format
msgid "failed to setup a download payload for %s\n"
msgstr ""
#: lib/libalpm/dload.c:905
#, c-format
msgid "curl returned error %d from transfer\n"
msgstr ""
#: lib/libalpm/dload.c:929
#, c-format
msgid "curl transfer error: %d\n"
msgstr ""
#: lib/libalpm/dload.c:1055 lib/libalpm/sync.c:840
#, c-format
msgid "failed to retrieve some files\n"
msgstr "Konnte einige Dateien nicht übertragen\n"
#: lib/libalpm/dload.c:1078
#, c-format
msgid "download completed successfully but no file in the cache\n"
msgstr ""
#: lib/libalpm/error.c:40
#, c-format
@@ -515,7 +542,7 @@ msgstr "Es sind keine Server für dieses Repositorium definiert"
msgid "transaction already initialized"
msgstr "Vorgang bereits gestartet"
#: lib/libalpm/error.c:90 lib/libalpm/error.c:94
#: lib/libalpm/error.c:90 lib/libalpm/error.c:96
#, c-format
msgid "transaction not initialized"
msgstr "Vorgang nicht gestartet"
@@ -525,87 +552,87 @@ msgstr "Vorgang nicht gestartet"
msgid "duplicate target"
msgstr "Doppelte Ziele"
#: lib/libalpm/error.c:96
#: lib/libalpm/error.c:94
#, c-format
msgid "duplicate filename"
msgstr ""
#: lib/libalpm/error.c:98
#, c-format
msgid "transaction not prepared"
msgstr "Vorgang nicht vorbereitet"
#: lib/libalpm/error.c:98
#: lib/libalpm/error.c:100
#, c-format
msgid "transaction aborted"
msgstr "Vorgang abgebrochen"
#: lib/libalpm/error.c:100
#: lib/libalpm/error.c:102
#, c-format
msgid "operation not compatible with the transaction type"
msgstr "Operation nicht mit dem Vorgangs-Typ kompatibel"
#: lib/libalpm/error.c:102
#: lib/libalpm/error.c:104
#, c-format
msgid "transaction commit attempt when database is not locked"
msgstr ""
"Vorgang sollte übertragen werden, während die Datenbank nicht geschlossen war"
#: lib/libalpm/error.c:104
#: lib/libalpm/error.c:106
#, c-format
msgid "failed to run transaction hooks"
msgstr "Konnte die Vorgangs-Hooks nicht starten"
#: lib/libalpm/error.c:107
#: lib/libalpm/error.c:109
#, c-format
msgid "could not find or read package"
msgstr "Konnte Paket nicht finden oder lesen"
#: lib/libalpm/error.c:109
#: lib/libalpm/error.c:111
#, c-format
msgid "operation cancelled due to ignorepkg"
msgstr "Vorgang abgebrochen aufgrund von IgnorePkg"
#: lib/libalpm/error.c:111
#: lib/libalpm/error.c:113
#, c-format
msgid "invalid or corrupted package"
msgstr "Ungültiges oder beschädigtes Paket"
#: lib/libalpm/error.c:113
#: lib/libalpm/error.c:115
#, c-format
msgid "invalid or corrupted package (checksum)"
msgstr "Ungültiges oder beschädigtes Paket (Prüfsumme)"
#: lib/libalpm/error.c:115
#: lib/libalpm/error.c:117
#, c-format
msgid "invalid or corrupted package (PGP signature)"
msgstr "Ungültiges oder beschädigtes Paket (PGP-Signatur)"
#: lib/libalpm/error.c:117
#: lib/libalpm/error.c:119
#, c-format
msgid "package missing required signature"
msgstr "Erforderliche Signatur für Paket fehlt"
#: lib/libalpm/error.c:119
#: lib/libalpm/error.c:121
#, c-format
msgid "cannot open package file"
msgstr "Kann Paketdatei nicht öffnen"
#: lib/libalpm/error.c:121
#: lib/libalpm/error.c:123
#, c-format
msgid "cannot remove all files for package"
msgstr "Konnte nicht alle Dateien des Paketes entfernen"
#: lib/libalpm/error.c:123
#: lib/libalpm/error.c:125
#, c-format
msgid "package filename is not valid"
msgstr "Der Dateiname des Paketes ist nicht gültig"
#: lib/libalpm/error.c:125
#: lib/libalpm/error.c:127
#, c-format
msgid "package architecture is not valid"
msgstr "Die Paket-Architektur ist ungültig"
#: lib/libalpm/error.c:127
#, c-format
msgid "could not find repository for target"
msgstr "Konnte kein Repositorium für das Ziel finden"
#: lib/libalpm/error.c:130
#, c-format
msgid "missing PGP signature"
@@ -671,12 +698,12 @@ msgstr "Kompiliert ohne Signatur-Unterstützung"
msgid "unexpected error"
msgstr "Unerwarteter Fehler"
#: lib/libalpm/handle.c:153
#: lib/libalpm/handle.c:142
#, c-format
msgid "lock file missing %s\n"
msgstr "%s fehlt in Sperrdatei\n"
#: lib/libalpm/handle.c:159
#: lib/libalpm/handle.c:148
#, c-format
msgid "could not remove lock file %s\n"
msgstr "Konnte Sperrdatei %s nicht entfernen\n"
@@ -748,7 +775,7 @@ msgstr "hook %s, Zeile %d: Kann die Option (%s) nicht setzen\n"
msgid "unable to run hook %s: %s\n"
msgstr "Kann den hook %s nicht starten: %s\n"
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:386
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:378
#, c-format
msgid "could not open directory: %s: %s\n"
msgstr "Konnte das Verzeichnis nicht öffnen: %s: %s\n"
@@ -758,7 +785,7 @@ msgstr "Konnte das Verzeichnis nicht öffnen: %s: %s\n"
msgid "could not open file: %s%s: %s\n"
msgstr "Konnte die Datei nicht öffnen: %s%s: %s\n"
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:259
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:260
#, c-format
msgid "could not stat file %s: %s\n"
msgstr "Konnte Status-Information für die Datei %s nicht ermitteln: %s\n"
@@ -768,183 +795,183 @@ msgstr "Konnte Status-Information für die Datei %s nicht ermitteln: %s\n"
msgid "could not read directory: %s: %s\n"
msgstr "Konnte Verzeichnis nicht lesen: %s: %s\n"
#: lib/libalpm/package.c:578
#: lib/libalpm/package.c:598
#, c-format
msgid "could not fully load metadata for package %s-%s\n"
msgstr "Konnte die Metadaten für Paket %s-%s nicht vollständig laden\n"
#: lib/libalpm/remove.c:119
#: lib/libalpm/remove.c:111
#, c-format
msgid "could not find %s in database -- skipping\n"
msgstr "Konnte %s nicht in Datenbank finden -- Überspringe\n"
#: lib/libalpm/remove.c:154
#: lib/libalpm/remove.c:146
#, c-format
msgid "removing %s from target list\n"
msgstr "Entferne '%s' aus der Ziel-Liste\n"
#: lib/libalpm/remove.c:346
#: lib/libalpm/remove.c:338
#, c-format
msgid "cannot remove file '%s': %s\n"
msgstr "Kann Datei '%s' nicht entfernen: %s\n"
#: lib/libalpm/remove.c:411 lib/libalpm/remove.c:420
#: lib/libalpm/remove.c:403 lib/libalpm/remove.c:412
#, c-format
msgid "could not backup %s due to PATH_MAX overflow\n"
msgstr "Kann kein Backup von %s erstellen, auf Grund eines PATH_MAX overflow\n"
#: lib/libalpm/remove.c:562
#: lib/libalpm/remove.c:554
#, c-format
msgid "cannot remove %s (%s)\n"
msgstr "Konnte %s nicht entfernen (%s)\n"
#: lib/libalpm/remove.c:735
#: lib/libalpm/remove.c:727
#, c-format
msgid "could not remove database entry %s-%s\n"
msgstr "Konnte Datenbank-Eintrag %s-%s nicht entfernen\n"
#: lib/libalpm/remove.c:740
#: lib/libalpm/remove.c:732
#, c-format
msgid "could not remove entry '%s' from cache\n"
msgstr "Konnte Eintrag '%s' nicht aus dem Puffer entfernen\n"
#: lib/libalpm/signing.c:171
#: lib/libalpm/signing.c:163
#, c-format
msgid "Public keyring not found; have you run '%s'?\n"
msgstr ""
#: lib/libalpm/signing.c:207 lib/libalpm/signing.c:784
#: lib/libalpm/signing.c:199 lib/libalpm/signing.c:767
#, c-format
msgid "GPGME error: %s\n"
msgstr ""
#: lib/libalpm/signing.c:284
#: lib/libalpm/signing.c:274
#, c-format
msgid "looking up key %s using WKD\n"
msgstr ""
#: lib/libalpm/signing.c:293
#: lib/libalpm/signing.c:283
#, c-format
msgid "gpg error: %s\n"
msgstr ""
msgstr "gpg-Fehler: %s\n"
#: lib/libalpm/signing.c:441 lib/libalpm/signing.c:515
#: lib/libalpm/signing.c:430 lib/libalpm/signing.c:503
#, c-format
msgid "keyring is not writable\n"
msgstr "Schlüssebund ist nicht schreibbar\n"
#: lib/libalpm/signing.c:539
#: lib/libalpm/signing.c:531
#, c-format
msgid "key \"%s\" on keyserver\n"
msgstr ""
msgstr "Schlüssel \"%s\" auf Schlüsselserver\n"
#: lib/libalpm/signing.c:544
#: lib/libalpm/signing.c:536
#, c-format
msgid "key \"%s\" could not be imported\n"
msgstr "Schlüssel \"%s\" konnte nicht importiert werden\n"
#: lib/libalpm/signing.c:548
#: lib/libalpm/signing.c:540
#, c-format
msgid "key \"%s\" could not be looked up remotely\n"
msgstr "Schlüssel \"%s\" konnte nicht entfernt abgerufen werden\n"
#: lib/libalpm/signing.c:943 lib/libalpm/sync.c:1022
#: lib/libalpm/signing.c:926 lib/libalpm/sync.c:1022
#, c-format
msgid "%s: missing required signature\n"
msgstr "%s: Erforderliche Signatur fehlt\n"
#: lib/libalpm/signing.c:958
#: lib/libalpm/signing.c:941
#, c-format
msgid "%s: signature from \"%s\" is marginal trust\n"
msgstr ""
#: lib/libalpm/signing.c:966
#: lib/libalpm/signing.c:949
#, c-format
msgid "%s: signature from \"%s\" is unknown trust\n"
msgstr ""
#: lib/libalpm/signing.c:973
#: lib/libalpm/signing.c:956
#, c-format
msgid "%s: signature from \"%s\" should never be trusted\n"
msgstr ""
#: lib/libalpm/signing.c:985
#: lib/libalpm/signing.c:968
#, c-format
msgid "%s: key \"%s\" is unknown\n"
msgstr "%s: Schlüssel \"%s\" ist unbekannt\n"
#: lib/libalpm/signing.c:994
#: lib/libalpm/signing.c:977
#, c-format
msgid "%s: key \"%s\" is disabled\n"
msgstr "%s: Schlüssel \"%s\" ist deaktiviert\n"
#: lib/libalpm/signing.c:998
#: lib/libalpm/signing.c:981
#, c-format
msgid "%s: signature from \"%s\" is expired\n"
msgstr "%s: Signatur von \"%s\" ist abgelaufen\n"
#: lib/libalpm/signing.c:1002
#: lib/libalpm/signing.c:985
#, c-format
msgid "%s: signature from \"%s\" is invalid\n"
msgstr "%s: Signatur von \"%s\" ist ungültig\n"
#: lib/libalpm/signing.c:1079 lib/libalpm/signing.c:1147
#: lib/libalpm/signing.c:1226
#: lib/libalpm/signing.c:1043 lib/libalpm/signing.c:1104
#: lib/libalpm/signing.c:1183
#, c-format
msgid "%s: signature format error\n"
msgstr "%s: Signaturformatfehler\n"
#: lib/libalpm/signing.c:1179 lib/libalpm/signing.c:1212
#: lib/libalpm/signing.c:1220
#: lib/libalpm/signing.c:1136 lib/libalpm/signing.c:1169
#: lib/libalpm/signing.c:1177
#, c-format
msgid "%s: unsupported signature format\n"
msgstr "%s: nicht unterstütztes Signaturformat\n"
#: lib/libalpm/sync.c:99
#: lib/libalpm/sync.c:96
#, c-format
msgid "%s: ignoring package upgrade (%s => %s)\n"
msgstr "%s: Ignoriere Paket-Aktualisierung (%s => %s)\n"
#: lib/libalpm/sync.c:111
#: lib/libalpm/sync.c:108
#, c-format
msgid "%s: ignoring package downgrade (%s => %s)\n"
msgstr "%s: Ignoriere Paket-Downgrade (%s => %s)\n"
#: lib/libalpm/sync.c:114
#: lib/libalpm/sync.c:111
#, c-format
msgid "%s: downgrading from version %s to version %s\n"
msgstr "%s: Downgrade von Version %s zu Version %s\n"
#: lib/libalpm/sync.c:120
#: lib/libalpm/sync.c:117
#, c-format
msgid "%s: local (%s) is newer than %s (%s)\n"
msgstr "%s: Lokale Version (%s) ist neuer als %s (%s)\n"
#: lib/libalpm/sync.c:161
#: lib/libalpm/sync.c:158
#, c-format
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
msgstr "Ignoriere Paket-Ersetzung (%s-%s => %s-%s)\n"
#: lib/libalpm/sync.c:177
#: lib/libalpm/sync.c:174
#, c-format
msgid "cannot replace %s by %s\n"
msgstr "Kann %s nicht durch %s ersetzen\n"
#: lib/libalpm/sync.c:535 lib/libalpm/sync.c:605
#: lib/libalpm/sync.c:476
#, c-format
msgid "packages %s and %s have the same filename: %s\n"
msgstr ""
#: lib/libalpm/sync.c:542 lib/libalpm/sync.c:612
#, c-format
msgid "unresolvable package conflicts detected\n"
msgstr "Nicht auflösbare Paketkonflikte gefunden\n"
#: lib/libalpm/sync.c:555
#: lib/libalpm/sync.c:562
#, c-format
msgid "removing '%s' from target list because it conflicts with '%s'\n"
msgstr "Entferne '%s' aus der Ziel-Liste, da es mit '%s' in Konflikt steht\n"
#: lib/libalpm/sync.c:849
#, c-format
msgid "failed to retrieve some files\n"
msgstr "Konnte einige Dateien nicht übertragen\n"
#: lib/libalpm/sync.c:1036
#, c-format
msgid "failed to read file %s: %s\n"
@@ -965,82 +992,82 @@ msgstr "Konnte Löschvorgang nicht durchführen\n"
msgid "could not commit transaction\n"
msgstr "Konnte den Vorgang nicht durchführen\n"
#: lib/libalpm/trans.c:364
#: lib/libalpm/trans.c:365
#, c-format
msgid "could not create temp directory\n"
msgstr "Konnte temporäres Verzeichnis nicht erstellen\n"
#: lib/libalpm/trans.c:379
#: lib/libalpm/trans.c:380
#, c-format
msgid "could not copy tempfile to %s (%s)\n"
msgstr "Konnte temporäre Datei nicht nach %s kopieren (%s)\n"
#: lib/libalpm/trans.c:410
#: lib/libalpm/trans.c:411
#, c-format
msgid "could not remove %s\n"
msgstr "Konnte %s nicht entfernen\n"
#: lib/libalpm/trans.c:414
#: lib/libalpm/trans.c:415
#, c-format
msgid "could not remove tmpdir %s\n"
msgstr "Konnte temporäres Verzeichnis %s nicht entfernen\n"
#: lib/libalpm/util.c:486
#: lib/libalpm/util.c:488
#, c-format
msgid "unable to write to pipe (%s)\n"
msgstr "konnte nicht in Weiterleitung schreiben (%s)\n"
#: lib/libalpm/util.c:545
#: lib/libalpm/util.c:547
#, c-format
msgid "unable to read from pipe (%s)\n"
msgstr "konnte nicht von Weiterleitung lesen (%s)\n"
#: lib/libalpm/util.c:609 lib/libalpm/util.c:615
#: lib/libalpm/util.c:617 lib/libalpm/util.c:623
#, c-format
msgid "could not create pipe (%s)\n"
msgstr "Konnte Weiterleitung nicht erstellen (%s)\n"
#: lib/libalpm/util.c:623
#: lib/libalpm/util.c:631
#, c-format
msgid "could not fork a new process (%s)\n"
msgstr "Konnte keinen neuen Prozess starten (%s)\n"
#: lib/libalpm/util.c:646
#: lib/libalpm/util.c:654
#, c-format
msgid "could not change the root directory (%s)\n"
msgstr "Konnte Root-Verzeichnis nicht wechseln (%s)\n"
#: lib/libalpm/util.c:658
#: lib/libalpm/util.c:666
#, c-format
msgid "call to execv failed (%s)\n"
msgstr "Konnte execv nicht aufrufen (%s)\n"
#: lib/libalpm/util.c:737
#: lib/libalpm/util.c:745
#, c-format
msgid "call to waitpid failed (%s)\n"
msgstr "Aufruf von waitpid fehlgeschlagen (%s)\n"
#: lib/libalpm/util.c:747
#: lib/libalpm/util.c:755
#, c-format
msgid "command failed to execute correctly\n"
msgstr "Befehl konnte nicht korrekt ausgeführt werden\n"
#: lib/libalpm/util.c:754
#: lib/libalpm/util.c:762
#, c-format
msgid "Unknown signal"
msgstr "Unbekanntes Signal"
#: lib/libalpm/util.c:756
#: lib/libalpm/util.c:764
#, c-format
msgid "command terminated by signal %d: %s\n"
msgstr "Befehl unterbrochen durch Signal %d: %s\n"
#: lib/libalpm/util.c:853
#: lib/libalpm/util.c:875
#, c-format
msgid "no %s cache exists, creating...\n"
msgstr "Es existiert kein %s-Puffer, erstelle...\n"
#: lib/libalpm/util.c:884
#: lib/libalpm/util.c:906
#, c-format
msgid "couldn't find or create package cache, using %s instead\n"
msgstr ""

View File

@@ -1,24 +1,25 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Pacman Development Team <pacman-dev@archlinux.org>
# This file is distributed under the same license as the PACKAGE package.
# Copyright (C) YEAR "Pacman Development Team <pacman-dev@archlinux.org>"
# This file is distributed under the same license as the libalpm package.
#
# Translators:
# Achilleas Pipinellis, 2013-2014
# Achilleas Pipinellis, 2014
# Achilleas Pipinellis, 2013
# Achilleas Pipinellis, 2013
# Christos Nouskas <nous@archlinux.us>, 2011,2013-2014,2017,2019
# Christos Nouskas <nous@artixlinux.org>, 2011,2013-2014,2017,2019-2020
# Christos Nouskas <nous@artixlinux.org>, 2011
# Dan McGee <dpmcgee@gmail.com>, 2011
# ifaigios <ifaigios@gmail.com>, 2015
# ifaigios <ifaigios@gmail.com>, 2015
# Christos Nouskas <nous@archlinux.us>, 2011
# Christos Nouskas <nous@artixlinux.org>, 2011
# th_ts <tsesmelistheodore@gmail.com>, 2014
msgid ""
msgstr ""
"Project-Id-Version: Arch Linux Pacman package manager\n"
"Report-Msgid-Bugs-To: http://bugs.archlinux.org/index.php?project=3\n"
"POT-Creation-Date: 2019-10-21 17:23+1000\n"
"PO-Revision-Date: 2019-10-07 08:12+0000\n"
"POT-Creation-Date: 2021-09-04 16:15+1000\n"
"PO-Revision-Date: 2021-05-20 02:25+0000\n"
"Last-Translator: Allan McRae <allan@archlinux.org>\n"
"Language-Team: Greek (http://www.transifex.com/toofishes/archlinux-pacman/"
"language/el/)\n"
@@ -28,17 +29,17 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: lib/libalpm/add.c:91 lib/libalpm/sync.c:290
#: lib/libalpm/add.c:90 lib/libalpm/sync.c:279
#, c-format
msgid "%s-%s is up to date -- skipping\n"
msgstr "%s-%s ενημερωμένο -- παράλειψη\n"
#: lib/libalpm/add.c:95
#: lib/libalpm/add.c:94
#, c-format
msgid "%s-%s is up to date -- reinstalling\n"
msgstr "%s-%s ενημερωμένο -- επανεγκατάσταση\n"
#: lib/libalpm/add.c:100
#: lib/libalpm/add.c:99
#, c-format
msgid "downgrading package %s (%s => %s)\n"
msgstr "υποβάθμιση πακέτου %s (%s => %s)\n"
@@ -48,17 +49,17 @@ msgstr "υποβάθμιση πακέτου %s (%s => %s)\n"
msgid "cannot allocate disk archive object"
msgstr "αδυναμία κατανομής αντικειμένου αρχείου δίσκου"
#: lib/libalpm/add.c:143 lib/libalpm/util.c:382
#: lib/libalpm/add.c:143 lib/libalpm/util.c:384
#, c-format
msgid "warning given when extracting %s (%s)\n"
msgstr "προειδοποίηση κατά την εξαγωγή του %s (%s)\n"
#: lib/libalpm/add.c:146 lib/libalpm/util.c:385
#: lib/libalpm/add.c:146 lib/libalpm/util.c:387
#, c-format
msgid "could not extract %s (%s)\n"
msgstr "αδυναμία εξαγωγής %s (%s)\n"
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:574 lib/libalpm/remove.c:542
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:709 lib/libalpm/remove.c:534
#, c-format
msgid "could not rename %s to %s (%s)\n"
msgstr "αδυναμία μετονομασίας %s σε %s (%s)\n"
@@ -103,137 +104,137 @@ msgstr "εξαγωγή: μη αντικατάσταση καταλόγου με
msgid "unable to extract %s.pacnew: path too long"
msgstr "αδυναμία εξαγωγής %s.pacnew: πολύ μεγάλο μήκος διαδρομής"
#: lib/libalpm/add.c:513 lib/libalpm/util.c:334 lib/libalpm/util.c:592
#: lib/libalpm/add.c:510 lib/libalpm/util.c:335 lib/libalpm/util.c:600
#, c-format
msgid "could not get current working directory\n"
msgstr "αδυναμία χρήσης τρέχοντος καταλόγου\n"
#: lib/libalpm/add.c:518 lib/libalpm/util.c:339 lib/libalpm/util.c:597
#: lib/libalpm/util.c:650
#: lib/libalpm/add.c:515 lib/libalpm/util.c:340 lib/libalpm/util.c:605
#: lib/libalpm/util.c:658
#, c-format
msgid "could not change directory to %s (%s)\n"
msgstr "αδυναμία μετάβασης στον κατάλογο %s (%s)\n"
#: lib/libalpm/add.c:575 lib/libalpm/util.c:403 lib/libalpm/util.c:766
#: lib/libalpm/add.c:571 lib/libalpm/util.c:405 lib/libalpm/util.c:774
#, c-format
msgid "could not restore working directory (%s)\n"
msgstr "αδυναμία επαναφοράς καταλόγου εργασίας (%s)\n"
#: lib/libalpm/add.c:583
#: lib/libalpm/add.c:579
#, c-format
msgid "problem occurred while upgrading %s\n"
msgstr "πρόβλημα κατά την αναβάθμιση του %s\n"
#: lib/libalpm/add.c:589
#: lib/libalpm/add.c:585
#, c-format
msgid "problem occurred while installing %s\n"
msgstr "πρόβλημα κατά την εγκατάσταση του %s\n"
#: lib/libalpm/add.c:604
#: lib/libalpm/add.c:600
#, c-format
msgid "could not update database entry %s-%s\n"
msgstr "αδυναμία ενημέρωσης εγγραφής βάσης %s-%s\n"
#: lib/libalpm/add.c:615
#: lib/libalpm/add.c:610
#, c-format
msgid "could not add entry '%s' in cache\n"
msgstr "αδυναμία προσθήκης εγγραφής '%s' στην κρύπτη\n"
#: lib/libalpm/be_local.c:267
#: lib/libalpm/be_local.c:266
#, c-format
msgid "error while reading file %s: %s\n"
msgstr "σφάλμα ανάγνωσης αρχείου %s: %s\n"
#: lib/libalpm/be_local.c:364
#: lib/libalpm/be_local.c:376
#, c-format
msgid "removing invalid database: %s\n"
msgstr "διαγραφή άκυρης βάσης: %s\n"
#: lib/libalpm/be_local.c:415 lib/libalpm/be_local.c:905
#: lib/libalpm/be_local.c:427 lib/libalpm/be_local.c:909
#, c-format
msgid "could not create directory %s: %s\n"
msgstr "αδυναμία δημιουργίας καταλόγου %s: %s\n"
#: lib/libalpm/be_local.c:590 lib/libalpm/be_sync.c:386
#: lib/libalpm/be_local.c:602 lib/libalpm/be_sync.c:322
#, c-format
msgid "invalid name for database entry '%s'\n"
msgstr "άκυρο όνομα εγγραφής βάσης '%s'\n"
#: lib/libalpm/be_local.c:598
#: lib/libalpm/be_local.c:610
#, c-format
msgid "duplicated database entry '%s'\n"
msgstr "διπλότυπη εγγραφή βάσης '%s'\n"
#: lib/libalpm/be_local.c:610
#: lib/libalpm/be_local.c:622
#, c-format
msgid "corrupted database entry '%s'\n"
msgstr "κατεστραμμένη εγγραφή βάσης '%s'\n"
#: lib/libalpm/be_local.c:713 lib/libalpm/be_local.c:809
#: lib/libalpm/be_local.c:954 lib/libalpm/be_local.c:1051
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:422 lib/libalpm/util.c:253
#: lib/libalpm/util.c:269
#: lib/libalpm/be_local.c:722 lib/libalpm/be_local.c:818
#: lib/libalpm/be_local.c:958 lib/libalpm/be_local.c:1055
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:823 lib/libalpm/util.c:254
#: lib/libalpm/util.c:270
#, c-format
msgid "could not open file %s: %s\n"
msgstr "αδυναμία ανάγνωσης αρχείου %s: %s\n"
#: lib/libalpm/be_local.c:729 lib/libalpm/be_sync.c:650
#: lib/libalpm/be_local.c:738 lib/libalpm/be_sync.c:582
#, c-format
msgid "%s database is inconsistent: name mismatch on package %s\n"
msgstr "ανακολουθία στην βάση %s: αναντιστοιχία ονόματος πακέτου %s\n"
#: lib/libalpm/be_local.c:735 lib/libalpm/be_sync.c:656
#: lib/libalpm/be_local.c:744 lib/libalpm/be_sync.c:588
#, c-format
msgid "%s database is inconsistent: version mismatch on package %s\n"
msgstr "ανακολουθία στην βάση %s: ασυμφωνία έκδοσης πακέτου %s\n"
#: lib/libalpm/be_local.c:776
#: lib/libalpm/be_local.c:785
#, c-format
msgid "unknown validation type for package %s: %s\n"
msgstr "άγνωστος τύπος επικύρωσης πακέτου %s: %s\n"
#: lib/libalpm/be_package.c:479 lib/libalpm/be_package.c:637
#: lib/libalpm/be_package.c:650
#: lib/libalpm/be_package.c:478 lib/libalpm/be_package.c:631
#: lib/libalpm/be_package.c:643
#, c-format
msgid "error while reading package %s: %s\n"
msgstr "σφάλμα ανάγνωσης πακέτου %s: %s\n"
#: lib/libalpm/be_package.c:493 lib/libalpm/be_package.c:517
#: lib/libalpm/be_package.c:491 lib/libalpm/be_package.c:514
#, c-format
msgid "error while reading mtree of package %s: %s\n"
msgstr "σφάλμα ανάγνωσης mtree πακέτου %s: %s\n"
#: lib/libalpm/be_package.c:603
#: lib/libalpm/be_package.c:597
#, c-format
msgid "could not parse package description file in %s\n"
msgstr "αδυναμία ανάλυσης αρχείου περιγραφής πακέτου στο %s\n"
#: lib/libalpm/be_package.c:608
#: lib/libalpm/be_package.c:602
#, c-format
msgid "missing package name in %s\n"
msgstr "απόν όνομα πακέτου στο %s\n"
#: lib/libalpm/be_package.c:612
#: lib/libalpm/be_package.c:606
#, c-format
msgid "missing package version in %s\n"
msgstr "απούσα έκδοση πακέτου στο %s\n"
#: lib/libalpm/be_package.c:616
#: lib/libalpm/be_package.c:610
#, c-format
msgid "invalid package version in %s\n"
msgstr "άκυρη έκδοση πακέτου στο %s\n"
#: lib/libalpm/be_package.c:657
#: lib/libalpm/be_package.c:649
#, c-format
msgid "missing package metadata in %s\n"
msgstr "απόντα μετα-δεδομένα πακέτου στο %s\n"
#: lib/libalpm/be_package.c:750
#: lib/libalpm/be_package.c:741
#, c-format
msgid "failed to read signature file: %s\n"
msgstr "αδυναμία ανάγνωσης αρχείου υπογραφής: %s\n"
#: lib/libalpm/be_package.c:779 lib/libalpm/sync.c:953
#: lib/libalpm/be_package.c:770 lib/libalpm/sync.c:953
#, c-format
msgid "required key missing from keyring\n"
msgstr ""
@@ -245,33 +246,33 @@ msgstr ""
msgid "removing invalid file: %s\n"
msgstr "διαγραφή άκυρου αρχείου: %s\n"
#: lib/libalpm/be_sync.c:515
#: lib/libalpm/be_sync.c:449
#, c-format
msgid "could not parse package description file '%s' from db '%s'\n"
msgstr ""
"αδυναμία ανάλυσης αρχείου περιγραφής πακέτου '%s' στη βάση δεδομένων '%s'\n"
#: lib/libalpm/be_sync.c:522
#: lib/libalpm/be_sync.c:456
#, c-format
msgid "could not read db '%s' (%s)\n"
msgstr "αδυναμία ανάγνωσης βάσης '%s' (%s)\n"
#: lib/libalpm/be_sync.c:556 lib/libalpm/be_sync.c:561
#: lib/libalpm/be_sync.c:489 lib/libalpm/be_sync.c:494
#, c-format
msgid "%s database is inconsistent: filename of package %s is illegal\n"
msgstr "ασυνέπεια βάσης %s: μη έγκυρο όνομα πακέτου %s\n"
#: lib/libalpm/be_sync.c:566
#: lib/libalpm/be_sync.c:499
#, c-format
msgid "%s database is inconsistent: filename of package %s is too long\n"
msgstr "ασυνέπεια βάσης %s: πολύ μεγάλο όνομα πακέτου %s\n"
#: lib/libalpm/be_sync.c:632
#: lib/libalpm/be_sync.c:564
#, c-format
msgid "unknown database file: %s\n"
msgstr "άγνωστο αρχείο βάσης: %s\n"
#: lib/libalpm/db.c:370
#: lib/libalpm/db.c:344
#, c-format
msgid "database path is undefined\n"
msgstr "απροσδιόριστη διαδρομή βάσης\n"
@@ -291,12 +292,12 @@ msgstr "κατάργηση του %s μετά την εξάρτησή του %s\
msgid "%s will be installed before its %s dependency\n"
msgstr "εγκατάσταση του %s πρίν από την εξάρτησή του %s\n"
#: lib/libalpm/deps.c:681 lib/libalpm/deps.c:712
#: lib/libalpm/deps.c:666 lib/libalpm/deps.c:697
#, c-format
msgid "ignoring package %s-%s\n"
msgstr "παράβλεψη πακέτου %s-%s\n"
#: lib/libalpm/deps.c:869
#: lib/libalpm/deps.c:842
#, c-format
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
msgstr "αδυναμία εύρεσης του \"%s\", εξάρτησης του \"%s\"\n"
@@ -353,41 +354,67 @@ msgstr "αδυναμία καθορισμού ριζικού σημείου πρ
msgid "Partition %s is mounted read only\n"
msgstr "Η κατάτμηση %s είναι προσαρτημένη μόνο για ανάγνωση\n"
#: lib/libalpm/dload.c:161
#: lib/libalpm/dload.c:116
#, c-format
msgid ""
"too many errors from %s, skipping for the remainder of this transaction\n"
msgstr ""
#: lib/libalpm/dload.c:220
#, c-format
msgid "disk"
msgstr "δίσκο"
#: lib/libalpm/dload.c:348
#: lib/libalpm/dload.c:392
#, c-format
msgid "failed to create temporary file for download\n"
msgstr "αποτυχία δημιουργίας προσωρινού αρχείου λήψης\n"
#: lib/libalpm/dload.c:393
#, c-format
msgid "url '%s' is invalid\n"
msgstr "άκυρη διεύθυνση '%s'\n"
#: lib/libalpm/dload.c:464 lib/libalpm/dload.c:485 lib/libalpm/dload.c:496
#: lib/libalpm/dload.c:509 lib/libalpm/dload.c:547 lib/libalpm/dload.c:561
#, c-format
msgid "failed retrieving file '%s' from %s : %s\n"
msgstr "αποτυχία λήψης αρχείου '%s' από %s : %s\n"
#: lib/libalpm/dload.c:477
#: lib/libalpm/dload.c:539
#, c-format
msgid "failed retrieving file '%s' from %s : expected download size exceeded\n"
msgstr ""
"αποτυχία λήψης αρχείου '%s' από %s : υπέρβαση αναμενομένου μεγέθους λήψης\n"
#: lib/libalpm/dload.c:532
#: lib/libalpm/dload.c:687
#, c-format
msgid "%s appears to be truncated: %jd/%jd bytes\n"
msgstr "το %s δείχνει ημιτελές: %jd/%jd bytes\n"
#: lib/libalpm/dload.c:677 lib/libalpm/dload.c:706
#: lib/libalpm/dload.c:787
#, c-format
msgid "failed to download %s\n"
msgstr "αποτυχία λήψης %s\n"
msgid "url '%s' is invalid\n"
msgstr "άκυρη διεύθυνση '%s'\n"
#: lib/libalpm/dload.c:893
#, c-format
msgid "failed to setup a download payload for %s\n"
msgstr ""
#: lib/libalpm/dload.c:905
#, c-format
msgid "curl returned error %d from transfer\n"
msgstr ""
#: lib/libalpm/dload.c:929
#, c-format
msgid "curl transfer error: %d\n"
msgstr ""
#: lib/libalpm/dload.c:1055 lib/libalpm/sync.c:840
#, c-format
msgid "failed to retrieve some files\n"
msgstr "σφάλμα λήψης μερικών αρχείων\n"
#: lib/libalpm/dload.c:1078
#, c-format
msgid "download completed successfully but no file in the cache\n"
msgstr ""
#: lib/libalpm/error.c:40
#, c-format
@@ -427,12 +454,12 @@ msgstr "ανεπαρκής ελεύθερος χώρος στον δίσκο"
#: lib/libalpm/error.c:55
#, c-format
msgid "library not initialized"
msgstr "βιβλιοθήκη μη εκκινηθείσα"
msgstr "βιβλιοθήκη μη προετοιμασμένη"
#: lib/libalpm/error.c:57
#, c-format
msgid "library already initialized"
msgstr "βιβλιοθήκη ήδη εκκινηθείσα"
msgstr "βιβλιοθήκη ήδη προετοιμασμένη"
#: lib/libalpm/error.c:59
#, c-format
@@ -452,7 +479,7 @@ msgstr "αδυναμία δημιουργίας βάσης"
#: lib/libalpm/error.c:66
#, c-format
msgid "database not initialized"
msgstr "βάση μη εκκινηθείσα"
msgstr "βάση μη προετοιμασμένη"
#: lib/libalpm/error.c:68
#, c-format
@@ -502,98 +529,98 @@ msgstr "αρρύθμιστοι διακομιστές αποθετηρίου"
#: lib/libalpm/error.c:88
#, c-format
msgid "transaction already initialized"
msgstr "διεκπεραίωση ήδη εκκινηθείσα"
msgstr "διεκπεραίωση ήδη προετοιμασμένη"
#: lib/libalpm/error.c:90 lib/libalpm/error.c:94
#: lib/libalpm/error.c:90 lib/libalpm/error.c:96
#, c-format
msgid "transaction not initialized"
msgstr "διεκπεραίωση μη εκκινηθείσα"
msgstr "διεκπεραίωση μη προετοιμασμένη"
#: lib/libalpm/error.c:92
#, c-format
msgid "duplicate target"
msgstr "διπλότυπος στόχος"
#: lib/libalpm/error.c:96
#: lib/libalpm/error.c:94
#, c-format
msgid "duplicate filename"
msgstr ""
#: lib/libalpm/error.c:98
#, c-format
msgid "transaction not prepared"
msgstr "απροετοίμαστη διεκπεραίωση"
#: lib/libalpm/error.c:98
#: lib/libalpm/error.c:100
#, c-format
msgid "transaction aborted"
msgstr "ματαίωση διεκπεραίωσης"
#: lib/libalpm/error.c:100
#: lib/libalpm/error.c:102
#, c-format
msgid "operation not compatible with the transaction type"
msgstr "λειτουργία ασύμβατη με τον τύπο διεκπεραίωσης"
#: lib/libalpm/error.c:102
#: lib/libalpm/error.c:104
#, c-format
msgid "transaction commit attempt when database is not locked"
msgstr "προσπάθεια διεκπεραίωσης σε μη κλειδωμένη βάση"
#: lib/libalpm/error.c:104
#: lib/libalpm/error.c:106
#, c-format
msgid "failed to run transaction hooks"
msgstr "αποτυχία εκτέλεσης hooks"
#: lib/libalpm/error.c:107
#: lib/libalpm/error.c:109
#, c-format
msgid "could not find or read package"
msgstr "αδυναμία εύρεσης ή ανάγνωσης πακέτου"
#: lib/libalpm/error.c:109
#: lib/libalpm/error.c:111
#, c-format
msgid "operation cancelled due to ignorepkg"
msgstr "ακύρωση λειτουργίας λόγω ignorepkg"
#: lib/libalpm/error.c:111
#: lib/libalpm/error.c:113
#, c-format
msgid "invalid or corrupted package"
msgstr "άκυρο ή κατεστραμμένο πακέτο"
#: lib/libalpm/error.c:113
#: lib/libalpm/error.c:115
#, c-format
msgid "invalid or corrupted package (checksum)"
msgstr "άκυρο ή κατεστραμμένο πακέτο (άθροισμα ελέγχου)"
#: lib/libalpm/error.c:115
#: lib/libalpm/error.c:117
#, c-format
msgid "invalid or corrupted package (PGP signature)"
msgstr "άκυρο ή κατεστραμμένο πακέτο (υπογραφή PGP)"
#: lib/libalpm/error.c:117
#: lib/libalpm/error.c:119
#, c-format
msgid "package missing required signature"
msgstr "απούσα απαιτούμενη υπογραφή πακέτου"
#: lib/libalpm/error.c:119
#: lib/libalpm/error.c:121
#, c-format
msgid "cannot open package file"
msgstr "αδυναμία ανοίγματος πακέτου"
#: lib/libalpm/error.c:121
#: lib/libalpm/error.c:123
#, c-format
msgid "cannot remove all files for package"
msgstr "αδυναμία διαγραφής όλων των αρχείων του πακέτου"
#: lib/libalpm/error.c:123
#: lib/libalpm/error.c:125
#, c-format
msgid "package filename is not valid"
msgstr "μη έγκυρο όνομα πακέτου"
#: lib/libalpm/error.c:125
#: lib/libalpm/error.c:127
#, c-format
msgid "package architecture is not valid"
msgstr "μη έγκυρη αρχιτεκτονική πακέτου"
#: lib/libalpm/error.c:127
#, c-format
msgid "could not find repository for target"
msgstr "αδυναμία εύρεσης αποθετηρίου για διεκπεραίωση"
#: lib/libalpm/error.c:130
#, c-format
msgid "missing PGP signature"
@@ -652,19 +679,19 @@ msgstr "σφάλμα κλήσης προγράμματος λήψης"
#: lib/libalpm/error.c:159
#, c-format
msgid "compiled without signature support"
msgstr ""
msgstr "μεταγλώττιση χωρίς υποστήριξη υπογραφής"
#: lib/libalpm/error.c:162
#, c-format
msgid "unexpected error"
msgstr "απρόσμενο σφάλμα"
#: lib/libalpm/handle.c:153
#: lib/libalpm/handle.c:142
#, c-format
msgid "lock file missing %s\n"
msgstr "απόν αρχείο κλειδώματος %s\n"
#: lib/libalpm/handle.c:159
#: lib/libalpm/handle.c:148
#, c-format
msgid "could not remove lock file %s\n"
msgstr "αδυναμία διαγραφής αρχείου κλειδώματος %s\n"
@@ -736,7 +763,7 @@ msgstr "hook %s γραμμή %d: αδυναμία ορισμού επιλογή
msgid "unable to run hook %s: %s\n"
msgstr "αδυναμία εκτελέσεως hook %s: %s\n"
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:386
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:378
#, c-format
msgid "could not open directory: %s: %s\n"
msgstr "αδυναμία ανοίγματος καταλόγου %s: %s\n"
@@ -746,7 +773,7 @@ msgstr "αδυναμία ανοίγματος καταλόγου %s: %s\n"
msgid "could not open file: %s%s: %s\n"
msgstr "αδυναμία ανοίγματος αρχείου: %s%s: %s\n"
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:259
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:260
#, c-format
msgid "could not stat file %s: %s\n"
msgstr "αδυναμία εντοπισμού αρχείου %s: %s\n"
@@ -756,188 +783,188 @@ msgstr "αδυναμία εντοπισμού αρχείου %s: %s\n"
msgid "could not read directory: %s: %s\n"
msgstr "αδυναμία ανάγνωσης καταλόγου: %s: %s\n"
#: lib/libalpm/package.c:578
#: lib/libalpm/package.c:598
#, c-format
msgid "could not fully load metadata for package %s-%s\n"
msgstr "αδυναμία πλήρους φόρτωσης μεταδεδομένων πακέτου %s-%s\n"
#: lib/libalpm/remove.c:119
#: lib/libalpm/remove.c:111
#, c-format
msgid "could not find %s in database -- skipping\n"
msgstr "δεν βρέθηκε το %s στη βάση -- παράλειψη\n"
#: lib/libalpm/remove.c:154
#: lib/libalpm/remove.c:146
#, c-format
msgid "removing %s from target list\n"
msgstr "αφαίρεση του %s από λίστα διεκπεραίωσης\n"
#: lib/libalpm/remove.c:346
#: lib/libalpm/remove.c:338
#, c-format
msgid "cannot remove file '%s': %s\n"
msgstr "αδυναμία διαγραφής αρχείου '%s': %s\n"
#: lib/libalpm/remove.c:411 lib/libalpm/remove.c:420
#: lib/libalpm/remove.c:403 lib/libalpm/remove.c:412
#, c-format
msgid "could not backup %s due to PATH_MAX overflow\n"
msgstr "αδυναμία εφεδρικής αντιγραφής %s εξαιτίας υπερχείλισης PATH_MAX\n"
#: lib/libalpm/remove.c:562
#: lib/libalpm/remove.c:554
#, c-format
msgid "cannot remove %s (%s)\n"
msgstr "αδυναμία κατάργησης %s (%s)\n"
#: lib/libalpm/remove.c:735
#: lib/libalpm/remove.c:727
#, c-format
msgid "could not remove database entry %s-%s\n"
msgstr "αδυναμία κατάργησης εγγραφής βάσης %s-%s\n"
#: lib/libalpm/remove.c:740
#: lib/libalpm/remove.c:732
#, c-format
msgid "could not remove entry '%s' from cache\n"
msgstr "αδυναμία κατάργησης εγγραφής '%s' από κρύπτη\n"
#: lib/libalpm/signing.c:171
#: lib/libalpm/signing.c:163
#, c-format
msgid "Public keyring not found; have you run '%s'?\n"
msgstr "Δεν ευρέθη δημόσιος κλειδούχος· εκτελέστηκε '%s';\n"
#: lib/libalpm/signing.c:207 lib/libalpm/signing.c:784
#: lib/libalpm/signing.c:199 lib/libalpm/signing.c:767
#, c-format
msgid "GPGME error: %s\n"
msgstr "σφάλμα GPGME: %s\n"
#: lib/libalpm/signing.c:284
#: lib/libalpm/signing.c:274
#, c-format
msgid "looking up key %s using WKD\n"
msgstr ""
msgstr "αναζήτησή κλειδιού %s με χρήση WKD\n"
#: lib/libalpm/signing.c:293
#: lib/libalpm/signing.c:283
#, c-format
msgid "gpg error: %s\n"
msgstr ""
msgstr "σφάλμα gpg: %s\n"
#: lib/libalpm/signing.c:441 lib/libalpm/signing.c:515
#: lib/libalpm/signing.c:430 lib/libalpm/signing.c:503
#, c-format
msgid "keyring is not writable\n"
msgstr "μη εγγράψιμος κλειδούχος\n"
#: lib/libalpm/signing.c:539
#: lib/libalpm/signing.c:531
#, c-format
msgid "key \"%s\" on keyserver\n"
msgstr ""
msgstr "κλειδί \"%s\" στον διακομιστή κλειδιών\n"
#: lib/libalpm/signing.c:544
#: lib/libalpm/signing.c:536
#, c-format
msgid "key \"%s\" could not be imported\n"
msgstr "αδυναμία εισαγωγής κλειδιού \"%s\"\n"
#: lib/libalpm/signing.c:548
#: lib/libalpm/signing.c:540
#, c-format
msgid "key \"%s\" could not be looked up remotely\n"
msgstr "αδυναμία απομεμακρυσμένης αναζήτησης κλειδιού \"%s\"\n"
#: lib/libalpm/signing.c:943 lib/libalpm/sync.c:1022
#: lib/libalpm/signing.c:926 lib/libalpm/sync.c:1022
#, c-format
msgid "%s: missing required signature\n"
msgstr "%s: απούσα απαιτούμενη υπογραφή\n"
#: lib/libalpm/signing.c:958
#: lib/libalpm/signing.c:941
#, c-format
msgid "%s: signature from \"%s\" is marginal trust\n"
msgstr "%s: υπογραφή από \"%s\" οριακής εμπιστοσύνης\n"
#: lib/libalpm/signing.c:966
#: lib/libalpm/signing.c:949
#, c-format
msgid "%s: signature from \"%s\" is unknown trust\n"
msgstr "%s: υπογραφή από \"%s\" αγνώστου εμπιστοσύνης\n"
#: lib/libalpm/signing.c:973
#: lib/libalpm/signing.c:956
#, c-format
msgid "%s: signature from \"%s\" should never be trusted\n"
msgstr "%s: υπογραφή από \"%s\" ουδεμίας εμπιστοσύνης\n"
#: lib/libalpm/signing.c:985
#: lib/libalpm/signing.c:968
#, c-format
msgid "%s: key \"%s\" is unknown\n"
msgstr "%s: κλειδί \"%s\" άγνωστο\n"
#: lib/libalpm/signing.c:994
#: lib/libalpm/signing.c:977
#, c-format
msgid "%s: key \"%s\" is disabled\n"
msgstr "%s: κλειδί \"%s\" απενεργοποιημένο\n"
#: lib/libalpm/signing.c:998
#: lib/libalpm/signing.c:981
#, c-format
msgid "%s: signature from \"%s\" is expired\n"
msgstr "%s: υπογραφή από \"%s\" ληγμένη\n"
#: lib/libalpm/signing.c:1002
#: lib/libalpm/signing.c:985
#, c-format
msgid "%s: signature from \"%s\" is invalid\n"
msgstr "%s: υπογραφή από \"%s\" άκυρη\n"
#: lib/libalpm/signing.c:1079 lib/libalpm/signing.c:1147
#: lib/libalpm/signing.c:1226
#: lib/libalpm/signing.c:1043 lib/libalpm/signing.c:1104
#: lib/libalpm/signing.c:1183
#, c-format
msgid "%s: signature format error\n"
msgstr "%s: σφάλμα μορφής υπογραφής\n"
#: lib/libalpm/signing.c:1179 lib/libalpm/signing.c:1212
#: lib/libalpm/signing.c:1220
#: lib/libalpm/signing.c:1136 lib/libalpm/signing.c:1169
#: lib/libalpm/signing.c:1177
#, c-format
msgid "%s: unsupported signature format\n"
msgstr "%s: μη υποστηριζόμενη μορφή υπογραφής\n"
#: lib/libalpm/sync.c:99
#: lib/libalpm/sync.c:96
#, c-format
msgid "%s: ignoring package upgrade (%s => %s)\n"
msgstr "%s: παράβλεψη αναβάθμισης πακέτου (%s => %s)\n"
#: lib/libalpm/sync.c:111
#: lib/libalpm/sync.c:108
#, c-format
msgid "%s: ignoring package downgrade (%s => %s)\n"
msgstr "%s: παράβλεψη υποβάθμισης πακέτου (%s => %s)\n"
#: lib/libalpm/sync.c:114
#: lib/libalpm/sync.c:111
#, c-format
msgid "%s: downgrading from version %s to version %s\n"
msgstr "%s: υποβάθμιση από έκδοση %s στην έκδοση %s\n"
#: lib/libalpm/sync.c:120
#: lib/libalpm/sync.c:117
#, c-format
msgid "%s: local (%s) is newer than %s (%s)\n"
msgstr "%s: τοπικό (%s) νεότερο από του [%s] (%s)\n"
#: lib/libalpm/sync.c:161
#: lib/libalpm/sync.c:158
#, c-format
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
msgstr "παράβλεψη αντικατάστασης πακέτου (%s-%s => %s-%s)\n"
#: lib/libalpm/sync.c:177
#: lib/libalpm/sync.c:174
#, c-format
msgid "cannot replace %s by %s\n"
msgstr "αδυναμία αντικατάστασης του %s από το %s\n"
#: lib/libalpm/sync.c:535 lib/libalpm/sync.c:605
#: lib/libalpm/sync.c:476
#, c-format
msgid "packages %s and %s have the same filename: %s\n"
msgstr ""
#: lib/libalpm/sync.c:542 lib/libalpm/sync.c:612
#, c-format
msgid "unresolvable package conflicts detected\n"
msgstr "εντοπισμός ανεπίλυτων διενέξεων πακέτων\n"
#: lib/libalpm/sync.c:555
#: lib/libalpm/sync.c:562
#, c-format
msgid "removing '%s' from target list because it conflicts with '%s'\n"
msgstr ""
"αφαίρεση του '%s' από την λίστα διεκπεραίωσης λόγω διένεξης με το '%s'\n"
#: lib/libalpm/sync.c:849
#, c-format
msgid "failed to retrieve some files\n"
msgstr "σφάλμα λήψης μερικών αρχείων\n"
#: lib/libalpm/sync.c:1036
#, c-format
msgid "failed to read file %s: %s\n"
msgstr ""
msgstr "αποτυχία ανάγνωσης αρχείου %s: %s\n"
#: lib/libalpm/sync.c:1223
#, c-format
@@ -954,82 +981,82 @@ msgstr "αδυναμία διεκπεραίωσης διαγραφής\n"
msgid "could not commit transaction\n"
msgstr "αδυναμία διεκπεραίωσης\n"
#: lib/libalpm/trans.c:364
#: lib/libalpm/trans.c:365
#, c-format
msgid "could not create temp directory\n"
msgstr "αδυναμία δημιουργίας προσωρινού καταλόγου\n"
#: lib/libalpm/trans.c:379
#: lib/libalpm/trans.c:380
#, c-format
msgid "could not copy tempfile to %s (%s)\n"
msgstr "αδυναμία αντιγραφής προσωρινού αρχείου στο %s (%s)\n"
#: lib/libalpm/trans.c:410
#: lib/libalpm/trans.c:411
#, c-format
msgid "could not remove %s\n"
msgstr "αδυναμία κατάργησης %s\n"
#: lib/libalpm/trans.c:414
#: lib/libalpm/trans.c:415
#, c-format
msgid "could not remove tmpdir %s\n"
msgstr "αδυναμία διαγραφής προσωρινού καταλόγου %s\n"
#: lib/libalpm/util.c:486
#: lib/libalpm/util.c:488
#, c-format
msgid "unable to write to pipe (%s)\n"
msgstr "αποτυχία εγγραφής σε αγωγό (%s)\n"
#: lib/libalpm/util.c:545
#: lib/libalpm/util.c:547
#, c-format
msgid "unable to read from pipe (%s)\n"
msgstr "αποτυχία ανάγνωσης από αγωγό (%s)\n"
#: lib/libalpm/util.c:609 lib/libalpm/util.c:615
#: lib/libalpm/util.c:617 lib/libalpm/util.c:623
#, c-format
msgid "could not create pipe (%s)\n"
msgstr "αδυναμία δημιουργίας αγωγού (%s)\n"
#: lib/libalpm/util.c:623
#: lib/libalpm/util.c:631
#, c-format
msgid "could not fork a new process (%s)\n"
msgstr "αδυναμία εκκίνησης νέας διεργασίας (%s)\n"
#: lib/libalpm/util.c:646
#: lib/libalpm/util.c:654
#, c-format
msgid "could not change the root directory (%s)\n"
msgstr "αδυναμία αλλαγής ριζικού καταλόγου (%s)\n"
#: lib/libalpm/util.c:658
#: lib/libalpm/util.c:666
#, c-format
msgid "call to execv failed (%s)\n"
msgstr "αποτυχία κλήσης execv (%s)\n"
#: lib/libalpm/util.c:737
#: lib/libalpm/util.c:745
#, c-format
msgid "call to waitpid failed (%s)\n"
msgstr "αποτυχία κλήσης waitpid (%s)\n"
#: lib/libalpm/util.c:747
#: lib/libalpm/util.c:755
#, c-format
msgid "command failed to execute correctly\n"
msgstr "αποτυχία σωστής εκτέλεσης εντολής\n"
#: lib/libalpm/util.c:754
#: lib/libalpm/util.c:762
#, c-format
msgid "Unknown signal"
msgstr "Άγνωστο σήμα"
#: lib/libalpm/util.c:756
#: lib/libalpm/util.c:764
#, c-format
msgid "command terminated by signal %d: %s\n"
msgstr "τερματισμός εντολής με σήμα %d: %s\n"
#: lib/libalpm/util.c:853
#: lib/libalpm/util.c:875
#, c-format
msgid "no %s cache exists, creating...\n"
msgstr "μη υπάρχουσα κρύπτη %s, δημιουργία...\n"
#: lib/libalpm/util.c:884
#: lib/libalpm/util.c:906
#, c-format
msgid "couldn't find or create package cache, using %s instead\n"
msgstr "αδυναμία εύρεσης ή δημιουργίας κρύπτης πακέτων, χρήση %s\n"

View File

@@ -1,17 +1,17 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Pacman Development Team <pacman-dev@archlinux.org>
# This file is distributed under the same license as the PACKAGE package.
# Copyright (C) YEAR "Pacman Development Team <pacman-dev@archlinux.org>"
# This file is distributed under the same license as the libalpm package.
#
# Translators:
# Allan McRae <allan@archlinux.org>, 2013
# Allan McRae <allan@archlinux.org>, 2013-2015,2017-2019
# Allan McRae <allan@archlinux.org>, 2013-2015,2017-2019,2021
# Dan McGee <dpmcgee@gmail.com>, 2011
msgid ""
msgstr ""
"Project-Id-Version: Arch Linux Pacman package manager\n"
"Report-Msgid-Bugs-To: http://bugs.archlinux.org/index.php?project=3\n"
"POT-Creation-Date: 2019-10-21 17:23+1000\n"
"PO-Revision-Date: 2019-10-07 08:47+0000\n"
"POT-Creation-Date: 2021-09-04 16:15+1000\n"
"PO-Revision-Date: 2021-05-20 02:25+0000\n"
"Last-Translator: Allan McRae <allan@archlinux.org>\n"
"Language-Team: English (United Kingdom) (http://www.transifex.com/toofishes/"
"archlinux-pacman/language/en_GB/)\n"
@@ -21,17 +21,17 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: lib/libalpm/add.c:91 lib/libalpm/sync.c:290
#: lib/libalpm/add.c:90 lib/libalpm/sync.c:279
#, c-format
msgid "%s-%s is up to date -- skipping\n"
msgstr "%s-%s is up to date -- skipping\n"
#: lib/libalpm/add.c:95
#: lib/libalpm/add.c:94
#, c-format
msgid "%s-%s is up to date -- reinstalling\n"
msgstr "%s-%s is up to date -- reinstalling\n"
#: lib/libalpm/add.c:100
#: lib/libalpm/add.c:99
#, c-format
msgid "downgrading package %s (%s => %s)\n"
msgstr "downgrading package %s (%s => %s)\n"
@@ -41,17 +41,17 @@ msgstr "downgrading package %s (%s => %s)\n"
msgid "cannot allocate disk archive object"
msgstr "cannot allocate disk archive object"
#: lib/libalpm/add.c:143 lib/libalpm/util.c:382
#: lib/libalpm/add.c:143 lib/libalpm/util.c:384
#, c-format
msgid "warning given when extracting %s (%s)\n"
msgstr "warning given when extracting %s (%s)\n"
#: lib/libalpm/add.c:146 lib/libalpm/util.c:385
#: lib/libalpm/add.c:146 lib/libalpm/util.c:387
#, c-format
msgid "could not extract %s (%s)\n"
msgstr "could not extract %s (%s)\n"
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:574 lib/libalpm/remove.c:542
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:709 lib/libalpm/remove.c:534
#, c-format
msgid "could not rename %s to %s (%s)\n"
msgstr "could not rename %s to %s (%s)\n"
@@ -95,137 +95,137 @@ msgstr "extract: not overwriting dir with file %s\n"
msgid "unable to extract %s.pacnew: path too long"
msgstr "unable to extract %s.pacnew: path too long"
#: lib/libalpm/add.c:513 lib/libalpm/util.c:334 lib/libalpm/util.c:592
#: lib/libalpm/add.c:510 lib/libalpm/util.c:335 lib/libalpm/util.c:600
#, c-format
msgid "could not get current working directory\n"
msgstr "could not get current working directory\n"
#: lib/libalpm/add.c:518 lib/libalpm/util.c:339 lib/libalpm/util.c:597
#: lib/libalpm/util.c:650
#: lib/libalpm/add.c:515 lib/libalpm/util.c:340 lib/libalpm/util.c:605
#: lib/libalpm/util.c:658
#, c-format
msgid "could not change directory to %s (%s)\n"
msgstr "could not change directory to %s (%s)\n"
#: lib/libalpm/add.c:575 lib/libalpm/util.c:403 lib/libalpm/util.c:766
#: lib/libalpm/add.c:571 lib/libalpm/util.c:405 lib/libalpm/util.c:774
#, c-format
msgid "could not restore working directory (%s)\n"
msgstr "could not restore working directory (%s)\n"
#: lib/libalpm/add.c:583
#: lib/libalpm/add.c:579
#, c-format
msgid "problem occurred while upgrading %s\n"
msgstr "problem occurred while upgrading %s\n"
#: lib/libalpm/add.c:589
#: lib/libalpm/add.c:585
#, c-format
msgid "problem occurred while installing %s\n"
msgstr "problem occurred while installing %s\n"
#: lib/libalpm/add.c:604
#: lib/libalpm/add.c:600
#, c-format
msgid "could not update database entry %s-%s\n"
msgstr "could not update database entry %s-%s\n"
#: lib/libalpm/add.c:615
#: lib/libalpm/add.c:610
#, c-format
msgid "could not add entry '%s' in cache\n"
msgstr "could not add entry '%s' in cache\n"
#: lib/libalpm/be_local.c:267
#: lib/libalpm/be_local.c:266
#, c-format
msgid "error while reading file %s: %s\n"
msgstr "error while reading file %s: %s\n"
#: lib/libalpm/be_local.c:364
#: lib/libalpm/be_local.c:376
#, c-format
msgid "removing invalid database: %s\n"
msgstr "removing invalid database: %s\n"
#: lib/libalpm/be_local.c:415 lib/libalpm/be_local.c:905
#: lib/libalpm/be_local.c:427 lib/libalpm/be_local.c:909
#, c-format
msgid "could not create directory %s: %s\n"
msgstr "could not create directory %s: %s\n"
#: lib/libalpm/be_local.c:590 lib/libalpm/be_sync.c:386
#: lib/libalpm/be_local.c:602 lib/libalpm/be_sync.c:322
#, c-format
msgid "invalid name for database entry '%s'\n"
msgstr "invalid name for database entry '%s'\n"
#: lib/libalpm/be_local.c:598
#: lib/libalpm/be_local.c:610
#, c-format
msgid "duplicated database entry '%s'\n"
msgstr "duplicated database entry '%s'\n"
#: lib/libalpm/be_local.c:610
#: lib/libalpm/be_local.c:622
#, c-format
msgid "corrupted database entry '%s'\n"
msgstr "corrupted database entry '%s'\n"
#: lib/libalpm/be_local.c:713 lib/libalpm/be_local.c:809
#: lib/libalpm/be_local.c:954 lib/libalpm/be_local.c:1051
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:422 lib/libalpm/util.c:253
#: lib/libalpm/util.c:269
#: lib/libalpm/be_local.c:722 lib/libalpm/be_local.c:818
#: lib/libalpm/be_local.c:958 lib/libalpm/be_local.c:1055
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:823 lib/libalpm/util.c:254
#: lib/libalpm/util.c:270
#, c-format
msgid "could not open file %s: %s\n"
msgstr "could not open file %s: %s\n"
#: lib/libalpm/be_local.c:729 lib/libalpm/be_sync.c:650
#: lib/libalpm/be_local.c:738 lib/libalpm/be_sync.c:582
#, c-format
msgid "%s database is inconsistent: name mismatch on package %s\n"
msgstr "%s database is inconsistent: name mismatch on package %s\n"
#: lib/libalpm/be_local.c:735 lib/libalpm/be_sync.c:656
#: lib/libalpm/be_local.c:744 lib/libalpm/be_sync.c:588
#, c-format
msgid "%s database is inconsistent: version mismatch on package %s\n"
msgstr "%s database is inconsistent: version mismatch on package %s\n"
#: lib/libalpm/be_local.c:776
#: lib/libalpm/be_local.c:785
#, c-format
msgid "unknown validation type for package %s: %s\n"
msgstr "unknown validation type for package %s: %s\n"
#: lib/libalpm/be_package.c:479 lib/libalpm/be_package.c:637
#: lib/libalpm/be_package.c:650
#: lib/libalpm/be_package.c:478 lib/libalpm/be_package.c:631
#: lib/libalpm/be_package.c:643
#, c-format
msgid "error while reading package %s: %s\n"
msgstr "error while reading package %s: %s\n"
#: lib/libalpm/be_package.c:493 lib/libalpm/be_package.c:517
#: lib/libalpm/be_package.c:491 lib/libalpm/be_package.c:514
#, c-format
msgid "error while reading mtree of package %s: %s\n"
msgstr "error while reading mtree of package %s: %s\n"
#: lib/libalpm/be_package.c:603
#: lib/libalpm/be_package.c:597
#, c-format
msgid "could not parse package description file in %s\n"
msgstr "could not parse package description file in %s\n"
#: lib/libalpm/be_package.c:608
#: lib/libalpm/be_package.c:602
#, c-format
msgid "missing package name in %s\n"
msgstr "missing package name in %s\n"
#: lib/libalpm/be_package.c:612
#: lib/libalpm/be_package.c:606
#, c-format
msgid "missing package version in %s\n"
msgstr "missing package version in %s\n"
#: lib/libalpm/be_package.c:616
#: lib/libalpm/be_package.c:610
#, c-format
msgid "invalid package version in %s\n"
msgstr "invalid package version in %s\n"
#: lib/libalpm/be_package.c:657
#: lib/libalpm/be_package.c:649
#, c-format
msgid "missing package metadata in %s\n"
msgstr "missing package metadata in %s\n"
#: lib/libalpm/be_package.c:750
#: lib/libalpm/be_package.c:741
#, c-format
msgid "failed to read signature file: %s\n"
msgstr "failed to read signature file: %s\n"
#: lib/libalpm/be_package.c:779 lib/libalpm/sync.c:953
#: lib/libalpm/be_package.c:770 lib/libalpm/sync.c:953
#, c-format
msgid "required key missing from keyring\n"
msgstr "required key missing from keyring\n"
@@ -235,32 +235,32 @@ msgstr "required key missing from keyring\n"
msgid "removing invalid file: %s\n"
msgstr "removing invalid file: %s\n"
#: lib/libalpm/be_sync.c:515
#: lib/libalpm/be_sync.c:449
#, c-format
msgid "could not parse package description file '%s' from db '%s'\n"
msgstr "could not parse package description file '%s' from db '%s'\n"
#: lib/libalpm/be_sync.c:522
#: lib/libalpm/be_sync.c:456
#, c-format
msgid "could not read db '%s' (%s)\n"
msgstr "could not read db '%s' (%s)\n"
#: lib/libalpm/be_sync.c:556 lib/libalpm/be_sync.c:561
#: lib/libalpm/be_sync.c:489 lib/libalpm/be_sync.c:494
#, c-format
msgid "%s database is inconsistent: filename of package %s is illegal\n"
msgstr "%s database is inconsistent: filename of package %s is illegal\n"
#: lib/libalpm/be_sync.c:566
#: lib/libalpm/be_sync.c:499
#, c-format
msgid "%s database is inconsistent: filename of package %s is too long\n"
msgstr "%s database is inconsistent: filename of package %s is too long\n"
#: lib/libalpm/be_sync.c:632
#: lib/libalpm/be_sync.c:564
#, c-format
msgid "unknown database file: %s\n"
msgstr "unknown database file: %s\n"
#: lib/libalpm/db.c:370
#: lib/libalpm/db.c:344
#, c-format
msgid "database path is undefined\n"
msgstr "database path is undefined\n"
@@ -280,12 +280,12 @@ msgstr "%s will be removed after its %s dependency\n"
msgid "%s will be installed before its %s dependency\n"
msgstr "%s will be installed before its %s dependency\n"
#: lib/libalpm/deps.c:681 lib/libalpm/deps.c:712
#: lib/libalpm/deps.c:666 lib/libalpm/deps.c:697
#, c-format
msgid "ignoring package %s-%s\n"
msgstr "ignoring package %s-%s\n"
#: lib/libalpm/deps.c:869
#: lib/libalpm/deps.c:842
#, c-format
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
msgstr "cannot resolve \"%s\", a dependency of \"%s\"\n"
@@ -340,41 +340,68 @@ msgstr "could not determine root mount point %s\n"
msgid "Partition %s is mounted read only\n"
msgstr "Partition %s is mounted read only\n"
#: lib/libalpm/dload.c:161
#: lib/libalpm/dload.c:116
#, c-format
msgid ""
"too many errors from %s, skipping for the remainder of this transaction\n"
msgstr ""
"too many errors from %s, skipping for the remainder of this transaction\n"
#: lib/libalpm/dload.c:220
#, c-format
msgid "disk"
msgstr "disk"
#: lib/libalpm/dload.c:348
#: lib/libalpm/dload.c:392
#, c-format
msgid "failed to create temporary file for download\n"
msgstr "failed to create temporary file for download\n"
#: lib/libalpm/dload.c:393
#, c-format
msgid "url '%s' is invalid\n"
msgstr "URL '%s' is invalid\n"
#: lib/libalpm/dload.c:464 lib/libalpm/dload.c:485 lib/libalpm/dload.c:496
#: lib/libalpm/dload.c:509 lib/libalpm/dload.c:547 lib/libalpm/dload.c:561
#, c-format
msgid "failed retrieving file '%s' from %s : %s\n"
msgstr "failed retrieving file '%s' from %s : %s\n"
#: lib/libalpm/dload.c:477
#: lib/libalpm/dload.c:539
#, c-format
msgid "failed retrieving file '%s' from %s : expected download size exceeded\n"
msgstr ""
"failed retrieving file '%s' from %s : expected download size exceeded\n"
#: lib/libalpm/dload.c:532
#: lib/libalpm/dload.c:687
#, c-format
msgid "%s appears to be truncated: %jd/%jd bytes\n"
msgstr "%s appears to be truncated: %jd/%jd bytes\n"
#: lib/libalpm/dload.c:677 lib/libalpm/dload.c:706
#: lib/libalpm/dload.c:787
#, c-format
msgid "failed to download %s\n"
msgstr "failed to download %s\n"
msgid "url '%s' is invalid\n"
msgstr "URL '%s' is invalid\n"
#: lib/libalpm/dload.c:893
#, c-format
msgid "failed to setup a download payload for %s\n"
msgstr "failed to setup a download payload for %s\n"
#: lib/libalpm/dload.c:905
#, c-format
msgid "curl returned error %d from transfer\n"
msgstr "curl returned error %d from transfer\n"
#: lib/libalpm/dload.c:929
#, c-format
msgid "curl transfer error: %d\n"
msgstr "curl transfer error: %d\n"
#: lib/libalpm/dload.c:1055 lib/libalpm/sync.c:840
#, c-format
msgid "failed to retrieve some files\n"
msgstr "failed to retrieve some files\n"
#: lib/libalpm/dload.c:1078
#, c-format
msgid "download completed successfully but no file in the cache\n"
msgstr "download completed successfully but no file in the cache\n"
#: lib/libalpm/error.c:40
#, c-format
@@ -491,7 +518,7 @@ msgstr "no servers configured for repository"
msgid "transaction already initialized"
msgstr "transaction already initialised"
#: lib/libalpm/error.c:90 lib/libalpm/error.c:94
#: lib/libalpm/error.c:90 lib/libalpm/error.c:96
#, c-format
msgid "transaction not initialized"
msgstr "transaction not initialised"
@@ -501,86 +528,86 @@ msgstr "transaction not initialised"
msgid "duplicate target"
msgstr "duplicate target"
#: lib/libalpm/error.c:96
#: lib/libalpm/error.c:94
#, c-format
msgid "duplicate filename"
msgstr ""
#: lib/libalpm/error.c:98
#, c-format
msgid "transaction not prepared"
msgstr "transaction not prepared"
#: lib/libalpm/error.c:98
#: lib/libalpm/error.c:100
#, c-format
msgid "transaction aborted"
msgstr "transaction aborted"
#: lib/libalpm/error.c:100
#: lib/libalpm/error.c:102
#, c-format
msgid "operation not compatible with the transaction type"
msgstr "operation not compatible with the transaction type"
#: lib/libalpm/error.c:102
#: lib/libalpm/error.c:104
#, c-format
msgid "transaction commit attempt when database is not locked"
msgstr "transaction commit attempt when database is not locked"
#: lib/libalpm/error.c:104
#: lib/libalpm/error.c:106
#, c-format
msgid "failed to run transaction hooks"
msgstr "failed to run transaction hooks"
#: lib/libalpm/error.c:107
#: lib/libalpm/error.c:109
#, c-format
msgid "could not find or read package"
msgstr "could not find or read package"
#: lib/libalpm/error.c:109
#: lib/libalpm/error.c:111
#, c-format
msgid "operation cancelled due to ignorepkg"
msgstr "operation cancelled due to ignorepkg"
#: lib/libalpm/error.c:111
#: lib/libalpm/error.c:113
#, c-format
msgid "invalid or corrupted package"
msgstr "invalid or corrupted package"
#: lib/libalpm/error.c:113
#: lib/libalpm/error.c:115
#, c-format
msgid "invalid or corrupted package (checksum)"
msgstr "invalid or corrupted package (checksum)"
#: lib/libalpm/error.c:115
#: lib/libalpm/error.c:117
#, c-format
msgid "invalid or corrupted package (PGP signature)"
msgstr "invalid or corrupted package (PGP signature)"
#: lib/libalpm/error.c:117
#: lib/libalpm/error.c:119
#, c-format
msgid "package missing required signature"
msgstr "package missing required signature"
#: lib/libalpm/error.c:119
#: lib/libalpm/error.c:121
#, c-format
msgid "cannot open package file"
msgstr "cannot open package file"
#: lib/libalpm/error.c:121
#: lib/libalpm/error.c:123
#, c-format
msgid "cannot remove all files for package"
msgstr "cannot remove all files for package"
#: lib/libalpm/error.c:123
#: lib/libalpm/error.c:125
#, c-format
msgid "package filename is not valid"
msgstr "package filename is not valid"
#: lib/libalpm/error.c:125
#: lib/libalpm/error.c:127
#, c-format
msgid "package architecture is not valid"
msgstr "package architecture is not valid"
#: lib/libalpm/error.c:127
#, c-format
msgid "could not find repository for target"
msgstr "could not find repository for target"
#: lib/libalpm/error.c:130
#, c-format
msgid "missing PGP signature"
@@ -646,12 +673,12 @@ msgstr "compiled without signature support"
msgid "unexpected error"
msgstr "unexpected error"
#: lib/libalpm/handle.c:153
#: lib/libalpm/handle.c:142
#, c-format
msgid "lock file missing %s\n"
msgstr "lock file missing %s\n"
#: lib/libalpm/handle.c:159
#: lib/libalpm/handle.c:148
#, c-format
msgid "could not remove lock file %s\n"
msgstr "could not remove lock file %s\n"
@@ -723,7 +750,7 @@ msgstr "hook %s line %d: unable to set option (%s)\n"
msgid "unable to run hook %s: %s\n"
msgstr "unable to run hook %s: %s\n"
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:386
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:378
#, c-format
msgid "could not open directory: %s: %s\n"
msgstr "could not open directory: %s: %s\n"
@@ -733,7 +760,7 @@ msgstr "could not open directory: %s: %s\n"
msgid "could not open file: %s%s: %s\n"
msgstr "could not open file: %s%s: %s\n"
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:259
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:260
#, c-format
msgid "could not stat file %s: %s\n"
msgstr "could not stat file %s: %s\n"
@@ -743,183 +770,183 @@ msgstr "could not stat file %s: %s\n"
msgid "could not read directory: %s: %s\n"
msgstr "could not read directory: %s: %s\n"
#: lib/libalpm/package.c:578
#: lib/libalpm/package.c:598
#, c-format
msgid "could not fully load metadata for package %s-%s\n"
msgstr "could not fully load metadata for package %s-%s\n"
#: lib/libalpm/remove.c:119
#: lib/libalpm/remove.c:111
#, c-format
msgid "could not find %s in database -- skipping\n"
msgstr "could not find %s in database -- skipping\n"
#: lib/libalpm/remove.c:154
#: lib/libalpm/remove.c:146
#, c-format
msgid "removing %s from target list\n"
msgstr "removing %s from target list\n"
#: lib/libalpm/remove.c:346
#: lib/libalpm/remove.c:338
#, c-format
msgid "cannot remove file '%s': %s\n"
msgstr "cannot remove file '%s': %s\n"
#: lib/libalpm/remove.c:411 lib/libalpm/remove.c:420
#: lib/libalpm/remove.c:403 lib/libalpm/remove.c:412
#, c-format
msgid "could not backup %s due to PATH_MAX overflow\n"
msgstr "could not backup %s due to PATH_MAX overflow\n"
#: lib/libalpm/remove.c:562
#: lib/libalpm/remove.c:554
#, c-format
msgid "cannot remove %s (%s)\n"
msgstr "cannot remove %s (%s)\n"
#: lib/libalpm/remove.c:735
#: lib/libalpm/remove.c:727
#, c-format
msgid "could not remove database entry %s-%s\n"
msgstr "could not remove database entry %s-%s\n"
#: lib/libalpm/remove.c:740
#: lib/libalpm/remove.c:732
#, c-format
msgid "could not remove entry '%s' from cache\n"
msgstr "could not remove entry '%s' from cache\n"
#: lib/libalpm/signing.c:171
#: lib/libalpm/signing.c:163
#, c-format
msgid "Public keyring not found; have you run '%s'?\n"
msgstr "Public keyring not found; have you run '%s'?\n"
#: lib/libalpm/signing.c:207 lib/libalpm/signing.c:784
#: lib/libalpm/signing.c:199 lib/libalpm/signing.c:767
#, c-format
msgid "GPGME error: %s\n"
msgstr "GPGME error: %s\n"
#: lib/libalpm/signing.c:284
#: lib/libalpm/signing.c:274
#, c-format
msgid "looking up key %s using WKD\n"
msgstr "looking up key %s using WKD\n"
#: lib/libalpm/signing.c:293
#: lib/libalpm/signing.c:283
#, c-format
msgid "gpg error: %s\n"
msgstr "gpg error: %s\n"
#: lib/libalpm/signing.c:441 lib/libalpm/signing.c:515
#: lib/libalpm/signing.c:430 lib/libalpm/signing.c:503
#, c-format
msgid "keyring is not writable\n"
msgstr "keyring is not writable\n"
#: lib/libalpm/signing.c:539
#: lib/libalpm/signing.c:531
#, c-format
msgid "key \"%s\" on keyserver\n"
msgstr "key \"%s\" on keyserver\n"
#: lib/libalpm/signing.c:544
#: lib/libalpm/signing.c:536
#, c-format
msgid "key \"%s\" could not be imported\n"
msgstr "key \"%s\" could not be imported\n"
#: lib/libalpm/signing.c:548
#: lib/libalpm/signing.c:540
#, c-format
msgid "key \"%s\" could not be looked up remotely\n"
msgstr "key \"%s\" could not be looked up remotely\n"
#: lib/libalpm/signing.c:943 lib/libalpm/sync.c:1022
#: lib/libalpm/signing.c:926 lib/libalpm/sync.c:1022
#, c-format
msgid "%s: missing required signature\n"
msgstr "%s: missing required signature\n"
#: lib/libalpm/signing.c:958
#: lib/libalpm/signing.c:941
#, c-format
msgid "%s: signature from \"%s\" is marginal trust\n"
msgstr "%s: signature from \"%s\" is marginal trust\n"
#: lib/libalpm/signing.c:966
#: lib/libalpm/signing.c:949
#, c-format
msgid "%s: signature from \"%s\" is unknown trust\n"
msgstr "%s: signature from \"%s\" is unknown trust\n"
#: lib/libalpm/signing.c:973
#: lib/libalpm/signing.c:956
#, c-format
msgid "%s: signature from \"%s\" should never be trusted\n"
msgstr "%s: signature from \"%s\" should never be trusted\n"
#: lib/libalpm/signing.c:985
#: lib/libalpm/signing.c:968
#, c-format
msgid "%s: key \"%s\" is unknown\n"
msgstr "%s: key \"%s\" is unknown\n"
#: lib/libalpm/signing.c:994
#: lib/libalpm/signing.c:977
#, c-format
msgid "%s: key \"%s\" is disabled\n"
msgstr "%s: key \"%s\" is disabled\n"
#: lib/libalpm/signing.c:998
#: lib/libalpm/signing.c:981
#, c-format
msgid "%s: signature from \"%s\" is expired\n"
msgstr "%s: signature from \"%s\" is expired\n"
#: lib/libalpm/signing.c:1002
#: lib/libalpm/signing.c:985
#, c-format
msgid "%s: signature from \"%s\" is invalid\n"
msgstr "%s: signature from \"%s\" is invalid\n"
#: lib/libalpm/signing.c:1079 lib/libalpm/signing.c:1147
#: lib/libalpm/signing.c:1226
#: lib/libalpm/signing.c:1043 lib/libalpm/signing.c:1104
#: lib/libalpm/signing.c:1183
#, c-format
msgid "%s: signature format error\n"
msgstr "%s: signature format error\n"
#: lib/libalpm/signing.c:1179 lib/libalpm/signing.c:1212
#: lib/libalpm/signing.c:1220
#: lib/libalpm/signing.c:1136 lib/libalpm/signing.c:1169
#: lib/libalpm/signing.c:1177
#, c-format
msgid "%s: unsupported signature format\n"
msgstr "%s: unsupported signature format\n"
#: lib/libalpm/sync.c:99
#: lib/libalpm/sync.c:96
#, c-format
msgid "%s: ignoring package upgrade (%s => %s)\n"
msgstr "%s: ignoring package upgrade (%s => %s)\n"
#: lib/libalpm/sync.c:111
#: lib/libalpm/sync.c:108
#, c-format
msgid "%s: ignoring package downgrade (%s => %s)\n"
msgstr "%s: ignoring package downgrade (%s => %s)\n"
#: lib/libalpm/sync.c:114
#: lib/libalpm/sync.c:111
#, c-format
msgid "%s: downgrading from version %s to version %s\n"
msgstr "%s: downgrading from version %s to version %s\n"
#: lib/libalpm/sync.c:120
#: lib/libalpm/sync.c:117
#, c-format
msgid "%s: local (%s) is newer than %s (%s)\n"
msgstr "%s: local (%s) is newer than %s (%s)\n"
#: lib/libalpm/sync.c:161
#: lib/libalpm/sync.c:158
#, c-format
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
msgstr "ignoring package replacement (%s-%s => %s-%s)\n"
#: lib/libalpm/sync.c:177
#: lib/libalpm/sync.c:174
#, c-format
msgid "cannot replace %s by %s\n"
msgstr "cannot replace %s by %s\n"
#: lib/libalpm/sync.c:535 lib/libalpm/sync.c:605
#: lib/libalpm/sync.c:476
#, c-format
msgid "packages %s and %s have the same filename: %s\n"
msgstr ""
#: lib/libalpm/sync.c:542 lib/libalpm/sync.c:612
#, c-format
msgid "unresolvable package conflicts detected\n"
msgstr "unresolvable package conflicts detected\n"
#: lib/libalpm/sync.c:555
#: lib/libalpm/sync.c:562
#, c-format
msgid "removing '%s' from target list because it conflicts with '%s'\n"
msgstr "removing '%s' from target list because it conflicts with '%s'\n"
#: lib/libalpm/sync.c:849
#, c-format
msgid "failed to retrieve some files\n"
msgstr "failed to retrieve some files\n"
#: lib/libalpm/sync.c:1036
#, c-format
msgid "failed to read file %s: %s\n"
@@ -940,82 +967,82 @@ msgstr "could not commit removal transaction\n"
msgid "could not commit transaction\n"
msgstr "could not commit transaction\n"
#: lib/libalpm/trans.c:364
#: lib/libalpm/trans.c:365
#, c-format
msgid "could not create temp directory\n"
msgstr "could not create temp directory\n"
#: lib/libalpm/trans.c:379
#: lib/libalpm/trans.c:380
#, c-format
msgid "could not copy tempfile to %s (%s)\n"
msgstr "could not copy tempfile to %s (%s)\n"
#: lib/libalpm/trans.c:410
#: lib/libalpm/trans.c:411
#, c-format
msgid "could not remove %s\n"
msgstr "could not remove %s\n"
#: lib/libalpm/trans.c:414
#: lib/libalpm/trans.c:415
#, c-format
msgid "could not remove tmpdir %s\n"
msgstr "could not remove tmpdir %s\n"
#: lib/libalpm/util.c:486
#: lib/libalpm/util.c:488
#, c-format
msgid "unable to write to pipe (%s)\n"
msgstr "unable to write to pipe (%s)\n"
#: lib/libalpm/util.c:545
#: lib/libalpm/util.c:547
#, c-format
msgid "unable to read from pipe (%s)\n"
msgstr "unable to read from pipe (%s)\n"
#: lib/libalpm/util.c:609 lib/libalpm/util.c:615
#: lib/libalpm/util.c:617 lib/libalpm/util.c:623
#, c-format
msgid "could not create pipe (%s)\n"
msgstr "could not create pipe (%s)\n"
#: lib/libalpm/util.c:623
#: lib/libalpm/util.c:631
#, c-format
msgid "could not fork a new process (%s)\n"
msgstr "could not fork a new process (%s)\n"
#: lib/libalpm/util.c:646
#: lib/libalpm/util.c:654
#, c-format
msgid "could not change the root directory (%s)\n"
msgstr "could not change the root directory (%s)\n"
#: lib/libalpm/util.c:658
#: lib/libalpm/util.c:666
#, c-format
msgid "call to execv failed (%s)\n"
msgstr "call to execv failed (%s)\n"
#: lib/libalpm/util.c:737
#: lib/libalpm/util.c:745
#, c-format
msgid "call to waitpid failed (%s)\n"
msgstr "call to waitpid failed (%s)\n"
#: lib/libalpm/util.c:747
#: lib/libalpm/util.c:755
#, c-format
msgid "command failed to execute correctly\n"
msgstr "command failed to execute correctly\n"
#: lib/libalpm/util.c:754
#: lib/libalpm/util.c:762
#, c-format
msgid "Unknown signal"
msgstr "Unknown signal"
#: lib/libalpm/util.c:756
#: lib/libalpm/util.c:764
#, c-format
msgid "command terminated by signal %d: %s\n"
msgstr "command terminated by signal %d: %s\n"
#: lib/libalpm/util.c:853
#: lib/libalpm/util.c:875
#, c-format
msgid "no %s cache exists, creating...\n"
msgstr "no %s cache exists, creating...\n"
#: lib/libalpm/util.c:884
#: lib/libalpm/util.c:906
#, c-format
msgid "couldn't find or create package cache, using %s instead\n"
msgstr "couldn't find or create package cache, using %s instead\n"

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Pacman Development Team <pacman-dev@archlinux.org>
# This file is distributed under the same license as the PACKAGE package.
# Copyright (C) YEAR "Pacman Development Team <pacman-dev@archlinux.org>"
# This file is distributed under the same license as the libalpm package.
#
# Translators:
# Angel Velasquez <angvp@archlinux.org>, 2011
@@ -15,16 +15,17 @@
# prflr88 <prflr88@gmail.com>, 2013-2016
# prflr88 <prflr88@gmail.com>, 2017
# Pedro Román <roizheim@gmail.com>, 2013-2014,2016-2019
# picodotdev <pico.dev@gmail.com>, 2016,2019
# picodotdev <pico.dev@gmail.com>, 2016,2019,2021
# prflr88 <prflr88@gmail.com>, 2017
# Swyter <Swyterzone@gmail.com>, 2015,2017-2018
# Swyter <Swyterzone@gmail.com>, 2015,2017-2018,2021
# Swyter <Swyterzone@gmail.com>, 2021
msgid ""
msgstr ""
"Project-Id-Version: Arch Linux Pacman package manager\n"
"Report-Msgid-Bugs-To: http://bugs.archlinux.org/index.php?project=3\n"
"POT-Creation-Date: 2019-10-21 17:23+1000\n"
"PO-Revision-Date: 2019-10-07 09:15+0000\n"
"Last-Translator: picodotdev <pico.dev@gmail.com>\n"
"POT-Creation-Date: 2021-09-04 16:15+1000\n"
"PO-Revision-Date: 2021-05-20 04:57+0000\n"
"Last-Translator: Swyter <Swyterzone@gmail.com>\n"
"Language-Team: Spanish (http://www.transifex.com/toofishes/archlinux-pacman/"
"language/es/)\n"
"Language: es\n"
@@ -33,17 +34,17 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: lib/libalpm/add.c:91 lib/libalpm/sync.c:290
#: lib/libalpm/add.c:90 lib/libalpm/sync.c:279
#, c-format
msgid "%s-%s is up to date -- skipping\n"
msgstr "%s-%s está actualizado -- omitiéndolo\n"
#: lib/libalpm/add.c:95
#: lib/libalpm/add.c:94
#, c-format
msgid "%s-%s is up to date -- reinstalling\n"
msgstr "%s-%s está actualizado -- reinstalándolo\n"
#: lib/libalpm/add.c:100
#: lib/libalpm/add.c:99
#, c-format
msgid "downgrading package %s (%s => %s)\n"
msgstr "revertiendo el paquete %s a una versión anterior (%s => %s)\n"
@@ -54,17 +55,17 @@ msgid "cannot allocate disk archive object"
msgstr ""
"memoria insuficiente en el sistema para lograr los objetivos del archivo"
#: lib/libalpm/add.c:143 lib/libalpm/util.c:382
#: lib/libalpm/add.c:143 lib/libalpm/util.c:384
#, c-format
msgid "warning given when extracting %s (%s)\n"
msgstr "se han advertido errores mientras se extraía %s (%s)\n"
#: lib/libalpm/add.c:146 lib/libalpm/util.c:385
#: lib/libalpm/add.c:146 lib/libalpm/util.c:387
#, c-format
msgid "could not extract %s (%s)\n"
msgstr "no se pudo extraer %s (%s)\n"
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:574 lib/libalpm/remove.c:542
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:709 lib/libalpm/remove.c:534
#, c-format
msgid "could not rename %s to %s (%s)\n"
msgstr "no se pudo renombrar %s a %s (%s)\n"
@@ -88,7 +89,7 @@ msgid ""
"filesystem: %o package: %o\n"
msgstr ""
"los permisos del directorio difieren respecto de %s\n"
"sistema de archivos: %o paquete: %o\n"
"sistema de archivos: %o paquete: %o\n"
#: lib/libalpm/add.c:276
#, c-format
@@ -111,141 +112,141 @@ msgstr ""
msgid "unable to extract %s.pacnew: path too long"
msgstr "no se pudo extraer %s.pacnew: ruta demasiado larga"
#: lib/libalpm/add.c:513 lib/libalpm/util.c:334 lib/libalpm/util.c:592
#: lib/libalpm/add.c:510 lib/libalpm/util.c:335 lib/libalpm/util.c:600
#, c-format
msgid "could not get current working directory\n"
msgstr "no se pudo determinar el directorio de trabajo actual\n"
#: lib/libalpm/add.c:518 lib/libalpm/util.c:339 lib/libalpm/util.c:597
#: lib/libalpm/util.c:650
#: lib/libalpm/add.c:515 lib/libalpm/util.c:340 lib/libalpm/util.c:605
#: lib/libalpm/util.c:658
#, c-format
msgid "could not change directory to %s (%s)\n"
msgstr "no se pudo cambiar el directorio a %s (%s)\n"
#: lib/libalpm/add.c:575 lib/libalpm/util.c:403 lib/libalpm/util.c:766
#: lib/libalpm/add.c:571 lib/libalpm/util.c:405 lib/libalpm/util.c:774
#, c-format
msgid "could not restore working directory (%s)\n"
msgstr "no se pudo restaurar el directorio de trabajo (%s)\n"
#: lib/libalpm/add.c:583
#: lib/libalpm/add.c:579
#, c-format
msgid "problem occurred while upgrading %s\n"
msgstr "ocurrió un error durante la actualización de %s\n"
#: lib/libalpm/add.c:589
#: lib/libalpm/add.c:585
#, c-format
msgid "problem occurred while installing %s\n"
msgstr "ocurrió un error durante la instalación de %s\n"
#: lib/libalpm/add.c:604
#: lib/libalpm/add.c:600
#, c-format
msgid "could not update database entry %s-%s\n"
msgstr "no se pudo actualizar la entrada %s-%s en la base de datos\n"
#: lib/libalpm/add.c:615
#: lib/libalpm/add.c:610
#, c-format
msgid "could not add entry '%s' in cache\n"
msgstr "no se pudo agregar la entrada «%s» a la caché\n"
#: lib/libalpm/be_local.c:267
#: lib/libalpm/be_local.c:266
#, c-format
msgid "error while reading file %s: %s\n"
msgstr "error al leer el archivo %s: %s\n"
#: lib/libalpm/be_local.c:364
#: lib/libalpm/be_local.c:376
#, c-format
msgid "removing invalid database: %s\n"
msgstr "quitando la base de datos no válida: %s\n"
#: lib/libalpm/be_local.c:415 lib/libalpm/be_local.c:905
#: lib/libalpm/be_local.c:427 lib/libalpm/be_local.c:909
#, c-format
msgid "could not create directory %s: %s\n"
msgstr "no se pudo crear el directorio %s: %s\n"
#: lib/libalpm/be_local.c:590 lib/libalpm/be_sync.c:386
#: lib/libalpm/be_local.c:602 lib/libalpm/be_sync.c:322
#, c-format
msgid "invalid name for database entry '%s'\n"
msgstr "nombre no válido para la entrada «%s» de la base de datos\n"
#: lib/libalpm/be_local.c:598
#: lib/libalpm/be_local.c:610
#, c-format
msgid "duplicated database entry '%s'\n"
msgstr "entrada «%s» duplicada en la base de datos\n"
#: lib/libalpm/be_local.c:610
#: lib/libalpm/be_local.c:622
#, c-format
msgid "corrupted database entry '%s'\n"
msgstr "la entrada «%s» de la base de datos está dañada\n"
#: lib/libalpm/be_local.c:713 lib/libalpm/be_local.c:809
#: lib/libalpm/be_local.c:954 lib/libalpm/be_local.c:1051
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:422 lib/libalpm/util.c:253
#: lib/libalpm/util.c:269
#: lib/libalpm/be_local.c:722 lib/libalpm/be_local.c:818
#: lib/libalpm/be_local.c:958 lib/libalpm/be_local.c:1055
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:823 lib/libalpm/util.c:254
#: lib/libalpm/util.c:270
#, c-format
msgid "could not open file %s: %s\n"
msgstr "no se pudo abrir el archivo %s: %s\n"
#: lib/libalpm/be_local.c:729 lib/libalpm/be_sync.c:650
#: lib/libalpm/be_local.c:738 lib/libalpm/be_sync.c:582
#, c-format
msgid "%s database is inconsistent: name mismatch on package %s\n"
msgstr ""
"la base de datos %s es inconsistente: nombre mal emparejado en el paquete "
"%s\n"
#: lib/libalpm/be_local.c:735 lib/libalpm/be_sync.c:656
#: lib/libalpm/be_local.c:744 lib/libalpm/be_sync.c:588
#, c-format
msgid "%s database is inconsistent: version mismatch on package %s\n"
msgstr ""
"la base de datos %s es inconsistente: versión mal emparejada en el paquete "
"%s\n"
#: lib/libalpm/be_local.c:776
#: lib/libalpm/be_local.c:785
#, c-format
msgid "unknown validation type for package %s: %s\n"
msgstr "tipo de validación desconocida para el paquete %s: %s\n"
#: lib/libalpm/be_package.c:479 lib/libalpm/be_package.c:637
#: lib/libalpm/be_package.c:650
#: lib/libalpm/be_package.c:478 lib/libalpm/be_package.c:631
#: lib/libalpm/be_package.c:643
#, c-format
msgid "error while reading package %s: %s\n"
msgstr "error al leer el paquete %s: %s\n"
#: lib/libalpm/be_package.c:493 lib/libalpm/be_package.c:517
#: lib/libalpm/be_package.c:491 lib/libalpm/be_package.c:514
#, c-format
msgid "error while reading mtree of package %s: %s\n"
msgstr "error al leer «mtree» del paquete %s: %s\n"
#: lib/libalpm/be_package.c:603
#: lib/libalpm/be_package.c:597
#, c-format
msgid "could not parse package description file in %s\n"
msgstr "no se pudo analizar el archivo de descripción del paquete en %s\n"
#: lib/libalpm/be_package.c:608
#: lib/libalpm/be_package.c:602
#, c-format
msgid "missing package name in %s\n"
msgstr "falta el nombre del paquete en %s\n"
#: lib/libalpm/be_package.c:612
#: lib/libalpm/be_package.c:606
#, c-format
msgid "missing package version in %s\n"
msgstr "falta la versión del paquete en %s\n"
#: lib/libalpm/be_package.c:616
#: lib/libalpm/be_package.c:610
#, c-format
msgid "invalid package version in %s\n"
msgstr "versión del paquete no válida en %s\n"
#: lib/libalpm/be_package.c:657
#: lib/libalpm/be_package.c:649
#, c-format
msgid "missing package metadata in %s\n"
msgstr "faltan los metadatos del paquete en %s\n"
#: lib/libalpm/be_package.c:750
#: lib/libalpm/be_package.c:741
#, c-format
msgid "failed to read signature file: %s\n"
msgstr "no se pudo leer correctamente el archivo de firmas: %s\n"
#: lib/libalpm/be_package.c:779 lib/libalpm/sync.c:953
#: lib/libalpm/be_package.c:770 lib/libalpm/sync.c:953
#, c-format
msgid "required key missing from keyring\n"
msgstr "la clave necesaria no está presente en el depósito\n"
@@ -255,38 +256,38 @@ msgstr "la clave necesaria no está presente en el depósito\n"
msgid "removing invalid file: %s\n"
msgstr "quitando archivo no válido: %s\n"
#: lib/libalpm/be_sync.c:515
#: lib/libalpm/be_sync.c:449
#, c-format
msgid "could not parse package description file '%s' from db '%s'\n"
msgstr ""
"no se pudo analizar el archivo de descripción del paquete «%s» de la base de "
"datos «%s»\n"
#: lib/libalpm/be_sync.c:522
#: lib/libalpm/be_sync.c:456
#, c-format
msgid "could not read db '%s' (%s)\n"
msgstr "no se pudo leer la base de datos '%s' (%s)\n"
msgstr "no se pudo leer la base de datos '%s' (%s)\n"
#: lib/libalpm/be_sync.c:556 lib/libalpm/be_sync.c:561
#: lib/libalpm/be_sync.c:489 lib/libalpm/be_sync.c:494
#, c-format
msgid "%s database is inconsistent: filename of package %s is illegal\n"
msgstr ""
"la base de datos %s es inconsistente: el nombre del archivo del paquete %s "
"no entra dentro de lo permisible\n"
#: lib/libalpm/be_sync.c:566
#: lib/libalpm/be_sync.c:499
#, c-format
msgid "%s database is inconsistent: filename of package %s is too long\n"
msgstr ""
"la base de datos %s es inconsistente: el nombre del archivo del paquete %s "
"es demasiado largo\n"
#: lib/libalpm/be_sync.c:632
#: lib/libalpm/be_sync.c:564
#, c-format
msgid "unknown database file: %s\n"
msgstr "archivo de base de datos desconocido: %s\n"
#: lib/libalpm/db.c:370
#: lib/libalpm/db.c:344
#, c-format
msgid "database path is undefined\n"
msgstr "la ruta de la base de datos no está definida\n"
@@ -306,12 +307,12 @@ msgstr "%s se quitará después de su dependencia %s\n"
msgid "%s will be installed before its %s dependency\n"
msgstr "%s se instalará antes de su dependencia %s\n"
#: lib/libalpm/deps.c:681 lib/libalpm/deps.c:712
#: lib/libalpm/deps.c:666 lib/libalpm/deps.c:697
#, c-format
msgid "ignoring package %s-%s\n"
msgstr "ignorando el paquete %s-%s\n"
#: lib/libalpm/deps.c:869
#: lib/libalpm/deps.c:842
#, c-format
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
msgstr "no se pudo resolver «%s», una dependencia de «%s»\n"
@@ -324,7 +325,7 @@ msgstr "no se pudo obtener información del sistema de archivos para %s: %s\n"
#: lib/libalpm/diskspace.c:108
#, c-format
msgid "could not open file: %s: %s\n"
msgstr "No se pudo abrir el archivo: %s: %s\n"
msgstr "no se pudo abrir el archivo: %s: %s\n"
#: lib/libalpm/diskspace.c:146 lib/libalpm/diskspace.c:159
#, c-format
@@ -370,42 +371,70 @@ msgstr "no se pudo determinar el punto de montaje de la raíz %s\n"
msgid "Partition %s is mounted read only\n"
msgstr "La partición %s está montada solamente en modo lectura\n"
#: lib/libalpm/dload.c:161
#: lib/libalpm/dload.c:116
#, c-format
msgid ""
"too many errors from %s, skipping for the remainder of this transaction\n"
msgstr ""
"demasiados errores al descargar de %s, pasando al siguiente servidor de la "
"lista\n"
#: lib/libalpm/dload.c:220
#, c-format
msgid "disk"
msgstr "disco"
#: lib/libalpm/dload.c:348
#: lib/libalpm/dload.c:392
#, c-format
msgid "failed to create temporary file for download\n"
msgstr "no se pudo crear el archivo temporal para la descarga\n"
#: lib/libalpm/dload.c:393
#, c-format
msgid "url '%s' is invalid\n"
msgstr "la dirección «%s» no es válida\n"
#: lib/libalpm/dload.c:464 lib/libalpm/dload.c:485 lib/libalpm/dload.c:496
#: lib/libalpm/dload.c:509 lib/libalpm/dload.c:547 lib/libalpm/dload.c:561
#, c-format
msgid "failed retrieving file '%s' from %s : %s\n"
msgstr "no se pudo obtener el archivo «%s» desde %s: %s\n"
#: lib/libalpm/dload.c:477
#: lib/libalpm/dload.c:539
#, c-format
msgid "failed retrieving file '%s' from %s : expected download size exceeded\n"
msgstr ""
"no se pudo obtener el archivo «%s» desde %s : el tamaño de la descarga "
"supera lo esperado\n"
#: lib/libalpm/dload.c:532
#: lib/libalpm/dload.c:687
#, c-format
msgid "%s appears to be truncated: %jd/%jd bytes\n"
msgstr "%s parece estar incompleto: %jd/%jd bytes\n"
#: lib/libalpm/dload.c:677 lib/libalpm/dload.c:706
#: lib/libalpm/dload.c:787
#, c-format
msgid "failed to download %s\n"
msgstr "no se pudo descargar %s\n"
msgid "url '%s' is invalid\n"
msgstr "la dirección «%s» no es válida\n"
#: lib/libalpm/dload.c:893
#, c-format
msgid "failed to setup a download payload for %s\n"
msgstr "no se pudo configurar un objeto de descarga para %s\n"
#: lib/libalpm/dload.c:905
#, c-format
msgid "curl returned error %d from transfer\n"
msgstr "curl ha generado un error de transferencia %d\n"
#: lib/libalpm/dload.c:929
#, c-format
msgid "curl transfer error: %d\n"
msgstr "error de transferencia de curl: %d\n"
#: lib/libalpm/dload.c:1055 lib/libalpm/sync.c:840
#, c-format
msgid "failed to retrieve some files\n"
msgstr "no se pudieron recibir algunos archivos\n"
#: lib/libalpm/dload.c:1078
#, c-format
msgid "download completed successfully but no file in the cache\n"
msgstr "se ha completado la descarga, pero el archivo no está en la caché\n"
#: lib/libalpm/error.c:40
#, c-format
@@ -522,7 +551,7 @@ msgstr "no hay servidores configurados para el repositorio"
msgid "transaction already initialized"
msgstr "la operación ya se inició"
#: lib/libalpm/error.c:90 lib/libalpm/error.c:94
#: lib/libalpm/error.c:90 lib/libalpm/error.c:96
#, c-format
msgid "transaction not initialized"
msgstr "la operación no está iniciada"
@@ -532,87 +561,87 @@ msgstr "la operación no está iniciada"
msgid "duplicate target"
msgstr "paquete duplicado"
#: lib/libalpm/error.c:96
#: lib/libalpm/error.c:94
#, c-format
msgid "duplicate filename"
msgstr "nombre de archivo duplicado"
#: lib/libalpm/error.c:98
#, c-format
msgid "transaction not prepared"
msgstr "la operación no está lista"
#: lib/libalpm/error.c:98
#: lib/libalpm/error.c:100
#, c-format
msgid "transaction aborted"
msgstr "operación cancelada"
#: lib/libalpm/error.c:100
#: lib/libalpm/error.c:102
#, c-format
msgid "operation not compatible with the transaction type"
msgstr "la operación no es compatible con el tipo de transacción"
#: lib/libalpm/error.c:102
#: lib/libalpm/error.c:104
#, c-format
msgid "transaction commit attempt when database is not locked"
msgstr ""
"intento de realizar la operación cuando la base de datos no está bloqueada"
#: lib/libalpm/error.c:104
#: lib/libalpm/error.c:106
#, c-format
msgid "failed to run transaction hooks"
msgstr "no se pudieron ejecutar los «hooks»"
#: lib/libalpm/error.c:107
#: lib/libalpm/error.c:109
#, c-format
msgid "could not find or read package"
msgstr "no se pudo encontrar o leer el paquete"
#: lib/libalpm/error.c:109
#: lib/libalpm/error.c:111
#, c-format
msgid "operation cancelled due to ignorepkg"
msgstr "operación cancelada debido a ignorepkg"
#: lib/libalpm/error.c:111
#: lib/libalpm/error.c:113
#, c-format
msgid "invalid or corrupted package"
msgstr "paquete no válido o dañado"
#: lib/libalpm/error.c:113
#: lib/libalpm/error.c:115
#, c-format
msgid "invalid or corrupted package (checksum)"
msgstr "paquete no válido o dañado (suma de verificación)"
#: lib/libalpm/error.c:115
#: lib/libalpm/error.c:117
#, c-format
msgid "invalid or corrupted package (PGP signature)"
msgstr "paquete no válido o dañado (firma PGP)"
#: lib/libalpm/error.c:117
#: lib/libalpm/error.c:119
#, c-format
msgid "package missing required signature"
msgstr "paquete sin la firma exigida"
#: lib/libalpm/error.c:119
#: lib/libalpm/error.c:121
#, c-format
msgid "cannot open package file"
msgstr "no se pudo abrir el archivo del paquete"
#: lib/libalpm/error.c:121
#: lib/libalpm/error.c:123
#, c-format
msgid "cannot remove all files for package"
msgstr "no se pudieron quitar todos los archivos del paquete"
#: lib/libalpm/error.c:123
#: lib/libalpm/error.c:125
#, c-format
msgid "package filename is not valid"
msgstr "el nombre de archivo del paquete no es válido"
#: lib/libalpm/error.c:125
#: lib/libalpm/error.c:127
#, c-format
msgid "package architecture is not valid"
msgstr "la arquitectura del paquete no es válida"
#: lib/libalpm/error.c:127
#, c-format
msgid "could not find repository for target"
msgstr "no se pudo encontrar un repositorio que contenga el paquete"
#: lib/libalpm/error.c:130
#, c-format
msgid "missing PGP signature"
@@ -678,12 +707,12 @@ msgstr "compilado sin soporte de firma"
msgid "unexpected error"
msgstr "error inesperado"
#: lib/libalpm/handle.c:153
#: lib/libalpm/handle.c:142
#, c-format
msgid "lock file missing %s\n"
msgstr "falta el archivo de bloqueo %s\n"
#: lib/libalpm/handle.c:159
#: lib/libalpm/handle.c:148
#, c-format
msgid "could not remove lock file %s\n"
msgstr "no se pudo quitar el archivo de bloqueo %s\n"
@@ -755,7 +784,7 @@ msgstr "«hook» %s línea %d: no se puede especificar la opción (%s)\n"
msgid "unable to run hook %s: %s\n"
msgstr "no se pudo ejecutar el «hook» %s: %s\n"
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:386
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:378
#, c-format
msgid "could not open directory: %s: %s\n"
msgstr "no se pudo abrir el directorio: %s: %s\n"
@@ -765,7 +794,7 @@ msgstr "no se pudo abrir el directorio: %s: %s\n"
msgid "could not open file: %s%s: %s\n"
msgstr "no se pudo abrir el archivo: %s%s: %s\n"
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:259
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:260
#, c-format
msgid "could not stat file %s: %s\n"
msgstr "no se pudo recuperar la información del archivo %s: %s\n"
@@ -775,192 +804,192 @@ msgstr "no se pudo recuperar la información del archivo %s: %s\n"
msgid "could not read directory: %s: %s\n"
msgstr "no se pudo crear la carpeta: %s: %s\n"
#: lib/libalpm/package.c:578
#: lib/libalpm/package.c:598
#, c-format
msgid "could not fully load metadata for package %s-%s\n"
msgstr ""
"no se pudieron cargar completamente los metadatos para el paquete %s-%s\n"
#: lib/libalpm/remove.c:119
#: lib/libalpm/remove.c:111
#, c-format
msgid "could not find %s in database -- skipping\n"
msgstr "no se pudo encontrar %s en la base de datos -- omitiéndolo\n"
#: lib/libalpm/remove.c:154
#: lib/libalpm/remove.c:146
#, c-format
msgid "removing %s from target list\n"
msgstr "quitando %s de la lista de paquetes\n"
#: lib/libalpm/remove.c:346
#: lib/libalpm/remove.c:338
#, c-format
msgid "cannot remove file '%s': %s\n"
msgstr "no se pudo quitar el archivo «%s»: %s\n"
#: lib/libalpm/remove.c:411 lib/libalpm/remove.c:420
#: lib/libalpm/remove.c:403 lib/libalpm/remove.c:412
#, c-format
msgid "could not backup %s due to PATH_MAX overflow\n"
msgstr ""
"no se ha podido respaldar %s debido a que la ruta supera el tamaño de "
"no se ha podido respaldar %s debido a que la ruta supera el tamaño de "
"PATH_MAX\n"
#: lib/libalpm/remove.c:562
#: lib/libalpm/remove.c:554
#, c-format
msgid "cannot remove %s (%s)\n"
msgstr "no se pudo quitar %s (%s)\n"
#: lib/libalpm/remove.c:735
#: lib/libalpm/remove.c:727
#, c-format
msgid "could not remove database entry %s-%s\n"
msgstr "no se pudo quitar la entrada %s-%s de la base de datos\n"
#: lib/libalpm/remove.c:740
#: lib/libalpm/remove.c:732
#, c-format
msgid "could not remove entry '%s' from cache\n"
msgstr "no se pudo quitar la entrada «%s» de la caché\n"
#: lib/libalpm/signing.c:171
#: lib/libalpm/signing.c:163
#, c-format
msgid "Public keyring not found; have you run '%s'?\n"
msgstr ""
"No se ha encontrado el depósito público de claves; ¿ya se ha ejecutado "
"«%s»?\n"
#: lib/libalpm/signing.c:207 lib/libalpm/signing.c:784
#: lib/libalpm/signing.c:199 lib/libalpm/signing.c:767
#, c-format
msgid "GPGME error: %s\n"
msgstr "Error de GPGME: %s\n"
#: lib/libalpm/signing.c:284
#: lib/libalpm/signing.c:274
#, c-format
msgid "looking up key %s using WKD\n"
msgstr "buscando clave %s usando WKD\n"
#: lib/libalpm/signing.c:293
#: lib/libalpm/signing.c:283
#, c-format
msgid "gpg error: %s\n"
msgstr "error gpg: %s\n"
#: lib/libalpm/signing.c:441 lib/libalpm/signing.c:515
#: lib/libalpm/signing.c:430 lib/libalpm/signing.c:503
#, c-format
msgid "keyring is not writable\n"
msgstr "no se puede escribir en el depósito de claves\n"
#: lib/libalpm/signing.c:539
#: lib/libalpm/signing.c:531
#, c-format
msgid "key \"%s\" on keyserver\n"
msgstr "clave «%s» en servidor de claves\n"
#: lib/libalpm/signing.c:544
#: lib/libalpm/signing.c:536
#, c-format
msgid "key \"%s\" could not be imported\n"
msgstr "no se pudo importar la clave «%s»\n"
#: lib/libalpm/signing.c:548
#: lib/libalpm/signing.c:540
#, c-format
msgid "key \"%s\" could not be looked up remotely\n"
msgstr "no se pudo buscar la clave «%s» de forma remota\n"
#: lib/libalpm/signing.c:943 lib/libalpm/sync.c:1022
#: lib/libalpm/signing.c:926 lib/libalpm/sync.c:1022
#, c-format
msgid "%s: missing required signature\n"
msgstr "%s: falta la firma exigida\n"
#: lib/libalpm/signing.c:958
#: lib/libalpm/signing.c:941
#, c-format
msgid "%s: signature from \"%s\" is marginal trust\n"
msgstr "%s: la firma de «%s» es de confianza mínima\n"
#: lib/libalpm/signing.c:966
#: lib/libalpm/signing.c:949
#, c-format
msgid "%s: signature from \"%s\" is unknown trust\n"
msgstr "%s: se desconoce el nivel de confianza de la firma de «%s»\n"
#: lib/libalpm/signing.c:973
#: lib/libalpm/signing.c:956
#, c-format
msgid "%s: signature from \"%s\" should never be trusted\n"
msgstr ""
"%s: la firma de «%s» no es de confianza y no se debería confiar en ella bajo "
"ningún concepto\n"
#: lib/libalpm/signing.c:985
#: lib/libalpm/signing.c:968
#, c-format
msgid "%s: key \"%s\" is unknown\n"
msgstr "%s: clave «%s» desconocida\n"
#: lib/libalpm/signing.c:994
#: lib/libalpm/signing.c:977
#, c-format
msgid "%s: key \"%s\" is disabled\n"
msgstr "%s: la clave «%s» está desactivada\n"
#: lib/libalpm/signing.c:998
#: lib/libalpm/signing.c:981
#, c-format
msgid "%s: signature from \"%s\" is expired\n"
msgstr "%s: la firma de «%s» ha expirado\n"
#: lib/libalpm/signing.c:1002
#: lib/libalpm/signing.c:985
#, c-format
msgid "%s: signature from \"%s\" is invalid\n"
msgstr "%s: la firma de «%s» no es válida\n"
#: lib/libalpm/signing.c:1079 lib/libalpm/signing.c:1147
#: lib/libalpm/signing.c:1226
#: lib/libalpm/signing.c:1043 lib/libalpm/signing.c:1104
#: lib/libalpm/signing.c:1183
#, c-format
msgid "%s: signature format error\n"
msgstr "%s: hubo un error con el formato de la firma\n"
#: lib/libalpm/signing.c:1179 lib/libalpm/signing.c:1212
#: lib/libalpm/signing.c:1220
#: lib/libalpm/signing.c:1136 lib/libalpm/signing.c:1169
#: lib/libalpm/signing.c:1177
#, c-format
msgid "%s: unsupported signature format\n"
msgstr "%s: formato de firma desconocido\n"
#: lib/libalpm/sync.c:99
#: lib/libalpm/sync.c:96
#, c-format
msgid "%s: ignoring package upgrade (%s => %s)\n"
msgstr "%s: ignorando la actualización del paquete (%s => %s)\n"
#: lib/libalpm/sync.c:111
#: lib/libalpm/sync.c:108
#, c-format
msgid "%s: ignoring package downgrade (%s => %s)\n"
msgstr "%s: ignorando la desactualización del paquete (%s => %s)\n"
#: lib/libalpm/sync.c:114
#: lib/libalpm/sync.c:111
#, c-format
msgid "%s: downgrading from version %s to version %s\n"
msgstr "%s: desactualizando de la versión %s a la versión %s\n"
#: lib/libalpm/sync.c:120
#: lib/libalpm/sync.c:117
#, c-format
msgid "%s: local (%s) is newer than %s (%s)\n"
msgstr "%s: la versión instalada (%s) es más nueva que %s (%s)\n"
#: lib/libalpm/sync.c:161
#: lib/libalpm/sync.c:158
#, c-format
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
msgstr "ignorando el remplazo del paquete (%s-%s => %s-%s)\n"
#: lib/libalpm/sync.c:177
#: lib/libalpm/sync.c:174
#, c-format
msgid "cannot replace %s by %s\n"
msgstr "no se pudo remplazar el archivo %s por %s\n"
#: lib/libalpm/sync.c:535 lib/libalpm/sync.c:605
#: lib/libalpm/sync.c:476
#, c-format
msgid "packages %s and %s have the same filename: %s\n"
msgstr "los paquetes %s y %s comparten un archivo con el mismo nombre: «%s»\n"
#: lib/libalpm/sync.c:542 lib/libalpm/sync.c:612
#, c-format
msgid "unresolvable package conflicts detected\n"
msgstr "se han detectado paquetes con conflictos sin resolver\n"
#: lib/libalpm/sync.c:555
#: lib/libalpm/sync.c:562
#, c-format
msgid "removing '%s' from target list because it conflicts with '%s'\n"
msgstr ""
"quitando «%s» de la lista de paquetes debido a que tiene conflictos con "
"«%s»\n"
#: lib/libalpm/sync.c:849
#, c-format
msgid "failed to retrieve some files\n"
msgstr "no se pudieron recibir algunos archivos\n"
#: lib/libalpm/sync.c:1036
#, c-format
msgid "failed to read file %s: %s\n"
@@ -981,82 +1010,82 @@ msgstr "no se pudo realizar la operación de eliminación\n"
msgid "could not commit transaction\n"
msgstr "no se pudo realizar la operación\n"
#: lib/libalpm/trans.c:364
#: lib/libalpm/trans.c:365
#, c-format
msgid "could not create temp directory\n"
msgstr "no se pudo crear el directorio temporal\n"
#: lib/libalpm/trans.c:379
#: lib/libalpm/trans.c:380
#, c-format
msgid "could not copy tempfile to %s (%s)\n"
msgstr "no se pudo copiar el archivo temporal a %s (%s)\n"
#: lib/libalpm/trans.c:410
#: lib/libalpm/trans.c:411
#, c-format
msgid "could not remove %s\n"
msgstr "no se pudo quitar %s\n"
#: lib/libalpm/trans.c:414
#: lib/libalpm/trans.c:415
#, c-format
msgid "could not remove tmpdir %s\n"
msgstr "no se pudo quitar el directorio temporal %s\n"
#: lib/libalpm/util.c:486
#: lib/libalpm/util.c:488
#, c-format
msgid "unable to write to pipe (%s)\n"
msgstr "no se pudo escribir en la tubería (%s)\n"
#: lib/libalpm/util.c:545
#: lib/libalpm/util.c:547
#, c-format
msgid "unable to read from pipe (%s)\n"
msgstr "no se pudo leer de la tubería (%s)\n"
#: lib/libalpm/util.c:609 lib/libalpm/util.c:615
#: lib/libalpm/util.c:617 lib/libalpm/util.c:623
#, c-format
msgid "could not create pipe (%s)\n"
msgstr "no se pudo crear la tubería (%s)\n"
#: lib/libalpm/util.c:623
#: lib/libalpm/util.c:631
#, c-format
msgid "could not fork a new process (%s)\n"
msgstr "no se pudo crear un nuevo proceso (%s)\n"
#: lib/libalpm/util.c:646
#: lib/libalpm/util.c:654
#, c-format
msgid "could not change the root directory (%s)\n"
msgstr "no se pudo cambiar el directorio raíz (%s)\n"
#: lib/libalpm/util.c:658
#: lib/libalpm/util.c:666
#, c-format
msgid "call to execv failed (%s)\n"
msgstr "llamada a execv fallida (%s)\n"
#: lib/libalpm/util.c:737
#: lib/libalpm/util.c:745
#, c-format
msgid "call to waitpid failed (%s)\n"
msgstr "llamada a waitpid fallida (%s)\n"
#: lib/libalpm/util.c:747
#: lib/libalpm/util.c:755
#, c-format
msgid "command failed to execute correctly\n"
msgstr "la orden no se ejecutó correctamente\n"
#: lib/libalpm/util.c:754
#: lib/libalpm/util.c:762
#, c-format
msgid "Unknown signal"
msgstr "firma desconocida"
msgstr "Firma desconocida"
#: lib/libalpm/util.c:756
#: lib/libalpm/util.c:764
#, c-format
msgid "command terminated by signal %d: %s\n"
msgstr "orden terminada por la señal %d: %s\n"
#: lib/libalpm/util.c:853
#: lib/libalpm/util.c:875
#, c-format
msgid "no %s cache exists, creating...\n"
msgstr "no existe la caché de %s, creándola...\n"
#: lib/libalpm/util.c:884
#: lib/libalpm/util.c:906
#, c-format
msgid "couldn't find or create package cache, using %s instead\n"
msgstr ""

View File

@@ -1,14 +1,15 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Pacman Development Team <pacman-dev@archlinux.org>
# This file is distributed under the same license as the PACKAGE package.
# Copyright (C) YEAR "Pacman Development Team <pacman-dev@archlinux.org>"
# This file is distributed under the same license as the libalpm package.
#
# Translators:
# Angel Velasquez <angvp@archlinux.org>, 2011
# Dan McGee <dpmcgee@gmail.com>, 2011
# ice <ice.modding@gmail.com>, 2016
# ice, 2016
# ice, 2016
# Juan Antonio Cánovas Pérez <traumness@gmail.com>, 2011
# juantascon <juantascon@gmail.com>, 2011
# ice <ice.modding@gmail.com>, 2016
# ice, 2016
# Leonel <leonelmalon@gmail.com>, 2013
# neiko <neikokz+tsfx@gmail.com>, 2011
# prflr88 <prflr88@gmail.com>, 2015,2017
@@ -19,8 +20,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Arch Linux Pacman package manager\n"
"Report-Msgid-Bugs-To: http://bugs.archlinux.org/index.php?project=3\n"
"POT-Creation-Date: 2019-10-21 17:23+1000\n"
"PO-Revision-Date: 2019-10-07 08:12+0000\n"
"POT-Creation-Date: 2021-09-04 16:15+1000\n"
"PO-Revision-Date: 2021-05-20 02:25+0000\n"
"Last-Translator: Allan McRae <allan@archlinux.org>\n"
"Language-Team: Spanish (Latin America) (http://www.transifex.com/toofishes/"
"archlinux-pacman/language/es_419/)\n"
@@ -30,17 +31,17 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: lib/libalpm/add.c:91 lib/libalpm/sync.c:290
#: lib/libalpm/add.c:90 lib/libalpm/sync.c:279
#, c-format
msgid "%s-%s is up to date -- skipping\n"
msgstr "%s-%s ya está actualizado -- omitiendo\n"
#: lib/libalpm/add.c:95
#: lib/libalpm/add.c:94
#, c-format
msgid "%s-%s is up to date -- reinstalling\n"
msgstr "%s-%s ya está actualizado -- reinstalando\n"
#: lib/libalpm/add.c:100
#: lib/libalpm/add.c:99
#, c-format
msgid "downgrading package %s (%s => %s)\n"
msgstr "regresando a una versión anterior del paquete %s (%s => %s)\n"
@@ -50,17 +51,17 @@ msgstr "regresando a una versión anterior del paquete %s (%s => %s)\n"
msgid "cannot allocate disk archive object"
msgstr "No se puede asignar objeto de archivo de disco"
#: lib/libalpm/add.c:143 lib/libalpm/util.c:382
#: lib/libalpm/add.c:143 lib/libalpm/util.c:384
#, c-format
msgid "warning given when extracting %s (%s)\n"
msgstr "alerta producida mientras se extraía %s (%s)\n"
#: lib/libalpm/add.c:146 lib/libalpm/util.c:385
#: lib/libalpm/add.c:146 lib/libalpm/util.c:387
#, c-format
msgid "could not extract %s (%s)\n"
msgstr "no se pudo extraer %s (%s)\n"
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:574 lib/libalpm/remove.c:542
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:709 lib/libalpm/remove.c:534
#, c-format
msgid "could not rename %s to %s (%s)\n"
msgstr "no se pudo renombrar %s a %s (%s)\n"
@@ -105,141 +106,141 @@ msgstr "extracto: no se puede sobrescribir el directorio con el archivo %s\n"
msgid "unable to extract %s.pacnew: path too long"
msgstr "no se pudo extraer %s.pacnew: ruta demasiado larga"
#: lib/libalpm/add.c:513 lib/libalpm/util.c:334 lib/libalpm/util.c:592
#: lib/libalpm/add.c:510 lib/libalpm/util.c:335 lib/libalpm/util.c:600
#, c-format
msgid "could not get current working directory\n"
msgstr "no se pudo determinar el directorio de trabajo actual\n"
#: lib/libalpm/add.c:518 lib/libalpm/util.c:339 lib/libalpm/util.c:597
#: lib/libalpm/util.c:650
#: lib/libalpm/add.c:515 lib/libalpm/util.c:340 lib/libalpm/util.c:605
#: lib/libalpm/util.c:658
#, c-format
msgid "could not change directory to %s (%s)\n"
msgstr "no se pudo cambiar el directorio a %s (%s)\n"
#: lib/libalpm/add.c:575 lib/libalpm/util.c:403 lib/libalpm/util.c:766
#: lib/libalpm/add.c:571 lib/libalpm/util.c:405 lib/libalpm/util.c:774
#, c-format
msgid "could not restore working directory (%s)\n"
msgstr "no se pudo restaurar el directorio de trabajo (%s)\n"
#: lib/libalpm/add.c:583
#: lib/libalpm/add.c:579
#, c-format
msgid "problem occurred while upgrading %s\n"
msgstr "ocurrió un error durante la actualización de %s\n"
#: lib/libalpm/add.c:589
#: lib/libalpm/add.c:585
#, c-format
msgid "problem occurred while installing %s\n"
msgstr "ocurrió un error durante la instalación de %s\n"
#: lib/libalpm/add.c:604
#: lib/libalpm/add.c:600
#, c-format
msgid "could not update database entry %s-%s\n"
msgstr "no se pudo actualizar la entrada %s-%s en la base de datos\n"
#: lib/libalpm/add.c:615
#: lib/libalpm/add.c:610
#, c-format
msgid "could not add entry '%s' in cache\n"
msgstr "no se pudo agregar la entrada «%s» a la caché\n"
#: lib/libalpm/be_local.c:267
#: lib/libalpm/be_local.c:266
#, c-format
msgid "error while reading file %s: %s\n"
msgstr "error durante la lectura del archivo %s: %s\n"
#: lib/libalpm/be_local.c:364
#: lib/libalpm/be_local.c:376
#, c-format
msgid "removing invalid database: %s\n"
msgstr "quitando la base de datos no válida: %s\n"
#: lib/libalpm/be_local.c:415 lib/libalpm/be_local.c:905
#: lib/libalpm/be_local.c:427 lib/libalpm/be_local.c:909
#, c-format
msgid "could not create directory %s: %s\n"
msgstr "no se pudo crear el directorio %s: %s\n"
#: lib/libalpm/be_local.c:590 lib/libalpm/be_sync.c:386
#: lib/libalpm/be_local.c:602 lib/libalpm/be_sync.c:322
#, c-format
msgid "invalid name for database entry '%s'\n"
msgstr "nombre no válido para la entrada «%s» de la base de datos\n"
#: lib/libalpm/be_local.c:598
#: lib/libalpm/be_local.c:610
#, c-format
msgid "duplicated database entry '%s'\n"
msgstr "entrada «%s» duplicada en la base de datos\n"
#: lib/libalpm/be_local.c:610
#: lib/libalpm/be_local.c:622
#, c-format
msgid "corrupted database entry '%s'\n"
msgstr "la entrada «%s» de la base de datos está dañada\n"
#: lib/libalpm/be_local.c:713 lib/libalpm/be_local.c:809
#: lib/libalpm/be_local.c:954 lib/libalpm/be_local.c:1051
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:422 lib/libalpm/util.c:253
#: lib/libalpm/util.c:269
#: lib/libalpm/be_local.c:722 lib/libalpm/be_local.c:818
#: lib/libalpm/be_local.c:958 lib/libalpm/be_local.c:1055
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:823 lib/libalpm/util.c:254
#: lib/libalpm/util.c:270
#, c-format
msgid "could not open file %s: %s\n"
msgstr "no se pudo abrir el archivo %s: %s\n"
#: lib/libalpm/be_local.c:729 lib/libalpm/be_sync.c:650
#: lib/libalpm/be_local.c:738 lib/libalpm/be_sync.c:582
#, c-format
msgid "%s database is inconsistent: name mismatch on package %s\n"
msgstr ""
"la base de datos %s es inconsistente: nombre mal emparejado en el paquete "
"%s\n"
#: lib/libalpm/be_local.c:735 lib/libalpm/be_sync.c:656
#: lib/libalpm/be_local.c:744 lib/libalpm/be_sync.c:588
#, c-format
msgid "%s database is inconsistent: version mismatch on package %s\n"
msgstr ""
"la base de datos %s es inconsistente: versión mal emparejada en el paquete "
"%s\n"
#: lib/libalpm/be_local.c:776
#: lib/libalpm/be_local.c:785
#, c-format
msgid "unknown validation type for package %s: %s\n"
msgstr "tipo de validación desconocida para el paquete %s: %s\n"
#: lib/libalpm/be_package.c:479 lib/libalpm/be_package.c:637
#: lib/libalpm/be_package.c:650
#: lib/libalpm/be_package.c:478 lib/libalpm/be_package.c:631
#: lib/libalpm/be_package.c:643
#, c-format
msgid "error while reading package %s: %s\n"
msgstr "error mientras se leía el paquete %s: %s\n"
#: lib/libalpm/be_package.c:493 lib/libalpm/be_package.c:517
#: lib/libalpm/be_package.c:491 lib/libalpm/be_package.c:514
#, c-format
msgid "error while reading mtree of package %s: %s\n"
msgstr "error al leer mtree del paquete %s: %s\n"
#: lib/libalpm/be_package.c:603
#: lib/libalpm/be_package.c:597
#, c-format
msgid "could not parse package description file in %s\n"
msgstr "no se pudo analizar el archivo de descripción del paquete en %s\n"
#: lib/libalpm/be_package.c:608
#: lib/libalpm/be_package.c:602
#, c-format
msgid "missing package name in %s\n"
msgstr "falta el nombre del paquete en %s\n"
#: lib/libalpm/be_package.c:612
#: lib/libalpm/be_package.c:606
#, c-format
msgid "missing package version in %s\n"
msgstr "falta la versión del paquete en %s\n"
#: lib/libalpm/be_package.c:616
#: lib/libalpm/be_package.c:610
#, c-format
msgid "invalid package version in %s\n"
msgstr "versión del paquete no válida en %s\n"
#: lib/libalpm/be_package.c:657
#: lib/libalpm/be_package.c:649
#, c-format
msgid "missing package metadata in %s\n"
msgstr "faltan los metadatos del paquete en %s\n"
#: lib/libalpm/be_package.c:750
#: lib/libalpm/be_package.c:741
#, c-format
msgid "failed to read signature file: %s\n"
msgstr "no se pudo leer correctamente el archivo de firma: %s\n"
#: lib/libalpm/be_package.c:779 lib/libalpm/sync.c:953
#: lib/libalpm/be_package.c:770 lib/libalpm/sync.c:953
#, c-format
msgid "required key missing from keyring\n"
msgstr "la clave requerida no está presente en el llavero\n"
@@ -249,38 +250,38 @@ msgstr "la clave requerida no está presente en el llavero\n"
msgid "removing invalid file: %s\n"
msgstr "eliminando archivo no válido: %s\n"
#: lib/libalpm/be_sync.c:515
#: lib/libalpm/be_sync.c:449
#, c-format
msgid "could not parse package description file '%s' from db '%s'\n"
msgstr ""
"no se pudo analizar el archivo de descripción del paquete «%s» de la base de "
"datos «%s»\n"
#: lib/libalpm/be_sync.c:522
#: lib/libalpm/be_sync.c:456
#, c-format
msgid "could not read db '%s' (%s)\n"
msgstr ""
#: lib/libalpm/be_sync.c:556 lib/libalpm/be_sync.c:561
#: lib/libalpm/be_sync.c:489 lib/libalpm/be_sync.c:494
#, c-format
msgid "%s database is inconsistent: filename of package %s is illegal\n"
msgstr ""
"la base de datos %s es inconsistente: el nombre del archivo del paquete %s "
"es ilegal\n"
#: lib/libalpm/be_sync.c:566
#: lib/libalpm/be_sync.c:499
#, c-format
msgid "%s database is inconsistent: filename of package %s is too long\n"
msgstr ""
"la base de datos %s es inconsistente: el nombre del archivo del paquete %s "
"es demasiado largo\n"
#: lib/libalpm/be_sync.c:632
#: lib/libalpm/be_sync.c:564
#, c-format
msgid "unknown database file: %s\n"
msgstr "archivo de base de datos desconocido: %s\n"
#: lib/libalpm/db.c:370
#: lib/libalpm/db.c:344
#, c-format
msgid "database path is undefined\n"
msgstr "la ruta de la base de datos no está definida\n"
@@ -300,12 +301,12 @@ msgstr "%s será eliminado después de su dependencia %s\n"
msgid "%s will be installed before its %s dependency\n"
msgstr "%s será instalado antes que su dependencia %s\n"
#: lib/libalpm/deps.c:681 lib/libalpm/deps.c:712
#: lib/libalpm/deps.c:666 lib/libalpm/deps.c:697
#, c-format
msgid "ignoring package %s-%s\n"
msgstr "ignorando el paquete %s-%s\n"
#: lib/libalpm/deps.c:869
#: lib/libalpm/deps.c:842
#, c-format
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
msgstr "no se pudo resolver «%s», una dependencia de «%s»\n"
@@ -366,42 +367,68 @@ msgstr "no se pudo determinar el punto de montaje de la raíz %s\n"
msgid "Partition %s is mounted read only\n"
msgstr "La partición %s está montada como solamente lectura\n"
#: lib/libalpm/dload.c:161
#: lib/libalpm/dload.c:116
#, c-format
msgid ""
"too many errors from %s, skipping for the remainder of this transaction\n"
msgstr ""
#: lib/libalpm/dload.c:220
#, c-format
msgid "disk"
msgstr "disco"
#: lib/libalpm/dload.c:348
#: lib/libalpm/dload.c:392
#, c-format
msgid "failed to create temporary file for download\n"
msgstr "no se pudo crear el archivo temporal para la descarga\n"
#: lib/libalpm/dload.c:393
#, c-format
msgid "url '%s' is invalid\n"
msgstr "la dirección «%s» no es válida\n"
#: lib/libalpm/dload.c:464 lib/libalpm/dload.c:485 lib/libalpm/dload.c:496
#: lib/libalpm/dload.c:509 lib/libalpm/dload.c:547 lib/libalpm/dload.c:561
#, c-format
msgid "failed retrieving file '%s' from %s : %s\n"
msgstr "no se pudo obtener el archivo «%s» desde %s: %s\n"
#: lib/libalpm/dload.c:477
#: lib/libalpm/dload.c:539
#, c-format
msgid "failed retrieving file '%s' from %s : expected download size exceeded\n"
msgstr ""
"no se pudo obtener el archivo «%s» desde %s : tamaño de la descarga superior "
"del esperado\n"
#: lib/libalpm/dload.c:532
#: lib/libalpm/dload.c:687
#, c-format
msgid "%s appears to be truncated: %jd/%jd bytes\n"
msgstr "%s parece estar incompleto: %jd/%jd bytes\n"
#: lib/libalpm/dload.c:677 lib/libalpm/dload.c:706
#: lib/libalpm/dload.c:787
#, c-format
msgid "failed to download %s\n"
msgstr "no se pudo descargar %s\n"
msgid "url '%s' is invalid\n"
msgstr "la dirección «%s» no es válida\n"
#: lib/libalpm/dload.c:893
#, c-format
msgid "failed to setup a download payload for %s\n"
msgstr ""
#: lib/libalpm/dload.c:905
#, c-format
msgid "curl returned error %d from transfer\n"
msgstr ""
#: lib/libalpm/dload.c:929
#, c-format
msgid "curl transfer error: %d\n"
msgstr ""
#: lib/libalpm/dload.c:1055 lib/libalpm/sync.c:840
#, c-format
msgid "failed to retrieve some files\n"
msgstr "no se pudieron recibir algunos archivos\n"
#: lib/libalpm/dload.c:1078
#, c-format
msgid "download completed successfully but no file in the cache\n"
msgstr ""
#: lib/libalpm/error.c:40
#, c-format
@@ -518,7 +545,7 @@ msgstr "no hay servidores configurados para el repositorio"
msgid "transaction already initialized"
msgstr "la operación ya se inició"
#: lib/libalpm/error.c:90 lib/libalpm/error.c:94
#: lib/libalpm/error.c:90 lib/libalpm/error.c:96
#, c-format
msgid "transaction not initialized"
msgstr "la operación no está iniciada"
@@ -528,87 +555,87 @@ msgstr "la operación no está iniciada"
msgid "duplicate target"
msgstr "objetivo duplicado"
#: lib/libalpm/error.c:96
#: lib/libalpm/error.c:94
#, c-format
msgid "duplicate filename"
msgstr ""
#: lib/libalpm/error.c:98
#, c-format
msgid "transaction not prepared"
msgstr "la operación no está lista"
#: lib/libalpm/error.c:98
#: lib/libalpm/error.c:100
#, c-format
msgid "transaction aborted"
msgstr "operación cancelada"
#: lib/libalpm/error.c:100
#: lib/libalpm/error.c:102
#, c-format
msgid "operation not compatible with the transaction type"
msgstr "la operación no es compatible con el tipo de transacción"
#: lib/libalpm/error.c:102
#: lib/libalpm/error.c:104
#, c-format
msgid "transaction commit attempt when database is not locked"
msgstr ""
"intento de realizar la operación cuando la base de datos no está bloqueada"
#: lib/libalpm/error.c:104
#: lib/libalpm/error.c:106
#, c-format
msgid "failed to run transaction hooks"
msgstr "fallo al ejecutar los directorios de transacción"
#: lib/libalpm/error.c:107
#: lib/libalpm/error.c:109
#, c-format
msgid "could not find or read package"
msgstr "no se pudo encontrar o leer el paquete"
#: lib/libalpm/error.c:109
#: lib/libalpm/error.c:111
#, c-format
msgid "operation cancelled due to ignorepkg"
msgstr "operación cancelada debido a ignorepkg"
#: lib/libalpm/error.c:111
#: lib/libalpm/error.c:113
#, c-format
msgid "invalid or corrupted package"
msgstr "paquete no válido o dañado"
#: lib/libalpm/error.c:113
#: lib/libalpm/error.c:115
#, c-format
msgid "invalid or corrupted package (checksum)"
msgstr "paquete no válido o dañado (suma de verificación)"
#: lib/libalpm/error.c:115
#: lib/libalpm/error.c:117
#, c-format
msgid "invalid or corrupted package (PGP signature)"
msgstr "paquete no válido o dañado (firma PGP)"
#: lib/libalpm/error.c:117
#: lib/libalpm/error.c:119
#, c-format
msgid "package missing required signature"
msgstr "paquete sin la firma exigida"
#: lib/libalpm/error.c:119
#: lib/libalpm/error.c:121
#, c-format
msgid "cannot open package file"
msgstr "no se pudo abrir el archivo del paquete"
#: lib/libalpm/error.c:121
#: lib/libalpm/error.c:123
#, c-format
msgid "cannot remove all files for package"
msgstr "no se pudieron quitar todos los archivos del paquete"
#: lib/libalpm/error.c:123
#: lib/libalpm/error.c:125
#, c-format
msgid "package filename is not valid"
msgstr "el nombre de archivo del paquete no es válido"
#: lib/libalpm/error.c:125
#: lib/libalpm/error.c:127
#, c-format
msgid "package architecture is not valid"
msgstr "la arquitectura del paquete no es válida"
#: lib/libalpm/error.c:127
#, c-format
msgid "could not find repository for target"
msgstr "no se pudo encontrar un repositorio que contenga el paquete"
#: lib/libalpm/error.c:130
#, c-format
msgid "missing PGP signature"
@@ -674,12 +701,12 @@ msgstr ""
msgid "unexpected error"
msgstr "error inesperado"
#: lib/libalpm/handle.c:153
#: lib/libalpm/handle.c:142
#, c-format
msgid "lock file missing %s\n"
msgstr "falta el archivo de bloqueo %s\n"
#: lib/libalpm/handle.c:159
#: lib/libalpm/handle.c:148
#, c-format
msgid "could not remove lock file %s\n"
msgstr "no se pudo eliminar el archivo de bloqueo %s\n"
@@ -751,7 +778,7 @@ msgstr ""
msgid "unable to run hook %s: %s\n"
msgstr ""
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:386
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:378
#, c-format
msgid "could not open directory: %s: %s\n"
msgstr "no se pudo abrir el directorio: %s: %s\n"
@@ -761,7 +788,7 @@ msgstr "no se pudo abrir el directorio: %s: %s\n"
msgid "could not open file: %s%s: %s\n"
msgstr ""
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:259
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:260
#, c-format
msgid "could not stat file %s: %s\n"
msgstr "no se pudo recuperar la información del archivo %s: %s\n"
@@ -771,186 +798,186 @@ msgstr "no se pudo recuperar la información del archivo %s: %s\n"
msgid "could not read directory: %s: %s\n"
msgstr ""
#: lib/libalpm/package.c:578
#: lib/libalpm/package.c:598
#, c-format
msgid "could not fully load metadata for package %s-%s\n"
msgstr ""
"no se pudieron cargar completamente los metadatos para el paquete %s-%s\n"
#: lib/libalpm/remove.c:119
#: lib/libalpm/remove.c:111
#, c-format
msgid "could not find %s in database -- skipping\n"
msgstr "no se pudo encontrar %s en la base de datos -- ignorándolo\n"
#: lib/libalpm/remove.c:154
#: lib/libalpm/remove.c:146
#, c-format
msgid "removing %s from target list\n"
msgstr "quitando %s de la lista de objetivos\n"
#: lib/libalpm/remove.c:346
#: lib/libalpm/remove.c:338
#, c-format
msgid "cannot remove file '%s': %s\n"
msgstr "no se pudo quitar el archivo «%s»: %s\n"
#: lib/libalpm/remove.c:411 lib/libalpm/remove.c:420
#: lib/libalpm/remove.c:403 lib/libalpm/remove.c:412
#, c-format
msgid "could not backup %s due to PATH_MAX overflow\n"
msgstr ""
#: lib/libalpm/remove.c:562
#: lib/libalpm/remove.c:554
#, c-format
msgid "cannot remove %s (%s)\n"
msgstr "no se pudo eliminar %s (%s)\n"
#: lib/libalpm/remove.c:735
#: lib/libalpm/remove.c:727
#, c-format
msgid "could not remove database entry %s-%s\n"
msgstr "no se pudo quitar la entrada %s-%s de la base de datos\n"
#: lib/libalpm/remove.c:740
#: lib/libalpm/remove.c:732
#, c-format
msgid "could not remove entry '%s' from cache\n"
msgstr "no se pudo quitar la entrada «%s» de la caché\n"
#: lib/libalpm/signing.c:171
#: lib/libalpm/signing.c:163
#, c-format
msgid "Public keyring not found; have you run '%s'?\n"
msgstr ""
#: lib/libalpm/signing.c:207 lib/libalpm/signing.c:784
#: lib/libalpm/signing.c:199 lib/libalpm/signing.c:767
#, c-format
msgid "GPGME error: %s\n"
msgstr ""
#: lib/libalpm/signing.c:284
#: lib/libalpm/signing.c:274
#, c-format
msgid "looking up key %s using WKD\n"
msgstr ""
#: lib/libalpm/signing.c:293
#: lib/libalpm/signing.c:283
#, c-format
msgid "gpg error: %s\n"
msgstr ""
#: lib/libalpm/signing.c:441 lib/libalpm/signing.c:515
#: lib/libalpm/signing.c:430 lib/libalpm/signing.c:503
#, c-format
msgid "keyring is not writable\n"
msgstr ""
#: lib/libalpm/signing.c:539
#: lib/libalpm/signing.c:531
#, c-format
msgid "key \"%s\" on keyserver\n"
msgstr ""
#: lib/libalpm/signing.c:544
#: lib/libalpm/signing.c:536
#, c-format
msgid "key \"%s\" could not be imported\n"
msgstr ""
#: lib/libalpm/signing.c:548
#: lib/libalpm/signing.c:540
#, c-format
msgid "key \"%s\" could not be looked up remotely\n"
msgstr ""
#: lib/libalpm/signing.c:943 lib/libalpm/sync.c:1022
#: lib/libalpm/signing.c:926 lib/libalpm/sync.c:1022
#, c-format
msgid "%s: missing required signature\n"
msgstr "%s: falta la firma exigida\n"
#: lib/libalpm/signing.c:958
#: lib/libalpm/signing.c:941
#, c-format
msgid "%s: signature from \"%s\" is marginal trust\n"
msgstr ""
#: lib/libalpm/signing.c:966
#: lib/libalpm/signing.c:949
#, c-format
msgid "%s: signature from \"%s\" is unknown trust\n"
msgstr ""
#: lib/libalpm/signing.c:973
#: lib/libalpm/signing.c:956
#, c-format
msgid "%s: signature from \"%s\" should never be trusted\n"
msgstr ""
#: lib/libalpm/signing.c:985
#: lib/libalpm/signing.c:968
#, c-format
msgid "%s: key \"%s\" is unknown\n"
msgstr ""
#: lib/libalpm/signing.c:994
#: lib/libalpm/signing.c:977
#, c-format
msgid "%s: key \"%s\" is disabled\n"
msgstr ""
#: lib/libalpm/signing.c:998
#: lib/libalpm/signing.c:981
#, c-format
msgid "%s: signature from \"%s\" is expired\n"
msgstr ""
#: lib/libalpm/signing.c:1002
#: lib/libalpm/signing.c:985
#, c-format
msgid "%s: signature from \"%s\" is invalid\n"
msgstr ""
#: lib/libalpm/signing.c:1079 lib/libalpm/signing.c:1147
#: lib/libalpm/signing.c:1226
#: lib/libalpm/signing.c:1043 lib/libalpm/signing.c:1104
#: lib/libalpm/signing.c:1183
#, c-format
msgid "%s: signature format error\n"
msgstr ""
#: lib/libalpm/signing.c:1179 lib/libalpm/signing.c:1212
#: lib/libalpm/signing.c:1220
#: lib/libalpm/signing.c:1136 lib/libalpm/signing.c:1169
#: lib/libalpm/signing.c:1177
#, c-format
msgid "%s: unsupported signature format\n"
msgstr ""
#: lib/libalpm/sync.c:99
#: lib/libalpm/sync.c:96
#, c-format
msgid "%s: ignoring package upgrade (%s => %s)\n"
msgstr "%s: ignorando la actualización del paquete (%s => %s)\n"
#: lib/libalpm/sync.c:111
#: lib/libalpm/sync.c:108
#, c-format
msgid "%s: ignoring package downgrade (%s => %s)\n"
msgstr "%s: ignorando la desactualización del paquete (%s => %s)\n"
#: lib/libalpm/sync.c:114
#: lib/libalpm/sync.c:111
#, c-format
msgid "%s: downgrading from version %s to version %s\n"
msgstr "%s: desactualizando de la versión %s a la versión %s\n"
#: lib/libalpm/sync.c:120
#: lib/libalpm/sync.c:117
#, c-format
msgid "%s: local (%s) is newer than %s (%s)\n"
msgstr "%s: la versión instalada (%s) es más nueva que %s (%s)\n"
#: lib/libalpm/sync.c:161
#: lib/libalpm/sync.c:158
#, c-format
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
msgstr "ignorando el remplazo del paquete (%s-%s => %s-%s)\n"
#: lib/libalpm/sync.c:177
#: lib/libalpm/sync.c:174
#, c-format
msgid "cannot replace %s by %s\n"
msgstr "no se pudo remplazar el archivo %s por %s\n"
#: lib/libalpm/sync.c:535 lib/libalpm/sync.c:605
#: lib/libalpm/sync.c:476
#, c-format
msgid "packages %s and %s have the same filename: %s\n"
msgstr ""
#: lib/libalpm/sync.c:542 lib/libalpm/sync.c:612
#, c-format
msgid "unresolvable package conflicts detected\n"
msgstr "se han detectado paquetes con conflictos irresolubles\n"
#: lib/libalpm/sync.c:555
#: lib/libalpm/sync.c:562
#, c-format
msgid "removing '%s' from target list because it conflicts with '%s'\n"
msgstr ""
"quitando «%s» de la lista de objetivos debido a que tiene conflictos con "
"«%s»\n"
#: lib/libalpm/sync.c:849
#, c-format
msgid "failed to retrieve some files\n"
msgstr "no se pudieron recibir algunos archivos\n"
#: lib/libalpm/sync.c:1036
#, c-format
msgid "failed to read file %s: %s\n"
@@ -971,82 +998,82 @@ msgstr "no se pudo realizar la operación de eliminación\n"
msgid "could not commit transaction\n"
msgstr "no se pudo realizar la operación\n"
#: lib/libalpm/trans.c:364
#: lib/libalpm/trans.c:365
#, c-format
msgid "could not create temp directory\n"
msgstr "no se pudo crear el directorio temporal\n"
#: lib/libalpm/trans.c:379
#: lib/libalpm/trans.c:380
#, c-format
msgid "could not copy tempfile to %s (%s)\n"
msgstr "no se pudo copiar el archivo temporal a %s (%s)\n"
#: lib/libalpm/trans.c:410
#: lib/libalpm/trans.c:411
#, c-format
msgid "could not remove %s\n"
msgstr "no se pudo eliminar %s\n"
#: lib/libalpm/trans.c:414
#: lib/libalpm/trans.c:415
#, c-format
msgid "could not remove tmpdir %s\n"
msgstr "no se pudo eliminar el directorio temporal %s\n"
#: lib/libalpm/util.c:486
#: lib/libalpm/util.c:488
#, c-format
msgid "unable to write to pipe (%s)\n"
msgstr "no se pudo escribir en la tubería (%s)\n"
#: lib/libalpm/util.c:545
#: lib/libalpm/util.c:547
#, c-format
msgid "unable to read from pipe (%s)\n"
msgstr "no se pudo leer de la tubería (%s)\n"
#: lib/libalpm/util.c:609 lib/libalpm/util.c:615
#: lib/libalpm/util.c:617 lib/libalpm/util.c:623
#, c-format
msgid "could not create pipe (%s)\n"
msgstr "no se pudo crear la tubería (%s)\n"
#: lib/libalpm/util.c:623
#: lib/libalpm/util.c:631
#, c-format
msgid "could not fork a new process (%s)\n"
msgstr "no se pudo crear un nuevo proceso (%s)\n"
#: lib/libalpm/util.c:646
#: lib/libalpm/util.c:654
#, c-format
msgid "could not change the root directory (%s)\n"
msgstr "no se pudo cambiar el directorio raíz (%s)\n"
#: lib/libalpm/util.c:658
#: lib/libalpm/util.c:666
#, c-format
msgid "call to execv failed (%s)\n"
msgstr "llamada a execv fallida (%s)\n"
#: lib/libalpm/util.c:737
#: lib/libalpm/util.c:745
#, c-format
msgid "call to waitpid failed (%s)\n"
msgstr "llamada a waitpid fallida (%s)\n"
#: lib/libalpm/util.c:747
#: lib/libalpm/util.c:755
#, c-format
msgid "command failed to execute correctly\n"
msgstr "la orden no se ejecutó correctamente\n"
#: lib/libalpm/util.c:754
#: lib/libalpm/util.c:762
#, c-format
msgid "Unknown signal"
msgstr "firma desconocida"
#: lib/libalpm/util.c:756
#: lib/libalpm/util.c:764
#, c-format
msgid "command terminated by signal %d: %s\n"
msgstr "orden terminada por la señal %d: %s\n"
#: lib/libalpm/util.c:853
#: lib/libalpm/util.c:875
#, c-format
msgid "no %s cache exists, creating...\n"
msgstr "no existe la caché de %s, creándola…\n"
#: lib/libalpm/util.c:884
#: lib/libalpm/util.c:906
#, c-format
msgid "couldn't find or create package cache, using %s instead\n"
msgstr ""

View File

@@ -1,6 +1,6 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Pacman Development Team <pacman-dev@archlinux.org>
# This file is distributed under the same license as the PACKAGE package.
# Copyright (C) YEAR "Pacman Development Team <pacman-dev@archlinux.org>"
# This file is distributed under the same license as the libalpm package.
#
# Translators:
# Osoitz <oelkoro@gmail.com>, 2013-2014,2016-2018
@@ -9,8 +9,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Arch Linux Pacman package manager\n"
"Report-Msgid-Bugs-To: http://bugs.archlinux.org/index.php?project=3\n"
"POT-Creation-Date: 2019-10-21 17:23+1000\n"
"PO-Revision-Date: 2019-10-07 08:12+0000\n"
"POT-Creation-Date: 2021-09-04 16:15+1000\n"
"PO-Revision-Date: 2021-05-20 02:25+0000\n"
"Last-Translator: Allan McRae <allan@archlinux.org>\n"
"Language-Team: Basque (http://www.transifex.com/toofishes/archlinux-pacman/"
"language/eu/)\n"
@@ -20,17 +20,17 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: lib/libalpm/add.c:91 lib/libalpm/sync.c:290
#: lib/libalpm/add.c:90 lib/libalpm/sync.c:279
#, c-format
msgid "%s-%s is up to date -- skipping\n"
msgstr "%s-%s egunean dago -- ezikusi\n"
#: lib/libalpm/add.c:95
#: lib/libalpm/add.c:94
#, c-format
msgid "%s-%s is up to date -- reinstalling\n"
msgstr "%s-%s egunean dago -- berrinstalatu\n"
#: lib/libalpm/add.c:100
#: lib/libalpm/add.c:99
#, c-format
msgid "downgrading package %s (%s => %s)\n"
msgstr "bertsio zahartzen %s paketea (%s => %s)\n"
@@ -40,17 +40,17 @@ msgstr "bertsio zahartzen %s paketea (%s => %s)\n"
msgid "cannot allocate disk archive object"
msgstr "ezin da artxibo-objektua esleitu"
#: lib/libalpm/add.c:143 lib/libalpm/util.c:382
#: lib/libalpm/add.c:143 lib/libalpm/util.c:384
#, c-format
msgid "warning given when extracting %s (%s)\n"
msgstr "oharra eman da %s erauztean (%s)\n"
#: lib/libalpm/add.c:146 lib/libalpm/util.c:385
#: lib/libalpm/add.c:146 lib/libalpm/util.c:387
#, c-format
msgid "could not extract %s (%s)\n"
msgstr "ezin izan da %s erauzi (%s)\n"
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:574 lib/libalpm/remove.c:542
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:709 lib/libalpm/remove.c:534
#, c-format
msgid "could not rename %s to %s (%s)\n"
msgstr "ezin izan da %s berrizendatu %s gisa (%s)\n"
@@ -96,139 +96,139 @@ msgstr "erauzi: ez da direktorioa %s fitxategiarekin gainidatziko\n"
msgid "unable to extract %s.pacnew: path too long"
msgstr "ezin izan da %s.pacnew erauzi: bidea luzeegia da"
#: lib/libalpm/add.c:513 lib/libalpm/util.c:334 lib/libalpm/util.c:592
#: lib/libalpm/add.c:510 lib/libalpm/util.c:335 lib/libalpm/util.c:600
#, c-format
msgid "could not get current working directory\n"
msgstr "ezin izan da uneko lan direktorioa lortu\n"
#: lib/libalpm/add.c:518 lib/libalpm/util.c:339 lib/libalpm/util.c:597
#: lib/libalpm/util.c:650
#: lib/libalpm/add.c:515 lib/libalpm/util.c:340 lib/libalpm/util.c:605
#: lib/libalpm/util.c:658
#, c-format
msgid "could not change directory to %s (%s)\n"
msgstr "ezin izan da direktorioa hona aldatu %s (%s)\n"
#: lib/libalpm/add.c:575 lib/libalpm/util.c:403 lib/libalpm/util.c:766
#: lib/libalpm/add.c:571 lib/libalpm/util.c:405 lib/libalpm/util.c:774
#, c-format
msgid "could not restore working directory (%s)\n"
msgstr "ezin izan da laneko direktorioa berreskuratu (%s)\n"
#: lib/libalpm/add.c:583
#: lib/libalpm/add.c:579
#, c-format
msgid "problem occurred while upgrading %s\n"
msgstr "arazo bat egon da %s bertsio berritzean\n"
#: lib/libalpm/add.c:589
#: lib/libalpm/add.c:585
#, c-format
msgid "problem occurred while installing %s\n"
msgstr "arazo bat egon da %s instalatzean\n"
#: lib/libalpm/add.c:604
#: lib/libalpm/add.c:600
#, c-format
msgid "could not update database entry %s-%s\n"
msgstr "ezin izan da datu-base sarrera eguneratu %s-%s\n"
#: lib/libalpm/add.c:615
#: lib/libalpm/add.c:610
#, c-format
msgid "could not add entry '%s' in cache\n"
msgstr "ezin izan da '%s' sarrera katxean gehitu\n"
#: lib/libalpm/be_local.c:267
#: lib/libalpm/be_local.c:266
#, c-format
msgid "error while reading file %s: %s\n"
msgstr "errorea %s fitxategia irakurtzean: %s\n"
#: lib/libalpm/be_local.c:364
#: lib/libalpm/be_local.c:376
#, c-format
msgid "removing invalid database: %s\n"
msgstr "datu-base baliogabea ezabatzen:%s\n"
#: lib/libalpm/be_local.c:415 lib/libalpm/be_local.c:905
#: lib/libalpm/be_local.c:427 lib/libalpm/be_local.c:909
#, c-format
msgid "could not create directory %s: %s\n"
msgstr ""
"ezin izan da %s direktorioa sortu: %s\n"
"\n"
#: lib/libalpm/be_local.c:590 lib/libalpm/be_sync.c:386
#: lib/libalpm/be_local.c:602 lib/libalpm/be_sync.c:322
#, c-format
msgid "invalid name for database entry '%s'\n"
msgstr "izen baliogabea '%s' datu-base sarreran\n"
#: lib/libalpm/be_local.c:598
#: lib/libalpm/be_local.c:610
#, c-format
msgid "duplicated database entry '%s'\n"
msgstr "bikoiztutako datu-base sarrera '%s'\n"
#: lib/libalpm/be_local.c:610
#: lib/libalpm/be_local.c:622
#, c-format
msgid "corrupted database entry '%s'\n"
msgstr "datu-base sarrera hondatua '%s'\n"
#: lib/libalpm/be_local.c:713 lib/libalpm/be_local.c:809
#: lib/libalpm/be_local.c:954 lib/libalpm/be_local.c:1051
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:422 lib/libalpm/util.c:253
#: lib/libalpm/util.c:269
#: lib/libalpm/be_local.c:722 lib/libalpm/be_local.c:818
#: lib/libalpm/be_local.c:958 lib/libalpm/be_local.c:1055
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:823 lib/libalpm/util.c:254
#: lib/libalpm/util.c:270
#, c-format
msgid "could not open file %s: %s\n"
msgstr "ezin izan da %s fitxategia ireki: %s\n"
#: lib/libalpm/be_local.c:729 lib/libalpm/be_sync.c:650
#: lib/libalpm/be_local.c:738 lib/libalpm/be_sync.c:582
#, c-format
msgid "%s database is inconsistent: name mismatch on package %s\n"
msgstr "%s datu-basea kontraesankorra da: izenak ez datoz bat %s paketean\n"
#: lib/libalpm/be_local.c:735 lib/libalpm/be_sync.c:656
#: lib/libalpm/be_local.c:744 lib/libalpm/be_sync.c:588
#, c-format
msgid "%s database is inconsistent: version mismatch on package %s\n"
msgstr "%s datu-basea kontraesankorra da: bertsioak ez datoz bat %s paketean\n"
#: lib/libalpm/be_local.c:776
#: lib/libalpm/be_local.c:785
#, c-format
msgid "unknown validation type for package %s: %s\n"
msgstr "Balidazio mota ezezaguna %s paketearentzat: %s\n"
#: lib/libalpm/be_package.c:479 lib/libalpm/be_package.c:637
#: lib/libalpm/be_package.c:650
#: lib/libalpm/be_package.c:478 lib/libalpm/be_package.c:631
#: lib/libalpm/be_package.c:643
#, c-format
msgid "error while reading package %s: %s\n"
msgstr "errorea %s paketea irakurtzean: %s\n"
#: lib/libalpm/be_package.c:493 lib/libalpm/be_package.c:517
#: lib/libalpm/be_package.c:491 lib/libalpm/be_package.c:514
#, c-format
msgid "error while reading mtree of package %s: %s\n"
msgstr "errorea %s paketearen mtree-a irakurtzean: %s\n"
#: lib/libalpm/be_package.c:603
#: lib/libalpm/be_package.c:597
#, c-format
msgid "could not parse package description file in %s\n"
msgstr "ezin izan da paketearen deskripzioa prozesatu %s fitxategian\n"
#: lib/libalpm/be_package.c:608
#: lib/libalpm/be_package.c:602
#, c-format
msgid "missing package name in %s\n"
msgstr "paketearen izena falta da hemen: %s\n"
#: lib/libalpm/be_package.c:612
#: lib/libalpm/be_package.c:606
#, c-format
msgid "missing package version in %s\n"
msgstr "paketearen bertsioa falta da hemen: %s\n"
#: lib/libalpm/be_package.c:616
#: lib/libalpm/be_package.c:610
#, c-format
msgid "invalid package version in %s\n"
msgstr "paketearen bertsio baliogabea hemen %s\n"
#: lib/libalpm/be_package.c:657
#: lib/libalpm/be_package.c:649
#, c-format
msgid "missing package metadata in %s\n"
msgstr "paketearen metadatuak falta dira hemen: %s\n"
#: lib/libalpm/be_package.c:750
#: lib/libalpm/be_package.c:741
#, c-format
msgid "failed to read signature file: %s\n"
msgstr "sinadura fitxategiaren irakurketak huts egin du: %s\n"
#: lib/libalpm/be_package.c:779 lib/libalpm/sync.c:953
#: lib/libalpm/be_package.c:770 lib/libalpm/sync.c:953
#, c-format
msgid "required key missing from keyring\n"
msgstr "beharrezko gakoa falta da gako sortan\n"
@@ -238,35 +238,35 @@ msgstr "beharrezko gakoa falta da gako sortan\n"
msgid "removing invalid file: %s\n"
msgstr "fitxategi baliogabea ezabatzen: %s\n"
#: lib/libalpm/be_sync.c:515
#: lib/libalpm/be_sync.c:449
#, c-format
msgid "could not parse package description file '%s' from db '%s'\n"
msgstr "ezin izan da '%s' fitxategi deskripzioa prozesatu '%s' datu-basetik\n"
#: lib/libalpm/be_sync.c:522
#: lib/libalpm/be_sync.c:456
#, c-format
msgid "could not read db '%s' (%s)\n"
msgstr "ezin izan da '%s' datu-basea irakurri (%s)\n"
#: lib/libalpm/be_sync.c:556 lib/libalpm/be_sync.c:561
#: lib/libalpm/be_sync.c:489 lib/libalpm/be_sync.c:494
#, c-format
msgid "%s database is inconsistent: filename of package %s is illegal\n"
msgstr ""
"%s datu-basea kontraesankorra da: %s paketearen fitxategi izena legez "
"kanpokoa da\n"
#: lib/libalpm/be_sync.c:566
#: lib/libalpm/be_sync.c:499
#, c-format
msgid "%s database is inconsistent: filename of package %s is too long\n"
msgstr ""
"%s datu-basea kontraesankorra da: %s paketearen fitxategi izena luzeegia da\n"
#: lib/libalpm/be_sync.c:632
#: lib/libalpm/be_sync.c:564
#, c-format
msgid "unknown database file: %s\n"
msgstr "datu-base fitxategi ezezaguna: %s\n"
#: lib/libalpm/db.c:370
#: lib/libalpm/db.c:344
#, c-format
msgid "database path is undefined\n"
msgstr "datu-basearen bide-izena definitu gabe dago\n"
@@ -286,12 +286,12 @@ msgstr "%s ezabatuko da bere %s menpekotasuna eta gero\n"
msgid "%s will be installed before its %s dependency\n"
msgstr "%s instalatuko da bere %s menpekotasuna baino lehenago\n"
#: lib/libalpm/deps.c:681 lib/libalpm/deps.c:712
#: lib/libalpm/deps.c:666 lib/libalpm/deps.c:697
#, c-format
msgid "ignoring package %s-%s\n"
msgstr "paketea ezikusten %s-%s\n"
#: lib/libalpm/deps.c:869
#: lib/libalpm/deps.c:842
#, c-format
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
msgstr "ezin ebatzi \"%s\", \"%s\" paketearen menpekotasun bat\n"
@@ -347,44 +347,70 @@ msgstr "ezin izan da %s erro muntatze puntua zehaztu\n"
msgid "Partition %s is mounted read only\n"
msgstr "%s partizioa soilik irakurtzeko moduan muntatuta dago\n"
#: lib/libalpm/dload.c:161
#: lib/libalpm/dload.c:116
#, c-format
msgid ""
"too many errors from %s, skipping for the remainder of this transaction\n"
msgstr ""
#: lib/libalpm/dload.c:220
#, c-format
msgid "disk"
msgstr "diskoa"
#: lib/libalpm/dload.c:348
#: lib/libalpm/dload.c:392
#, c-format
msgid "failed to create temporary file for download\n"
msgstr "huts egin du deskargarako behin behineko fitxategiaren sorrerak\n"
#: lib/libalpm/dload.c:393
#, c-format
msgid "url '%s' is invalid\n"
msgstr ""
"'%s' url baliogabea da\n"
"\n"
#: lib/libalpm/dload.c:464 lib/libalpm/dload.c:485 lib/libalpm/dload.c:496
#: lib/libalpm/dload.c:509 lib/libalpm/dload.c:547 lib/libalpm/dload.c:561
#, c-format
msgid "failed retrieving file '%s' from %s : %s\n"
msgstr "huts egin du '%s' fitxategia '%s'-tik erauzteak: %s\n"
#: lib/libalpm/dload.c:477
#: lib/libalpm/dload.c:539
#, c-format
msgid "failed retrieving file '%s' from %s : expected download size exceeded\n"
msgstr ""
"huts egin du '%s' fitxategia eskuratzean hemendik: %s : aurreikusitako "
"deskarga tamaina gainditu da\n"
#: lib/libalpm/dload.c:532
#: lib/libalpm/dload.c:687
#, c-format
msgid "%s appears to be truncated: %jd/%jd bytes\n"
msgstr "%s ez dago osorik antza: %jd/%jd byte\n"
#: lib/libalpm/dload.c:677 lib/libalpm/dload.c:706
#: lib/libalpm/dload.c:787
#, c-format
msgid "failed to download %s\n"
msgstr "%s deskargatzeak huts egin du\n"
msgid "url '%s' is invalid\n"
msgstr ""
"'%s' url baliogabea da\n"
"\n"
#: lib/libalpm/dload.c:893
#, c-format
msgid "failed to setup a download payload for %s\n"
msgstr ""
#: lib/libalpm/dload.c:905
#, c-format
msgid "curl returned error %d from transfer\n"
msgstr ""
#: lib/libalpm/dload.c:929
#, c-format
msgid "curl transfer error: %d\n"
msgstr ""
#: lib/libalpm/dload.c:1055 lib/libalpm/sync.c:840
#, c-format
msgid "failed to retrieve some files\n"
msgstr "fitxategi batzuk eskuratzeak huts egin du\n"
#: lib/libalpm/dload.c:1078
#, c-format
msgid "download completed successfully but no file in the cache\n"
msgstr ""
#: lib/libalpm/error.c:40
#, c-format
@@ -501,7 +527,7 @@ msgstr "ez da zerbitzaririk konfiguratu biltegiarentzat"
msgid "transaction already initialized"
msgstr "transakzioa dagoeneko hasieratua"
#: lib/libalpm/error.c:90 lib/libalpm/error.c:94
#: lib/libalpm/error.c:90 lib/libalpm/error.c:96
#, c-format
msgid "transaction not initialized"
msgstr "transakzioa ez hasieratua"
@@ -511,86 +537,86 @@ msgstr "transakzioa ez hasieratua"
msgid "duplicate target"
msgstr "bikoiztutako helburua"
#: lib/libalpm/error.c:96
#: lib/libalpm/error.c:94
#, c-format
msgid "duplicate filename"
msgstr ""
#: lib/libalpm/error.c:98
#, c-format
msgid "transaction not prepared"
msgstr "transakzioa ez dago prest"
#: lib/libalpm/error.c:98
#: lib/libalpm/error.c:100
#, c-format
msgid "transaction aborted"
msgstr "transakzioa bertan behera utzi da"
#: lib/libalpm/error.c:100
#: lib/libalpm/error.c:102
#, c-format
msgid "operation not compatible with the transaction type"
msgstr "eragiketa ez da transakzio motarekin bateragarria"
#: lib/libalpm/error.c:102
#: lib/libalpm/error.c:104
#, c-format
msgid "transaction commit attempt when database is not locked"
msgstr "transakzioa egikaritzeko saiakera datu-basea blokeatuta ez dagoenean"
#: lib/libalpm/error.c:104
#: lib/libalpm/error.c:106
#, c-format
msgid "failed to run transaction hooks"
msgstr "huts egin du transakzioaren kakoak abiatzean"
#: lib/libalpm/error.c:107
#: lib/libalpm/error.c:109
#, c-format
msgid "could not find or read package"
msgstr "ezin izan da paketea aurkitu edo irakurri"
#: lib/libalpm/error.c:109
#: lib/libalpm/error.c:111
#, c-format
msgid "operation cancelled due to ignorepkg"
msgstr "eragiketa bertan behera utzi da ignorepkg dela eta"
#: lib/libalpm/error.c:111
#: lib/libalpm/error.c:113
#, c-format
msgid "invalid or corrupted package"
msgstr "pakete baliogabe edo hondatua"
#: lib/libalpm/error.c:113
#: lib/libalpm/error.c:115
#, c-format
msgid "invalid or corrupted package (checksum)"
msgstr "pakete baliogabe edo hondatua (checksum)"
#: lib/libalpm/error.c:115
#: lib/libalpm/error.c:117
#, c-format
msgid "invalid or corrupted package (PGP signature)"
msgstr "pakete baliogabe edo hondatua (PGP sinadura)"
#: lib/libalpm/error.c:117
#: lib/libalpm/error.c:119
#, c-format
msgid "package missing required signature"
msgstr "paketeari beharrezko sinadura falta zaio"
#: lib/libalpm/error.c:119
#: lib/libalpm/error.c:121
#, c-format
msgid "cannot open package file"
msgstr "ezin ireki pakete fitxategia"
#: lib/libalpm/error.c:121
#: lib/libalpm/error.c:123
#, c-format
msgid "cannot remove all files for package"
msgstr "ezin ezabatu paketeko fitxategi guztiak"
#: lib/libalpm/error.c:123
#: lib/libalpm/error.c:125
#, c-format
msgid "package filename is not valid"
msgstr "paketearen fitxategi izena baliogabea da"
#: lib/libalpm/error.c:125
#: lib/libalpm/error.c:127
#, c-format
msgid "package architecture is not valid"
msgstr "paketearen arkitektura baliogabea da"
#: lib/libalpm/error.c:127
#, c-format
msgid "could not find repository for target"
msgstr "ezin izan da biltegirik aurkitu helburuarentzat"
#: lib/libalpm/error.c:130
#, c-format
msgid "missing PGP signature"
@@ -656,12 +682,12 @@ msgstr ""
msgid "unexpected error"
msgstr "ustegabeko errorea"
#: lib/libalpm/handle.c:153
#: lib/libalpm/handle.c:142
#, c-format
msgid "lock file missing %s\n"
msgstr "blokeo fitxategia falta da %s\n"
#: lib/libalpm/handle.c:159
#: lib/libalpm/handle.c:148
#, c-format
msgid "could not remove lock file %s\n"
msgstr "ezin izan da %s blokeo fitxategia ezabatu\n"
@@ -733,7 +759,7 @@ msgstr ""
msgid "unable to run hook %s: %s\n"
msgstr ""
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:386
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:378
#, c-format
msgid "could not open directory: %s: %s\n"
msgstr "ezin izan da direktorioa ireki: %s: %s\n"
@@ -743,7 +769,7 @@ msgstr "ezin izan da direktorioa ireki: %s: %s\n"
msgid "could not open file: %s%s: %s\n"
msgstr ""
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:259
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:260
#, c-format
msgid "could not stat file %s: %s\n"
msgstr "ezin izan da fitxategiaren egoera zehaztu: %s: %s\n"
@@ -753,183 +779,183 @@ msgstr "ezin izan da fitxategiaren egoera zehaztu: %s: %s\n"
msgid "could not read directory: %s: %s\n"
msgstr ""
#: lib/libalpm/package.c:578
#: lib/libalpm/package.c:598
#, c-format
msgid "could not fully load metadata for package %s-%s\n"
msgstr "ezin izan dira %s-%s paketearen meta-datuak guztiz kargatu\n"
#: lib/libalpm/remove.c:119
#: lib/libalpm/remove.c:111
#, c-format
msgid "could not find %s in database -- skipping\n"
msgstr "ezin izan da %s aurkitu datu-basean -- ezikusi\n"
#: lib/libalpm/remove.c:154
#: lib/libalpm/remove.c:146
#, c-format
msgid "removing %s from target list\n"
msgstr "%s helburu zerrendatik ezabatzen\n"
#: lib/libalpm/remove.c:346
#: lib/libalpm/remove.c:338
#, c-format
msgid "cannot remove file '%s': %s\n"
msgstr "ezin '%s' fitxategia ezabatu: %s\n"
#: lib/libalpm/remove.c:411 lib/libalpm/remove.c:420
#: lib/libalpm/remove.c:403 lib/libalpm/remove.c:412
#, c-format
msgid "could not backup %s due to PATH_MAX overflow\n"
msgstr ""
#: lib/libalpm/remove.c:562
#: lib/libalpm/remove.c:554
#, c-format
msgid "cannot remove %s (%s)\n"
msgstr "ezin ezabatu %s (%s)\n"
#: lib/libalpm/remove.c:735
#: lib/libalpm/remove.c:727
#, c-format
msgid "could not remove database entry %s-%s\n"
msgstr "ezin izan da datu-base sarrera ezabatu %s-%s\n"
#: lib/libalpm/remove.c:740
#: lib/libalpm/remove.c:732
#, c-format
msgid "could not remove entry '%s' from cache\n"
msgstr "ezin izan da '%s' sarrera ezabatu katxetik\n"
#: lib/libalpm/signing.c:171
#: lib/libalpm/signing.c:163
#, c-format
msgid "Public keyring not found; have you run '%s'?\n"
msgstr ""
#: lib/libalpm/signing.c:207 lib/libalpm/signing.c:784
#: lib/libalpm/signing.c:199 lib/libalpm/signing.c:767
#, c-format
msgid "GPGME error: %s\n"
msgstr ""
#: lib/libalpm/signing.c:284
#: lib/libalpm/signing.c:274
#, c-format
msgid "looking up key %s using WKD\n"
msgstr ""
#: lib/libalpm/signing.c:293
#: lib/libalpm/signing.c:283
#, c-format
msgid "gpg error: %s\n"
msgstr ""
#: lib/libalpm/signing.c:441 lib/libalpm/signing.c:515
#: lib/libalpm/signing.c:430 lib/libalpm/signing.c:503
#, c-format
msgid "keyring is not writable\n"
msgstr ""
#: lib/libalpm/signing.c:539
#: lib/libalpm/signing.c:531
#, c-format
msgid "key \"%s\" on keyserver\n"
msgstr ""
#: lib/libalpm/signing.c:544
#: lib/libalpm/signing.c:536
#, c-format
msgid "key \"%s\" could not be imported\n"
msgstr ""
#: lib/libalpm/signing.c:548
#: lib/libalpm/signing.c:540
#, c-format
msgid "key \"%s\" could not be looked up remotely\n"
msgstr ""
#: lib/libalpm/signing.c:943 lib/libalpm/sync.c:1022
#: lib/libalpm/signing.c:926 lib/libalpm/sync.c:1022
#, c-format
msgid "%s: missing required signature\n"
msgstr "%s: beharrezko sinadura falta da\n"
#: lib/libalpm/signing.c:958
#: lib/libalpm/signing.c:941
#, c-format
msgid "%s: signature from \"%s\" is marginal trust\n"
msgstr ""
#: lib/libalpm/signing.c:966
#: lib/libalpm/signing.c:949
#, c-format
msgid "%s: signature from \"%s\" is unknown trust\n"
msgstr ""
#: lib/libalpm/signing.c:973
#: lib/libalpm/signing.c:956
#, c-format
msgid "%s: signature from \"%s\" should never be trusted\n"
msgstr ""
#: lib/libalpm/signing.c:985
#: lib/libalpm/signing.c:968
#, c-format
msgid "%s: key \"%s\" is unknown\n"
msgstr ""
#: lib/libalpm/signing.c:994
#: lib/libalpm/signing.c:977
#, c-format
msgid "%s: key \"%s\" is disabled\n"
msgstr ""
#: lib/libalpm/signing.c:998
#: lib/libalpm/signing.c:981
#, c-format
msgid "%s: signature from \"%s\" is expired\n"
msgstr ""
#: lib/libalpm/signing.c:1002
#: lib/libalpm/signing.c:985
#, c-format
msgid "%s: signature from \"%s\" is invalid\n"
msgstr ""
#: lib/libalpm/signing.c:1079 lib/libalpm/signing.c:1147
#: lib/libalpm/signing.c:1226
#: lib/libalpm/signing.c:1043 lib/libalpm/signing.c:1104
#: lib/libalpm/signing.c:1183
#, c-format
msgid "%s: signature format error\n"
msgstr ""
#: lib/libalpm/signing.c:1179 lib/libalpm/signing.c:1212
#: lib/libalpm/signing.c:1220
#: lib/libalpm/signing.c:1136 lib/libalpm/signing.c:1169
#: lib/libalpm/signing.c:1177
#, c-format
msgid "%s: unsupported signature format\n"
msgstr ""
#: lib/libalpm/sync.c:99
#: lib/libalpm/sync.c:96
#, c-format
msgid "%s: ignoring package upgrade (%s => %s)\n"
msgstr "%s: ezikusi pakete bertsio berritzea (%s => %s)\n"
#: lib/libalpm/sync.c:111
#: lib/libalpm/sync.c:108
#, c-format
msgid "%s: ignoring package downgrade (%s => %s)\n"
msgstr "%s: ezikusi paketea bertsio zahartzea (%s => %s)\n"
#: lib/libalpm/sync.c:114
#: lib/libalpm/sync.c:111
#, c-format
msgid "%s: downgrading from version %s to version %s\n"
msgstr "%s: bertsio zahartzen %s bertsiotik %s bertsiora\n"
#: lib/libalpm/sync.c:120
#: lib/libalpm/sync.c:117
#, c-format
msgid "%s: local (%s) is newer than %s (%s)\n"
msgstr "%s: lokala (%s) %s (%s) baino berriagoa da\n"
#: lib/libalpm/sync.c:161
#: lib/libalpm/sync.c:158
#, c-format
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
msgstr "ezikusi pakete ordezkapena (%s-%s => %s-%s)\n"
#: lib/libalpm/sync.c:177
#: lib/libalpm/sync.c:174
#, c-format
msgid "cannot replace %s by %s\n"
msgstr "ezin %s ordezkatu %s paketearekin\n"
#: lib/libalpm/sync.c:535 lib/libalpm/sync.c:605
#: lib/libalpm/sync.c:476
#, c-format
msgid "packages %s and %s have the same filename: %s\n"
msgstr ""
#: lib/libalpm/sync.c:542 lib/libalpm/sync.c:612
#, c-format
msgid "unresolvable package conflicts detected\n"
msgstr "ebatzi ezineko paketeen arteko gatazka detektatu da\n"
#: lib/libalpm/sync.c:555
#: lib/libalpm/sync.c:562
#, c-format
msgid "removing '%s' from target list because it conflicts with '%s'\n"
msgstr "'%s' helburutik ezabatzen gatazka sortzen duelako '%s' paketearekin\n"
#: lib/libalpm/sync.c:849
#, c-format
msgid "failed to retrieve some files\n"
msgstr "fitxategi batzuk eskuratzeak huts egin du\n"
#: lib/libalpm/sync.c:1036
#, c-format
msgid "failed to read file %s: %s\n"
@@ -950,82 +976,82 @@ msgstr "ezin izan da ezabaketa transakzioa egikaritu\n"
msgid "could not commit transaction\n"
msgstr "ezin izan da transakzioa egikaritu\n"
#: lib/libalpm/trans.c:364
#: lib/libalpm/trans.c:365
#, c-format
msgid "could not create temp directory\n"
msgstr "ezin izan da temp direktorioa sortu\n"
#: lib/libalpm/trans.c:379
#: lib/libalpm/trans.c:380
#, c-format
msgid "could not copy tempfile to %s (%s)\n"
msgstr "ezin izan da tempfile hona kopiatu %s (%s)\n"
#: lib/libalpm/trans.c:410
#: lib/libalpm/trans.c:411
#, c-format
msgid "could not remove %s\n"
msgstr "ezin izan da %s ezabatu\n"
#: lib/libalpm/trans.c:414
#: lib/libalpm/trans.c:415
#, c-format
msgid "could not remove tmpdir %s\n"
msgstr "ezin tempdir ezabatu %s\n"
#: lib/libalpm/util.c:486
#: lib/libalpm/util.c:488
#, c-format
msgid "unable to write to pipe (%s)\n"
msgstr "ezin izan da kanalizazioan idatzi (%s)\n"
#: lib/libalpm/util.c:545
#: lib/libalpm/util.c:547
#, c-format
msgid "unable to read from pipe (%s)\n"
msgstr "ezin izan da kanalizaziotik irakurri (%s)\n"
#: lib/libalpm/util.c:609 lib/libalpm/util.c:615
#: lib/libalpm/util.c:617 lib/libalpm/util.c:623
#, c-format
msgid "could not create pipe (%s)\n"
msgstr "ezin izan da kanalizazioa sortu (%s)\n"
#: lib/libalpm/util.c:623
#: lib/libalpm/util.c:631
#, c-format
msgid "could not fork a new process (%s)\n"
msgstr "ezin izan da prozesu berri bat sardetu (%s)\n"
#: lib/libalpm/util.c:646
#: lib/libalpm/util.c:654
#, c-format
msgid "could not change the root directory (%s)\n"
msgstr "ezin izan da erro direktorioa aldatu (%s)\n"
#: lib/libalpm/util.c:658
#: lib/libalpm/util.c:666
#, c-format
msgid "call to execv failed (%s)\n"
msgstr "execv deiak huts egin du (%s)\n"
#: lib/libalpm/util.c:737
#: lib/libalpm/util.c:745
#, c-format
msgid "call to waitpid failed (%s)\n"
msgstr "waitpid deiak huts egin du (%s)\n"
#: lib/libalpm/util.c:747
#: lib/libalpm/util.c:755
#, c-format
msgid "command failed to execute correctly\n"
msgstr "komandoa ez da behar bezala exekutatu\n"
#: lib/libalpm/util.c:754
#: lib/libalpm/util.c:762
#, c-format
msgid "Unknown signal"
msgstr "Seinale ezezaguna"
#: lib/libalpm/util.c:756
#: lib/libalpm/util.c:764
#, c-format
msgid "command terminated by signal %d: %s\n"
msgstr "%d seinaleak eten du komandoa: %s\n"
#: lib/libalpm/util.c:853
#: lib/libalpm/util.c:875
#, c-format
msgid "no %s cache exists, creating...\n"
msgstr "ez dago %s katxerik, sortzen...\n"
#: lib/libalpm/util.c:884
#: lib/libalpm/util.c:906
#, c-format
msgid "couldn't find or create package cache, using %s instead\n"
msgstr "ezin izan da pakete katxea aurkitu edo sortu, %s erabiliko da ordez\n"

View File

@@ -1,6 +1,6 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Pacman Development Team <pacman-dev@archlinux.org>
# This file is distributed under the same license as the PACKAGE package.
# Copyright (C) YEAR "Pacman Development Team <pacman-dev@archlinux.org>"
# This file is distributed under the same license as the libalpm package.
#
# Translators:
# Osoitz <oelkoro@gmail.com>, 2013
@@ -8,8 +8,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Arch Linux Pacman package manager\n"
"Report-Msgid-Bugs-To: http://bugs.archlinux.org/index.php?project=3\n"
"POT-Creation-Date: 2019-10-21 17:23+1000\n"
"PO-Revision-Date: 2019-10-07 08:12+0000\n"
"POT-Creation-Date: 2021-09-04 16:15+1000\n"
"PO-Revision-Date: 2021-05-20 02:25+0000\n"
"Last-Translator: Allan McRae <allan@archlinux.org>\n"
"Language-Team: Basque (Spain) (http://www.transifex.com/toofishes/archlinux-"
"pacman/language/eu_ES/)\n"
@@ -19,17 +19,17 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: lib/libalpm/add.c:91 lib/libalpm/sync.c:290
#: lib/libalpm/add.c:90 lib/libalpm/sync.c:279
#, c-format
msgid "%s-%s is up to date -- skipping\n"
msgstr "%s-%s egunean dago -- ezikusi\n"
#: lib/libalpm/add.c:95
#: lib/libalpm/add.c:94
#, c-format
msgid "%s-%s is up to date -- reinstalling\n"
msgstr "%s-%s egunean dago -- berrinstalatu\n"
#: lib/libalpm/add.c:100
#: lib/libalpm/add.c:99
#, c-format
msgid "downgrading package %s (%s => %s)\n"
msgstr "bertsio zahartzen %s paketea (%s => %s)\n"
@@ -39,17 +39,17 @@ msgstr "bertsio zahartzen %s paketea (%s => %s)\n"
msgid "cannot allocate disk archive object"
msgstr ""
#: lib/libalpm/add.c:143 lib/libalpm/util.c:382
#: lib/libalpm/add.c:143 lib/libalpm/util.c:384
#, c-format
msgid "warning given when extracting %s (%s)\n"
msgstr "oharra eman da %s erauztean (%s)\n"
#: lib/libalpm/add.c:146 lib/libalpm/util.c:385
#: lib/libalpm/add.c:146 lib/libalpm/util.c:387
#, c-format
msgid "could not extract %s (%s)\n"
msgstr "ezin izan da %s erauzi (%s)\n"
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:574 lib/libalpm/remove.c:542
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:709 lib/libalpm/remove.c:534
#, c-format
msgid "could not rename %s to %s (%s)\n"
msgstr "ezin izan da %s berrizendatu %s gisa (%s)\n"
@@ -95,139 +95,139 @@ msgstr "erauzi: ez da direktorioa %s fitxategiarekin gainidatziko\n"
msgid "unable to extract %s.pacnew: path too long"
msgstr "ezin izan da %s.pacnew erauzi: bidea luzeegia da"
#: lib/libalpm/add.c:513 lib/libalpm/util.c:334 lib/libalpm/util.c:592
#: lib/libalpm/add.c:510 lib/libalpm/util.c:335 lib/libalpm/util.c:600
#, c-format
msgid "could not get current working directory\n"
msgstr "ezin izan da uneko lan direktorioa lortu\n"
#: lib/libalpm/add.c:518 lib/libalpm/util.c:339 lib/libalpm/util.c:597
#: lib/libalpm/util.c:650
#: lib/libalpm/add.c:515 lib/libalpm/util.c:340 lib/libalpm/util.c:605
#: lib/libalpm/util.c:658
#, c-format
msgid "could not change directory to %s (%s)\n"
msgstr "ezin izan da direktorioa hona aldatu %s (%s)\n"
#: lib/libalpm/add.c:575 lib/libalpm/util.c:403 lib/libalpm/util.c:766
#: lib/libalpm/add.c:571 lib/libalpm/util.c:405 lib/libalpm/util.c:774
#, c-format
msgid "could not restore working directory (%s)\n"
msgstr "ezin izan da laneko direktorioa berreskuratu (%s)\n"
#: lib/libalpm/add.c:583
#: lib/libalpm/add.c:579
#, c-format
msgid "problem occurred while upgrading %s\n"
msgstr "arazo bat egon da %s bertsio berritzean\n"
#: lib/libalpm/add.c:589
#: lib/libalpm/add.c:585
#, c-format
msgid "problem occurred while installing %s\n"
msgstr "arazo bat egon da %s instalatzean\n"
#: lib/libalpm/add.c:604
#: lib/libalpm/add.c:600
#, c-format
msgid "could not update database entry %s-%s\n"
msgstr "ezin izan da datu-base sarrera eguneratu %s-%s\n"
#: lib/libalpm/add.c:615
#: lib/libalpm/add.c:610
#, c-format
msgid "could not add entry '%s' in cache\n"
msgstr "ezin izan da '%s' sarrera katxean gehitu\n"
#: lib/libalpm/be_local.c:267
#: lib/libalpm/be_local.c:266
#, c-format
msgid "error while reading file %s: %s\n"
msgstr "errorea %s fitxategia irakurtzean: %s\n"
#: lib/libalpm/be_local.c:364
#: lib/libalpm/be_local.c:376
#, c-format
msgid "removing invalid database: %s\n"
msgstr "datu-base baliogabea ezabatzen:%s\n"
#: lib/libalpm/be_local.c:415 lib/libalpm/be_local.c:905
#: lib/libalpm/be_local.c:427 lib/libalpm/be_local.c:909
#, c-format
msgid "could not create directory %s: %s\n"
msgstr ""
"ezin izan da %s direktorioa sortu: %s\n"
"\n"
#: lib/libalpm/be_local.c:590 lib/libalpm/be_sync.c:386
#: lib/libalpm/be_local.c:602 lib/libalpm/be_sync.c:322
#, c-format
msgid "invalid name for database entry '%s'\n"
msgstr "izen baliogabea '%s' datu-base sarreran\n"
#: lib/libalpm/be_local.c:598
#: lib/libalpm/be_local.c:610
#, c-format
msgid "duplicated database entry '%s'\n"
msgstr "bikoiztutako datu-base sarrera '%s'\n"
#: lib/libalpm/be_local.c:610
#: lib/libalpm/be_local.c:622
#, c-format
msgid "corrupted database entry '%s'\n"
msgstr "datu-base sarrera hondatua '%s'\n"
#: lib/libalpm/be_local.c:713 lib/libalpm/be_local.c:809
#: lib/libalpm/be_local.c:954 lib/libalpm/be_local.c:1051
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:422 lib/libalpm/util.c:253
#: lib/libalpm/util.c:269
#: lib/libalpm/be_local.c:722 lib/libalpm/be_local.c:818
#: lib/libalpm/be_local.c:958 lib/libalpm/be_local.c:1055
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:823 lib/libalpm/util.c:254
#: lib/libalpm/util.c:270
#, c-format
msgid "could not open file %s: %s\n"
msgstr "ezin izan da %s fitxategia ireki: %s\n"
#: lib/libalpm/be_local.c:729 lib/libalpm/be_sync.c:650
#: lib/libalpm/be_local.c:738 lib/libalpm/be_sync.c:582
#, c-format
msgid "%s database is inconsistent: name mismatch on package %s\n"
msgstr "%s datu-basea kontraesankorra da: izenak ez datoz bat %s paketean\n"
#: lib/libalpm/be_local.c:735 lib/libalpm/be_sync.c:656
#: lib/libalpm/be_local.c:744 lib/libalpm/be_sync.c:588
#, c-format
msgid "%s database is inconsistent: version mismatch on package %s\n"
msgstr "%s datu-basea kontraesankorra da: bertsioak ez datoz bat %s paketean\n"
#: lib/libalpm/be_local.c:776
#: lib/libalpm/be_local.c:785
#, c-format
msgid "unknown validation type for package %s: %s\n"
msgstr "Balidazio mota ezezaguna %s paketearentzat: %s\n"
#: lib/libalpm/be_package.c:479 lib/libalpm/be_package.c:637
#: lib/libalpm/be_package.c:650
#: lib/libalpm/be_package.c:478 lib/libalpm/be_package.c:631
#: lib/libalpm/be_package.c:643
#, c-format
msgid "error while reading package %s: %s\n"
msgstr "errorea %s paketea irakurtzean: %s\n"
#: lib/libalpm/be_package.c:493 lib/libalpm/be_package.c:517
#: lib/libalpm/be_package.c:491 lib/libalpm/be_package.c:514
#, c-format
msgid "error while reading mtree of package %s: %s\n"
msgstr "errorea %s paketearen mtree-a irakurtzean: %s\n"
#: lib/libalpm/be_package.c:603
#: lib/libalpm/be_package.c:597
#, c-format
msgid "could not parse package description file in %s\n"
msgstr "ezin izan da paketearen deskripzioa prozesatu %s fitxategian\n"
#: lib/libalpm/be_package.c:608
#: lib/libalpm/be_package.c:602
#, c-format
msgid "missing package name in %s\n"
msgstr "paketearen izena falta da hemen: %s\n"
#: lib/libalpm/be_package.c:612
#: lib/libalpm/be_package.c:606
#, c-format
msgid "missing package version in %s\n"
msgstr "paketearen bertsioa falta da hemen: %s\n"
#: lib/libalpm/be_package.c:616
#: lib/libalpm/be_package.c:610
#, c-format
msgid "invalid package version in %s\n"
msgstr "paketearen bertsio baliogabea hemen %s\n"
#: lib/libalpm/be_package.c:657
#: lib/libalpm/be_package.c:649
#, c-format
msgid "missing package metadata in %s\n"
msgstr "paketearen metadatuak falta dira hemen: %s\n"
#: lib/libalpm/be_package.c:750
#: lib/libalpm/be_package.c:741
#, c-format
msgid "failed to read signature file: %s\n"
msgstr "sinadura fitxategiaren irakurketak huts egin du: %s\n"
#: lib/libalpm/be_package.c:779 lib/libalpm/sync.c:953
#: lib/libalpm/be_package.c:770 lib/libalpm/sync.c:953
#, c-format
msgid "required key missing from keyring\n"
msgstr "beharrezko gakoa falta da gako sortan\n"
@@ -237,35 +237,35 @@ msgstr "beharrezko gakoa falta da gako sortan\n"
msgid "removing invalid file: %s\n"
msgstr "fitxategi baliogabea ezabatzen: %s\n"
#: lib/libalpm/be_sync.c:515
#: lib/libalpm/be_sync.c:449
#, c-format
msgid "could not parse package description file '%s' from db '%s'\n"
msgstr "ezin izan da '%s' fitxategi deskripzioa prozesatu '%s' datu-basetik\n"
#: lib/libalpm/be_sync.c:522
#: lib/libalpm/be_sync.c:456
#, c-format
msgid "could not read db '%s' (%s)\n"
msgstr ""
#: lib/libalpm/be_sync.c:556 lib/libalpm/be_sync.c:561
#: lib/libalpm/be_sync.c:489 lib/libalpm/be_sync.c:494
#, c-format
msgid "%s database is inconsistent: filename of package %s is illegal\n"
msgstr ""
"%s datu-basea kontraesankorra da: %s paketearen fitxategi izena legez "
"kanpokoa da\n"
#: lib/libalpm/be_sync.c:566
#: lib/libalpm/be_sync.c:499
#, c-format
msgid "%s database is inconsistent: filename of package %s is too long\n"
msgstr ""
"%s datu-basea kontraesankorra da: %s paketearen fitxategi izena luzeegia da\n"
#: lib/libalpm/be_sync.c:632
#: lib/libalpm/be_sync.c:564
#, c-format
msgid "unknown database file: %s\n"
msgstr "datu-base fitxategi ezezaguna: %s\n"
#: lib/libalpm/db.c:370
#: lib/libalpm/db.c:344
#, c-format
msgid "database path is undefined\n"
msgstr "datu-basearen bide-izena definitu gabe dago\n"
@@ -285,12 +285,12 @@ msgstr "%s ezabatuko da bere %s menpekotasuna eta gero\n"
msgid "%s will be installed before its %s dependency\n"
msgstr "%s instalatuko da bere %s menpekotasuna baino lehenago\n"
#: lib/libalpm/deps.c:681 lib/libalpm/deps.c:712
#: lib/libalpm/deps.c:666 lib/libalpm/deps.c:697
#, c-format
msgid "ignoring package %s-%s\n"
msgstr "paketea ezikusten %s-%s\n"
#: lib/libalpm/deps.c:869
#: lib/libalpm/deps.c:842
#, c-format
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
msgstr "ezin ebatzi \"%s\", \"%s\" paketearen menpekotasun bat\n"
@@ -346,44 +346,70 @@ msgstr "ezin izan da %s erro muntatze puntua zehaztu\n"
msgid "Partition %s is mounted read only\n"
msgstr "%s partizioa soilik irakurtzeko moduan muntatuta dago\n"
#: lib/libalpm/dload.c:161
#: lib/libalpm/dload.c:116
#, c-format
msgid ""
"too many errors from %s, skipping for the remainder of this transaction\n"
msgstr ""
#: lib/libalpm/dload.c:220
#, c-format
msgid "disk"
msgstr "diskoa"
#: lib/libalpm/dload.c:348
#: lib/libalpm/dload.c:392
#, c-format
msgid "failed to create temporary file for download\n"
msgstr "huts egin du deskargarako behin behineko fitxategiaren sorrerak\n"
#: lib/libalpm/dload.c:393
#, c-format
msgid "url '%s' is invalid\n"
msgstr ""
"'%s' url baliogabea da\n"
"\n"
#: lib/libalpm/dload.c:464 lib/libalpm/dload.c:485 lib/libalpm/dload.c:496
#: lib/libalpm/dload.c:509 lib/libalpm/dload.c:547 lib/libalpm/dload.c:561
#, c-format
msgid "failed retrieving file '%s' from %s : %s\n"
msgstr "huts egin du '%s' fitxategia '%s'-tik erauzteak: %s\n"
#: lib/libalpm/dload.c:477
#: lib/libalpm/dload.c:539
#, c-format
msgid "failed retrieving file '%s' from %s : expected download size exceeded\n"
msgstr ""
"huts egin du '%s' fitxategia eskuratzean hemendik: %s : aurreikusitako "
"deskarga tamaina gainditu da\n"
#: lib/libalpm/dload.c:532
#: lib/libalpm/dload.c:687
#, c-format
msgid "%s appears to be truncated: %jd/%jd bytes\n"
msgstr "%s ez dago osorik antza: %jd/%jd byte\n"
#: lib/libalpm/dload.c:677 lib/libalpm/dload.c:706
#: lib/libalpm/dload.c:787
#, c-format
msgid "failed to download %s\n"
msgstr "%s deskargatzeak huts egin du\n"
msgid "url '%s' is invalid\n"
msgstr ""
"'%s' url baliogabea da\n"
"\n"
#: lib/libalpm/dload.c:893
#, c-format
msgid "failed to setup a download payload for %s\n"
msgstr ""
#: lib/libalpm/dload.c:905
#, c-format
msgid "curl returned error %d from transfer\n"
msgstr ""
#: lib/libalpm/dload.c:929
#, c-format
msgid "curl transfer error: %d\n"
msgstr ""
#: lib/libalpm/dload.c:1055 lib/libalpm/sync.c:840
#, c-format
msgid "failed to retrieve some files\n"
msgstr "fitxategi batzuk eskuratzeak huts egin du\n"
#: lib/libalpm/dload.c:1078
#, c-format
msgid "download completed successfully but no file in the cache\n"
msgstr ""
#: lib/libalpm/error.c:40
#, c-format
@@ -500,7 +526,7 @@ msgstr "ez da zerbitzaririk konfiguratu biltegiarentzat"
msgid "transaction already initialized"
msgstr "transakzioa dagoeneko hasieratua"
#: lib/libalpm/error.c:90 lib/libalpm/error.c:94
#: lib/libalpm/error.c:90 lib/libalpm/error.c:96
#, c-format
msgid "transaction not initialized"
msgstr "transakzioa ez hasieratua"
@@ -510,86 +536,86 @@ msgstr "transakzioa ez hasieratua"
msgid "duplicate target"
msgstr "bikoiztutako helburua"
#: lib/libalpm/error.c:96
#: lib/libalpm/error.c:94
#, c-format
msgid "duplicate filename"
msgstr ""
#: lib/libalpm/error.c:98
#, c-format
msgid "transaction not prepared"
msgstr "transakzioa ez dago prest"
#: lib/libalpm/error.c:98
#: lib/libalpm/error.c:100
#, c-format
msgid "transaction aborted"
msgstr "transakzioa bertan behera utzi da"
#: lib/libalpm/error.c:100
#: lib/libalpm/error.c:102
#, c-format
msgid "operation not compatible with the transaction type"
msgstr "eragiketa ez da transakzio motarekin bateragarria"
#: lib/libalpm/error.c:102
#: lib/libalpm/error.c:104
#, c-format
msgid "transaction commit attempt when database is not locked"
msgstr "transakzioa egikaritzeko saiakera datu-basea blokeatuta ez dagoenean"
#: lib/libalpm/error.c:104
#: lib/libalpm/error.c:106
#, c-format
msgid "failed to run transaction hooks"
msgstr "huts egin du transakzioaren kakoak abiatzean"
#: lib/libalpm/error.c:107
#: lib/libalpm/error.c:109
#, c-format
msgid "could not find or read package"
msgstr "ezin izan da paketea aurkitu edo irakurri"
#: lib/libalpm/error.c:109
#: lib/libalpm/error.c:111
#, c-format
msgid "operation cancelled due to ignorepkg"
msgstr "eragiketa bertan behera utzi da ignorepkg dela eta"
#: lib/libalpm/error.c:111
#: lib/libalpm/error.c:113
#, c-format
msgid "invalid or corrupted package"
msgstr "pakete baliogabe edo hondatua"
#: lib/libalpm/error.c:113
#: lib/libalpm/error.c:115
#, c-format
msgid "invalid or corrupted package (checksum)"
msgstr "pakete baliogabe edo hondatua (checksum)"
#: lib/libalpm/error.c:115
#: lib/libalpm/error.c:117
#, c-format
msgid "invalid or corrupted package (PGP signature)"
msgstr "pakete baliogabe edo hondatua (PGP sinadura)"
#: lib/libalpm/error.c:117
#: lib/libalpm/error.c:119
#, c-format
msgid "package missing required signature"
msgstr "paketeari beharrezko sinadura falta zaio"
#: lib/libalpm/error.c:119
#: lib/libalpm/error.c:121
#, c-format
msgid "cannot open package file"
msgstr "ezin ireki pakete fitxategia"
#: lib/libalpm/error.c:121
#: lib/libalpm/error.c:123
#, c-format
msgid "cannot remove all files for package"
msgstr "ezin ezabatu paketeko fitxategi guztiak"
#: lib/libalpm/error.c:123
#: lib/libalpm/error.c:125
#, c-format
msgid "package filename is not valid"
msgstr "paketearen fitxategi izena baliogabea da"
#: lib/libalpm/error.c:125
#: lib/libalpm/error.c:127
#, c-format
msgid "package architecture is not valid"
msgstr "paketearen arkitektura baliogabea da"
#: lib/libalpm/error.c:127
#, c-format
msgid "could not find repository for target"
msgstr "ezin izan da biltegirik aurkitu helburuarentzat"
#: lib/libalpm/error.c:130
#, c-format
msgid "missing PGP signature"
@@ -655,12 +681,12 @@ msgstr ""
msgid "unexpected error"
msgstr "ustegabeko errorea"
#: lib/libalpm/handle.c:153
#: lib/libalpm/handle.c:142
#, c-format
msgid "lock file missing %s\n"
msgstr "blokeo fitxategia falta da %s\n"
#: lib/libalpm/handle.c:159
#: lib/libalpm/handle.c:148
#, c-format
msgid "could not remove lock file %s\n"
msgstr "ezin izan da %s blokeo fitxategia ezabatu\n"
@@ -732,7 +758,7 @@ msgstr ""
msgid "unable to run hook %s: %s\n"
msgstr ""
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:386
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:378
#, c-format
msgid "could not open directory: %s: %s\n"
msgstr "ezin izan da direktorioa ireki: %s: %s\n"
@@ -742,7 +768,7 @@ msgstr "ezin izan da direktorioa ireki: %s: %s\n"
msgid "could not open file: %s%s: %s\n"
msgstr ""
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:259
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:260
#, c-format
msgid "could not stat file %s: %s\n"
msgstr "ezin izan da fitxategiaren egoera zehaztu: %s: %s\n"
@@ -752,183 +778,183 @@ msgstr "ezin izan da fitxategiaren egoera zehaztu: %s: %s\n"
msgid "could not read directory: %s: %s\n"
msgstr ""
#: lib/libalpm/package.c:578
#: lib/libalpm/package.c:598
#, c-format
msgid "could not fully load metadata for package %s-%s\n"
msgstr "ezin izan dira %s-%s paketearen meta-datuak guztiz kargatu\n"
#: lib/libalpm/remove.c:119
#: lib/libalpm/remove.c:111
#, c-format
msgid "could not find %s in database -- skipping\n"
msgstr "ezin izan da %s aurkitu datu-basean -- ezikusi\n"
#: lib/libalpm/remove.c:154
#: lib/libalpm/remove.c:146
#, c-format
msgid "removing %s from target list\n"
msgstr "%s helburu zerrendatik ezabatzen\n"
#: lib/libalpm/remove.c:346
#: lib/libalpm/remove.c:338
#, c-format
msgid "cannot remove file '%s': %s\n"
msgstr "ezin '%s' fitxategia ezabatu: %s\n"
#: lib/libalpm/remove.c:411 lib/libalpm/remove.c:420
#: lib/libalpm/remove.c:403 lib/libalpm/remove.c:412
#, c-format
msgid "could not backup %s due to PATH_MAX overflow\n"
msgstr ""
#: lib/libalpm/remove.c:562
#: lib/libalpm/remove.c:554
#, c-format
msgid "cannot remove %s (%s)\n"
msgstr "ezin ezabatu %s (%s)\n"
#: lib/libalpm/remove.c:735
#: lib/libalpm/remove.c:727
#, c-format
msgid "could not remove database entry %s-%s\n"
msgstr "ezin izan da datu-base sarrera ezabatu %s-%s\n"
#: lib/libalpm/remove.c:740
#: lib/libalpm/remove.c:732
#, c-format
msgid "could not remove entry '%s' from cache\n"
msgstr "ezin izan da '%s' sarrera ezabatu katxetik\n"
#: lib/libalpm/signing.c:171
#: lib/libalpm/signing.c:163
#, c-format
msgid "Public keyring not found; have you run '%s'?\n"
msgstr ""
#: lib/libalpm/signing.c:207 lib/libalpm/signing.c:784
#: lib/libalpm/signing.c:199 lib/libalpm/signing.c:767
#, c-format
msgid "GPGME error: %s\n"
msgstr ""
#: lib/libalpm/signing.c:284
#: lib/libalpm/signing.c:274
#, c-format
msgid "looking up key %s using WKD\n"
msgstr ""
#: lib/libalpm/signing.c:293
#: lib/libalpm/signing.c:283
#, c-format
msgid "gpg error: %s\n"
msgstr ""
#: lib/libalpm/signing.c:441 lib/libalpm/signing.c:515
#: lib/libalpm/signing.c:430 lib/libalpm/signing.c:503
#, c-format
msgid "keyring is not writable\n"
msgstr ""
#: lib/libalpm/signing.c:539
#: lib/libalpm/signing.c:531
#, c-format
msgid "key \"%s\" on keyserver\n"
msgstr ""
#: lib/libalpm/signing.c:544
#: lib/libalpm/signing.c:536
#, c-format
msgid "key \"%s\" could not be imported\n"
msgstr ""
#: lib/libalpm/signing.c:548
#: lib/libalpm/signing.c:540
#, c-format
msgid "key \"%s\" could not be looked up remotely\n"
msgstr ""
#: lib/libalpm/signing.c:943 lib/libalpm/sync.c:1022
#: lib/libalpm/signing.c:926 lib/libalpm/sync.c:1022
#, c-format
msgid "%s: missing required signature\n"
msgstr "%s: beharrezko sinadura falta da\n"
#: lib/libalpm/signing.c:958
#: lib/libalpm/signing.c:941
#, c-format
msgid "%s: signature from \"%s\" is marginal trust\n"
msgstr ""
#: lib/libalpm/signing.c:966
#: lib/libalpm/signing.c:949
#, c-format
msgid "%s: signature from \"%s\" is unknown trust\n"
msgstr ""
#: lib/libalpm/signing.c:973
#: lib/libalpm/signing.c:956
#, c-format
msgid "%s: signature from \"%s\" should never be trusted\n"
msgstr ""
#: lib/libalpm/signing.c:985
#: lib/libalpm/signing.c:968
#, c-format
msgid "%s: key \"%s\" is unknown\n"
msgstr ""
#: lib/libalpm/signing.c:994
#: lib/libalpm/signing.c:977
#, c-format
msgid "%s: key \"%s\" is disabled\n"
msgstr ""
#: lib/libalpm/signing.c:998
#: lib/libalpm/signing.c:981
#, c-format
msgid "%s: signature from \"%s\" is expired\n"
msgstr ""
#: lib/libalpm/signing.c:1002
#: lib/libalpm/signing.c:985
#, c-format
msgid "%s: signature from \"%s\" is invalid\n"
msgstr ""
#: lib/libalpm/signing.c:1079 lib/libalpm/signing.c:1147
#: lib/libalpm/signing.c:1226
#: lib/libalpm/signing.c:1043 lib/libalpm/signing.c:1104
#: lib/libalpm/signing.c:1183
#, c-format
msgid "%s: signature format error\n"
msgstr ""
#: lib/libalpm/signing.c:1179 lib/libalpm/signing.c:1212
#: lib/libalpm/signing.c:1220
#: lib/libalpm/signing.c:1136 lib/libalpm/signing.c:1169
#: lib/libalpm/signing.c:1177
#, c-format
msgid "%s: unsupported signature format\n"
msgstr ""
#: lib/libalpm/sync.c:99
#: lib/libalpm/sync.c:96
#, c-format
msgid "%s: ignoring package upgrade (%s => %s)\n"
msgstr "%s: ezikusi pakete bertsio berritzea (%s => %s)\n"
#: lib/libalpm/sync.c:111
#: lib/libalpm/sync.c:108
#, c-format
msgid "%s: ignoring package downgrade (%s => %s)\n"
msgstr "%s: ezikusi paketea bertsio zahartzea (%s => %s)\n"
#: lib/libalpm/sync.c:114
#: lib/libalpm/sync.c:111
#, c-format
msgid "%s: downgrading from version %s to version %s\n"
msgstr "%s: bertsio zahartzen %s bertsiotik %s bertsiora\n"
#: lib/libalpm/sync.c:120
#: lib/libalpm/sync.c:117
#, c-format
msgid "%s: local (%s) is newer than %s (%s)\n"
msgstr "%s: lokala (%s) %s (%s) baino berriagoa da\n"
#: lib/libalpm/sync.c:161
#: lib/libalpm/sync.c:158
#, c-format
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
msgstr "ezikusi pakete ordezkapena (%s-%s => %s-%s)\n"
#: lib/libalpm/sync.c:177
#: lib/libalpm/sync.c:174
#, c-format
msgid "cannot replace %s by %s\n"
msgstr "ezin %s ordezkatu %s paketearekin\n"
#: lib/libalpm/sync.c:535 lib/libalpm/sync.c:605
#: lib/libalpm/sync.c:476
#, c-format
msgid "packages %s and %s have the same filename: %s\n"
msgstr ""
#: lib/libalpm/sync.c:542 lib/libalpm/sync.c:612
#, c-format
msgid "unresolvable package conflicts detected\n"
msgstr "ebatzi ezineko paketeen arteko gatazka detektatu da\n"
#: lib/libalpm/sync.c:555
#: lib/libalpm/sync.c:562
#, c-format
msgid "removing '%s' from target list because it conflicts with '%s'\n"
msgstr "'%s' helburutik ezabatzen gatazka sortzen duelako '%s' paketearekin\n"
#: lib/libalpm/sync.c:849
#, c-format
msgid "failed to retrieve some files\n"
msgstr "fitxategi batzuk eskuratzeak huts egin du\n"
#: lib/libalpm/sync.c:1036
#, c-format
msgid "failed to read file %s: %s\n"
@@ -949,82 +975,82 @@ msgstr "ezin izan da ezabaketa transakzioa egikaritu\n"
msgid "could not commit transaction\n"
msgstr "ezin izan da transakzioa egikaritu\n"
#: lib/libalpm/trans.c:364
#: lib/libalpm/trans.c:365
#, c-format
msgid "could not create temp directory\n"
msgstr "ezin izan da temp direktorioa sortu\n"
#: lib/libalpm/trans.c:379
#: lib/libalpm/trans.c:380
#, c-format
msgid "could not copy tempfile to %s (%s)\n"
msgstr "ezin izan da tempfile hona kopiatu %s (%s)\n"
#: lib/libalpm/trans.c:410
#: lib/libalpm/trans.c:411
#, c-format
msgid "could not remove %s\n"
msgstr "ezin izan da %s ezabatu\n"
#: lib/libalpm/trans.c:414
#: lib/libalpm/trans.c:415
#, c-format
msgid "could not remove tmpdir %s\n"
msgstr "ezin tempdir ezabatu %s\n"
#: lib/libalpm/util.c:486
#: lib/libalpm/util.c:488
#, c-format
msgid "unable to write to pipe (%s)\n"
msgstr "ezin izan da kanalizazioan idatzi (%s)\n"
#: lib/libalpm/util.c:545
#: lib/libalpm/util.c:547
#, c-format
msgid "unable to read from pipe (%s)\n"
msgstr "ezin izan da kanalizaziotik irakurri (%s)\n"
#: lib/libalpm/util.c:609 lib/libalpm/util.c:615
#: lib/libalpm/util.c:617 lib/libalpm/util.c:623
#, c-format
msgid "could not create pipe (%s)\n"
msgstr "ezin izan da kanalizazioa sortu (%s)\n"
#: lib/libalpm/util.c:623
#: lib/libalpm/util.c:631
#, c-format
msgid "could not fork a new process (%s)\n"
msgstr "ezin izan da prozesu berri bat sardetu (%s)\n"
#: lib/libalpm/util.c:646
#: lib/libalpm/util.c:654
#, c-format
msgid "could not change the root directory (%s)\n"
msgstr "ezin izan da erro direktorioa aldatu (%s)\n"
#: lib/libalpm/util.c:658
#: lib/libalpm/util.c:666
#, c-format
msgid "call to execv failed (%s)\n"
msgstr "execv deiak huts egin du (%s)\n"
#: lib/libalpm/util.c:737
#: lib/libalpm/util.c:745
#, c-format
msgid "call to waitpid failed (%s)\n"
msgstr "waitpid deiak huts egin du (%s)\n"
#: lib/libalpm/util.c:747
#: lib/libalpm/util.c:755
#, c-format
msgid "command failed to execute correctly\n"
msgstr "komandoa ez da behar bezala exekutatu\n"
#: lib/libalpm/util.c:754
#: lib/libalpm/util.c:762
#, c-format
msgid "Unknown signal"
msgstr "Seinale ezezaguna"
#: lib/libalpm/util.c:756
#: lib/libalpm/util.c:764
#, c-format
msgid "command terminated by signal %d: %s\n"
msgstr "%d seinaleak eten du komandoa: %s\n"
#: lib/libalpm/util.c:853
#: lib/libalpm/util.c:875
#, c-format
msgid "no %s cache exists, creating...\n"
msgstr "ez dago %s katxerik, sortzen...\n"
#: lib/libalpm/util.c:884
#: lib/libalpm/util.c:906
#, c-format
msgid "couldn't find or create package cache, using %s instead\n"
msgstr "ezin izan da pakete katxea aurkitu edo sortu, %s erabiliko da ordez\n"

View File

@@ -1,6 +1,6 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Pacman Development Team <pacman-dev@archlinux.org>
# This file is distributed under the same license as the PACKAGE package.
# Copyright (C) YEAR "Pacman Development Team <pacman-dev@archlinux.org>"
# This file is distributed under the same license as the libalpm package.
#
# Translators:
# No User, 2011
@@ -18,8 +18,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Arch Linux Pacman package manager\n"
"Report-Msgid-Bugs-To: http://bugs.archlinux.org/index.php?project=3\n"
"POT-Creation-Date: 2019-10-21 17:23+1000\n"
"PO-Revision-Date: 2019-10-07 08:12+0000\n"
"POT-Creation-Date: 2021-09-04 16:15+1000\n"
"PO-Revision-Date: 2021-05-20 02:25+0000\n"
"Last-Translator: Allan McRae <allan@archlinux.org>\n"
"Language-Team: Finnish (http://www.transifex.com/toofishes/archlinux-pacman/"
"language/fi/)\n"
@@ -29,17 +29,17 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: lib/libalpm/add.c:91 lib/libalpm/sync.c:290
#: lib/libalpm/add.c:90 lib/libalpm/sync.c:279
#, c-format
msgid "%s-%s is up to date -- skipping\n"
msgstr "%s-%s on ajan tasalla -- ohitetaan\n"
#: lib/libalpm/add.c:95
#: lib/libalpm/add.c:94
#, c-format
msgid "%s-%s is up to date -- reinstalling\n"
msgstr "%s-%s on ajan tasalla -- asennetaan uudelleen\n"
#: lib/libalpm/add.c:100
#: lib/libalpm/add.c:99
#, c-format
msgid "downgrading package %s (%s => %s)\n"
msgstr "varhennetaan paketti %s (%s => %s)\n"
@@ -49,17 +49,17 @@ msgstr "varhennetaan paketti %s (%s => %s)\n"
msgid "cannot allocate disk archive object"
msgstr "levyn arkisto-objektia ei voida varata"
#: lib/libalpm/add.c:143 lib/libalpm/util.c:382
#: lib/libalpm/add.c:143 lib/libalpm/util.c:384
#, c-format
msgid "warning given when extracting %s (%s)\n"
msgstr "annettiin varoitus purettaessa %s (%s)\n"
#: lib/libalpm/add.c:146 lib/libalpm/util.c:385
#: lib/libalpm/add.c:146 lib/libalpm/util.c:387
#, c-format
msgid "could not extract %s (%s)\n"
msgstr "tiedostoa %s ei voitu purkaa (%s)\n"
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:574 lib/libalpm/remove.c:542
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:709 lib/libalpm/remove.c:534
#, c-format
msgid "could not rename %s to %s (%s)\n"
msgstr "kohdetta %s ei voitu nimetä uudelleen kohteeksi %s (%s)\n"
@@ -104,137 +104,137 @@ msgstr "purku: kansiota ei korvata tiedostolla %s\n"
msgid "unable to extract %s.pacnew: path too long"
msgstr "ei voitu purkaa %s.pacnew: polku liian pitkä"
#: lib/libalpm/add.c:513 lib/libalpm/util.c:334 lib/libalpm/util.c:592
#: lib/libalpm/add.c:510 lib/libalpm/util.c:335 lib/libalpm/util.c:600
#, c-format
msgid "could not get current working directory\n"
msgstr "nykyisen kansion sijaintia ei voitu määrittää\n"
#: lib/libalpm/add.c:518 lib/libalpm/util.c:339 lib/libalpm/util.c:597
#: lib/libalpm/util.c:650
#: lib/libalpm/add.c:515 lib/libalpm/util.c:340 lib/libalpm/util.c:605
#: lib/libalpm/util.c:658
#, c-format
msgid "could not change directory to %s (%s)\n"
msgstr "ei voitu vaihtaa kansioon %s (%s)\n"
#: lib/libalpm/add.c:575 lib/libalpm/util.c:403 lib/libalpm/util.c:766
#: lib/libalpm/add.c:571 lib/libalpm/util.c:405 lib/libalpm/util.c:774
#, c-format
msgid "could not restore working directory (%s)\n"
msgstr "työhakemistoa ei voitu palauttaa (%s)\n"
#: lib/libalpm/add.c:583
#: lib/libalpm/add.c:579
#, c-format
msgid "problem occurred while upgrading %s\n"
msgstr "pakettia %s päivitettäessä tapahtui virhe\n"
#: lib/libalpm/add.c:589
#: lib/libalpm/add.c:585
#, c-format
msgid "problem occurred while installing %s\n"
msgstr "pakettia %s asennettaessa tapahtui virhe\n"
#: lib/libalpm/add.c:604
#: lib/libalpm/add.c:600
#, c-format
msgid "could not update database entry %s-%s\n"
msgstr "ei voitu päivittää tietokantamerkintää: %s-%s\n"
#: lib/libalpm/add.c:615
#: lib/libalpm/add.c:610
#, c-format
msgid "could not add entry '%s' in cache\n"
msgstr "merkintää '%s' ei voitu lisätä välimuistiin\n"
#: lib/libalpm/be_local.c:267
#: lib/libalpm/be_local.c:266
#, c-format
msgid "error while reading file %s: %s\n"
msgstr "virhe luettaessa tiedostoa %s: %s\n"
#: lib/libalpm/be_local.c:364
#: lib/libalpm/be_local.c:376
#, c-format
msgid "removing invalid database: %s\n"
msgstr "poistetaan virheellinen tietokanta: %s\n"
#: lib/libalpm/be_local.c:415 lib/libalpm/be_local.c:905
#: lib/libalpm/be_local.c:427 lib/libalpm/be_local.c:909
#, c-format
msgid "could not create directory %s: %s\n"
msgstr "kansiota %s ei voitu luoda: %s\n"
#: lib/libalpm/be_local.c:590 lib/libalpm/be_sync.c:386
#: lib/libalpm/be_local.c:602 lib/libalpm/be_sync.c:322
#, c-format
msgid "invalid name for database entry '%s'\n"
msgstr "virheellinen nimi tietokantamerkinnälle '%s'\n"
#: lib/libalpm/be_local.c:598
#: lib/libalpm/be_local.c:610
#, c-format
msgid "duplicated database entry '%s'\n"
msgstr "tietokantamerkintä '%s' on useampaan kertaan\n"
#: lib/libalpm/be_local.c:610
#: lib/libalpm/be_local.c:622
#, c-format
msgid "corrupted database entry '%s'\n"
msgstr "vahingoittunut tietokantamerkintä '%s'\n"
#: lib/libalpm/be_local.c:713 lib/libalpm/be_local.c:809
#: lib/libalpm/be_local.c:954 lib/libalpm/be_local.c:1051
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:422 lib/libalpm/util.c:253
#: lib/libalpm/util.c:269
#: lib/libalpm/be_local.c:722 lib/libalpm/be_local.c:818
#: lib/libalpm/be_local.c:958 lib/libalpm/be_local.c:1055
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:823 lib/libalpm/util.c:254
#: lib/libalpm/util.c:270
#, c-format
msgid "could not open file %s: %s\n"
msgstr "tiedostoa %s ei voitu avata: %s\n"
#: lib/libalpm/be_local.c:729 lib/libalpm/be_sync.c:650
#: lib/libalpm/be_local.c:738 lib/libalpm/be_sync.c:582
#, c-format
msgid "%s database is inconsistent: name mismatch on package %s\n"
msgstr "tietokanta %s on epäyhtenäinen: paketin %s nimi ei täsmää\n"
#: lib/libalpm/be_local.c:735 lib/libalpm/be_sync.c:656
#: lib/libalpm/be_local.c:744 lib/libalpm/be_sync.c:588
#, c-format
msgid "%s database is inconsistent: version mismatch on package %s\n"
msgstr "tietokanta %s on epäyhtenäinen: paketin %s versio ei täsmää\n"
#: lib/libalpm/be_local.c:776
#: lib/libalpm/be_local.c:785
#, c-format
msgid "unknown validation type for package %s: %s\n"
msgstr "tuntematon validointityyppi paketille %s: %s\n"
#: lib/libalpm/be_package.c:479 lib/libalpm/be_package.c:637
#: lib/libalpm/be_package.c:650
#: lib/libalpm/be_package.c:478 lib/libalpm/be_package.c:631
#: lib/libalpm/be_package.c:643
#, c-format
msgid "error while reading package %s: %s\n"
msgstr "virhe luettaessa pakettia %s: %s\n"
#: lib/libalpm/be_package.c:493 lib/libalpm/be_package.c:517
#: lib/libalpm/be_package.c:491 lib/libalpm/be_package.c:514
#, c-format
msgid "error while reading mtree of package %s: %s\n"
msgstr "virhe luettaessa paketin %s mtreetä: %s\n"
#: lib/libalpm/be_package.c:603
#: lib/libalpm/be_package.c:597
#, c-format
msgid "could not parse package description file in %s\n"
msgstr "paketin kuvaustiedostoa %s ei voitu jäsentää\n"
#: lib/libalpm/be_package.c:608
#: lib/libalpm/be_package.c:602
#, c-format
msgid "missing package name in %s\n"
msgstr "paketin nimi puuttuu tiedostosta %s\n"
#: lib/libalpm/be_package.c:612
#: lib/libalpm/be_package.c:606
#, c-format
msgid "missing package version in %s\n"
msgstr "paketin versio puuttuu tiedostosta %s\n"
#: lib/libalpm/be_package.c:616
#: lib/libalpm/be_package.c:610
#, c-format
msgid "invalid package version in %s\n"
msgstr "virheellinen paketin versio tiedostossa %s\n"
#: lib/libalpm/be_package.c:657
#: lib/libalpm/be_package.c:649
#, c-format
msgid "missing package metadata in %s\n"
msgstr "paketin metadata puuttuu tiedostosta %s\n"
#: lib/libalpm/be_package.c:750
#: lib/libalpm/be_package.c:741
#, c-format
msgid "failed to read signature file: %s\n"
msgstr "allekirjoitustiedoston lukeminen epäonnistui: %s\n"
#: lib/libalpm/be_package.c:779 lib/libalpm/sync.c:953
#: lib/libalpm/be_package.c:770 lib/libalpm/sync.c:953
#, c-format
msgid "required key missing from keyring\n"
msgstr "vaadittu avain puuttuu avainrenkaasta\n"
@@ -244,34 +244,34 @@ msgstr "vaadittu avain puuttuu avainrenkaasta\n"
msgid "removing invalid file: %s\n"
msgstr "poistetaan virheellinen tiedosto: %s\n"
#: lib/libalpm/be_sync.c:515
#: lib/libalpm/be_sync.c:449
#, c-format
msgid "could not parse package description file '%s' from db '%s'\n"
msgstr "paketin kuvaustiedostoa '%s' ei voitu jäsentää tietokannassa '%s'\n"
#: lib/libalpm/be_sync.c:522
#: lib/libalpm/be_sync.c:456
#, c-format
msgid "could not read db '%s' (%s)\n"
msgstr ""
#: lib/libalpm/be_sync.c:556 lib/libalpm/be_sync.c:561
#: lib/libalpm/be_sync.c:489 lib/libalpm/be_sync.c:494
#, c-format
msgid "%s database is inconsistent: filename of package %s is illegal\n"
msgstr ""
"tietokanta %s on epäyhtenäinen: paketin %s tiedostonimi on virheellinen\n"
#: lib/libalpm/be_sync.c:566
#: lib/libalpm/be_sync.c:499
#, c-format
msgid "%s database is inconsistent: filename of package %s is too long\n"
msgstr ""
"tietokanta %s on epäyhtenäinen: paketin %s tiedostonimi on liian pitkä\n"
#: lib/libalpm/be_sync.c:632
#: lib/libalpm/be_sync.c:564
#, c-format
msgid "unknown database file: %s\n"
msgstr "tuntematon tietokantatiedosto: %s\n"
#: lib/libalpm/db.c:370
#: lib/libalpm/db.c:344
#, c-format
msgid "database path is undefined\n"
msgstr "tietokannan polkua ei ole määritelty\n"
@@ -291,12 +291,12 @@ msgstr "%s poistetaan riippuvuutensa %s jälkeen\n"
msgid "%s will be installed before its %s dependency\n"
msgstr "%s asennetaan ennen riippuvuuttansa %s\n"
#: lib/libalpm/deps.c:681 lib/libalpm/deps.c:712
#: lib/libalpm/deps.c:666 lib/libalpm/deps.c:697
#, c-format
msgid "ignoring package %s-%s\n"
msgstr "ohitetaan paketti %s-%s\n"
#: lib/libalpm/deps.c:869
#: lib/libalpm/deps.c:842
#, c-format
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
msgstr "pakettia '%s' ei voida selvittää; se on paketin '%s' riippuvuus\n"
@@ -351,42 +351,68 @@ msgstr "juuren %s liitospistettä ei voitu selvittää\n"
msgid "Partition %s is mounted read only\n"
msgstr "Osio %s on liitetty vain lukutilassa\n"
#: lib/libalpm/dload.c:161
#: lib/libalpm/dload.c:116
#, c-format
msgid ""
"too many errors from %s, skipping for the remainder of this transaction\n"
msgstr ""
#: lib/libalpm/dload.c:220
#, c-format
msgid "disk"
msgstr "levy"
#: lib/libalpm/dload.c:348
#: lib/libalpm/dload.c:392
#, c-format
msgid "failed to create temporary file for download\n"
msgstr "väliaikaistiedoston luonti lataamista varten epäonnistui\n"
#: lib/libalpm/dload.c:393
#, c-format
msgid "url '%s' is invalid\n"
msgstr "osoite '%s' on virheellinen\n"
#: lib/libalpm/dload.c:464 lib/libalpm/dload.c:485 lib/libalpm/dload.c:496
#: lib/libalpm/dload.c:509 lib/libalpm/dload.c:547 lib/libalpm/dload.c:561
#, c-format
msgid "failed retrieving file '%s' from %s : %s\n"
msgstr "tiedoston '%s' nouto palvelimelta %s epäonnistui : %s\n"
#: lib/libalpm/dload.c:477
#: lib/libalpm/dload.c:539
#, c-format
msgid "failed retrieving file '%s' from %s : expected download size exceeded\n"
msgstr ""
"tiedoston '%s' noutaminen koneelta %s epäonnistui: odotettu latauskoko "
"ylittyi\n"
#: lib/libalpm/dload.c:532
#: lib/libalpm/dload.c:687
#, c-format
msgid "%s appears to be truncated: %jd/%jd bytes\n"
msgstr "%s näyttää katkenneen: %jd/%jd tavua\n"
#: lib/libalpm/dload.c:677 lib/libalpm/dload.c:706
#: lib/libalpm/dload.c:787
#, c-format
msgid "failed to download %s\n"
msgstr "%s: lataus epäonnistui\n"
msgid "url '%s' is invalid\n"
msgstr "osoite '%s' on virheellinen\n"
#: lib/libalpm/dload.c:893
#, c-format
msgid "failed to setup a download payload for %s\n"
msgstr ""
#: lib/libalpm/dload.c:905
#, c-format
msgid "curl returned error %d from transfer\n"
msgstr ""
#: lib/libalpm/dload.c:929
#, c-format
msgid "curl transfer error: %d\n"
msgstr ""
#: lib/libalpm/dload.c:1055 lib/libalpm/sync.c:840
#, c-format
msgid "failed to retrieve some files\n"
msgstr "joidenkin tiedostojen noutaminen epäonnistui\n"
#: lib/libalpm/dload.c:1078
#, c-format
msgid "download completed successfully but no file in the cache\n"
msgstr ""
#: lib/libalpm/error.c:40
#, c-format
@@ -503,7 +529,7 @@ msgstr "varastolle ei ole asetettu palvelimia"
msgid "transaction already initialized"
msgstr "toimenpide on jo alustettu"
#: lib/libalpm/error.c:90 lib/libalpm/error.c:94
#: lib/libalpm/error.c:90 lib/libalpm/error.c:96
#, c-format
msgid "transaction not initialized"
msgstr "toimenpidettä ei ole alustettu"
@@ -513,86 +539,86 @@ msgstr "toimenpidettä ei ole alustettu"
msgid "duplicate target"
msgstr "kohde on useampaan kertaan"
#: lib/libalpm/error.c:96
#: lib/libalpm/error.c:94
#, c-format
msgid "duplicate filename"
msgstr ""
#: lib/libalpm/error.c:98
#, c-format
msgid "transaction not prepared"
msgstr "toimenpidettä ei ole valmisteltu"
#: lib/libalpm/error.c:98
#: lib/libalpm/error.c:100
#, c-format
msgid "transaction aborted"
msgstr "toimenpide keskeytettiin"
#: lib/libalpm/error.c:100
#: lib/libalpm/error.c:102
#, c-format
msgid "operation not compatible with the transaction type"
msgstr "operaatio ei ole yhteensopiva toimenpidetyypin kanssa"
#: lib/libalpm/error.c:102
#: lib/libalpm/error.c:104
#, c-format
msgid "transaction commit attempt when database is not locked"
msgstr "toimenpiteen suoritusyritys kun tietokanta ei ollut lukittuna"
#: lib/libalpm/error.c:104
#: lib/libalpm/error.c:106
#, c-format
msgid "failed to run transaction hooks"
msgstr "toimenpidekoukkuja ei voitu suorittaa"
#: lib/libalpm/error.c:107
#: lib/libalpm/error.c:109
#, c-format
msgid "could not find or read package"
msgstr "pakettia ei löytynyt tai voitu lukea"
#: lib/libalpm/error.c:109
#: lib/libalpm/error.c:111
#, c-format
msgid "operation cancelled due to ignorepkg"
msgstr "operaatio peruutettiin ignorepkg:n takia"
#: lib/libalpm/error.c:111
#: lib/libalpm/error.c:113
#, c-format
msgid "invalid or corrupted package"
msgstr "virheellinen tai vahingoittunut paketti"
#: lib/libalpm/error.c:113
#: lib/libalpm/error.c:115
#, c-format
msgid "invalid or corrupted package (checksum)"
msgstr "virheellinen tai vahingoittunut paketti (tarkistussumma)"
#: lib/libalpm/error.c:115
#: lib/libalpm/error.c:117
#, c-format
msgid "invalid or corrupted package (PGP signature)"
msgstr "virheellinen tai vahingoittunut paketti (PGP-allekirjoitus)"
#: lib/libalpm/error.c:117
#: lib/libalpm/error.c:119
#, c-format
msgid "package missing required signature"
msgstr "paketista puuttuu pakollinen allekirjoitus"
#: lib/libalpm/error.c:119
#: lib/libalpm/error.c:121
#, c-format
msgid "cannot open package file"
msgstr "pakettitiedostoa ei voitu avata"
#: lib/libalpm/error.c:121
#: lib/libalpm/error.c:123
#, c-format
msgid "cannot remove all files for package"
msgstr "paketin kaikkia tiedostoja ei voitu poistaa"
#: lib/libalpm/error.c:123
#: lib/libalpm/error.c:125
#, c-format
msgid "package filename is not valid"
msgstr "paketin tiedostonimi ei ole kelvollinen"
#: lib/libalpm/error.c:125
#: lib/libalpm/error.c:127
#, c-format
msgid "package architecture is not valid"
msgstr "paketin arkkitehtuuri ei ole kelvollinen"
#: lib/libalpm/error.c:127
#, c-format
msgid "could not find repository for target"
msgstr "kohteen varastoa ei löytynyt"
#: lib/libalpm/error.c:130
#, c-format
msgid "missing PGP signature"
@@ -658,12 +684,12 @@ msgstr ""
msgid "unexpected error"
msgstr "odottamaton virhe"
#: lib/libalpm/handle.c:153
#: lib/libalpm/handle.c:142
#, c-format
msgid "lock file missing %s\n"
msgstr "puuttuva lukkotiedosto %s\n"
#: lib/libalpm/handle.c:159
#: lib/libalpm/handle.c:148
#, c-format
msgid "could not remove lock file %s\n"
msgstr "lukkotiedostoa %s ei voitu poistaa\n"
@@ -735,7 +761,7 @@ msgstr ""
msgid "unable to run hook %s: %s\n"
msgstr ""
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:386
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:378
#, c-format
msgid "could not open directory: %s: %s\n"
msgstr "kansiota ei voitu avata: %s: %s\n"
@@ -745,7 +771,7 @@ msgstr "kansiota ei voitu avata: %s: %s\n"
msgid "could not open file: %s%s: %s\n"
msgstr ""
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:259
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:260
#, c-format
msgid "could not stat file %s: %s\n"
msgstr "tiedoston %s stat-toiminnon ei voitu tehdä: %s\n"
@@ -755,185 +781,185 @@ msgstr "tiedoston %s stat-toiminnon ei voitu tehdä: %s\n"
msgid "could not read directory: %s: %s\n"
msgstr ""
#: lib/libalpm/package.c:578
#: lib/libalpm/package.c:598
#, c-format
msgid "could not fully load metadata for package %s-%s\n"
msgstr "paketin %s-%s metadataa ei voitu ladata täysin\n"
#: lib/libalpm/remove.c:119
#: lib/libalpm/remove.c:111
#, c-format
msgid "could not find %s in database -- skipping\n"
msgstr "%s ei löytynyt tietokannasta -- ohitetaan\n"
#: lib/libalpm/remove.c:154
#: lib/libalpm/remove.c:146
#, c-format
msgid "removing %s from target list\n"
msgstr "poistetaan %s kohteiden listasta\n"
#: lib/libalpm/remove.c:346
#: lib/libalpm/remove.c:338
#, c-format
msgid "cannot remove file '%s': %s\n"
msgstr "tiedostoa '%s' ei voitu poistaa: %s\n"
#: lib/libalpm/remove.c:411 lib/libalpm/remove.c:420
#: lib/libalpm/remove.c:403 lib/libalpm/remove.c:412
#, c-format
msgid "could not backup %s due to PATH_MAX overflow\n"
msgstr ""
#: lib/libalpm/remove.c:562
#: lib/libalpm/remove.c:554
#, c-format
msgid "cannot remove %s (%s)\n"
msgstr "tiedostoa %s ei voida poistaa (%s)\n"
#: lib/libalpm/remove.c:735
#: lib/libalpm/remove.c:727
#, c-format
msgid "could not remove database entry %s-%s\n"
msgstr "ei voitu poistaa tietokantamerkintää %s-%s\n"
#: lib/libalpm/remove.c:740
#: lib/libalpm/remove.c:732
#, c-format
msgid "could not remove entry '%s' from cache\n"
msgstr "merkintää '%s' ei voitu poistaa välimuistista\n"
#: lib/libalpm/signing.c:171
#: lib/libalpm/signing.c:163
#, c-format
msgid "Public keyring not found; have you run '%s'?\n"
msgstr ""
#: lib/libalpm/signing.c:207 lib/libalpm/signing.c:784
#: lib/libalpm/signing.c:199 lib/libalpm/signing.c:767
#, c-format
msgid "GPGME error: %s\n"
msgstr ""
#: lib/libalpm/signing.c:284
#: lib/libalpm/signing.c:274
#, c-format
msgid "looking up key %s using WKD\n"
msgstr ""
#: lib/libalpm/signing.c:293
#: lib/libalpm/signing.c:283
#, c-format
msgid "gpg error: %s\n"
msgstr ""
#: lib/libalpm/signing.c:441 lib/libalpm/signing.c:515
#: lib/libalpm/signing.c:430 lib/libalpm/signing.c:503
#, c-format
msgid "keyring is not writable\n"
msgstr ""
#: lib/libalpm/signing.c:539
#: lib/libalpm/signing.c:531
#, c-format
msgid "key \"%s\" on keyserver\n"
msgstr ""
#: lib/libalpm/signing.c:544
#: lib/libalpm/signing.c:536
#, c-format
msgid "key \"%s\" could not be imported\n"
msgstr ""
#: lib/libalpm/signing.c:548
#: lib/libalpm/signing.c:540
#, c-format
msgid "key \"%s\" could not be looked up remotely\n"
msgstr ""
#: lib/libalpm/signing.c:943 lib/libalpm/sync.c:1022
#: lib/libalpm/signing.c:926 lib/libalpm/sync.c:1022
#, c-format
msgid "%s: missing required signature\n"
msgstr "%s: pakollinen allekirjoitus puuttuu\n"
#: lib/libalpm/signing.c:958
#: lib/libalpm/signing.c:941
#, c-format
msgid "%s: signature from \"%s\" is marginal trust\n"
msgstr ""
#: lib/libalpm/signing.c:966
#: lib/libalpm/signing.c:949
#, c-format
msgid "%s: signature from \"%s\" is unknown trust\n"
msgstr ""
#: lib/libalpm/signing.c:973
#: lib/libalpm/signing.c:956
#, c-format
msgid "%s: signature from \"%s\" should never be trusted\n"
msgstr ""
#: lib/libalpm/signing.c:985
#: lib/libalpm/signing.c:968
#, c-format
msgid "%s: key \"%s\" is unknown\n"
msgstr ""
#: lib/libalpm/signing.c:994
#: lib/libalpm/signing.c:977
#, c-format
msgid "%s: key \"%s\" is disabled\n"
msgstr ""
#: lib/libalpm/signing.c:998
#: lib/libalpm/signing.c:981
#, c-format
msgid "%s: signature from \"%s\" is expired\n"
msgstr ""
#: lib/libalpm/signing.c:1002
#: lib/libalpm/signing.c:985
#, c-format
msgid "%s: signature from \"%s\" is invalid\n"
msgstr ""
#: lib/libalpm/signing.c:1079 lib/libalpm/signing.c:1147
#: lib/libalpm/signing.c:1226
#: lib/libalpm/signing.c:1043 lib/libalpm/signing.c:1104
#: lib/libalpm/signing.c:1183
#, c-format
msgid "%s: signature format error\n"
msgstr ""
#: lib/libalpm/signing.c:1179 lib/libalpm/signing.c:1212
#: lib/libalpm/signing.c:1220
#: lib/libalpm/signing.c:1136 lib/libalpm/signing.c:1169
#: lib/libalpm/signing.c:1177
#, c-format
msgid "%s: unsupported signature format\n"
msgstr ""
#: lib/libalpm/sync.c:99
#: lib/libalpm/sync.c:96
#, c-format
msgid "%s: ignoring package upgrade (%s => %s)\n"
msgstr "%s: ohitetaan paketin päivitys (%s => %s)\n"
#: lib/libalpm/sync.c:111
#: lib/libalpm/sync.c:108
#, c-format
msgid "%s: ignoring package downgrade (%s => %s)\n"
msgstr "%s: ohitetaan paketin varhennus (%s => %s)\n"
#: lib/libalpm/sync.c:114
#: lib/libalpm/sync.c:111
#, c-format
msgid "%s: downgrading from version %s to version %s\n"
msgstr "%s: varhennetaan versiosta %s versioon %s\n"
#: lib/libalpm/sync.c:120
#: lib/libalpm/sync.c:117
#, c-format
msgid "%s: local (%s) is newer than %s (%s)\n"
msgstr "%s: paikallinen (%s) on uudempi kuin %s (%s)\n"
#: lib/libalpm/sync.c:161
#: lib/libalpm/sync.c:158
#, c-format
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
msgstr "ohitetaan paketin korvaus (%s-%s => %s-%s)\n"
#: lib/libalpm/sync.c:177
#: lib/libalpm/sync.c:174
#, c-format
msgid "cannot replace %s by %s\n"
msgstr "pakettia %s ei voi korvata paketilla %s\n"
#: lib/libalpm/sync.c:535 lib/libalpm/sync.c:605
#: lib/libalpm/sync.c:476
#, c-format
msgid "packages %s and %s have the same filename: %s\n"
msgstr ""
#: lib/libalpm/sync.c:542 lib/libalpm/sync.c:612
#, c-format
msgid "unresolvable package conflicts detected\n"
msgstr "ratkaisemattomia pakettiristiriitoja havaittu\n"
#: lib/libalpm/sync.c:555
#: lib/libalpm/sync.c:562
#, c-format
msgid "removing '%s' from target list because it conflicts with '%s'\n"
msgstr ""
"poistetaan '%s' kohteiden listasta, koska se on ristiriidassa paketin '%s' "
"kanssa\n"
#: lib/libalpm/sync.c:849
#, c-format
msgid "failed to retrieve some files\n"
msgstr "joidenkin tiedostojen noutaminen epäonnistui\n"
#: lib/libalpm/sync.c:1036
#, c-format
msgid "failed to read file %s: %s\n"
@@ -954,82 +980,82 @@ msgstr "poistotoimenpidettä ei voitu suorittaa\n"
msgid "could not commit transaction\n"
msgstr "toimenpidettä ei voitu suorittaa\n"
#: lib/libalpm/trans.c:364
#: lib/libalpm/trans.c:365
#, c-format
msgid "could not create temp directory\n"
msgstr "väliaikaiskansiota ei voitu luoda\n"
#: lib/libalpm/trans.c:379
#: lib/libalpm/trans.c:380
#, c-format
msgid "could not copy tempfile to %s (%s)\n"
msgstr "väliaikaistiedostoa ei voitu kopioida kansioon %s (%s)\n"
#: lib/libalpm/trans.c:410
#: lib/libalpm/trans.c:411
#, c-format
msgid "could not remove %s\n"
msgstr "%s ei voitu poistaa\n"
#: lib/libalpm/trans.c:414
#: lib/libalpm/trans.c:415
#, c-format
msgid "could not remove tmpdir %s\n"
msgstr "väliaikaiskansiota %s ei voitu poistaa\n"
#: lib/libalpm/util.c:486
#: lib/libalpm/util.c:488
#, c-format
msgid "unable to write to pipe (%s)\n"
msgstr "ei voitu kirjoittaa putkeen (%s)\n"
#: lib/libalpm/util.c:545
#: lib/libalpm/util.c:547
#, c-format
msgid "unable to read from pipe (%s)\n"
msgstr "ei voitu lukea putkesta (%s)\n"
#: lib/libalpm/util.c:609 lib/libalpm/util.c:615
#: lib/libalpm/util.c:617 lib/libalpm/util.c:623
#, c-format
msgid "could not create pipe (%s)\n"
msgstr "ei voitu luoda putkea (%s)\n"
#: lib/libalpm/util.c:623
#: lib/libalpm/util.c:631
#, c-format
msgid "could not fork a new process (%s)\n"
msgstr "ei voitu käynnistää uutta prosessia (%s)\n"
#: lib/libalpm/util.c:646
#: lib/libalpm/util.c:654
#, c-format
msgid "could not change the root directory (%s)\n"
msgstr "juurikansiota ei voitu vaihtaa (%s)\n"
#: lib/libalpm/util.c:658
#: lib/libalpm/util.c:666
#, c-format
msgid "call to execv failed (%s)\n"
msgstr "execv-kutsu epäonnistui (%s)\n"
#: lib/libalpm/util.c:737
#: lib/libalpm/util.c:745
#, c-format
msgid "call to waitpid failed (%s)\n"
msgstr "waitpid-kutsu epäonnistui (%s)\n"
#: lib/libalpm/util.c:747
#: lib/libalpm/util.c:755
#, c-format
msgid "command failed to execute correctly\n"
msgstr "komento päättyi virheeseen\n"
#: lib/libalpm/util.c:754
#: lib/libalpm/util.c:762
#, c-format
msgid "Unknown signal"
msgstr "Tuntematon signaali"
#: lib/libalpm/util.c:756
#: lib/libalpm/util.c:764
#, c-format
msgid "command terminated by signal %d: %s\n"
msgstr "signaali %d päätti komennon: %s\n"
#: lib/libalpm/util.c:853
#: lib/libalpm/util.c:875
#, c-format
msgid "no %s cache exists, creating...\n"
msgstr "välimuistia %s ei ole olemassa, luodaan...\n"
#: lib/libalpm/util.c:884
#: lib/libalpm/util.c:906
#, c-format
msgid "couldn't find or create package cache, using %s instead\n"
msgstr ""

View File

@@ -1,6 +1,6 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Pacman Development Team <pacman-dev@archlinux.org>
# This file is distributed under the same license as the PACKAGE package.
# Copyright (C) YEAR "Pacman Development Team <pacman-dev@archlinux.org>"
# This file is distributed under the same license as the libalpm package.
#
# Translators:
# Allan McRae <allan@archlinux.org>, 2018
@@ -8,7 +8,7 @@
# Antoine Lubineau <antoine@lubignon.info>, 2012
# Antoine Lubineau <antoine@lubignon.info>, 2012-2014,2018
# Cedric Girard <girard.cedric@gmail.com>, 2014
# Charles Monzat <c.monzat@laposte.net>, 2018-2019
# Charles Monzat <c.monzat@laposte.net>, 2018-2021
# Charles Monzat <c.monzat@laposte.net>, 2015-2018
# Charles Monzat <c.monzat@laposte.net>, 2018
# Charles Monzat <c.monzat@laposte.net>, 2018
@@ -20,8 +20,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Arch Linux Pacman package manager\n"
"Report-Msgid-Bugs-To: http://bugs.archlinux.org/index.php?project=3\n"
"POT-Creation-Date: 2019-10-21 17:23+1000\n"
"PO-Revision-Date: 2019-10-20 19:02+0000\n"
"POT-Creation-Date: 2021-09-04 16:15+1000\n"
"PO-Revision-Date: 2021-07-05 08:09+0000\n"
"Last-Translator: Charles Monzat <c.monzat@laposte.net>\n"
"Language-Team: French (http://www.transifex.com/toofishes/archlinux-pacman/"
"language/fr/)\n"
@@ -31,17 +31,17 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
#: lib/libalpm/add.c:91 lib/libalpm/sync.c:290
#: lib/libalpm/add.c:90 lib/libalpm/sync.c:279
#, c-format
msgid "%s-%s is up to date -- skipping\n"
msgstr "%s-%s est à jour -- ignoré\n"
#: lib/libalpm/add.c:95
#: lib/libalpm/add.c:94
#, c-format
msgid "%s-%s is up to date -- reinstalling\n"
msgstr "%s-%s est à jour -- réinstallation\n"
#: lib/libalpm/add.c:100
#: lib/libalpm/add.c:99
#, c-format
msgid "downgrading package %s (%s => %s)\n"
msgstr "retourne à la version antérieure du paquet %s (%s => %s)\n"
@@ -51,17 +51,17 @@ msgstr "retourne à la version antérieure du paquet %s (%s => %s)\n"
msgid "cannot allocate disk archive object"
msgstr "Impossible dallouer lobjet darchive disque"
#: lib/libalpm/add.c:143 lib/libalpm/util.c:382
#: lib/libalpm/add.c:143 lib/libalpm/util.c:384
#, c-format
msgid "warning given when extracting %s (%s)\n"
msgstr "problème pendant lextraction de %s (%s)\n"
#: lib/libalpm/add.c:146 lib/libalpm/util.c:385
#: lib/libalpm/add.c:146 lib/libalpm/util.c:387
#, c-format
msgid "could not extract %s (%s)\n"
msgstr "lextraction de %s a échoué (%s)\n"
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:574 lib/libalpm/remove.c:542
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:709 lib/libalpm/remove.c:534
#, c-format
msgid "could not rename %s to %s (%s)\n"
msgstr "impossible de renommer %s en %s (%s)\n"
@@ -106,137 +106,137 @@ msgstr "extraction : nécrase pas le répertoire par le fichier %s\n"
msgid "unable to extract %s.pacnew: path too long"
msgstr "impossible dextraire %s.pacnew : chemin trop long"
#: lib/libalpm/add.c:513 lib/libalpm/util.c:334 lib/libalpm/util.c:592
#: lib/libalpm/add.c:510 lib/libalpm/util.c:335 lib/libalpm/util.c:600
#, c-format
msgid "could not get current working directory\n"
msgstr "déterminer le répertoire courant a échoué\n"
#: lib/libalpm/add.c:518 lib/libalpm/util.c:339 lib/libalpm/util.c:597
#: lib/libalpm/util.c:650
#: lib/libalpm/add.c:515 lib/libalpm/util.c:340 lib/libalpm/util.c:605
#: lib/libalpm/util.c:658
#, c-format
msgid "could not change directory to %s (%s)\n"
msgstr "changer de répertoire vers %s a échoué (%s)\n"
#: lib/libalpm/add.c:575 lib/libalpm/util.c:403 lib/libalpm/util.c:766
#: lib/libalpm/add.c:571 lib/libalpm/util.c:405 lib/libalpm/util.c:774
#, c-format
msgid "could not restore working directory (%s)\n"
msgstr "impossible de restaurer le répertoire de travail (%s)\n"
#: lib/libalpm/add.c:583
#: lib/libalpm/add.c:579
#, c-format
msgid "problem occurred while upgrading %s\n"
msgstr "des erreurs sont survenues pendant la mise à jour de %s\n"
#: lib/libalpm/add.c:589
#: lib/libalpm/add.c:585
#, c-format
msgid "problem occurred while installing %s\n"
msgstr "des erreurs sont survenues pendant linstallation de %s\n"
#: lib/libalpm/add.c:604
#: lib/libalpm/add.c:600
#, c-format
msgid "could not update database entry %s-%s\n"
msgstr "la mise à jour de lentrée de base de données %s-%s a échoué\n"
#: lib/libalpm/add.c:615
#: lib/libalpm/add.c:610
#, c-format
msgid "could not add entry '%s' in cache\n"
msgstr "lajout au cache de lentrée « %s » a échoué\n"
#: lib/libalpm/be_local.c:267
#: lib/libalpm/be_local.c:266
#, c-format
msgid "error while reading file %s: %s\n"
msgstr "erreur lors de la lecture du paquet %s : %s\n"
#: lib/libalpm/be_local.c:364
#: lib/libalpm/be_local.c:376
#, c-format
msgid "removing invalid database: %s\n"
msgstr "suppression dune base de données non valide : %s\n"
#: lib/libalpm/be_local.c:415 lib/libalpm/be_local.c:905
#: lib/libalpm/be_local.c:427 lib/libalpm/be_local.c:909
#, c-format
msgid "could not create directory %s: %s\n"
msgstr "la création du répertoire %s a échoué : %s\n"
#: lib/libalpm/be_local.c:590 lib/libalpm/be_sync.c:386
#: lib/libalpm/be_local.c:602 lib/libalpm/be_sync.c:322
#, c-format
msgid "invalid name for database entry '%s'\n"
msgstr "nom incorrect pour lentrée de base de données « %s »\n"
#: lib/libalpm/be_local.c:598
#: lib/libalpm/be_local.c:610
#, c-format
msgid "duplicated database entry '%s'\n"
msgstr "lentrée « %s » de la base de données est dupliquée\n"
#: lib/libalpm/be_local.c:610
#: lib/libalpm/be_local.c:622
#, c-format
msgid "corrupted database entry '%s'\n"
msgstr "lentrée « %s » de la base de données est corrompue\n"
#: lib/libalpm/be_local.c:713 lib/libalpm/be_local.c:809
#: lib/libalpm/be_local.c:954 lib/libalpm/be_local.c:1051
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:422 lib/libalpm/util.c:253
#: lib/libalpm/util.c:269
#: lib/libalpm/be_local.c:722 lib/libalpm/be_local.c:818
#: lib/libalpm/be_local.c:958 lib/libalpm/be_local.c:1055
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:823 lib/libalpm/util.c:254
#: lib/libalpm/util.c:270
#, c-format
msgid "could not open file %s: %s\n"
msgstr "louverture du fichier %s a échoué : %s\n"
#: lib/libalpm/be_local.c:729 lib/libalpm/be_sync.c:650
#: lib/libalpm/be_local.c:738 lib/libalpm/be_sync.c:582
#, c-format
msgid "%s database is inconsistent: name mismatch on package %s\n"
msgstr "le dépôt %s est incohérent : noms différents pour le paquet %s\n"
#: lib/libalpm/be_local.c:735 lib/libalpm/be_sync.c:656
#: lib/libalpm/be_local.c:744 lib/libalpm/be_sync.c:588
#, c-format
msgid "%s database is inconsistent: version mismatch on package %s\n"
msgstr "le dépôt %s est incohérent : versions différentes pour le paquet %s\n"
#: lib/libalpm/be_local.c:776
#: lib/libalpm/be_local.c:785
#, c-format
msgid "unknown validation type for package %s: %s\n"
msgstr "type de validation inconnu pour le paquet %s : %s\n"
#: lib/libalpm/be_package.c:479 lib/libalpm/be_package.c:637
#: lib/libalpm/be_package.c:650
#: lib/libalpm/be_package.c:478 lib/libalpm/be_package.c:631
#: lib/libalpm/be_package.c:643
#, c-format
msgid "error while reading package %s: %s\n"
msgstr "erreur lors de la lecture du paquet %s : %s\n"
#: lib/libalpm/be_package.c:493 lib/libalpm/be_package.c:517
#: lib/libalpm/be_package.c:491 lib/libalpm/be_package.c:514
#, c-format
msgid "error while reading mtree of package %s: %s\n"
msgstr "erreur lors de la lecture du fichier .MTREE du paquet %s : %s\n"
#: lib/libalpm/be_package.c:603
#: lib/libalpm/be_package.c:597
#, c-format
msgid "could not parse package description file in %s\n"
msgstr "lanalyse du fichier de description a échoué dans %s\n"
#: lib/libalpm/be_package.c:608
#: lib/libalpm/be_package.c:602
#, c-format
msgid "missing package name in %s\n"
msgstr "nom de paquet manquant dans %s\n"
#: lib/libalpm/be_package.c:612
#: lib/libalpm/be_package.c:606
#, c-format
msgid "missing package version in %s\n"
msgstr "version de paquet manquante dans %s\n"
#: lib/libalpm/be_package.c:616
#: lib/libalpm/be_package.c:610
#, c-format
msgid "invalid package version in %s\n"
msgstr "version de paquet non valide dans %s\n"
#: lib/libalpm/be_package.c:657
#: lib/libalpm/be_package.c:649
#, c-format
msgid "missing package metadata in %s\n"
msgstr "méta-données du paquet manquantes dans %s\n"
#: lib/libalpm/be_package.c:750
#: lib/libalpm/be_package.c:741
#, c-format
msgid "failed to read signature file: %s\n"
msgstr "échec lors de la lecture du fichier de signature : %s\n"
#: lib/libalpm/be_package.c:779 lib/libalpm/sync.c:953
#: lib/libalpm/be_package.c:770 lib/libalpm/sync.c:953
#, c-format
msgid "required key missing from keyring\n"
msgstr "clé requise absente du trousseau\n"
@@ -246,36 +246,36 @@ msgstr "clé requise absente du trousseau\n"
msgid "removing invalid file: %s\n"
msgstr "suppression du fichier non valide : %s\n"
#: lib/libalpm/be_sync.c:515
#: lib/libalpm/be_sync.c:449
#, c-format
msgid "could not parse package description file '%s' from db '%s'\n"
msgstr ""
"impossible danalyser le fichier « %s » de description du paquet depuis la "
"base de données « %s »\n"
#: lib/libalpm/be_sync.c:522
#: lib/libalpm/be_sync.c:456
#, c-format
msgid "could not read db '%s' (%s)\n"
msgstr "impossible de lire la base de données « %s » (%s)\n"
#: lib/libalpm/be_sync.c:556 lib/libalpm/be_sync.c:561
#: lib/libalpm/be_sync.c:489 lib/libalpm/be_sync.c:494
#, c-format
msgid "%s database is inconsistent: filename of package %s is illegal\n"
msgstr ""
"le dépôt %s est incohérent : le nom de fichier du paquet %s est incorrect\n"
#: lib/libalpm/be_sync.c:566
#: lib/libalpm/be_sync.c:499
#, c-format
msgid "%s database is inconsistent: filename of package %s is too long\n"
msgstr ""
"le dépôt %s est incohérent : le nom de fichier du paquet %s est trop long\n"
#: lib/libalpm/be_sync.c:632
#: lib/libalpm/be_sync.c:564
#, c-format
msgid "unknown database file: %s\n"
msgstr "fichier de base de données inconnu : %s\n"
#: lib/libalpm/db.c:370
#: lib/libalpm/db.c:344
#, c-format
msgid "database path is undefined\n"
msgstr "base de données non initialisée\n"
@@ -295,12 +295,12 @@ msgstr "%s sera supprimé après sa dépendance %s\n"
msgid "%s will be installed before its %s dependency\n"
msgstr "%s sera installé avant sa dépendance %s\n"
#: lib/libalpm/deps.c:681 lib/libalpm/deps.c:712
#: lib/libalpm/deps.c:666 lib/libalpm/deps.c:697
#, c-format
msgid "ignoring package %s-%s\n"
msgstr "ignore le paquet %s-%s\n"
#: lib/libalpm/deps.c:869
#: lib/libalpm/deps.c:842
#, c-format
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
msgstr "impossible de résoudre « %s », une dépendance de « %s »\n"
@@ -357,42 +357,68 @@ msgstr "impossible de déterminer le point de montage de la racine %s\n"
msgid "Partition %s is mounted read only\n"
msgstr "La partition %s est en lecture seule\n"
#: lib/libalpm/dload.c:161
#: lib/libalpm/dload.c:116
#, c-format
msgid ""
"too many errors from %s, skipping for the remainder of this transaction\n"
msgstr ""
#: lib/libalpm/dload.c:220
#, c-format
msgid "disk"
msgstr "disque"
#: lib/libalpm/dload.c:348
#: lib/libalpm/dload.c:392
#, c-format
msgid "failed to create temporary file for download\n"
msgstr "échec de création dun fichier temporaire pour le téléchargement\n"
#: lib/libalpm/dload.c:393
#, c-format
msgid "url '%s' is invalid\n"
msgstr "lURL « %s » est non valide\n"
#: lib/libalpm/dload.c:464 lib/libalpm/dload.c:485 lib/libalpm/dload.c:496
#: lib/libalpm/dload.c:509 lib/libalpm/dload.c:547 lib/libalpm/dload.c:561
#, c-format
msgid "failed retrieving file '%s' from %s : %s\n"
msgstr "échec de récupération du fichier « %s » depuis %s : %s\n"
#: lib/libalpm/dload.c:477
#: lib/libalpm/dload.c:539
#, c-format
msgid "failed retrieving file '%s' from %s : expected download size exceeded\n"
msgstr ""
"échec de récupération du fichier « %s » depuis %s : taille attendue "
"dépassée\n"
#: lib/libalpm/dload.c:532
#: lib/libalpm/dload.c:687
#, c-format
msgid "%s appears to be truncated: %jd/%jd bytes\n"
msgstr "%s est apparemment tronqué : %jd/%jd octets\n"
#: lib/libalpm/dload.c:677 lib/libalpm/dload.c:706
#: lib/libalpm/dload.c:787
#, c-format
msgid "failed to download %s\n"
msgstr "le fichier %s na pas pu être téléchargé\n"
msgid "url '%s' is invalid\n"
msgstr "lURL « %s » est non valide\n"
#: lib/libalpm/dload.c:893
#, c-format
msgid "failed to setup a download payload for %s\n"
msgstr ""
#: lib/libalpm/dload.c:905
#, c-format
msgid "curl returned error %d from transfer\n"
msgstr ""
#: lib/libalpm/dload.c:929
#, c-format
msgid "curl transfer error: %d\n"
msgstr ""
#: lib/libalpm/dload.c:1055 lib/libalpm/sync.c:840
#, c-format
msgid "failed to retrieve some files\n"
msgstr "erreur lors de la récupération de certains fichiers\n"
#: lib/libalpm/dload.c:1078
#, c-format
msgid "download completed successfully but no file in the cache\n"
msgstr "téléchargement terminé avec succès mais aucun fichier dans le cache\n"
#: lib/libalpm/error.c:40
#, c-format
@@ -509,7 +535,7 @@ msgstr "aucun serveur configuré pour le dépôt"
msgid "transaction already initialized"
msgstr "transaction déjà initialisée"
#: lib/libalpm/error.c:90 lib/libalpm/error.c:94
#: lib/libalpm/error.c:90 lib/libalpm/error.c:96
#, c-format
msgid "transaction not initialized"
msgstr "transaction non initialisée"
@@ -519,88 +545,88 @@ msgstr "transaction non initialisée"
msgid "duplicate target"
msgstr "cible répétée"
#: lib/libalpm/error.c:96
#: lib/libalpm/error.c:94
#, c-format
msgid "duplicate filename"
msgstr ""
#: lib/libalpm/error.c:98
#, c-format
msgid "transaction not prepared"
msgstr "transaction non préparée"
#: lib/libalpm/error.c:98
#: lib/libalpm/error.c:100
#, c-format
msgid "transaction aborted"
msgstr "transaction annulée"
#: lib/libalpm/error.c:100
#: lib/libalpm/error.c:102
#, c-format
msgid "operation not compatible with the transaction type"
msgstr "opération incompatible avec le type de transaction"
#: lib/libalpm/error.c:102
#: lib/libalpm/error.c:104
#, c-format
msgid "transaction commit attempt when database is not locked"
msgstr ""
"tentative de réalisation dune transaction alors que le dépôt nest pas "
"verrouillé"
#: lib/libalpm/error.c:104
#: lib/libalpm/error.c:106
#, c-format
msgid "failed to run transaction hooks"
msgstr "Impossible dexécuter les crochets de transaction"
#: lib/libalpm/error.c:107
#: lib/libalpm/error.c:109
#, c-format
msgid "could not find or read package"
msgstr "impossible de trouver ou de lire le paquet"
#: lib/libalpm/error.c:109
#: lib/libalpm/error.c:111
#, c-format
msgid "operation cancelled due to ignorepkg"
msgstr "opération annulée à cause dun paquet à ignorer (IgnorePkg)"
#: lib/libalpm/error.c:111
#: lib/libalpm/error.c:113
#, c-format
msgid "invalid or corrupted package"
msgstr "paquet non valide ou corrompu"
#: lib/libalpm/error.c:113
#: lib/libalpm/error.c:115
#, c-format
msgid "invalid or corrupted package (checksum)"
msgstr "paquet non valide ou corrompu (somme de contrôle)"
#: lib/libalpm/error.c:115
#: lib/libalpm/error.c:117
#, c-format
msgid "invalid or corrupted package (PGP signature)"
msgstr "paquet non valide ou corrompu (signature PGP)"
#: lib/libalpm/error.c:117
#: lib/libalpm/error.c:119
#, c-format
msgid "package missing required signature"
msgstr "paquet pour lequel la signature requise est manquante"
#: lib/libalpm/error.c:119
#: lib/libalpm/error.c:121
#, c-format
msgid "cannot open package file"
msgstr "ouverture du fichier paquet impossible"
#: lib/libalpm/error.c:121
#: lib/libalpm/error.c:123
#, c-format
msgid "cannot remove all files for package"
msgstr "suppression de certains fichiers du paquet impossible"
#: lib/libalpm/error.c:123
#: lib/libalpm/error.c:125
#, c-format
msgid "package filename is not valid"
msgstr "nom de paquet non valide"
#: lib/libalpm/error.c:125
#: lib/libalpm/error.c:127
#, c-format
msgid "package architecture is not valid"
msgstr "architecture non valide"
#: lib/libalpm/error.c:127
#, c-format
msgid "could not find repository for target"
msgstr "impossible de trouver le dépôt pour la cible"
#: lib/libalpm/error.c:130
#, c-format
msgid "missing PGP signature"
@@ -619,12 +645,12 @@ msgstr "la satisfaction des dépendances a échoué"
#: lib/libalpm/error.c:137
#, c-format
msgid "conflicting dependencies"
msgstr "conflit de dépendances"
msgstr "conflit de dépendances "
#: lib/libalpm/error.c:139
#, c-format
msgid "conflicting files"
msgstr "conflit de fichiers"
msgstr "conflit de fichiers "
#: lib/libalpm/error.c:142
#, c-format
@@ -666,12 +692,12 @@ msgstr "compilé sans prise en charge de signature"
msgid "unexpected error"
msgstr "erreur non prévue"
#: lib/libalpm/handle.c:153
#: lib/libalpm/handle.c:142
#, c-format
msgid "lock file missing %s\n"
msgstr "fichier de verrou manquant %s\n"
#: lib/libalpm/handle.c:159
#: lib/libalpm/handle.c:148
#, c-format
msgid "could not remove lock file %s\n"
msgstr "la suppression du fichier de verrouillage %s a échoué\n"
@@ -743,7 +769,7 @@ msgstr "crochet %s ligne %d : impossible de définir loption (%s)\n"
msgid "unable to run hook %s: %s\n"
msgstr "impossible dexécuter le crochet %s : %s\n"
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:386
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:378
#, c-format
msgid "could not open directory: %s: %s\n"
msgstr "impossible douvrir le dossier %s : %s\n"
@@ -753,7 +779,7 @@ msgstr "impossible douvrir le dossier %s : %s\n"
msgid "could not open file: %s%s: %s\n"
msgstr "impossible douvrir le fichier : %s%s : %s\n"
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:259
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:260
#, c-format
msgid "could not stat file %s: %s\n"
msgstr "impossible de connaître létat du fichier %s : %s\n"
@@ -763,186 +789,186 @@ msgstr "impossible de connaître létat du fichier %s : %s\n"
msgid "could not read directory: %s: %s\n"
msgstr "impossible de lire le répertoire : %s : %s\n"
#: lib/libalpm/package.c:578
#: lib/libalpm/package.c:598
#, c-format
msgid "could not fully load metadata for package %s-%s\n"
msgstr ""
"les métadonnées pour le paquet %s-%s nont pas pu être totalement chargées.\n"
#: lib/libalpm/remove.c:119
#: lib/libalpm/remove.c:111
#, c-format
msgid "could not find %s in database -- skipping\n"
msgstr "trouver %s dans la base de données a échoué -- ignoré\n"
#: lib/libalpm/remove.c:154
#: lib/libalpm/remove.c:146
#, c-format
msgid "removing %s from target list\n"
msgstr "supprime %s de la liste de cible\n"
#: lib/libalpm/remove.c:346
#: lib/libalpm/remove.c:338
#, c-format
msgid "cannot remove file '%s': %s\n"
msgstr "suppression du fichier « %s » impossible : %s\n"
#: lib/libalpm/remove.c:411 lib/libalpm/remove.c:420
#: lib/libalpm/remove.c:403 lib/libalpm/remove.c:412
#, c-format
msgid "could not backup %s due to PATH_MAX overflow\n"
msgstr "impossible de sauvegarder %s en raison du débordement de PATH_MAX\n"
#: lib/libalpm/remove.c:562
#: lib/libalpm/remove.c:554
#, c-format
msgid "cannot remove %s (%s)\n"
msgstr "impossible de supprimer %s (%s)\n"
#: lib/libalpm/remove.c:735
#: lib/libalpm/remove.c:727
#, c-format
msgid "could not remove database entry %s-%s\n"
msgstr "la suppression de lentrée de base de données %s-%s a échoué\n"
#: lib/libalpm/remove.c:740
#: lib/libalpm/remove.c:732
#, c-format
msgid "could not remove entry '%s' from cache\n"
msgstr "la suppression du cache de lentrée « %s » a échoué\n"
#: lib/libalpm/signing.c:171
#: lib/libalpm/signing.c:163
#, c-format
msgid "Public keyring not found; have you run '%s'?\n"
msgstr ""
"Le trousseau de clés publique est introuvable ; avez-vous exécuté « %s » ?\n"
#: lib/libalpm/signing.c:207 lib/libalpm/signing.c:784
#: lib/libalpm/signing.c:199 lib/libalpm/signing.c:767
#, c-format
msgid "GPGME error: %s\n"
msgstr "erreur GPGME : %s\n"
#: lib/libalpm/signing.c:284
#: lib/libalpm/signing.c:274
#, c-format
msgid "looking up key %s using WKD\n"
msgstr "recherche de la clé %s via WKD\n"
#: lib/libalpm/signing.c:293
#: lib/libalpm/signing.c:283
#, c-format
msgid "gpg error: %s\n"
msgstr "erreur gpg : %s\n"
#: lib/libalpm/signing.c:441 lib/libalpm/signing.c:515
#: lib/libalpm/signing.c:430 lib/libalpm/signing.c:503
#, c-format
msgid "keyring is not writable\n"
msgstr "le trousseau de clés nest pas accessible en écriture\n"
#: lib/libalpm/signing.c:539
#: lib/libalpm/signing.c:531
#, c-format
msgid "key \"%s\" on keyserver\n"
msgstr "clé « %s » sur le serveur de clés\n"
#: lib/libalpm/signing.c:544
#: lib/libalpm/signing.c:536
#, c-format
msgid "key \"%s\" could not be imported\n"
msgstr "la clé « %s » na pas pu être importée\n"
#: lib/libalpm/signing.c:548
#: lib/libalpm/signing.c:540
#, c-format
msgid "key \"%s\" could not be looked up remotely\n"
msgstr "la clé « %s » ne peut être recherchée à distance\n"
#: lib/libalpm/signing.c:943 lib/libalpm/sync.c:1022
#: lib/libalpm/signing.c:926 lib/libalpm/sync.c:1022
#, c-format
msgid "%s: missing required signature\n"
msgstr "%s : signature requise manquante\n"
#: lib/libalpm/signing.c:958
#: lib/libalpm/signing.c:941
#, c-format
msgid "%s: signature from \"%s\" is marginal trust\n"
msgstr "%s : la signature de « %s » est de confiance mitigée\n"
#: lib/libalpm/signing.c:966
#: lib/libalpm/signing.c:949
#, c-format
msgid "%s: signature from \"%s\" is unknown trust\n"
msgstr "%s : la signature de « %s » est de confiance inconnue\n"
#: lib/libalpm/signing.c:973
#: lib/libalpm/signing.c:956
#, c-format
msgid "%s: signature from \"%s\" should never be trusted\n"
msgstr "%s : la signature de « %s » nest pas digne de confiance\n"
#: lib/libalpm/signing.c:985
#: lib/libalpm/signing.c:968
#, c-format
msgid "%s: key \"%s\" is unknown\n"
msgstr "%s : la clé « %s » est inconnue\n"
#: lib/libalpm/signing.c:994
#: lib/libalpm/signing.c:977
#, c-format
msgid "%s: key \"%s\" is disabled\n"
msgstr "%s : la clé « %s » est désactivée\n"
#: lib/libalpm/signing.c:998
#: lib/libalpm/signing.c:981
#, c-format
msgid "%s: signature from \"%s\" is expired\n"
msgstr "%s : la signature de « %s » est périmée\n"
#: lib/libalpm/signing.c:1002
#: lib/libalpm/signing.c:985
#, c-format
msgid "%s: signature from \"%s\" is invalid\n"
msgstr "%s : la signature de « %s » nest pas valide\n"
#: lib/libalpm/signing.c:1079 lib/libalpm/signing.c:1147
#: lib/libalpm/signing.c:1226
#: lib/libalpm/signing.c:1043 lib/libalpm/signing.c:1104
#: lib/libalpm/signing.c:1183
#, c-format
msgid "%s: signature format error\n"
msgstr "%s : erreur de format de signature\n"
#: lib/libalpm/signing.c:1179 lib/libalpm/signing.c:1212
#: lib/libalpm/signing.c:1220
#: lib/libalpm/signing.c:1136 lib/libalpm/signing.c:1169
#: lib/libalpm/signing.c:1177
#, c-format
msgid "%s: unsupported signature format\n"
msgstr "%s : format de signature non pris en charge\n"
#: lib/libalpm/sync.c:99
#: lib/libalpm/sync.c:96
#, c-format
msgid "%s: ignoring package upgrade (%s => %s)\n"
msgstr "%s : ignore la mise à jour du paquet (%s => %s)\n"
#: lib/libalpm/sync.c:111
#: lib/libalpm/sync.c:108
#, c-format
msgid "%s: ignoring package downgrade (%s => %s)\n"
msgstr "%s : ignore le retour à la version antérieure (%s => %s)\n"
#: lib/libalpm/sync.c:114
#: lib/libalpm/sync.c:111
#, c-format
msgid "%s: downgrading from version %s to version %s\n"
msgstr "%s : retourne à la version antérieure (%s => %s)\n"
#: lib/libalpm/sync.c:120
#: lib/libalpm/sync.c:117
#, c-format
msgid "%s: local (%s) is newer than %s (%s)\n"
msgstr "%s : la version locale (%s) est plus récente que %s (%s)\n"
#: lib/libalpm/sync.c:161
#: lib/libalpm/sync.c:158
#, c-format
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
msgstr "ignore le remplacement du paquet (%s-%s => %s-%s)\n"
#: lib/libalpm/sync.c:177
#: lib/libalpm/sync.c:174
#, c-format
msgid "cannot replace %s by %s\n"
msgstr "le remplacement de %s par %s est impossible\n"
#: lib/libalpm/sync.c:535 lib/libalpm/sync.c:605
#: lib/libalpm/sync.c:476
#, c-format
msgid "packages %s and %s have the same filename: %s\n"
msgstr "les paquets %s et %s ont le même nom de fichier : %s\n"
#: lib/libalpm/sync.c:542 lib/libalpm/sync.c:612
#, c-format
msgid "unresolvable package conflicts detected\n"
msgstr "un conflit de paquets impossible à résoudre a été détecté\n"
#: lib/libalpm/sync.c:555
#: lib/libalpm/sync.c:562
#, c-format
msgid "removing '%s' from target list because it conflicts with '%s'\n"
msgstr ""
"supprime « %s » de la liste de cible car il est en conflit avec « %s »\n"
#: lib/libalpm/sync.c:849
#, c-format
msgid "failed to retrieve some files\n"
msgstr "erreur lors de la récupération de certains fichiers\n"
#: lib/libalpm/sync.c:1036
#, c-format
msgid "failed to read file %s: %s\n"
@@ -963,84 +989,84 @@ msgstr "appliquer la transaction de suppression a échoué\n"
msgid "could not commit transaction\n"
msgstr "appliquer la transaction a échoué\n"
#: lib/libalpm/trans.c:364
#: lib/libalpm/trans.c:365
#, c-format
msgid "could not create temp directory\n"
msgstr "la création du répertoire temporaire a échoué\n"
#: lib/libalpm/trans.c:379
#: lib/libalpm/trans.c:380
#, c-format
msgid "could not copy tempfile to %s (%s)\n"
msgstr "la copie du fichier temporaire vers %s a échoué (%s)\n"
#: lib/libalpm/trans.c:410
#: lib/libalpm/trans.c:411
#, c-format
msgid "could not remove %s\n"
msgstr "la suppression de %s a échoué\n"
#: lib/libalpm/trans.c:414
#: lib/libalpm/trans.c:415
#, c-format
msgid "could not remove tmpdir %s\n"
msgstr "la suppression du répertoire temporaire %s a échoué\n"
#: lib/libalpm/util.c:486
#: lib/libalpm/util.c:488
#, c-format
msgid "unable to write to pipe (%s)\n"
msgstr ""
"impossible décrire dans le tube (%s)\n"
"\n"
#: lib/libalpm/util.c:545
#: lib/libalpm/util.c:547
#, c-format
msgid "unable to read from pipe (%s)\n"
msgstr "impossible de lire à partir du tube (%s)\n"
#: lib/libalpm/util.c:609 lib/libalpm/util.c:615
#: lib/libalpm/util.c:617 lib/libalpm/util.c:623
#, c-format
msgid "could not create pipe (%s)\n"
msgstr "impossible de créer le tube (%s)\n"
#: lib/libalpm/util.c:623
#: lib/libalpm/util.c:631
#, c-format
msgid "could not fork a new process (%s)\n"
msgstr "la génération dun nouveau processus a échoué (%s)\n"
#: lib/libalpm/util.c:646
#: lib/libalpm/util.c:654
#, c-format
msgid "could not change the root directory (%s)\n"
msgstr "changer le répertoire racine a échoué (%s)\n"
#: lib/libalpm/util.c:658
#: lib/libalpm/util.c:666
#, c-format
msgid "call to execv failed (%s)\n"
msgstr "lappel à execv a échoué (%s)\n"
#: lib/libalpm/util.c:737
#: lib/libalpm/util.c:745
#, c-format
msgid "call to waitpid failed (%s)\n"
msgstr "lappel de waitpid a échoué (%s)\n"
#: lib/libalpm/util.c:747
#: lib/libalpm/util.c:755
#, c-format
msgid "command failed to execute correctly\n"
msgstr "la commande na pas pu être exécutée correctement\n"
#: lib/libalpm/util.c:754
#: lib/libalpm/util.c:762
#, c-format
msgid "Unknown signal"
msgstr "Signal inconnu"
#: lib/libalpm/util.c:756
#: lib/libalpm/util.c:764
#, c-format
msgid "command terminated by signal %d: %s\n"
msgstr "commande terminée par le signal %d : %s\n"
#: lib/libalpm/util.c:853
#: lib/libalpm/util.c:875
#, c-format
msgid "no %s cache exists, creating...\n"
msgstr "le cache %s nexiste pas, création…\n"
#: lib/libalpm/util.c:884
#: lib/libalpm/util.c:906
#, c-format
msgid "couldn't find or create package cache, using %s instead\n"
msgstr ""

View File

@@ -1,6 +1,6 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Pacman Development Team <pacman-dev@archlinux.org>
# This file is distributed under the same license as the PACKAGE package.
# Copyright (C) YEAR "Pacman Development Team <pacman-dev@archlinux.org>"
# This file is distributed under the same license as the libalpm package.
#
# Translators:
# Adrián Chaves Fernández <adriyetichaves@gmail.com>, 2013-2014
@@ -15,8 +15,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Arch Linux Pacman package manager\n"
"Report-Msgid-Bugs-To: http://bugs.archlinux.org/index.php?project=3\n"
"POT-Creation-Date: 2019-10-21 17:23+1000\n"
"PO-Revision-Date: 2019-10-07 08:12+0000\n"
"POT-Creation-Date: 2021-09-04 16:15+1000\n"
"PO-Revision-Date: 2021-05-20 02:25+0000\n"
"Last-Translator: Allan McRae <allan@archlinux.org>\n"
"Language-Team: Galician (http://www.transifex.com/toofishes/archlinux-pacman/"
"language/gl/)\n"
@@ -26,17 +26,17 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: lib/libalpm/add.c:91 lib/libalpm/sync.c:290
#: lib/libalpm/add.c:90 lib/libalpm/sync.c:279
#, c-format
msgid "%s-%s is up to date -- skipping\n"
msgstr "%s-%s está actualizado -- omitindo\n"
#: lib/libalpm/add.c:95
#: lib/libalpm/add.c:94
#, c-format
msgid "%s-%s is up to date -- reinstalling\n"
msgstr "%s-%s está actualizado --re-instalando\n"
#: lib/libalpm/add.c:100
#: lib/libalpm/add.c:99
#, c-format
msgid "downgrading package %s (%s => %s)\n"
msgstr "desactualizando a versión do paquete %s (%s => %s)\n"
@@ -46,17 +46,17 @@ msgstr "desactualizando a versión do paquete %s (%s => %s)\n"
msgid "cannot allocate disk archive object"
msgstr "memoria insuficiente para o obxecto de arquivo de disco"
#: lib/libalpm/add.c:143 lib/libalpm/util.c:382
#: lib/libalpm/add.c:143 lib/libalpm/util.c:384
#, c-format
msgid "warning given when extracting %s (%s)\n"
msgstr "alerta producida mentres se extraía %s (%s)\n"
#: lib/libalpm/add.c:146 lib/libalpm/util.c:385
#: lib/libalpm/add.c:146 lib/libalpm/util.c:387
#, c-format
msgid "could not extract %s (%s)\n"
msgstr "Non foi posíbel extraer «%s» (%s).\n"
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:574 lib/libalpm/remove.c:542
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:709 lib/libalpm/remove.c:534
#, c-format
msgid "could not rename %s to %s (%s)\n"
msgstr "Non foi posíbel cambiar o nome de «%s» a «%s» (%s).\n"
@@ -102,141 +102,141 @@ msgstr ""
msgid "unable to extract %s.pacnew: path too long"
msgstr "non se pode extraer %s.pacnew: ruta demasiado longa"
#: lib/libalpm/add.c:513 lib/libalpm/util.c:334 lib/libalpm/util.c:592
#: lib/libalpm/add.c:510 lib/libalpm/util.c:335 lib/libalpm/util.c:600
#, c-format
msgid "could not get current working directory\n"
msgstr "non se puido obter o directorio de traballo actual\n"
#: lib/libalpm/add.c:518 lib/libalpm/util.c:339 lib/libalpm/util.c:597
#: lib/libalpm/util.c:650
#: lib/libalpm/add.c:515 lib/libalpm/util.c:340 lib/libalpm/util.c:605
#: lib/libalpm/util.c:658
#, c-format
msgid "could not change directory to %s (%s)\n"
msgstr "non se puido cambiar o directorio a %s (%s)\n"
#: lib/libalpm/add.c:575 lib/libalpm/util.c:403 lib/libalpm/util.c:766
#: lib/libalpm/add.c:571 lib/libalpm/util.c:405 lib/libalpm/util.c:774
#, c-format
msgid "could not restore working directory (%s)\n"
msgstr "non se puido restaurar o directorio de traballo (%s)\n"
#: lib/libalpm/add.c:583
#: lib/libalpm/add.c:579
#, c-format
msgid "problem occurred while upgrading %s\n"
msgstr "aconteceu un erro durante a actualización de %s\n"
#: lib/libalpm/add.c:589
#: lib/libalpm/add.c:585
#, c-format
msgid "problem occurred while installing %s\n"
msgstr "aconteceu un erro durante a instalación de %s\n"
#: lib/libalpm/add.c:604
#: lib/libalpm/add.c:600
#, c-format
msgid "could not update database entry %s-%s\n"
msgstr "non se puido actualizar a entrada %s-%s na base de datos\n"
#: lib/libalpm/add.c:615
#: lib/libalpm/add.c:610
#, c-format
msgid "could not add entry '%s' in cache\n"
msgstr "non se puido agregar a entrada '%s' á caché\n"
#: lib/libalpm/be_local.c:267
#: lib/libalpm/be_local.c:266
#, c-format
msgid "error while reading file %s: %s\n"
msgstr "erro ao ler o ficheiro «%s»: %s\n"
#: lib/libalpm/be_local.c:364
#: lib/libalpm/be_local.c:376
#, c-format
msgid "removing invalid database: %s\n"
msgstr "quitando a base de datos non válida: %s\n"
#: lib/libalpm/be_local.c:415 lib/libalpm/be_local.c:905
#: lib/libalpm/be_local.c:427 lib/libalpm/be_local.c:909
#, c-format
msgid "could not create directory %s: %s\n"
msgstr "non se puido crear o directorio %s: %s\n"
#: lib/libalpm/be_local.c:590 lib/libalpm/be_sync.c:386
#: lib/libalpm/be_local.c:602 lib/libalpm/be_sync.c:322
#, c-format
msgid "invalid name for database entry '%s'\n"
msgstr "nome non válido para a entrada '%s' da base de datos\n"
#: lib/libalpm/be_local.c:598
#: lib/libalpm/be_local.c:610
#, c-format
msgid "duplicated database entry '%s'\n"
msgstr "entrada '%s' duplicada na base de datos\n"
#: lib/libalpm/be_local.c:610
#: lib/libalpm/be_local.c:622
#, c-format
msgid "corrupted database entry '%s'\n"
msgstr "entrada dañada na base de datos '%s'\n"
#: lib/libalpm/be_local.c:713 lib/libalpm/be_local.c:809
#: lib/libalpm/be_local.c:954 lib/libalpm/be_local.c:1051
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:422 lib/libalpm/util.c:253
#: lib/libalpm/util.c:269
#: lib/libalpm/be_local.c:722 lib/libalpm/be_local.c:818
#: lib/libalpm/be_local.c:958 lib/libalpm/be_local.c:1055
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:823 lib/libalpm/util.c:254
#: lib/libalpm/util.c:270
#, c-format
msgid "could not open file %s: %s\n"
msgstr ""
"non se puido abrir o arquivo %s: %s\n"
"\n"
#: lib/libalpm/be_local.c:729 lib/libalpm/be_sync.c:650
#: lib/libalpm/be_local.c:738 lib/libalpm/be_sync.c:582
#, c-format
msgid "%s database is inconsistent: name mismatch on package %s\n"
msgstr ""
"a base de datos %s é inconsistente: nome mal emparexado no paquete %s\n"
#: lib/libalpm/be_local.c:735 lib/libalpm/be_sync.c:656
#: lib/libalpm/be_local.c:744 lib/libalpm/be_sync.c:588
#, c-format
msgid "%s database is inconsistent: version mismatch on package %s\n"
msgstr ""
"a base de datos %s é inconsistente: versión mal emparexada no paquete %s\n"
#: lib/libalpm/be_local.c:776
#: lib/libalpm/be_local.c:785
#, c-format
msgid "unknown validation type for package %s: %s\n"
msgstr "o paquete «%s» ten un tipo de validación incorrecto: %s\n"
#: lib/libalpm/be_package.c:479 lib/libalpm/be_package.c:637
#: lib/libalpm/be_package.c:650
#: lib/libalpm/be_package.c:478 lib/libalpm/be_package.c:631
#: lib/libalpm/be_package.c:643
#, c-format
msgid "error while reading package %s: %s\n"
msgstr "error ao ler o paquete %s: %s\n"
#: lib/libalpm/be_package.c:493 lib/libalpm/be_package.c:517
#: lib/libalpm/be_package.c:491 lib/libalpm/be_package.c:514
#, c-format
msgid "error while reading mtree of package %s: %s\n"
msgstr "Produciuse un erro ao ler os datos dos ficheiros do paquete «%s»: %s\n"
#: lib/libalpm/be_package.c:603
#: lib/libalpm/be_package.c:597
#, c-format
msgid "could not parse package description file in %s\n"
msgstr "non se puido ler o arquivo de descripción en %s\n"
#: lib/libalpm/be_package.c:608
#: lib/libalpm/be_package.c:602
#, c-format
msgid "missing package name in %s\n"
msgstr "falta o nome do paquete en %s\n"
#: lib/libalpm/be_package.c:612
#: lib/libalpm/be_package.c:606
#, c-format
msgid "missing package version in %s\n"
msgstr "falta a versión do paquete en %s\n"
#: lib/libalpm/be_package.c:616
#: lib/libalpm/be_package.c:610
#, c-format
msgid "invalid package version in %s\n"
msgstr "A versión do paquete %s non é correcta.\n"
#: lib/libalpm/be_package.c:657
#: lib/libalpm/be_package.c:649
#, c-format
msgid "missing package metadata in %s\n"
msgstr "faltan os metadatos do paquete en %s\n"
#: lib/libalpm/be_package.c:750
#: lib/libalpm/be_package.c:741
#, c-format
msgid "failed to read signature file: %s\n"
msgstr "non foi posíbel ler o ficheiro da sinatura: %s\n"
#: lib/libalpm/be_package.c:779 lib/libalpm/sync.c:953
#: lib/libalpm/be_package.c:770 lib/libalpm/sync.c:953
#, c-format
msgid "required key missing from keyring\n"
msgstr "a chave solicitada non está no anel\n"
@@ -246,37 +246,37 @@ msgstr "a chave solicitada non está no anel\n"
msgid "removing invalid file: %s\n"
msgstr "eliminando arquivo inválido: %s\n"
#: lib/libalpm/be_sync.c:515
#: lib/libalpm/be_sync.c:449
#, c-format
msgid "could not parse package description file '%s' from db '%s'\n"
msgstr ""
"error ao ler o arquivo de descripción '%s' do paquete da base de datos '%s'\n"
#: lib/libalpm/be_sync.c:522
#: lib/libalpm/be_sync.c:456
#, c-format
msgid "could not read db '%s' (%s)\n"
msgstr "non se puido ler a base de datos '%s' (%s)\n"
#: lib/libalpm/be_sync.c:556 lib/libalpm/be_sync.c:561
#: lib/libalpm/be_sync.c:489 lib/libalpm/be_sync.c:494
#, c-format
msgid "%s database is inconsistent: filename of package %s is illegal\n"
msgstr ""
"A base de datos «%s» é inconsistente: a ruta do arquivo do paquete %s contén "
"caracteres non permitidos.\n"
#: lib/libalpm/be_sync.c:566
#: lib/libalpm/be_sync.c:499
#, c-format
msgid "%s database is inconsistent: filename of package %s is too long\n"
msgstr ""
"A base de datos «%s» é inconsistente: a ruta do arquivo do paquete %s é "
"demasiado longa.\n"
#: lib/libalpm/be_sync.c:632
#: lib/libalpm/be_sync.c:564
#, c-format
msgid "unknown database file: %s\n"
msgstr "Ficheiro de base de datos descoñecido: %s\n"
#: lib/libalpm/db.c:370
#: lib/libalpm/db.c:344
#, c-format
msgid "database path is undefined\n"
msgstr "a ruta da base de datos non está definida\n"
@@ -296,12 +296,12 @@ msgstr "%s eliminarase tras a súa dependencia %s\n"
msgid "%s will be installed before its %s dependency\n"
msgstr "%s instalarase antes ca súa dependencia %s\n"
#: lib/libalpm/deps.c:681 lib/libalpm/deps.c:712
#: lib/libalpm/deps.c:666 lib/libalpm/deps.c:697
#, c-format
msgid "ignoring package %s-%s\n"
msgstr "ignorando o paquete %s-%s\n"
#: lib/libalpm/deps.c:869
#: lib/libalpm/deps.c:842
#, c-format
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
msgstr "non se puido resolver \"%s\", unha dependencia de \"%s\"\n"
@@ -359,42 +359,68 @@ msgstr "non se puido determinar o punto de montaxe da raiz %s\n"
msgid "Partition %s is mounted read only\n"
msgstr "A partición %s está montada como só lectura\n"
#: lib/libalpm/dload.c:161
#: lib/libalpm/dload.c:116
#, c-format
msgid ""
"too many errors from %s, skipping for the remainder of this transaction\n"
msgstr ""
#: lib/libalpm/dload.c:220
#, c-format
msgid "disk"
msgstr "disco"
#: lib/libalpm/dload.c:348
#: lib/libalpm/dload.c:392
#, c-format
msgid "failed to create temporary file for download\n"
msgstr "error ao crear un arquivo temporal para a descarga\n"
#: lib/libalpm/dload.c:393
#, c-format
msgid "url '%s' is invalid\n"
msgstr "a dirección %s non é válida\n"
#: lib/libalpm/dload.c:464 lib/libalpm/dload.c:485 lib/libalpm/dload.c:496
#: lib/libalpm/dload.c:509 lib/libalpm/dload.c:547 lib/libalpm/dload.c:561
#, c-format
msgid "failed retrieving file '%s' from %s : %s\n"
msgstr "error ao obter o arquivo '%s' dende %s: %s\n"
#: lib/libalpm/dload.c:477
#: lib/libalpm/dload.c:539
#, c-format
msgid "failed retrieving file '%s' from %s : expected download size exceeded\n"
msgstr ""
"Non foi posíbel obter o ficheiro «%s» de «%s»: superouse o tamaño de "
"descarga esperado.\n"
#: lib/libalpm/dload.c:532
#: lib/libalpm/dload.c:687
#, c-format
msgid "%s appears to be truncated: %jd/%jd bytes\n"
msgstr "%s parece estar truncado: %jd/%jd bytes\n"
#: lib/libalpm/dload.c:677 lib/libalpm/dload.c:706
#: lib/libalpm/dload.c:787
#, c-format
msgid "failed to download %s\n"
msgstr "non se puido descargar %s\n"
msgid "url '%s' is invalid\n"
msgstr "a dirección %s non é válida\n"
#: lib/libalpm/dload.c:893
#, c-format
msgid "failed to setup a download payload for %s\n"
msgstr ""
#: lib/libalpm/dload.c:905
#, c-format
msgid "curl returned error %d from transfer\n"
msgstr ""
#: lib/libalpm/dload.c:929
#, c-format
msgid "curl transfer error: %d\n"
msgstr ""
#: lib/libalpm/dload.c:1055 lib/libalpm/sync.c:840
#, c-format
msgid "failed to retrieve some files\n"
msgstr "non foi posíbel descargar algúns dos ficheiros\n"
#: lib/libalpm/dload.c:1078
#, c-format
msgid "download completed successfully but no file in the cache\n"
msgstr ""
#: lib/libalpm/error.c:40
#, c-format
@@ -511,7 +537,7 @@ msgstr "non hai servidores configurados para o repositorio"
msgid "transaction already initialized"
msgstr "a operación xa se inicializou"
#: lib/libalpm/error.c:90 lib/libalpm/error.c:94
#: lib/libalpm/error.c:90 lib/libalpm/error.c:96
#, c-format
msgid "transaction not initialized"
msgstr "a operación non está inicializada"
@@ -521,87 +547,87 @@ msgstr "a operación non está inicializada"
msgid "duplicate target"
msgstr "obxetivo duplicado"
#: lib/libalpm/error.c:96
#: lib/libalpm/error.c:94
#, c-format
msgid "duplicate filename"
msgstr ""
#: lib/libalpm/error.c:98
#, c-format
msgid "transaction not prepared"
msgstr "a operación non está lista"
#: lib/libalpm/error.c:98
#: lib/libalpm/error.c:100
#, c-format
msgid "transaction aborted"
msgstr "operación abortada"
#: lib/libalpm/error.c:100
#: lib/libalpm/error.c:102
#, c-format
msgid "operation not compatible with the transaction type"
msgstr "a operación non é compatible co tipo de transacción"
#: lib/libalpm/error.c:102
#: lib/libalpm/error.c:104
#, c-format
msgid "transaction commit attempt when database is not locked"
msgstr ""
"intento de envío da transacción canda a base de datos non está bloqueada"
#: lib/libalpm/error.c:104
#: lib/libalpm/error.c:106
#, c-format
msgid "failed to run transaction hooks"
msgstr "error ao executar os «hooks» da transacción"
#: lib/libalpm/error.c:107
#: lib/libalpm/error.c:109
#, c-format
msgid "could not find or read package"
msgstr "non se puido atopar ou ler o paquete"
#: lib/libalpm/error.c:109
#: lib/libalpm/error.c:111
#, c-format
msgid "operation cancelled due to ignorepkg"
msgstr "operación cancelada debido a ignorepkg"
#: lib/libalpm/error.c:111
#: lib/libalpm/error.c:113
#, c-format
msgid "invalid or corrupted package"
msgstr "paquete non válido ou dañado"
#: lib/libalpm/error.c:113
#: lib/libalpm/error.c:115
#, c-format
msgid "invalid or corrupted package (checksum)"
msgstr "paquete non válido ou dañado (suma de verificación)"
#: lib/libalpm/error.c:115
#: lib/libalpm/error.c:117
#, c-format
msgid "invalid or corrupted package (PGP signature)"
msgstr "paquete non válido ou dañado (firma PGP)"
#: lib/libalpm/error.c:117
#: lib/libalpm/error.c:119
#, c-format
msgid "package missing required signature"
msgstr "Ao paquete fáltalle a sinatura obrigatoria."
#: lib/libalpm/error.c:119
#: lib/libalpm/error.c:121
#, c-format
msgid "cannot open package file"
msgstr "non se puido abrir o arquivo de paquetes"
#: lib/libalpm/error.c:121
#: lib/libalpm/error.c:123
#, c-format
msgid "cannot remove all files for package"
msgstr "non se puido quitar todolos arquivos do paquete"
#: lib/libalpm/error.c:123
#: lib/libalpm/error.c:125
#, c-format
msgid "package filename is not valid"
msgstr "o nome de arquivo do paquete non é válido"
#: lib/libalpm/error.c:125
#: lib/libalpm/error.c:127
#, c-format
msgid "package architecture is not valid"
msgstr "a arquitectura do paquete non é válida"
#: lib/libalpm/error.c:127
#, c-format
msgid "could not find repository for target"
msgstr "non se puido atopar un repositorio para o obxetivo"
#: lib/libalpm/error.c:130
#, c-format
msgid "missing PGP signature"
@@ -667,12 +693,12 @@ msgstr ""
msgid "unexpected error"
msgstr "error inesperado"
#: lib/libalpm/handle.c:153
#: lib/libalpm/handle.c:142
#, c-format
msgid "lock file missing %s\n"
msgstr "Falta «%s» ao ficheiro de bloqueo.\n"
#: lib/libalpm/handle.c:159
#: lib/libalpm/handle.c:148
#, c-format
msgid "could not remove lock file %s\n"
msgstr "Non foi posíbel eliminar o ficheiro de bloqueo «%s».\n"
@@ -744,7 +770,7 @@ msgstr ""
msgid "unable to run hook %s: %s\n"
msgstr ""
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:386
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:378
#, c-format
msgid "could not open directory: %s: %s\n"
msgstr "non foi posíbel abrir o cartafol «%s»: %s\n"
@@ -754,7 +780,7 @@ msgstr "non foi posíbel abrir o cartafol «%s»: %s\n"
msgid "could not open file: %s%s: %s\n"
msgstr "non foi posíbel abrir o ficheiro:%s%s: %s\n"
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:259
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:260
#, c-format
msgid "could not stat file %s: %s\n"
msgstr "non foi posíbel executar a orde «stat» co ficheiro «%s»: %s\n"
@@ -764,184 +790,184 @@ msgstr "non foi posíbel executar a orde «stat» co ficheiro «%s»: %s\n"
msgid "could not read directory: %s: %s\n"
msgstr "non se puido ler o cartafol: %s: %s\n"
#: lib/libalpm/package.c:578
#: lib/libalpm/package.c:598
#, c-format
msgid "could not fully load metadata for package %s-%s\n"
msgstr "non se puido cargar completamente os metadatos para o paquete %s-%s\n"
#: lib/libalpm/remove.c:119
#: lib/libalpm/remove.c:111
#, c-format
msgid "could not find %s in database -- skipping\n"
msgstr "non se puido atopar %s na base de datos --saltando\n"
#: lib/libalpm/remove.c:154
#: lib/libalpm/remove.c:146
#, c-format
msgid "removing %s from target list\n"
msgstr "quitando %s da lista de obxetivos\n"
#: lib/libalpm/remove.c:346
#: lib/libalpm/remove.c:338
#, c-format
msgid "cannot remove file '%s': %s\n"
msgstr "non se puido quitar o arquivo '%s': %s\n"
#: lib/libalpm/remove.c:411 lib/libalpm/remove.c:420
#: lib/libalpm/remove.c:403 lib/libalpm/remove.c:412
#, c-format
msgid "could not backup %s due to PATH_MAX overflow\n"
msgstr ""
#: lib/libalpm/remove.c:562
#: lib/libalpm/remove.c:554
#, c-format
msgid "cannot remove %s (%s)\n"
msgstr "error ao eliminar %s (%s)\n"
#: lib/libalpm/remove.c:735
#: lib/libalpm/remove.c:727
#, c-format
msgid "could not remove database entry %s-%s\n"
msgstr "non se puido quitar a entrada %s-%s da base de datos\n"
#: lib/libalpm/remove.c:740
#: lib/libalpm/remove.c:732
#, c-format
msgid "could not remove entry '%s' from cache\n"
msgstr "non se puido quitar a entrada '%s' do caché\n"
#: lib/libalpm/signing.c:171
#: lib/libalpm/signing.c:163
#, c-format
msgid "Public keyring not found; have you run '%s'?\n"
msgstr ""
#: lib/libalpm/signing.c:207 lib/libalpm/signing.c:784
#: lib/libalpm/signing.c:199 lib/libalpm/signing.c:767
#, c-format
msgid "GPGME error: %s\n"
msgstr ""
#: lib/libalpm/signing.c:284
#: lib/libalpm/signing.c:274
#, c-format
msgid "looking up key %s using WKD\n"
msgstr ""
#: lib/libalpm/signing.c:293
#: lib/libalpm/signing.c:283
#, c-format
msgid "gpg error: %s\n"
msgstr ""
#: lib/libalpm/signing.c:441 lib/libalpm/signing.c:515
#: lib/libalpm/signing.c:430 lib/libalpm/signing.c:503
#, c-format
msgid "keyring is not writable\n"
msgstr ""
#: lib/libalpm/signing.c:539
#: lib/libalpm/signing.c:531
#, c-format
msgid "key \"%s\" on keyserver\n"
msgstr ""
#: lib/libalpm/signing.c:544
#: lib/libalpm/signing.c:536
#, c-format
msgid "key \"%s\" could not be imported\n"
msgstr "a clave \"%s\" non se puido importar\n"
#: lib/libalpm/signing.c:548
#: lib/libalpm/signing.c:540
#, c-format
msgid "key \"%s\" could not be looked up remotely\n"
msgstr ""
#: lib/libalpm/signing.c:943 lib/libalpm/sync.c:1022
#: lib/libalpm/signing.c:926 lib/libalpm/sync.c:1022
#, c-format
msgid "%s: missing required signature\n"
msgstr "%s: fáltalle a sinatura obrigatoria.\n"
#: lib/libalpm/signing.c:958
#: lib/libalpm/signing.c:941
#, c-format
msgid "%s: signature from \"%s\" is marginal trust\n"
msgstr ""
#: lib/libalpm/signing.c:966
#: lib/libalpm/signing.c:949
#, c-format
msgid "%s: signature from \"%s\" is unknown trust\n"
msgstr ""
#: lib/libalpm/signing.c:973
#: lib/libalpm/signing.c:956
#, c-format
msgid "%s: signature from \"%s\" should never be trusted\n"
msgstr ""
#: lib/libalpm/signing.c:985
#: lib/libalpm/signing.c:968
#, c-format
msgid "%s: key \"%s\" is unknown\n"
msgstr "%s: a clave \"%s\" é descoñecida\n"
#: lib/libalpm/signing.c:994
#: lib/libalpm/signing.c:977
#, c-format
msgid "%s: key \"%s\" is disabled\n"
msgstr ""
#: lib/libalpm/signing.c:998
#: lib/libalpm/signing.c:981
#, c-format
msgid "%s: signature from \"%s\" is expired\n"
msgstr "%s: a sinatura de \"%s\" caducou\n"
#: lib/libalpm/signing.c:1002
#: lib/libalpm/signing.c:985
#, c-format
msgid "%s: signature from \"%s\" is invalid\n"
msgstr "%s: a sinatura de \"%s\" non é válida\n"
#: lib/libalpm/signing.c:1079 lib/libalpm/signing.c:1147
#: lib/libalpm/signing.c:1226
#: lib/libalpm/signing.c:1043 lib/libalpm/signing.c:1104
#: lib/libalpm/signing.c:1183
#, c-format
msgid "%s: signature format error\n"
msgstr "%s: erro no formato da sinatura\n"
#: lib/libalpm/signing.c:1179 lib/libalpm/signing.c:1212
#: lib/libalpm/signing.c:1220
#: lib/libalpm/signing.c:1136 lib/libalpm/signing.c:1169
#: lib/libalpm/signing.c:1177
#, c-format
msgid "%s: unsupported signature format\n"
msgstr "%s: formato da sinatura non soportado\n"
#: lib/libalpm/sync.c:99
#: lib/libalpm/sync.c:96
#, c-format
msgid "%s: ignoring package upgrade (%s => %s)\n"
msgstr "%s: ignorando a actualización do paquete (%s => %s)\n"
#: lib/libalpm/sync.c:111
#: lib/libalpm/sync.c:108
#, c-format
msgid "%s: ignoring package downgrade (%s => %s)\n"
msgstr "%s: ignorando a desactualización do paquete (%s => %s)\n"
#: lib/libalpm/sync.c:114
#: lib/libalpm/sync.c:111
#, c-format
msgid "%s: downgrading from version %s to version %s\n"
msgstr "%s: desactualizando da versión %s á versión %s\n"
#: lib/libalpm/sync.c:120
#: lib/libalpm/sync.c:117
#, c-format
msgid "%s: local (%s) is newer than %s (%s)\n"
msgstr "%s: local (%s) é máis novo que %s (%s)\n"
#: lib/libalpm/sync.c:161
#: lib/libalpm/sync.c:158
#, c-format
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
msgstr "ignorando o reemplazo do paquete (%s-%s => %s-%s)\n"
#: lib/libalpm/sync.c:177
#: lib/libalpm/sync.c:174
#, c-format
msgid "cannot replace %s by %s\n"
msgstr "non se puido reemplazar o arquivo %s por %s\n"
#: lib/libalpm/sync.c:535 lib/libalpm/sync.c:605
#: lib/libalpm/sync.c:476
#, c-format
msgid "packages %s and %s have the same filename: %s\n"
msgstr ""
#: lib/libalpm/sync.c:542 lib/libalpm/sync.c:612
#, c-format
msgid "unresolvable package conflicts detected\n"
msgstr "detectáronse paquetes con conflictos non resolvibles\n"
#: lib/libalpm/sync.c:555
#: lib/libalpm/sync.c:562
#, c-format
msgid "removing '%s' from target list because it conflicts with '%s'\n"
msgstr ""
"quitando '%s' da lista de obxetivos debido a que ten conflictos con '%s'\n"
#: lib/libalpm/sync.c:849
#, c-format
msgid "failed to retrieve some files\n"
msgstr "non foi posíbel descargar algúns dos ficheiros\n"
#: lib/libalpm/sync.c:1036
#, c-format
msgid "failed to read file %s: %s\n"
@@ -962,82 +988,82 @@ msgstr "non se puido enviar a operación de eliminación\n"
msgid "could not commit transaction\n"
msgstr "non se puido asignar a transacción\n"
#: lib/libalpm/trans.c:364
#: lib/libalpm/trans.c:365
#, c-format
msgid "could not create temp directory\n"
msgstr "non se pode crear o directorio temporal\n"
#: lib/libalpm/trans.c:379
#: lib/libalpm/trans.c:380
#, c-format
msgid "could not copy tempfile to %s (%s)\n"
msgstr "non se puido copiar o arquivo temporal a %s (%s)\n"
#: lib/libalpm/trans.c:410
#: lib/libalpm/trans.c:411
#, c-format
msgid "could not remove %s\n"
msgstr "non se puido eliminar %s\n"
#: lib/libalpm/trans.c:414
#: lib/libalpm/trans.c:415
#, c-format
msgid "could not remove tmpdir %s\n"
msgstr "non se puido eliminar o directorio temporal %s\n"
#: lib/libalpm/util.c:486
#: lib/libalpm/util.c:488
#, c-format
msgid "unable to write to pipe (%s)\n"
msgstr "non se pode escribir na tubería (%s)\n"
#: lib/libalpm/util.c:545
#: lib/libalpm/util.c:547
#, c-format
msgid "unable to read from pipe (%s)\n"
msgstr "non se pode ler da tubería (%s)\n"
#: lib/libalpm/util.c:609 lib/libalpm/util.c:615
#: lib/libalpm/util.c:617 lib/libalpm/util.c:623
#, c-format
msgid "could not create pipe (%s)\n"
msgstr "non se puido crear tubería (%s)\n"
#: lib/libalpm/util.c:623
#: lib/libalpm/util.c:631
#, c-format
msgid "could not fork a new process (%s)\n"
msgstr "non se puido crear un novo proceso (%s)\n"
#: lib/libalpm/util.c:646
#: lib/libalpm/util.c:654
#, c-format
msgid "could not change the root directory (%s)\n"
msgstr "non se puido cambiar o directorio raíz (%s)\n"
#: lib/libalpm/util.c:658
#: lib/libalpm/util.c:666
#, c-format
msgid "call to execv failed (%s)\n"
msgstr "chamada a execv fallida (%s)\n"
#: lib/libalpm/util.c:737
#: lib/libalpm/util.c:745
#, c-format
msgid "call to waitpid failed (%s)\n"
msgstr "chamada a waitpid fallida (%s)\n"
#: lib/libalpm/util.c:747
#: lib/libalpm/util.c:755
#, c-format
msgid "command failed to execute correctly\n"
msgstr "o comando fallou ao executarse\n"
#: lib/libalpm/util.c:754
#: lib/libalpm/util.c:762
#, c-format
msgid "Unknown signal"
msgstr "Sinal descoñecido"
#: lib/libalpm/util.c:756
#: lib/libalpm/util.c:764
#, c-format
msgid "command terminated by signal %d: %s\n"
msgstr "O sinal %d interrompeu a execución: %s\n"
#: lib/libalpm/util.c:853
#: lib/libalpm/util.c:875
#, c-format
msgid "no %s cache exists, creating...\n"
msgstr "non existe o caché %s, creando...\n"
#: lib/libalpm/util.c:884
#: lib/libalpm/util.c:906
#, c-format
msgid "couldn't find or create package cache, using %s instead\n"
msgstr ""

1043
lib/libalpm/po/hi.po Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Pacman Development Team <pacman-dev@archlinux.org>
# This file is distributed under the same license as the PACKAGE package.
# Copyright (C) YEAR "Pacman Development Team <pacman-dev@archlinux.org>"
# This file is distributed under the same license as the libalpm package.
#
# Translators:
# Ivica Kolić <ikoli@yahoo.com>, 2012-2016,2018-2019
@@ -9,9 +9,9 @@ msgid ""
msgstr ""
"Project-Id-Version: Arch Linux Pacman package manager\n"
"Report-Msgid-Bugs-To: http://bugs.archlinux.org/index.php?project=3\n"
"POT-Creation-Date: 2019-10-21 17:23+1000\n"
"PO-Revision-Date: 2019-10-07 20:45+0000\n"
"Last-Translator: Ivica Kolić <ikoli@yahoo.com>\n"
"POT-Creation-Date: 2021-09-04 16:15+1000\n"
"PO-Revision-Date: 2021-05-20 02:25+0000\n"
"Last-Translator: Allan McRae <allan@archlinux.org>\n"
"Language-Team: Croatian (http://www.transifex.com/toofishes/archlinux-pacman/"
"language/hr/)\n"
"Language: hr\n"
@@ -21,17 +21,17 @@ msgstr ""
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
#: lib/libalpm/add.c:91 lib/libalpm/sync.c:290
#: lib/libalpm/add.c:90 lib/libalpm/sync.c:279
#, c-format
msgid "%s-%s is up to date -- skipping\n"
msgstr "%s-%s je ažuriran -- preskačem\n"
#: lib/libalpm/add.c:95
#: lib/libalpm/add.c:94
#, c-format
msgid "%s-%s is up to date -- reinstalling\n"
msgstr "%s-%s je ažuriran -- ponovno instaliram\n"
#: lib/libalpm/add.c:100
#: lib/libalpm/add.c:99
#, c-format
msgid "downgrading package %s (%s => %s)\n"
msgstr "unazađujem paket %s (%s => %s)\n"
@@ -41,12 +41,12 @@ msgstr "unazađujem paket %s (%s => %s)\n"
msgid "cannot allocate disk archive object"
msgstr ""
#: lib/libalpm/add.c:143 lib/libalpm/util.c:382
#: lib/libalpm/add.c:143 lib/libalpm/util.c:384
#, c-format
msgid "warning given when extracting %s (%s)\n"
msgstr "dano upozorenje tijekom raspakiranja %s (%s)\n"
#: lib/libalpm/add.c:146 lib/libalpm/util.c:385
#: lib/libalpm/add.c:146 lib/libalpm/util.c:387
#, c-format
msgid "could not extract %s (%s)\n"
msgstr ""
@@ -54,7 +54,7 @@ msgstr ""
"\n"
"\n"
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:574 lib/libalpm/remove.c:542
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:709 lib/libalpm/remove.c:534
#, c-format
msgid "could not rename %s to %s (%s)\n"
msgstr "ne mogu preimenivati %s u %s (%s)\n"
@@ -98,148 +98,148 @@ msgstr "raspakiravanje: ne pišem preko direktorija datotekom %s\n"
msgid "unable to extract %s.pacnew: path too long"
msgstr "nije moguće raspakirati %s.pacnew: putanja je preduga"
#: lib/libalpm/add.c:513 lib/libalpm/util.c:334 lib/libalpm/util.c:592
#: lib/libalpm/add.c:510 lib/libalpm/util.c:335 lib/libalpm/util.c:600
#, c-format
msgid "could not get current working directory\n"
msgstr "ne mogu dobaviti trenutni radni direktorij\n"
#: lib/libalpm/add.c:518 lib/libalpm/util.c:339 lib/libalpm/util.c:597
#: lib/libalpm/util.c:650
#: lib/libalpm/add.c:515 lib/libalpm/util.c:340 lib/libalpm/util.c:605
#: lib/libalpm/util.c:658
#, c-format
msgid "could not change directory to %s (%s)\n"
msgstr "ne mogu promjeniti direktorij u %s (%s)\n"
#: lib/libalpm/add.c:575 lib/libalpm/util.c:403 lib/libalpm/util.c:766
#: lib/libalpm/add.c:571 lib/libalpm/util.c:405 lib/libalpm/util.c:774
#, c-format
msgid "could not restore working directory (%s)\n"
msgstr ""
"ne mogu obnoviti radni direktorij (%s)\n"
"\n"
#: lib/libalpm/add.c:583
#: lib/libalpm/add.c:579
#, c-format
msgid "problem occurred while upgrading %s\n"
msgstr ""
"došlo je do greške prilikom nadogradnje %s\n"
"\n"
#: lib/libalpm/add.c:589
#: lib/libalpm/add.c:585
#, c-format
msgid "problem occurred while installing %s\n"
msgstr ""
"došlo je do greške prilikom instaliranja %s\n"
"\n"
#: lib/libalpm/add.c:604
#: lib/libalpm/add.c:600
#, c-format
msgid "could not update database entry %s-%s\n"
msgstr "ne mogu ažurirati unos baze podataka %s-%s\n"
#: lib/libalpm/add.c:615
#: lib/libalpm/add.c:610
#, c-format
msgid "could not add entry '%s' in cache\n"
msgstr "ne mogu dodati unos '%s' u cache\n"
#: lib/libalpm/be_local.c:267
#: lib/libalpm/be_local.c:266
#, c-format
msgid "error while reading file %s: %s\n"
msgstr "greška prilikom čitanja datoteke %s: %s\n"
#: lib/libalpm/be_local.c:364
#: lib/libalpm/be_local.c:376
#, c-format
msgid "removing invalid database: %s\n"
msgstr "uklanjam neispravnu bazu podataka: %s\n"
#: lib/libalpm/be_local.c:415 lib/libalpm/be_local.c:905
#: lib/libalpm/be_local.c:427 lib/libalpm/be_local.c:909
#, c-format
msgid "could not create directory %s: %s\n"
msgstr "ne mogu napraviti direktorij %s: %s\n"
#: lib/libalpm/be_local.c:590 lib/libalpm/be_sync.c:386
#: lib/libalpm/be_local.c:602 lib/libalpm/be_sync.c:322
#, c-format
msgid "invalid name for database entry '%s'\n"
msgstr ""
"neispravno ime za unos baze podataka '%s'\n"
"\n"
#: lib/libalpm/be_local.c:598
#: lib/libalpm/be_local.c:610
#, c-format
msgid "duplicated database entry '%s'\n"
msgstr "dvostruki unos '%s' u bazi podataka\n"
#: lib/libalpm/be_local.c:610
#: lib/libalpm/be_local.c:622
#, c-format
msgid "corrupted database entry '%s'\n"
msgstr "oštećeni unos baze podataka '%s'\n"
#: lib/libalpm/be_local.c:713 lib/libalpm/be_local.c:809
#: lib/libalpm/be_local.c:954 lib/libalpm/be_local.c:1051
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:422 lib/libalpm/util.c:253
#: lib/libalpm/util.c:269
#: lib/libalpm/be_local.c:722 lib/libalpm/be_local.c:818
#: lib/libalpm/be_local.c:958 lib/libalpm/be_local.c:1055
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:823 lib/libalpm/util.c:254
#: lib/libalpm/util.c:270
#, c-format
msgid "could not open file %s: %s\n"
msgstr "ne mogu otvoriti datoteku %s: %s\n"
#: lib/libalpm/be_local.c:729 lib/libalpm/be_sync.c:650
#: lib/libalpm/be_local.c:738 lib/libalpm/be_sync.c:582
#, c-format
msgid "%s database is inconsistent: name mismatch on package %s\n"
msgstr "%s baza podatak je nedosljedna: ime se ne podudara sa paketom %s\n"
#: lib/libalpm/be_local.c:735 lib/libalpm/be_sync.c:656
#: lib/libalpm/be_local.c:744 lib/libalpm/be_sync.c:588
#, c-format
msgid "%s database is inconsistent: version mismatch on package %s\n"
msgstr ""
"%s baza podataka je nedosljedna: verzija se ne podudara sa paketom %s\n"
#: lib/libalpm/be_local.c:776
#: lib/libalpm/be_local.c:785
#, c-format
msgid "unknown validation type for package %s: %s\n"
msgstr "nepoznata vrsta provjere za paket %s: %s\n"
#: lib/libalpm/be_package.c:479 lib/libalpm/be_package.c:637
#: lib/libalpm/be_package.c:650
#: lib/libalpm/be_package.c:478 lib/libalpm/be_package.c:631
#: lib/libalpm/be_package.c:643
#, c-format
msgid "error while reading package %s: %s\n"
msgstr "greška prilikom čitanja paketa %s: %s\n"
#: lib/libalpm/be_package.c:493 lib/libalpm/be_package.c:517
#: lib/libalpm/be_package.c:491 lib/libalpm/be_package.c:514
#, c-format
msgid "error while reading mtree of package %s: %s\n"
msgstr ""
"greška pri čitanju mtree paketa %s: %s\n"
"\n"
#: lib/libalpm/be_package.c:603
#: lib/libalpm/be_package.c:597
#, c-format
msgid "could not parse package description file in %s\n"
msgstr "ne mogu analizirati opisnu datoteku paketa u %s\n"
#: lib/libalpm/be_package.c:608
#: lib/libalpm/be_package.c:602
#, c-format
msgid "missing package name in %s\n"
msgstr "nedostaje ime paketa u %s\n"
#: lib/libalpm/be_package.c:612
#: lib/libalpm/be_package.c:606
#, c-format
msgid "missing package version in %s\n"
msgstr "nedostaje verzija paketa u %s\n"
#: lib/libalpm/be_package.c:616
#: lib/libalpm/be_package.c:610
#, c-format
msgid "invalid package version in %s\n"
msgstr "neispravna verzija pakata u %s\n"
#: lib/libalpm/be_package.c:657
#: lib/libalpm/be_package.c:649
#, c-format
msgid "missing package metadata in %s\n"
msgstr "nedostaju metapodaci paketa u %s\n"
#: lib/libalpm/be_package.c:750
#: lib/libalpm/be_package.c:741
#, c-format
msgid "failed to read signature file: %s\n"
msgstr "ne mogu pročitati datoteku sa potpisom: %s\n"
#: lib/libalpm/be_package.c:779 lib/libalpm/sync.c:953
#: lib/libalpm/be_package.c:770 lib/libalpm/sync.c:953
#, c-format
msgid "required key missing from keyring\n"
msgstr "traženi ključ nedostaje u privjesku\n"
@@ -249,32 +249,32 @@ msgstr "traženi ključ nedostaje u privjesku\n"
msgid "removing invalid file: %s\n"
msgstr "uklanjam neispravnu datoteku: %s\n"
#: lib/libalpm/be_sync.c:515
#: lib/libalpm/be_sync.c:449
#, c-format
msgid "could not parse package description file '%s' from db '%s'\n"
msgstr "ne mogu obraditi datoteku opisa paketa '%s' iz baze podataka '%s'\n"
#: lib/libalpm/be_sync.c:522
#: lib/libalpm/be_sync.c:456
#, c-format
msgid "could not read db '%s' (%s)\n"
msgstr "ne mogu čitati db '%s' (%s)\n"
#: lib/libalpm/be_sync.c:556 lib/libalpm/be_sync.c:561
#: lib/libalpm/be_sync.c:489 lib/libalpm/be_sync.c:494
#, c-format
msgid "%s database is inconsistent: filename of package %s is illegal\n"
msgstr "nedosljednost baze podataka %s: ime paketa %s je nevažeći\n"
#: lib/libalpm/be_sync.c:566
#: lib/libalpm/be_sync.c:499
#, c-format
msgid "%s database is inconsistent: filename of package %s is too long\n"
msgstr "nedosljednost baze podataka %s: ime paketa %s je predugo\n"
#: lib/libalpm/be_sync.c:632
#: lib/libalpm/be_sync.c:564
#, c-format
msgid "unknown database file: %s\n"
msgstr "nepoznata datoteka baze podataka: %s\n"
#: lib/libalpm/db.c:370
#: lib/libalpm/db.c:344
#, c-format
msgid "database path is undefined\n"
msgstr "putanja baze podataka nije određena\n"
@@ -294,12 +294,12 @@ msgstr "%s će biti uklonjen nakon njegove %s zavisnosti\n"
msgid "%s will be installed before its %s dependency\n"
msgstr "%s će biti instaliran prije svoje %s zavisnosti\n"
#: lib/libalpm/deps.c:681 lib/libalpm/deps.c:712
#: lib/libalpm/deps.c:666 lib/libalpm/deps.c:697
#, c-format
msgid "ignoring package %s-%s\n"
msgstr "ignoriram paket %s-%s\n"
#: lib/libalpm/deps.c:869
#: lib/libalpm/deps.c:842
#, c-format
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
msgstr "ne mogu riješiti \"%s\", zavisnost je od \"%s\"\n"
@@ -357,42 +357,68 @@ msgstr "ne mogu odrediti točku montiranja za root %s\n"
msgid "Partition %s is mounted read only\n"
msgstr "Particija %s je montirana samo za čitanje\n"
#: lib/libalpm/dload.c:161
#: lib/libalpm/dload.c:116
#, c-format
msgid ""
"too many errors from %s, skipping for the remainder of this transaction\n"
msgstr ""
#: lib/libalpm/dload.c:220
#, c-format
msgid "disk"
msgstr "disk"
#: lib/libalpm/dload.c:348
#: lib/libalpm/dload.c:392
#, c-format
msgid "failed to create temporary file for download\n"
msgstr "neuspjela izrada privremene datoteke za preuzimanje\n"
#: lib/libalpm/dload.c:393
#, c-format
msgid "url '%s' is invalid\n"
msgstr "url '%s' je neispravan\n"
#: lib/libalpm/dload.c:464 lib/libalpm/dload.c:485 lib/libalpm/dload.c:496
#: lib/libalpm/dload.c:509 lib/libalpm/dload.c:547 lib/libalpm/dload.c:561
#, c-format
msgid "failed retrieving file '%s' from %s : %s\n"
msgstr "neuspjelo primanje datoteke '%s' iz %s : %s\n"
#: lib/libalpm/dload.c:477
#: lib/libalpm/dload.c:539
#, c-format
msgid "failed retrieving file '%s' from %s : expected download size exceeded\n"
msgstr ""
"greška pri dobavljanju datoteke '%s' iz %s: veličina preuzimanja je veća od "
"očekivane\n"
#: lib/libalpm/dload.c:532
#: lib/libalpm/dload.c:687
#, c-format
msgid "%s appears to be truncated: %jd/%jd bytes\n"
msgstr "%s je okrnjen: %jd%jd bajtova\n"
#: lib/libalpm/dload.c:677 lib/libalpm/dload.c:706
#: lib/libalpm/dload.c:787
#, c-format
msgid "failed to download %s\n"
msgstr "neuspjelo preuzimanje %s\n"
msgid "url '%s' is invalid\n"
msgstr "url '%s' je neispravan\n"
#: lib/libalpm/dload.c:893
#, c-format
msgid "failed to setup a download payload for %s\n"
msgstr ""
#: lib/libalpm/dload.c:905
#, c-format
msgid "curl returned error %d from transfer\n"
msgstr ""
#: lib/libalpm/dload.c:929
#, c-format
msgid "curl transfer error: %d\n"
msgstr ""
#: lib/libalpm/dload.c:1055 lib/libalpm/sync.c:840
#, c-format
msgid "failed to retrieve some files\n"
msgstr "neuspjelo primanje nekin datoteka\n"
#: lib/libalpm/dload.c:1078
#, c-format
msgid "download completed successfully but no file in the cache\n"
msgstr ""
#: lib/libalpm/error.c:40
#, c-format
@@ -509,7 +535,7 @@ msgstr "nijedan poslužitelj nije konfiguriran za repozitorij"
msgid "transaction already initialized"
msgstr "transakcija već inicijalizirana"
#: lib/libalpm/error.c:90 lib/libalpm/error.c:94
#: lib/libalpm/error.c:90 lib/libalpm/error.c:96
#, c-format
msgid "transaction not initialized"
msgstr "transakcija nije inicijalizirana"
@@ -519,86 +545,86 @@ msgstr "transakcija nije inicijalizirana"
msgid "duplicate target"
msgstr "dvostruka meta"
#: lib/libalpm/error.c:96
#: lib/libalpm/error.c:94
#, c-format
msgid "duplicate filename"
msgstr ""
#: lib/libalpm/error.c:98
#, c-format
msgid "transaction not prepared"
msgstr "transakcija nije pripremljena"
#: lib/libalpm/error.c:98
#: lib/libalpm/error.c:100
#, c-format
msgid "transaction aborted"
msgstr "transakcija prekinuta"
#: lib/libalpm/error.c:100
#: lib/libalpm/error.c:102
#, c-format
msgid "operation not compatible with the transaction type"
msgstr "operacija nije kompatibilna sa tipom transakcije"
#: lib/libalpm/error.c:102
#: lib/libalpm/error.c:104
#, c-format
msgid "transaction commit attempt when database is not locked"
msgstr "pokušaj izvršavanja transakcije kad baza podataka nije zaključana"
#: lib/libalpm/error.c:104
#: lib/libalpm/error.c:106
#, c-format
msgid "failed to run transaction hooks"
msgstr "ne mogu pokrenuti zakačke transakcije"
#: lib/libalpm/error.c:107
#: lib/libalpm/error.c:109
#, c-format
msgid "could not find or read package"
msgstr "ne mogu naći ili pročitati paket"
#: lib/libalpm/error.c:109
#: lib/libalpm/error.c:111
#, c-format
msgid "operation cancelled due to ignorepkg"
msgstr "operacija otkazana zbog ignorepkg-a"
#: lib/libalpm/error.c:111
#: lib/libalpm/error.c:113
#, c-format
msgid "invalid or corrupted package"
msgstr "neispravan ili oštećen paket"
#: lib/libalpm/error.c:113
#: lib/libalpm/error.c:115
#, c-format
msgid "invalid or corrupted package (checksum)"
msgstr "neispravni ili oštećeni paket (checksum)"
#: lib/libalpm/error.c:115
#: lib/libalpm/error.c:117
#, c-format
msgid "invalid or corrupted package (PGP signature)"
msgstr "neispravna ili oštećena datoteka (PGP potpis)"
#: lib/libalpm/error.c:117
#: lib/libalpm/error.c:119
#, c-format
msgid "package missing required signature"
msgstr "paket nema traženi potpis"
#: lib/libalpm/error.c:119
#: lib/libalpm/error.c:121
#, c-format
msgid "cannot open package file"
msgstr "ne mogu otvoriti datoteku paketa"
#: lib/libalpm/error.c:121
#: lib/libalpm/error.c:123
#, c-format
msgid "cannot remove all files for package"
msgstr "ne mogu ukloniti sve datoteke za paket"
#: lib/libalpm/error.c:123
#: lib/libalpm/error.c:125
#, c-format
msgid "package filename is not valid"
msgstr "datotečno ime paketa nije valjano"
#: lib/libalpm/error.c:125
#: lib/libalpm/error.c:127
#, c-format
msgid "package architecture is not valid"
msgstr "arhitektura paketa nije ispravna"
#: lib/libalpm/error.c:127
#, c-format
msgid "could not find repository for target"
msgstr "ne mogu naći repozitorij za metu"
#: lib/libalpm/error.c:130
#, c-format
msgid "missing PGP signature"
@@ -664,12 +690,12 @@ msgstr ""
msgid "unexpected error"
msgstr "neočekivana greška"
#: lib/libalpm/handle.c:153
#: lib/libalpm/handle.c:142
#, c-format
msgid "lock file missing %s\n"
msgstr "datoteka za zaključavanje nedostaje %s\n"
#: lib/libalpm/handle.c:159
#: lib/libalpm/handle.c:148
#, c-format
msgid "could not remove lock file %s\n"
msgstr "ne mogu ukloniti datoteku za zaključavanje %s\n"
@@ -741,7 +767,7 @@ msgstr ""
msgid "unable to run hook %s: %s\n"
msgstr ""
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:386
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:378
#, c-format
msgid "could not open directory: %s: %s\n"
msgstr "ne mogu otvoriti direktorij: %s: %s\n"
@@ -751,7 +777,7 @@ msgstr "ne mogu otvoriti direktorij: %s: %s\n"
msgid "could not open file: %s%s: %s\n"
msgstr ""
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:259
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:260
#, c-format
msgid "could not stat file %s: %s\n"
msgstr "ne mogu odrediti pojedinosti datoteke %s: %s\n"
@@ -761,189 +787,189 @@ msgstr "ne mogu odrediti pojedinosti datoteke %s: %s\n"
msgid "could not read directory: %s: %s\n"
msgstr "ne mogu čitati direktorij: %s: %s\n"
#: lib/libalpm/package.c:578
#: lib/libalpm/package.c:598
#, c-format
msgid "could not fully load metadata for package %s-%s\n"
msgstr "ne mogu skroz učitati metapodatke za oaket %s-%s\n"
#: lib/libalpm/remove.c:119
#: lib/libalpm/remove.c:111
#, c-format
msgid "could not find %s in database -- skipping\n"
msgstr "ne mogu naći %s u bazi podataka -- preskačem\n"
#: lib/libalpm/remove.c:154
#: lib/libalpm/remove.c:146
#, c-format
msgid "removing %s from target list\n"
msgstr "uklanjanje %s sa ciljane liste\n"
#: lib/libalpm/remove.c:346
#: lib/libalpm/remove.c:338
#, c-format
msgid "cannot remove file '%s': %s\n"
msgstr "ne mogu ukloniti datoteku %s': %s\n"
#: lib/libalpm/remove.c:411 lib/libalpm/remove.c:420
#: lib/libalpm/remove.c:403 lib/libalpm/remove.c:412
#, c-format
msgid "could not backup %s due to PATH_MAX overflow\n"
msgstr ""
#: lib/libalpm/remove.c:562
#: lib/libalpm/remove.c:554
#, c-format
msgid "cannot remove %s (%s)\n"
msgstr ""
"ne mogu ukloniti %s (%s)\n"
"\n"
#: lib/libalpm/remove.c:735
#: lib/libalpm/remove.c:727
#, c-format
msgid "could not remove database entry %s-%s\n"
msgstr "ne mogu ukloniti unos baze podataka %s-%s\n"
#: lib/libalpm/remove.c:740
#: lib/libalpm/remove.c:732
#, c-format
msgid "could not remove entry '%s' from cache\n"
msgstr "ne mogu ukloniti unos '%s' iz cachea\n"
#: lib/libalpm/signing.c:171
#: lib/libalpm/signing.c:163
#, c-format
msgid "Public keyring not found; have you run '%s'?\n"
msgstr ""
#: lib/libalpm/signing.c:207 lib/libalpm/signing.c:784
#: lib/libalpm/signing.c:199 lib/libalpm/signing.c:767
#, c-format
msgid "GPGME error: %s\n"
msgstr "GPGME greška: %s\n"
#: lib/libalpm/signing.c:284
#: lib/libalpm/signing.c:274
#, c-format
msgid "looking up key %s using WKD\n"
msgstr ""
#: lib/libalpm/signing.c:293
#: lib/libalpm/signing.c:283
#, c-format
msgid "gpg error: %s\n"
msgstr "gpg greška: %s\n"
#: lib/libalpm/signing.c:441 lib/libalpm/signing.c:515
#: lib/libalpm/signing.c:430 lib/libalpm/signing.c:503
#, c-format
msgid "keyring is not writable\n"
msgstr ""
#: lib/libalpm/signing.c:539
#: lib/libalpm/signing.c:531
#, c-format
msgid "key \"%s\" on keyserver\n"
msgstr ""
#: lib/libalpm/signing.c:544
#: lib/libalpm/signing.c:536
#, c-format
msgid "key \"%s\" could not be imported\n"
msgstr ""
#: lib/libalpm/signing.c:548
#: lib/libalpm/signing.c:540
#, c-format
msgid "key \"%s\" could not be looked up remotely\n"
msgstr ""
#: lib/libalpm/signing.c:943 lib/libalpm/sync.c:1022
#: lib/libalpm/signing.c:926 lib/libalpm/sync.c:1022
#, c-format
msgid "%s: missing required signature\n"
msgstr ""
"%s: nedostaje potrebni potpis\n"
"\n"
#: lib/libalpm/signing.c:958
#: lib/libalpm/signing.c:941
#, c-format
msgid "%s: signature from \"%s\" is marginal trust\n"
msgstr ""
#: lib/libalpm/signing.c:966
#: lib/libalpm/signing.c:949
#, c-format
msgid "%s: signature from \"%s\" is unknown trust\n"
msgstr ""
#: lib/libalpm/signing.c:973
#: lib/libalpm/signing.c:956
#, c-format
msgid "%s: signature from \"%s\" should never be trusted\n"
msgstr ""
#: lib/libalpm/signing.c:985
#: lib/libalpm/signing.c:968
#, c-format
msgid "%s: key \"%s\" is unknown\n"
msgstr "%s: ključ \"%s\" je nepoznat\n"
#: lib/libalpm/signing.c:994
#: lib/libalpm/signing.c:977
#, c-format
msgid "%s: key \"%s\" is disabled\n"
msgstr "%s: ključ \"%s\" je onemogućen\n"
#: lib/libalpm/signing.c:998
#: lib/libalpm/signing.c:981
#, c-format
msgid "%s: signature from \"%s\" is expired\n"
msgstr ""
#: lib/libalpm/signing.c:1002
#: lib/libalpm/signing.c:985
#, c-format
msgid "%s: signature from \"%s\" is invalid\n"
msgstr ""
#: lib/libalpm/signing.c:1079 lib/libalpm/signing.c:1147
#: lib/libalpm/signing.c:1226
#: lib/libalpm/signing.c:1043 lib/libalpm/signing.c:1104
#: lib/libalpm/signing.c:1183
#, c-format
msgid "%s: signature format error\n"
msgstr "%s: greška formata potpisa\n"
#: lib/libalpm/signing.c:1179 lib/libalpm/signing.c:1212
#: lib/libalpm/signing.c:1220
#: lib/libalpm/signing.c:1136 lib/libalpm/signing.c:1169
#: lib/libalpm/signing.c:1177
#, c-format
msgid "%s: unsupported signature format\n"
msgstr "%s: nepodržani format potpisa\n"
#: lib/libalpm/sync.c:99
#: lib/libalpm/sync.c:96
#, c-format
msgid "%s: ignoring package upgrade (%s => %s)\n"
msgstr ""
"%s: ignoriram nadogradnju paketa (%s => %s)\n"
"\n"
#: lib/libalpm/sync.c:111
#: lib/libalpm/sync.c:108
#, c-format
msgid "%s: ignoring package downgrade (%s => %s)\n"
msgstr "%s: ignoriram unazađivanje paketa (%s => %s)\n"
#: lib/libalpm/sync.c:114
#: lib/libalpm/sync.c:111
#, c-format
msgid "%s: downgrading from version %s to version %s\n"
msgstr "%s: unazađujem sa verzije %s na verziju %s\n"
#: lib/libalpm/sync.c:120
#: lib/libalpm/sync.c:117
#, c-format
msgid "%s: local (%s) is newer than %s (%s)\n"
msgstr "%s: lokalni (%s) je noviji od %s (%s)\n"
#: lib/libalpm/sync.c:161
#: lib/libalpm/sync.c:158
#, c-format
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
msgstr "ignoriram zamjenu paketa (%s-%s => %s-%s)\n"
#: lib/libalpm/sync.c:177
#: lib/libalpm/sync.c:174
#, c-format
msgid "cannot replace %s by %s\n"
msgstr "ne mogu zamjeniti %s sa %s\n"
#: lib/libalpm/sync.c:535 lib/libalpm/sync.c:605
#: lib/libalpm/sync.c:476
#, c-format
msgid "packages %s and %s have the same filename: %s\n"
msgstr ""
#: lib/libalpm/sync.c:542 lib/libalpm/sync.c:612
#, c-format
msgid "unresolvable package conflicts detected\n"
msgstr "otkriveni su nerješivi sukobi paketa\n"
#: lib/libalpm/sync.c:555
#: lib/libalpm/sync.c:562
#, c-format
msgid "removing '%s' from target list because it conflicts with '%s'\n"
msgstr "uklanjam '%s' sa liste mete jer se sukobljava sa '%s'\n"
#: lib/libalpm/sync.c:849
#, c-format
msgid "failed to retrieve some files\n"
msgstr "neuspjelo primanje nekin datoteka\n"
#: lib/libalpm/sync.c:1036
#, c-format
msgid "failed to read file %s: %s\n"
@@ -964,82 +990,82 @@ msgstr "ne mogu izvršiti transakciju uklanjanja\n"
msgid "could not commit transaction\n"
msgstr "ne mogu izvršiti transakciju\n"
#: lib/libalpm/trans.c:364
#: lib/libalpm/trans.c:365
#, c-format
msgid "could not create temp directory\n"
msgstr "ne mogu napraviti privremeni direktorij\n"
#: lib/libalpm/trans.c:379
#: lib/libalpm/trans.c:380
#, c-format
msgid "could not copy tempfile to %s (%s)\n"
msgstr "ne mogu kopirati privremenu datoteku u %s (%s)\n"
#: lib/libalpm/trans.c:410
#: lib/libalpm/trans.c:411
#, c-format
msgid "could not remove %s\n"
msgstr "ne mogu ukloniti %s\n"
#: lib/libalpm/trans.c:414
#: lib/libalpm/trans.c:415
#, c-format
msgid "could not remove tmpdir %s\n"
msgstr "ne mogu ukloniti privremeni direktorij %s\n"
#: lib/libalpm/util.c:486
#: lib/libalpm/util.c:488
#, c-format
msgid "unable to write to pipe (%s)\n"
msgstr "ne mogu pisati u cijev (%s)\n"
#: lib/libalpm/util.c:545
#: lib/libalpm/util.c:547
#, c-format
msgid "unable to read from pipe (%s)\n"
msgstr "ne mogu čitati iz cijevi (%s)\n"
#: lib/libalpm/util.c:609 lib/libalpm/util.c:615
#: lib/libalpm/util.c:617 lib/libalpm/util.c:623
#, c-format
msgid "could not create pipe (%s)\n"
msgstr "ne mogu napraviti cijev (%s)\n"
#: lib/libalpm/util.c:623
#: lib/libalpm/util.c:631
#, c-format
msgid "could not fork a new process (%s)\n"
msgstr "ne mogu račvati novi proces (%s)\n"
#: lib/libalpm/util.c:646
#: lib/libalpm/util.c:654
#, c-format
msgid "could not change the root directory (%s)\n"
msgstr "ne mogu promjeniti korjenski/root direktorij (%s)\n"
#: lib/libalpm/util.c:658
#: lib/libalpm/util.c:666
#, c-format
msgid "call to execv failed (%s)\n"
msgstr "poziv procesa izvršavanja nije uspio (%s)\n"
#: lib/libalpm/util.c:737
#: lib/libalpm/util.c:745
#, c-format
msgid "call to waitpid failed (%s)\n"
msgstr "poziv procesa čekanja nije uspio (%s)\n"
#: lib/libalpm/util.c:747
#: lib/libalpm/util.c:755
#, c-format
msgid "command failed to execute correctly\n"
msgstr "neuspjelo ispravno izvršenje naredbe\n"
#: lib/libalpm/util.c:754
#: lib/libalpm/util.c:762
#, c-format
msgid "Unknown signal"
msgstr "Nepoznati signal"
#: lib/libalpm/util.c:756
#: lib/libalpm/util.c:764
#, c-format
msgid "command terminated by signal %d: %s\n"
msgstr "naredba prekinuta signalom %d: %s\n"
#: lib/libalpm/util.c:853
#: lib/libalpm/util.c:875
#, c-format
msgid "no %s cache exists, creating...\n"
msgstr "%s cache ne postoji, pravim...\n"
#: lib/libalpm/util.c:884
#: lib/libalpm/util.c:906
#, c-format
msgid "couldn't find or create package cache, using %s instead\n"
msgstr "ne mogu naći ili napraviti cache paketa, koristim %s umjesto toga\n"

View File

@@ -1,8 +1,9 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Pacman Development Team <pacman-dev@archlinux.org>
# This file is distributed under the same license as the PACKAGE package.
# Copyright (C) YEAR "Pacman Development Team <pacman-dev@archlinux.org>"
# This file is distributed under the same license as the libalpm package.
#
# Translators:
# Ács Zoltán <acszoltan111@gmail.com>, 2021
# Balló György <ballogyor@gmail.com>, 2014
# Balló György <ballogyor@gmail.com>, 2011,2014,2016
# Gábor Nagy <ngaba@bibl.u-szeged.hu>, 2011,2013
@@ -19,9 +20,9 @@ msgid ""
msgstr ""
"Project-Id-Version: Arch Linux Pacman package manager\n"
"Report-Msgid-Bugs-To: http://bugs.archlinux.org/index.php?project=3\n"
"POT-Creation-Date: 2019-10-21 17:23+1000\n"
"PO-Revision-Date: 2019-10-09 19:41+0000\n"
"Last-Translator: user14 <nleknh@gmail.com>\n"
"POT-Creation-Date: 2021-09-04 16:15+1000\n"
"PO-Revision-Date: 2021-06-19 17:38+0000\n"
"Last-Translator: Ács Zoltán <acszoltan111@gmail.com>\n"
"Language-Team: Hungarian (http://www.transifex.com/toofishes/archlinux-"
"pacman/language/hu/)\n"
"Language: hu\n"
@@ -30,17 +31,17 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: lib/libalpm/add.c:91 lib/libalpm/sync.c:290
#: lib/libalpm/add.c:90 lib/libalpm/sync.c:279
#, c-format
msgid "%s-%s is up to date -- skipping\n"
msgstr "a(z) %s-%s naprakész -- kihagyás\n"
#: lib/libalpm/add.c:95
#: lib/libalpm/add.c:94
#, c-format
msgid "%s-%s is up to date -- reinstalling\n"
msgstr "a(z) %s-%s naprakész -- újratelepítés\n"
#: lib/libalpm/add.c:100
#: lib/libalpm/add.c:99
#, c-format
msgid "downgrading package %s (%s => %s)\n"
msgstr "visszatérés egy régebbi %s verzióhoz (%s => %s)\n"
@@ -50,17 +51,17 @@ msgstr "visszatérés egy régebbi %s verzióhoz (%s => %s)\n"
msgid "cannot allocate disk archive object"
msgstr "az archív objektum nem foglalható le a lemezen"
#: lib/libalpm/add.c:143 lib/libalpm/util.c:382
#: lib/libalpm/add.c:143 lib/libalpm/util.c:384
#, c-format
msgid "warning given when extracting %s (%s)\n"
msgstr "figyelmeztetés a(z) %s kibontása közben (%s)\n"
#: lib/libalpm/add.c:146 lib/libalpm/util.c:385
#: lib/libalpm/add.c:146 lib/libalpm/util.c:387
#, c-format
msgid "could not extract %s (%s)\n"
msgstr "nem sikerült kibontani: %s (%s)\n"
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:574 lib/libalpm/remove.c:542
#: lib/libalpm/add.c:159 lib/libalpm/dload.c:709 lib/libalpm/remove.c:534
#, c-format
msgid "could not rename %s to %s (%s)\n"
msgstr "nem sikerült az átnevezés: %s -> %s (%s)\n"
@@ -104,137 +105,137 @@ msgstr "kibontás: nem írok felül könyvtárat a %s fájllal\n"
msgid "unable to extract %s.pacnew: path too long"
msgstr "%s.pacnew kibontása nem sikerült: az útvonal túl hosszú"
#: lib/libalpm/add.c:513 lib/libalpm/util.c:334 lib/libalpm/util.c:592
#: lib/libalpm/add.c:510 lib/libalpm/util.c:335 lib/libalpm/util.c:600
#, c-format
msgid "could not get current working directory\n"
msgstr "a jelenlegi munkakönyvtár nem kapható meg\n"
#: lib/libalpm/add.c:518 lib/libalpm/util.c:339 lib/libalpm/util.c:597
#: lib/libalpm/util.c:650
#: lib/libalpm/add.c:515 lib/libalpm/util.c:340 lib/libalpm/util.c:605
#: lib/libalpm/util.c:658
#, c-format
msgid "could not change directory to %s (%s)\n"
msgstr "nem sikerült a könyvtárváltás ide: %s (%s)\n"
#: lib/libalpm/add.c:575 lib/libalpm/util.c:403 lib/libalpm/util.c:766
#: lib/libalpm/add.c:571 lib/libalpm/util.c:405 lib/libalpm/util.c:774
#, c-format
msgid "could not restore working directory (%s)\n"
msgstr "nem sikerült visszalépni a munkakönyvárba (%s)\n"
#: lib/libalpm/add.c:583
#: lib/libalpm/add.c:579
#, c-format
msgid "problem occurred while upgrading %s\n"
msgstr "hiba történt a(z) %s frissítése közben\n"
#: lib/libalpm/add.c:589
#: lib/libalpm/add.c:585
#, c-format
msgid "problem occurred while installing %s\n"
msgstr "hiba történt a(z) %s telepítése közben\n"
#: lib/libalpm/add.c:604
#: lib/libalpm/add.c:600
#, c-format
msgid "could not update database entry %s-%s\n"
msgstr "nem sikerült a(z) %s-%s adatbázis-bejegyzés frissítése\n"
#: lib/libalpm/add.c:615
#: lib/libalpm/add.c:610
#, c-format
msgid "could not add entry '%s' in cache\n"
msgstr "nem sikerült a(z) '%s' bejegyzés hozzáadása a gyorsítótárhoz\n"
#: lib/libalpm/be_local.c:267
#: lib/libalpm/be_local.c:266
#, c-format
msgid "error while reading file %s: %s\n"
msgstr "hiba a %s fájl olvasása közben: %s\n"
#: lib/libalpm/be_local.c:364
#: lib/libalpm/be_local.c:376
#, c-format
msgid "removing invalid database: %s\n"
msgstr "hibás adatbázis eltávolítása: %s\n"
#: lib/libalpm/be_local.c:415 lib/libalpm/be_local.c:905
#: lib/libalpm/be_local.c:427 lib/libalpm/be_local.c:909
#, c-format
msgid "could not create directory %s: %s\n"
msgstr "nem sikerült létrehozni a %s könyvtárat: %s\n"
#: lib/libalpm/be_local.c:590 lib/libalpm/be_sync.c:386
#: lib/libalpm/be_local.c:602 lib/libalpm/be_sync.c:322
#, c-format
msgid "invalid name for database entry '%s'\n"
msgstr "hibás név a(z) '%s' adatbázis-bejegyzés számára\n"
#: lib/libalpm/be_local.c:598
#: lib/libalpm/be_local.c:610
#, c-format
msgid "duplicated database entry '%s'\n"
msgstr "duplikált adatbázis-bejegyzés: '%s'\n"
#: lib/libalpm/be_local.c:610
#: lib/libalpm/be_local.c:622
#, c-format
msgid "corrupted database entry '%s'\n"
msgstr "sérült adatbázis-bejegyzés: '%s'\n"
#: lib/libalpm/be_local.c:713 lib/libalpm/be_local.c:809
#: lib/libalpm/be_local.c:954 lib/libalpm/be_local.c:1051
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:422 lib/libalpm/util.c:253
#: lib/libalpm/util.c:269
#: lib/libalpm/be_local.c:722 lib/libalpm/be_local.c:818
#: lib/libalpm/be_local.c:958 lib/libalpm/be_local.c:1055
#: lib/libalpm/diskspace.c:131 lib/libalpm/dload.c:823 lib/libalpm/util.c:254
#: lib/libalpm/util.c:270
#, c-format
msgid "could not open file %s: %s\n"
msgstr "nem sikerült megnyitni a %s fájlt: %s\n"
#: lib/libalpm/be_local.c:729 lib/libalpm/be_sync.c:650
#: lib/libalpm/be_local.c:738 lib/libalpm/be_sync.c:582
#, c-format
msgid "%s database is inconsistent: name mismatch on package %s\n"
msgstr "a(z) %s adatbázis inkonzisztens: eltérő nevek a(z) %s csomagnál\n"
#: lib/libalpm/be_local.c:735 lib/libalpm/be_sync.c:656
#: lib/libalpm/be_local.c:744 lib/libalpm/be_sync.c:588
#, c-format
msgid "%s database is inconsistent: version mismatch on package %s\n"
msgstr "a(z) %s adatbázis inkonzisztens: eltérő verziók a(z) %s csomagnál\n"
#: lib/libalpm/be_local.c:776
#: lib/libalpm/be_local.c:785
#, c-format
msgid "unknown validation type for package %s: %s\n"
msgstr "ismeretlen érvényességellenőrzési mód a(z) %s csomaghoz: %s\n"
#: lib/libalpm/be_package.c:479 lib/libalpm/be_package.c:637
#: lib/libalpm/be_package.c:650
#: lib/libalpm/be_package.c:478 lib/libalpm/be_package.c:631
#: lib/libalpm/be_package.c:643
#, c-format
msgid "error while reading package %s: %s\n"
msgstr "hiba a(z) %s csomag olvasása közben: %s\n"
#: lib/libalpm/be_package.c:493 lib/libalpm/be_package.c:517
#: lib/libalpm/be_package.c:491 lib/libalpm/be_package.c:514
#, c-format
msgid "error while reading mtree of package %s: %s\n"
msgstr "hiba a(z) %s csomag mtree adatának olvasása közben: %s\n"
#: lib/libalpm/be_package.c:603
#: lib/libalpm/be_package.c:597
#, c-format
msgid "could not parse package description file in %s\n"
msgstr "nem sikerült értelmezni a(z) %s csomagleíró fájlját\n"
#: lib/libalpm/be_package.c:608
#: lib/libalpm/be_package.c:602
#, c-format
msgid "missing package name in %s\n"
msgstr "hiányzó csomagnév: %s\n"
#: lib/libalpm/be_package.c:612
#: lib/libalpm/be_package.c:606
#, c-format
msgid "missing package version in %s\n"
msgstr "hiányzó csomagverzió: %s\n"
#: lib/libalpm/be_package.c:616
#: lib/libalpm/be_package.c:610
#, c-format
msgid "invalid package version in %s\n"
msgstr "érvénytelen csomagverzió: %s\n"
#: lib/libalpm/be_package.c:657
#: lib/libalpm/be_package.c:649
#, c-format
msgid "missing package metadata in %s\n"
msgstr "hiányzó csomaginformációs fájl: %s\n"
#: lib/libalpm/be_package.c:750
#: lib/libalpm/be_package.c:741
#, c-format
msgid "failed to read signature file: %s\n"
msgstr "nem sikerült olvasni a %s aláírásfájlt\n"
#: lib/libalpm/be_package.c:779 lib/libalpm/sync.c:953
#: lib/libalpm/be_package.c:770 lib/libalpm/sync.c:953
#, c-format
msgid "required key missing from keyring\n"
msgstr "egy szükséges kulcs hiányzik a kulcstartóból\n"
@@ -244,35 +245,35 @@ msgstr "egy szükséges kulcs hiányzik a kulcstartóból\n"
msgid "removing invalid file: %s\n"
msgstr "hibás fájl eltávolítása: %s\n"
#: lib/libalpm/be_sync.c:515
#: lib/libalpm/be_sync.c:449
#, c-format
msgid "could not parse package description file '%s' from db '%s'\n"
msgstr ""
"nem sikerült értelmezni a(z) '%s' csomagleíró fájlját a(z) '%s' "
"adatbázisból\n"
#: lib/libalpm/be_sync.c:522
#: lib/libalpm/be_sync.c:456
#, c-format
msgid "could not read db '%s' (%s)\n"
msgstr "(%s) nem lehetett olvasni a(z) '%s' adatbázist\n"
#: lib/libalpm/be_sync.c:556 lib/libalpm/be_sync.c:561
#: lib/libalpm/be_sync.c:489 lib/libalpm/be_sync.c:494
#, c-format
msgid "%s database is inconsistent: filename of package %s is illegal\n"
msgstr ""
"a(z) %s adatbázis inkonzisztens: a(z) %s csomag fájlneve nem megengedett\n"
#: lib/libalpm/be_sync.c:566
#: lib/libalpm/be_sync.c:499
#, c-format
msgid "%s database is inconsistent: filename of package %s is too long\n"
msgstr "a(z) %s adatbázis inkonzisztens: a(z) %s csomag fáljneve túl hosszú\n"
#: lib/libalpm/be_sync.c:632
#: lib/libalpm/be_sync.c:564
#, c-format
msgid "unknown database file: %s\n"
msgstr "ismeretlen adatbázisfájl: %s\n"
#: lib/libalpm/db.c:370
#: lib/libalpm/db.c:344
#, c-format
msgid "database path is undefined\n"
msgstr "az adatbázis-útvonal nincs megadva\n"
@@ -292,12 +293,12 @@ msgstr "a(z) %s csomag saját %s függősége után lesz eltávolítva\n"
msgid "%s will be installed before its %s dependency\n"
msgstr "a(z) %s csomag saját %s függősége előtt lesz telepítve\n"
#: lib/libalpm/deps.c:681 lib/libalpm/deps.c:712
#: lib/libalpm/deps.c:666 lib/libalpm/deps.c:697
#, c-format
msgid "ignoring package %s-%s\n"
msgstr "%s-%s csomag kihagyása\n"
#: lib/libalpm/deps.c:869
#: lib/libalpm/deps.c:842
#, c-format
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
msgstr "nem sikerült a(z) \"%2$s\" csomag \"%1$s\" függőségét feloldani\n"
@@ -354,42 +355,68 @@ msgstr "nem sikerült meghatározni a %s gyökérkönyvtár csatolási pontját\
msgid "Partition %s is mounted read only\n"
msgstr "A %s partíció csak olvashatóként van csatolva\n"
#: lib/libalpm/dload.c:161
#: lib/libalpm/dload.c:116
#, c-format
msgid ""
"too many errors from %s, skipping for the remainder of this transaction\n"
msgstr ""
#: lib/libalpm/dload.c:220
#, c-format
msgid "disk"
msgstr "lemez"
#: lib/libalpm/dload.c:348
#: lib/libalpm/dload.c:392
#, c-format
msgid "failed to create temporary file for download\n"
msgstr "nem sikerült létrehozni ideiglenes fájlt a letöltéshez\n"
#: lib/libalpm/dload.c:393
#, c-format
msgid "url '%s' is invalid\n"
msgstr "a '%s' URL hibás\n"
#: lib/libalpm/dload.c:464 lib/libalpm/dload.c:485 lib/libalpm/dload.c:496
#: lib/libalpm/dload.c:509 lib/libalpm/dload.c:547 lib/libalpm/dload.c:561
#, c-format
msgid "failed retrieving file '%s' from %s : %s\n"
msgstr "nem sikerült a(z) '%s' fájlt letölteni a %s helyről : %s\n"
#: lib/libalpm/dload.c:477
#: lib/libalpm/dload.c:539
#, c-format
msgid "failed retrieving file '%s' from %s : expected download size exceeded\n"
msgstr ""
"nem sikerült a(z) '%s' fájlt letölteni a %s helyről : a várt letöltési méret "
"túlhaladva\n"
#: lib/libalpm/dload.c:532
#: lib/libalpm/dload.c:687
#, c-format
msgid "%s appears to be truncated: %jd/%jd bytes\n"
msgstr "úgy tűnik, hogy %s csonka: %jd/%jd bájt\n"
#: lib/libalpm/dload.c:677 lib/libalpm/dload.c:706
#: lib/libalpm/dload.c:787
#, c-format
msgid "failed to download %s\n"
msgstr "nem sikerült a(z) %s letöltése\n"
msgid "url '%s' is invalid\n"
msgstr "a '%s' URL hibás\n"
#: lib/libalpm/dload.c:893
#, c-format
msgid "failed to setup a download payload for %s\n"
msgstr ""
#: lib/libalpm/dload.c:905
#, c-format
msgid "curl returned error %d from transfer\n"
msgstr ""
#: lib/libalpm/dload.c:929
#, c-format
msgid "curl transfer error: %d\n"
msgstr ""
#: lib/libalpm/dload.c:1055 lib/libalpm/sync.c:840
#, c-format
msgid "failed to retrieve some files\n"
msgstr "nem sikerült minden fájlt letölteni\n"
#: lib/libalpm/dload.c:1078
#, c-format
msgid "download completed successfully but no file in the cache\n"
msgstr ""
#: lib/libalpm/error.c:40
#, c-format
@@ -506,7 +533,7 @@ msgstr "a tárolóhoz nincs szerver beállítva"
msgid "transaction already initialized"
msgstr "a tranzakció már inicializált"
#: lib/libalpm/error.c:90 lib/libalpm/error.c:94
#: lib/libalpm/error.c:90 lib/libalpm/error.c:96
#, c-format
msgid "transaction not initialized"
msgstr "a tranzakció nem inicializált"
@@ -516,86 +543,86 @@ msgstr "a tranzakció nem inicializált"
msgid "duplicate target"
msgstr "két azonos célcsomag"
#: lib/libalpm/error.c:96
#: lib/libalpm/error.c:94
#, c-format
msgid "duplicate filename"
msgstr "két azonos fájlnév"
#: lib/libalpm/error.c:98
#, c-format
msgid "transaction not prepared"
msgstr "a tranzakció nincs előkészítve"
#: lib/libalpm/error.c:98
#: lib/libalpm/error.c:100
#, c-format
msgid "transaction aborted"
msgstr "a tranzakció félbeszakítva"
#: lib/libalpm/error.c:100
#: lib/libalpm/error.c:102
#, c-format
msgid "operation not compatible with the transaction type"
msgstr "a művelet nem egyeztethető össze a jelenlegi tranzakciótípussal"
#: lib/libalpm/error.c:102
#: lib/libalpm/error.c:104
#, c-format
msgid "transaction commit attempt when database is not locked"
msgstr "tranzakció-végrehajtási kísérlet nem zárolt adatbázis mellett"
#: lib/libalpm/error.c:104
#: lib/libalpm/error.c:106
#, c-format
msgid "failed to run transaction hooks"
msgstr "nem sikerült futtatni a tranzakciós műveleteket"
#: lib/libalpm/error.c:107
#: lib/libalpm/error.c:109
#, c-format
msgid "could not find or read package"
msgstr "nem található vagy nem olvasható a csomag"
#: lib/libalpm/error.c:109
#: lib/libalpm/error.c:111
#, c-format
msgid "operation cancelled due to ignorepkg"
msgstr "a művelet megszakítva ignorepkg miatt"
#: lib/libalpm/error.c:111
#: lib/libalpm/error.c:113
#, c-format
msgid "invalid or corrupted package"
msgstr "hibás vagy sérült csomag"
#: lib/libalpm/error.c:113
#: lib/libalpm/error.c:115
#, c-format
msgid "invalid or corrupted package (checksum)"
msgstr "hibás vagy sérült csomag (ellenőrzőösszeg)"
#: lib/libalpm/error.c:115
#: lib/libalpm/error.c:117
#, c-format
msgid "invalid or corrupted package (PGP signature)"
msgstr "hibás vagy sérült csomag (PGP aláírás)"
#: lib/libalpm/error.c:117
#: lib/libalpm/error.c:119
#, c-format
msgid "package missing required signature"
msgstr "a csomag szükséges aláírása hiányzik"
#: lib/libalpm/error.c:119
#: lib/libalpm/error.c:121
#, c-format
msgid "cannot open package file"
msgstr "nem sikerült megnyitni a csomagfájlt"
#: lib/libalpm/error.c:121
#: lib/libalpm/error.c:123
#, c-format
msgid "cannot remove all files for package"
msgstr "nem távolítható el a csomag összes fájlja"
#: lib/libalpm/error.c:123
#: lib/libalpm/error.c:125
#, c-format
msgid "package filename is not valid"
msgstr "érvénytelen csomagnév"
#: lib/libalpm/error.c:125
#: lib/libalpm/error.c:127
#, c-format
msgid "package architecture is not valid"
msgstr "érvénytelen csomagarchitektúra"
#: lib/libalpm/error.c:127
#, c-format
msgid "could not find repository for target"
msgstr "nem található tároló a célcsomaghoz"
#: lib/libalpm/error.c:130
#, c-format
msgid "missing PGP signature"
@@ -661,12 +688,12 @@ msgstr "aláírás nélkül lett lefordítva"
msgid "unexpected error"
msgstr "nem várt hiba"
#: lib/libalpm/handle.c:153
#: lib/libalpm/handle.c:142
#, c-format
msgid "lock file missing %s\n"
msgstr "zárolófájl hiányzik: %s\n"
#: lib/libalpm/handle.c:159
#: lib/libalpm/handle.c:148
#, c-format
msgid "could not remove lock file %s\n"
msgstr "nem sikerült a zárolófájl (%s) eltávolítása\n"
@@ -738,7 +765,7 @@ msgstr "horog %s sor %d: a (%s) opció beállítása nem lehetséges\n"
msgid "unable to run hook %s: %s\n"
msgstr "a horog futtatása nem lehetséges %s: %s\n"
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:386
#: lib/libalpm/hook.c:547 lib/libalpm/hook.c:559 lib/libalpm/remove.c:378
#, c-format
msgid "could not open directory: %s: %s\n"
msgstr "nem sikerült megnyitni a %s könyvtárat: %s\n"
@@ -748,7 +775,7 @@ msgstr "nem sikerült megnyitni a %s könyvtárat: %s\n"
msgid "could not open file: %s%s: %s\n"
msgstr "fájl nem nyitható meg: %s%s: %s\n"
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:259
#: lib/libalpm/hook.c:595 lib/libalpm/util.c:260
#, c-format
msgid "could not stat file %s: %s\n"
msgstr "sikertelen stat művelet a %s fájlon: %s\n"
@@ -758,185 +785,185 @@ msgstr "sikertelen stat művelet a %s fájlon: %s\n"
msgid "could not read directory: %s: %s\n"
msgstr "könyvtár nem olvasható: %s: %s\n"
#: lib/libalpm/package.c:578
#: lib/libalpm/package.c:598
#, c-format
msgid "could not fully load metadata for package %s-%s\n"
msgstr ""
"nem sikerült teljesen betölteni az információs fájlt a(z) %s-%s csomaghoz\n"
#: lib/libalpm/remove.c:119
#: lib/libalpm/remove.c:111
#, c-format
msgid "could not find %s in database -- skipping\n"
msgstr "nem található %s az adatbázisban -- kihagyás\n"
#: lib/libalpm/remove.c:154
#: lib/libalpm/remove.c:146
#, c-format
msgid "removing %s from target list\n"
msgstr "%s eltávolítása a céllistából\n"
#: lib/libalpm/remove.c:346
#: lib/libalpm/remove.c:338
#, c-format
msgid "cannot remove file '%s': %s\n"
msgstr "nem sikerült eltávolítani a '%s' fájlt : %s\n"
#: lib/libalpm/remove.c:411 lib/libalpm/remove.c:420
#: lib/libalpm/remove.c:403 lib/libalpm/remove.c:412
#, c-format
msgid "could not backup %s due to PATH_MAX overflow\n"
msgstr ""
"nem lehet biztonsági másolatot készíteni %s a PATH_MAX túlcsordulása miatt\n"
#: lib/libalpm/remove.c:562
#: lib/libalpm/remove.c:554
#, c-format
msgid "cannot remove %s (%s)\n"
msgstr "%s nem távolítható el (%s)\n"
#: lib/libalpm/remove.c:735
#: lib/libalpm/remove.c:727
#, c-format
msgid "could not remove database entry %s-%s\n"
msgstr "nem sikerült eltávolítani a(z) %s-%s adatbázis-bejegyzést\n"
#: lib/libalpm/remove.c:740
#: lib/libalpm/remove.c:732
#, c-format
msgid "could not remove entry '%s' from cache\n"
msgstr "nem sikerült eltávolítani a(z) '%s' bejegyzést a gyorsítótárból\n"
#: lib/libalpm/signing.c:171
#: lib/libalpm/signing.c:163
#, c-format
msgid "Public keyring not found; have you run '%s'?\n"
msgstr "Nem található a nyilvános kulcstartó; futtattad a(z) '%s' -t?\n"
#: lib/libalpm/signing.c:207 lib/libalpm/signing.c:784
#: lib/libalpm/signing.c:199 lib/libalpm/signing.c:767
#, c-format
msgid "GPGME error: %s\n"
msgstr "GPGME hiba: %s\n"
#: lib/libalpm/signing.c:284
#: lib/libalpm/signing.c:274
#, c-format
msgid "looking up key %s using WKD\n"
msgstr "%s kulcs keresése WKD használatával\n"
#: lib/libalpm/signing.c:293
#: lib/libalpm/signing.c:283
#, c-format
msgid "gpg error: %s\n"
msgstr "gpg hiba: %s\n"
#: lib/libalpm/signing.c:441 lib/libalpm/signing.c:515
#: lib/libalpm/signing.c:430 lib/libalpm/signing.c:503
#, c-format
msgid "keyring is not writable\n"
msgstr "a kulcstartó nem írható\n"
#: lib/libalpm/signing.c:539
#: lib/libalpm/signing.c:531
#, c-format
msgid "key \"%s\" on keyserver\n"
msgstr "a kulcszerveren a \"%s\" kulcs\n"
#: lib/libalpm/signing.c:544
#: lib/libalpm/signing.c:536
#, c-format
msgid "key \"%s\" could not be imported\n"
msgstr "nem lehetett importálni a \"%s\" kulcsot\n"
#: lib/libalpm/signing.c:548
#: lib/libalpm/signing.c:540
#, c-format
msgid "key \"%s\" could not be looked up remotely\n"
msgstr "a \"%s\" távoli kulcs nem található\n"
#: lib/libalpm/signing.c:943 lib/libalpm/sync.c:1022
#: lib/libalpm/signing.c:926 lib/libalpm/sync.c:1022
#, c-format
msgid "%s: missing required signature\n"
msgstr "%s: szükséges aláírás hiányzik\n"
#: lib/libalpm/signing.c:958
#: lib/libalpm/signing.c:941
#, c-format
msgid "%s: signature from \"%s\" is marginal trust\n"
msgstr "%s: az aláírásnak a \"%s\" -ről alig megbízható\n"
#: lib/libalpm/signing.c:966
#: lib/libalpm/signing.c:949
#, c-format
msgid "%s: signature from \"%s\" is unknown trust\n"
msgstr "%s: az aláírásnak a \"%s\" -ről ismeretlen a megbízhatósága\n"
#: lib/libalpm/signing.c:973
#: lib/libalpm/signing.c:956
#, c-format
msgid "%s: signature from \"%s\" should never be trusted\n"
msgstr "%s: az aláírás a \"%s\" -ról soha nem megbízható\n"
#: lib/libalpm/signing.c:985
#: lib/libalpm/signing.c:968
#, c-format
msgid "%s: key \"%s\" is unknown\n"
msgstr "%s: a \"%s\" kulcs ismeretlen\n"
#: lib/libalpm/signing.c:994
#: lib/libalpm/signing.c:977
#, c-format
msgid "%s: key \"%s\" is disabled\n"
msgstr "%s: a \"%s\" kulcs ki van kapcsolva\n"
#: lib/libalpm/signing.c:998
#: lib/libalpm/signing.c:981
#, c-format
msgid "%s: signature from \"%s\" is expired\n"
msgstr "%s: az aláírás \"%s\" lejárt\n"
#: lib/libalpm/signing.c:1002
#: lib/libalpm/signing.c:985
#, c-format
msgid "%s: signature from \"%s\" is invalid\n"
msgstr "%s: az aláírás a \"%s\" -tól érvénytelen\n"
#: lib/libalpm/signing.c:1079 lib/libalpm/signing.c:1147
#: lib/libalpm/signing.c:1226
#: lib/libalpm/signing.c:1043 lib/libalpm/signing.c:1104
#: lib/libalpm/signing.c:1183
#, c-format
msgid "%s: signature format error\n"
msgstr "aláírásformátum hiba: %s\n"
#: lib/libalpm/signing.c:1179 lib/libalpm/signing.c:1212
#: lib/libalpm/signing.c:1220
#: lib/libalpm/signing.c:1136 lib/libalpm/signing.c:1169
#: lib/libalpm/signing.c:1177
#, c-format
msgid "%s: unsupported signature format\n"
msgstr "nem támogatott aláírásformátum: %s\n"
#: lib/libalpm/sync.c:99
#: lib/libalpm/sync.c:96
#, c-format
msgid "%s: ignoring package upgrade (%s => %s)\n"
msgstr "%s: csomagfrissítés kihagyása (%s => %s)\n"
#: lib/libalpm/sync.c:111
#: lib/libalpm/sync.c:108
#, c-format
msgid "%s: ignoring package downgrade (%s => %s)\n"
msgstr "%s: csomag visszafejlesztésének kihagyása (%s => %s)\n"
#: lib/libalpm/sync.c:114
#: lib/libalpm/sync.c:111
#, c-format
msgid "%s: downgrading from version %s to version %s\n"
msgstr "%s: visszatérés a(z) %s verzióról a régebbi %s verzióhoz\n"
#: lib/libalpm/sync.c:120
#: lib/libalpm/sync.c:117
#, c-format
msgid "%s: local (%s) is newer than %s (%s)\n"
msgstr "%s: a helyi (%s) újabb, mint a(z) %s (%s)\n"
#: lib/libalpm/sync.c:161
#: lib/libalpm/sync.c:158
#, c-format
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
msgstr "csomaglecserélés kihagyása (%s-%s => %s-%s)\n"
#: lib/libalpm/sync.c:177
#: lib/libalpm/sync.c:174
#, c-format
msgid "cannot replace %s by %s\n"
msgstr "nem lehet lecserélni a(z) %s csomagot a(z) %s csomaggal\n"
#: lib/libalpm/sync.c:535 lib/libalpm/sync.c:605
#: lib/libalpm/sync.c:476
#, c-format
msgid "packages %s and %s have the same filename: %s\n"
msgstr ""
#: lib/libalpm/sync.c:542 lib/libalpm/sync.c:612
#, c-format
msgid "unresolvable package conflicts detected\n"
msgstr "feloldhatatlan csomagütközéseket találtam\n"
#: lib/libalpm/sync.c:555
#: lib/libalpm/sync.c:562
#, c-format
msgid "removing '%s' from target list because it conflicts with '%s'\n"
msgstr "'%s' kihagyása, mert ütközik a következővel: '%s'\n"
#: lib/libalpm/sync.c:849
#, c-format
msgid "failed to retrieve some files\n"
msgstr "nem sikerült minden fájlt letölteni\n"
#: lib/libalpm/sync.c:1036
#, c-format
msgid "failed to read file %s: %s\n"
@@ -957,82 +984,82 @@ msgstr "nem sikerült végrehajtani az eltávolító tranzakciót\n"
msgid "could not commit transaction\n"
msgstr "nem sikerült végrehajtani a tranzakciót\n"
#: lib/libalpm/trans.c:364
#: lib/libalpm/trans.c:365
#, c-format
msgid "could not create temp directory\n"
msgstr "nem sikerült létrehozni az ideiglenes könyvtárat\n"
#: lib/libalpm/trans.c:379
#: lib/libalpm/trans.c:380
#, c-format
msgid "could not copy tempfile to %s (%s)\n"
msgstr "nem sikerült az ideiglenes fájlt ide másolni: %s (%s)\n"
#: lib/libalpm/trans.c:410
#: lib/libalpm/trans.c:411
#, c-format
msgid "could not remove %s\n"
msgstr "%s nem távolítható el\n"
#: lib/libalpm/trans.c:414
#: lib/libalpm/trans.c:415
#, c-format
msgid "could not remove tmpdir %s\n"
msgstr "nem sikerült eltávolítani a %s ideiglenes könyvtárat\n"
#: lib/libalpm/util.c:486
#: lib/libalpm/util.c:488
#, c-format
msgid "unable to write to pipe (%s)\n"
msgstr "nem sikerül írni az adatcsatornába (%s)\n"
#: lib/libalpm/util.c:545
#: lib/libalpm/util.c:547
#, c-format
msgid "unable to read from pipe (%s)\n"
msgstr "nem sikerül olvasni az adatcsatornából (%s)\n"
#: lib/libalpm/util.c:609 lib/libalpm/util.c:615
#: lib/libalpm/util.c:617 lib/libalpm/util.c:623
#, c-format
msgid "could not create pipe (%s)\n"
msgstr "nem sikerült az adatcsatorna létrehozása (%s)\n"
#: lib/libalpm/util.c:623
#: lib/libalpm/util.c:631
#, c-format
msgid "could not fork a new process (%s)\n"
msgstr "nem sikerült indítani egy új folyamatot (%s)\n"
#: lib/libalpm/util.c:646
#: lib/libalpm/util.c:654
#, c-format
msgid "could not change the root directory (%s)\n"
msgstr "nem sikerült gyökérkönyvtárat váltani (%s)\n"
#: lib/libalpm/util.c:658
#: lib/libalpm/util.c:666
#, c-format
msgid "call to execv failed (%s)\n"
msgstr "sikertelen execv hívás (%s)\n"
#: lib/libalpm/util.c:737
#: lib/libalpm/util.c:745
#, c-format
msgid "call to waitpid failed (%s)\n"
msgstr "sikertelen waitpid hívás (%s)\n"
#: lib/libalpm/util.c:747
#: lib/libalpm/util.c:755
#, c-format
msgid "command failed to execute correctly\n"
msgstr "a parancs nem futott le helyesen\n"
#: lib/libalpm/util.c:754
#: lib/libalpm/util.c:762
#, c-format
msgid "Unknown signal"
msgstr "Ismeretlen szignál"
#: lib/libalpm/util.c:756
#: lib/libalpm/util.c:764
#, c-format
msgid "command terminated by signal %d: %s\n"
msgstr "parancs megszakítva a(z) %d szignál által: %s\n"
#: lib/libalpm/util.c:853
#: lib/libalpm/util.c:875
#, c-format
msgid "no %s cache exists, creating...\n"
msgstr "nem létezik a(z) %s gyorsítótár, létrehozás...\n"
#: lib/libalpm/util.c:884
#: lib/libalpm/util.c:906
#, c-format
msgid "couldn't find or create package cache, using %s instead\n"
msgstr ""

Some files were not shown because too many files have changed in this diff Show More