mirror of
https://gitlab.archlinux.org/pacman/pacman.git
synced 2025-11-21 01:24:39 +01:00
Compare commits
253 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
aba58e95ab | ||
|
|
e8db103122 | ||
|
|
b2dcacb5aa | ||
|
|
a5ef0e072a | ||
|
|
ac37e92449 | ||
|
|
44359218ea | ||
|
|
bc83ff76c6 | ||
|
|
4eb1469765 | ||
|
|
cfc4c24db2 | ||
|
|
bf9249e929 | ||
|
|
4cadee4f08 | ||
|
|
fc29d0c990 | ||
|
|
9a0122982c | ||
|
|
433c52bb91 | ||
|
|
78e92b1d02 | ||
|
|
05533b8b11 | ||
|
|
00c26338de | ||
|
|
684047a764 | ||
|
|
e65d82afa1 | ||
|
|
734aa1ce59 | ||
|
|
4e643a3dd7 | ||
|
|
08c535e262 | ||
|
|
8fdab1e1f0 | ||
|
|
b9c6b41387 | ||
|
|
04c31828b6 | ||
|
|
44272ca0c8 | ||
|
|
3a6ed11428 | ||
|
|
9b086d8b9e | ||
|
|
fb1936bc19 | ||
|
|
2f0fc0decb | ||
|
|
5753c12e7b | ||
|
|
7f3a20612e | ||
|
|
fb97d325a5 | ||
|
|
2013d06266 | ||
|
|
a8ddc7618f | ||
|
|
597118ddd7 | ||
|
|
6fa5f2075a | ||
|
|
30c4d53ce5 | ||
|
|
1d19f0896c | ||
|
|
ca6ef852f9 | ||
|
|
4b21504ffc | ||
|
|
cf669eda9c | ||
|
|
1c4596b4be | ||
|
|
344ced22c3 | ||
|
|
60b6cde637 | ||
|
|
5d15bb68f7 | ||
|
|
45f90de0eb | ||
|
|
bfd6817112 | ||
|
|
a3ecbec6b5 | ||
|
|
8ebc07744a | ||
|
|
2e043aae36 | ||
|
|
41a55d4eff | ||
|
|
5dc0b80c26 | ||
|
|
104daa16a6 | ||
|
|
caa0f2205a | ||
|
|
68c10690ea | ||
|
|
8d7764abae | ||
|
|
6092dda177 | ||
|
|
e72cce352a | ||
|
|
621aa26e26 | ||
|
|
b312c820c8 | ||
|
|
617e7d512f | ||
|
|
c72b4543b6 | ||
|
|
be7266155f | ||
|
|
a21d1f99b8 | ||
|
|
6af163dd79 | ||
|
|
a89eae99f6 | ||
|
|
6d2930cc5a | ||
|
|
21fa09349b | ||
|
|
68813ca986 | ||
|
|
8c8fa2d82c | ||
|
|
8bbaf045b9 | ||
|
|
01f9ae63e7 | ||
|
|
02acf65ef3 | ||
|
|
b3a5535360 | ||
|
|
f250b034b4 | ||
|
|
ef500b44ce | ||
|
|
04d5c4294a | ||
|
|
aa579b8438 | ||
|
|
19b8b63885 | ||
|
|
e61ab1536f | ||
|
|
13b281d743 | ||
|
|
9af9c0f328 | ||
|
|
f4ecc908ec | ||
|
|
c520d38451 | ||
|
|
1b4135ca5d | ||
|
|
6360fe0100 | ||
|
|
30e2496775 | ||
|
|
35b9dfc380 | ||
|
|
c301d6aa25 | ||
|
|
0bf340f73c | ||
|
|
882bff36ac | ||
|
|
f89f7e136b | ||
|
|
212ea8a9ed | ||
|
|
a812ad4ea4 | ||
|
|
1bbb34365c | ||
|
|
1d8d932fa6 | ||
|
|
783e710839 | ||
|
|
c5d9b999c7 | ||
|
|
4a582fac2a | ||
|
|
86cd72573b | ||
|
|
80caeabce0 | ||
|
|
250e66e57b | ||
|
|
5e32928a42 | ||
|
|
de44a0f474 | ||
|
|
20017354f7 | ||
|
|
a783f3fbf1 | ||
|
|
f569c4a042 | ||
|
|
ed848b1c54 | ||
|
|
c27904661e | ||
|
|
10584ec8ea | ||
|
|
db3e166503 | ||
|
|
d70465decc | ||
|
|
4b78852f7e | ||
|
|
aefb4e0fa5 | ||
|
|
391952600d | ||
|
|
634304feae | ||
|
|
56fd24ecf8 | ||
|
|
77efd51216 | ||
|
|
93ca155b48 | ||
|
|
101c16b3eb | ||
|
|
52d184dae8 | ||
|
|
63fc93607b | ||
|
|
d15d4f923d | ||
|
|
6fb0c5abd7 | ||
|
|
20ab91fb79 | ||
|
|
afb2f39291 | ||
|
|
e37ecbe8a4 | ||
|
|
22a4616550 | ||
|
|
cb8aee58eb | ||
|
|
3cb4eaef4f | ||
|
|
f385242f99 | ||
|
|
5fcc9ae7f4 | ||
|
|
442b91a5dd | ||
|
|
deff57ce8b | ||
|
|
7370fd595b | ||
|
|
4c27a776bd | ||
|
|
7a8ba5a978 | ||
|
|
7df0d048d1 | ||
|
|
0c614c181e | ||
|
|
91d43ba4b4 | ||
|
|
59b4725bbb | ||
|
|
a556bc57fc | ||
|
|
bbcf96230a | ||
|
|
89685bdb29 | ||
|
|
994804f20e | ||
|
|
f8bb69c1d2 | ||
|
|
9fa18d9a4b | ||
|
|
c8beffa790 | ||
|
|
9519d22df7 | ||
|
|
de97282fbd | ||
|
|
36863b968f | ||
|
|
687f04ab46 | ||
|
|
a864a50bc6 | ||
|
|
d8d9ab8c87 | ||
|
|
4458f71851 | ||
|
|
b4e1365657 | ||
|
|
8c09c19139 | ||
|
|
f09f82ee59 | ||
|
|
b3c67a195f | ||
|
|
2268981ebf | ||
|
|
9d661240fe | ||
|
|
f57f8d3386 | ||
|
|
0268550401 | ||
|
|
a309a016bf | ||
|
|
c8a41b7d6d | ||
|
|
c590ac0997 | ||
|
|
1c4633ea2c | ||
|
|
6c4d702cb1 | ||
|
|
e7daa59f84 | ||
|
|
e515d89969 | ||
|
|
dce7aa8569 | ||
|
|
48b209d612 | ||
|
|
14c1a4423e | ||
|
|
eb1775e485 | ||
|
|
04c2b9d4ed | ||
|
|
ea84819bbb | ||
|
|
34e1413d75 | ||
|
|
14230869e6 | ||
|
|
eab9684837 | ||
|
|
c794661f1e | ||
|
|
8929769902 | ||
|
|
350c3eb6ec | ||
|
|
472e51b975 | ||
|
|
fba5771fa4 | ||
|
|
5bc23bc05d | ||
|
|
3d49d88009 | ||
|
|
e946ee7745 | ||
|
|
21b8a5418d | ||
|
|
708ce1480f | ||
|
|
9804911c5f | ||
|
|
08034ceb17 | ||
|
|
219cb2eaac | ||
|
|
a9f030e84c | ||
|
|
7a3a718c7a | ||
|
|
e3a06961f6 | ||
|
|
d7345da5ba | ||
|
|
b369f71fd6 | ||
|
|
1191303f8b | ||
|
|
e9ca40b56e | ||
|
|
3d6da93093 | ||
|
|
cb7337eb64 | ||
|
|
4da70d800a | ||
|
|
a888f377a5 | ||
|
|
8017b0bb8e | ||
|
|
4ec846f5ac | ||
|
|
94c2830572 | ||
|
|
0501d340cd | ||
|
|
6f9539aefb | ||
|
|
a30bf868ca | ||
|
|
1cc8ad6112 | ||
|
|
8f26bb9052 | ||
|
|
9a7f68317a | ||
|
|
774c252753 | ||
|
|
1b7ff7a636 | ||
|
|
bb9b19a6c4 | ||
|
|
b55f478042 | ||
|
|
e49adbea4c | ||
|
|
f8b689d48e | ||
|
|
bd628274cc | ||
|
|
9ae7eb1292 | ||
|
|
818fae320f | ||
|
|
69be73f68c | ||
|
|
61c6552862 | ||
|
|
9394f229a0 | ||
|
|
43f9eb1aa9 | ||
|
|
8d4e1e6754 | ||
|
|
314b4462d2 | ||
|
|
c4b9991258 | ||
|
|
8d33dcb81c | ||
|
|
cd51abf0c8 | ||
|
|
2e431e1cc3 | ||
|
|
fa02a71abd | ||
|
|
91a013a879 | ||
|
|
f1f8f0e1c2 | ||
|
|
da933c223e | ||
|
|
1c47500ea6 | ||
|
|
d05882db9e | ||
|
|
0701356260 | ||
|
|
9dbe5c9d1e | ||
|
|
a06d0de104 | ||
|
|
a4100b3847 | ||
|
|
14203d77f4 | ||
|
|
ec928faad3 | ||
|
|
4b183bf9a9 | ||
|
|
7e8f1469c4 | ||
|
|
496b687c3d | ||
|
|
baf5852555 | ||
|
|
8146f6f1c6 | ||
|
|
adc4078b87 | ||
|
|
7865fb9af4 | ||
|
|
3ff7701e89 | ||
|
|
b3033a59e9 |
1
.gitattributes
vendored
Normal file
1
.gitattributes
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
*.py diff=python
|
||||||
2
AUTHORS
2
AUTHORS
@@ -11,6 +11,6 @@ James Rosten <seinfeld90@gmail.com>
|
|||||||
Roman Kyrylych <Roman.Kyrylych@gmail.com>
|
Roman Kyrylych <Roman.Kyrylych@gmail.com>
|
||||||
Andrew Fyfe <andrew@neptune-one.net>
|
Andrew Fyfe <andrew@neptune-one.net>
|
||||||
Chantry Xavier <shiningxc@gmail.com>
|
Chantry Xavier <shiningxc@gmail.com>
|
||||||
Nagy Gabor <ngaba@petra.hos.u-szeged.hu>
|
Nagy Gabor <ngaba@bibl.u-szeged.hu>
|
||||||
Nathan Jones <nathanj@insightbb.com>
|
Nathan Jones <nathanj@insightbb.com>
|
||||||
Allan McRae <mcrae_allan@hotmail.com>
|
Allan McRae <mcrae_allan@hotmail.com>
|
||||||
|
|||||||
13
INSTALL
13
INSTALL
@@ -10,10 +10,19 @@ unlimited permission to copy, distribute and modify it.
|
|||||||
Basic Installation
|
Basic Installation
|
||||||
==================
|
==================
|
||||||
|
|
||||||
|
You will need to build and install two libraries before you can
|
||||||
|
properly build pacman.
|
||||||
|
|
||||||
|
libarchive
|
||||||
|
http://code.google.com/p/libarchive/
|
||||||
|
|
||||||
|
libfetch
|
||||||
|
ftp://ftp.netbsd.org/pub/pkgsrc/current/pkgsrc/net/libfetch/README.html
|
||||||
|
|
||||||
Briefly, the shell commands `./configure; make; make install' should
|
Briefly, the shell commands `./configure; make; make install' should
|
||||||
configure, build, and install this package. The following
|
configure, build, and install this package. The following
|
||||||
more-detailed instructions are generic; see the `README' file for
|
instructions are generic. Run `./configure --help` for specific
|
||||||
instructions specific to this package.
|
options.
|
||||||
|
|
||||||
The `configure' shell script attempts to guess correct values for
|
The `configure' shell script attempts to guess correct values for
|
||||||
various system-dependent variables used during compilation. It uses
|
various system-dependent variables used during compilation. It uses
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ EXTRA_DIST = HACKING
|
|||||||
|
|
||||||
# Sample makepkg prototype files
|
# Sample makepkg prototype files
|
||||||
pkgdatadir = ${datadir}/${PACKAGE}
|
pkgdatadir = ${datadir}/${PACKAGE}
|
||||||
dist_pkgdata_DATA = PKGBUILD.proto proto.install ChangeLog.proto
|
dist_pkgdata_DATA = PKGBUILD.proto PKGBUILD-split.proto proto.install ChangeLog.proto
|
||||||
|
|
||||||
# run the pactest test suite and vercmp tests
|
# run the pactest test suite and vercmp tests
|
||||||
check-local: pactest src/pacman src/util
|
check-local: pactest src/pacman src/util
|
||||||
|
|||||||
39
NEWS
39
NEWS
@@ -1,5 +1,44 @@
|
|||||||
VERSION DESCRIPTION
|
VERSION DESCRIPTION
|
||||||
-----------------------------------------------------------------------------
|
-----------------------------------------------------------------------------
|
||||||
|
3.3.0 - xdelta: many fixes and improvements
|
||||||
|
- new pkgdelta script to create deltas
|
||||||
|
- repo-add can add both deltas and packages to a database
|
||||||
|
- xz archive format supported for packages and databases
|
||||||
|
- in case of unresolvable packages, pacman now asks
|
||||||
|
if they should be skipped instead of aborting
|
||||||
|
- -Suu synchronizes all packages with the version from the
|
||||||
|
repository (including upgrade and downgrade)
|
||||||
|
- replace libdownload dependency by the original libfetch
|
||||||
|
- better support of -q/--quiet flag with -Qo and -Ql
|
||||||
|
- -Sp works without root (FS#8905)
|
||||||
|
- fix a bug where the replacement of a package failed because
|
||||||
|
of a file conflict, and the package was lost (FS#9088)
|
||||||
|
- improved behavior of HoldPkg option (FS#9173)
|
||||||
|
- allow to ignore a package from a group (FS#12059)
|
||||||
|
- search package groups when searching a db (FS#13099)
|
||||||
|
- asciidoc fixes
|
||||||
|
- documentation updates
|
||||||
|
- repo-add: cleanups, improvements and speedup
|
||||||
|
- makepkg:
|
||||||
|
- package splitting support! - see PKGBUILD-split.proto
|
||||||
|
- limit fakeroot usage with addition of package() function
|
||||||
|
- info is handled like man pages and not other documentation
|
||||||
|
- configuration option for man/info page directories
|
||||||
|
- added ability to automatically remove files from package
|
||||||
|
- configuration option for default LDFLAGS
|
||||||
|
- specify alternative configuration file with --config flag
|
||||||
|
- check all integrity checksums provided in PKGBUILD
|
||||||
|
- fix pkgver/pkgrel updating in SCM packages
|
||||||
|
- BUILDSCRIPT option removed from makepkg.conf. Now specified
|
||||||
|
during configure
|
||||||
|
- enforce no ">" or "<" in provides array
|
||||||
|
- package compression autodetection
|
||||||
|
- check PKGBUILD for CRLF line endings
|
||||||
|
- fix reading PKGBUILD from pipe
|
||||||
|
- increase compatibility with BSDs & Mac OSX
|
||||||
|
- contrib
|
||||||
|
- pacdiff - improvements and new -l flag for using locate
|
||||||
|
- pacscripts - print install scripts for a package
|
||||||
3.2.2 - log pacsave warnings to pacman.log (FS#12531)
|
3.2.2 - log pacsave warnings to pacman.log (FS#12531)
|
||||||
- separate local DB creation and writing (FS#12263)
|
- separate local DB creation and writing (FS#12263)
|
||||||
- pacman-optimize: rewrite and refresh (FS#11767)
|
- pacman-optimize: rewrite and refresh (FS#11767)
|
||||||
|
|||||||
58
PKGBUILD-split.proto
Normal file
58
PKGBUILD-split.proto
Normal file
@@ -0,0 +1,58 @@
|
|||||||
|
# This is an example of a PKGBUILD for splitting packages. Use this as a
|
||||||
|
# start to creating your own, and remove these comments. For more information,
|
||||||
|
# see 'man PKGBUILD'. NOTE: Please fill out the license field for your package!
|
||||||
|
# If it is unknown, then please put 'unknown'.
|
||||||
|
|
||||||
|
# Contributor: Your Name <youremail@domain.com>
|
||||||
|
pkgname=('pkg1' 'pkg2')
|
||||||
|
pkgbase=""
|
||||||
|
pkgver=VERSION
|
||||||
|
pkgrel=1
|
||||||
|
pkgdesc=""
|
||||||
|
arch=()
|
||||||
|
url=""
|
||||||
|
license=('GPL')
|
||||||
|
groups=()
|
||||||
|
depends=()
|
||||||
|
makedepends=()
|
||||||
|
provides=()
|
||||||
|
conflicts=()
|
||||||
|
replaces=()
|
||||||
|
backup=()
|
||||||
|
options=()
|
||||||
|
install=
|
||||||
|
source=($pkgbase-$pkgver.tar.gz)
|
||||||
|
noextract=()
|
||||||
|
md5sums=() #generate with 'makepkg -g'
|
||||||
|
|
||||||
|
build() {
|
||||||
|
cd "$srcdir/$pkgbase-$pkgver"
|
||||||
|
./configure --prefix=/usr
|
||||||
|
make || return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
package_pkg1() {
|
||||||
|
# options and directives that can be overridden
|
||||||
|
pkgdesc=""
|
||||||
|
license=()
|
||||||
|
groups=()
|
||||||
|
depends=()
|
||||||
|
optdepends=()
|
||||||
|
provides=()
|
||||||
|
conflicts=()
|
||||||
|
replaces=()
|
||||||
|
backup=()
|
||||||
|
options=()
|
||||||
|
install=
|
||||||
|
|
||||||
|
cd "$srcdir/$pkgbase-$pkgver"
|
||||||
|
make DESTDIR="$pkgdir/" install-pkg1
|
||||||
|
}
|
||||||
|
|
||||||
|
package_pkg2() {
|
||||||
|
# options and directives overrides
|
||||||
|
pkgdesc=""
|
||||||
|
|
||||||
|
cd "$srcdir/$pkgbase-$pkgver"
|
||||||
|
make DESTDIR="$pkgdir/" install-pkg2
|
||||||
|
}
|
||||||
56
README
56
README
@@ -51,13 +51,12 @@ library is initialized.
|
|||||||
|
|
||||||
* logcb: The callback function for "log" operations.
|
* logcb: The callback function for "log" operations.
|
||||||
* dlcb: The callback function for download progress of each package.
|
* dlcb: The callback function for download progress of each package.
|
||||||
|
* fetchcb: Callback for custom download function.
|
||||||
* totaldlcb: The callback function for overall download progress.
|
* totaldlcb: The callback function for overall download progress.
|
||||||
* root: The root directory for pacman to install to (Default: /)
|
* root: The root directory for pacman to install to (Default: /)
|
||||||
* dbpath: The toplevel database directory (Default: /var/lib/pacman)
|
* dbpath: The toplevel database directory (Default: /var/lib/pacman)
|
||||||
* logfile: The base path to pacman's log file (Default: /var/log/pacman.log)
|
* logfile: The base path to pacman's log file (Default: /var/log/pacman.log)
|
||||||
* usesyslog: Log to syslog instead of `logfile` for file-base logging.
|
* usesyslog: Log to syslog instead of `logfile` for file-base logging.
|
||||||
* xfercommand: The command to use for downloading instead of pacman's internal
|
|
||||||
downloading functionality.
|
|
||||||
* nopassiveftp: Do not use passive FTP commands for ftp connections.
|
* nopassiveftp: Do not use passive FTP commands for ftp connections.
|
||||||
|
|
||||||
The following options also have `alpm_option_{add,remove}_*` functions, as the
|
The following options also have `alpm_option_{add,remove}_*` functions, as the
|
||||||
@@ -70,7 +69,6 @@ alpm_option_{get,set}_noupgrades -> alpm_option_{add,remove}_noupgrade.
|
|||||||
* noextracts: Files which will never be extracted at all (no .pacnew file)
|
* noextracts: Files which will never be extracted at all (no .pacnew file)
|
||||||
* ignorepkgs: Packages to ignore when upgrading.
|
* ignorepkgs: Packages to ignore when upgrading.
|
||||||
* ignoregrps: Groups to ignore when upgrading.
|
* ignoregrps: Groups to ignore when upgrading.
|
||||||
* holdpkgs: Important packages which need a confirmation before being removed.
|
|
||||||
|
|
||||||
The following options are read-only, having ONLY alpm_option_get_* functions:
|
The following options are read-only, having ONLY alpm_option_get_* functions:
|
||||||
|
|
||||||
@@ -246,3 +244,55 @@ API CHANGES BETWEEN 3.1 AND 3.2
|
|||||||
- flags:
|
- flags:
|
||||||
PM_TRANS_FLAG_ALLEXPLICIT, PM_TRANS_FLAG_UNNEEDED and
|
PM_TRANS_FLAG_ALLEXPLICIT, PM_TRANS_FLAG_UNNEEDED and
|
||||||
PM_TRANS_FLAG_RECURSEALL
|
PM_TRANS_FLAG_RECURSEALL
|
||||||
|
|
||||||
|
|
||||||
|
API CHANGES BETWEEN 3.2 AND 3.3
|
||||||
|
===============================
|
||||||
|
|
||||||
|
[REMOVED]
|
||||||
|
- pmsyncpkg_t struct (pmpkg_t is used for all types of transaction targets):
|
||||||
|
- alpm_sync_get_pkg()
|
||||||
|
- alpm_sync_get_removes() (use alpm_pkg_get_removes() instead)
|
||||||
|
- HoldPkg handling (it is the front-end's task):
|
||||||
|
- alpm_option_get_holdpkgs()
|
||||||
|
- alpm_option_add_holdpkg()
|
||||||
|
- alpm_option_set_holdpkgs()
|
||||||
|
- alpm_option_remove_holdpkg()
|
||||||
|
- PM_TRANS_CONV_REMOVE_HOLDPKG conversation
|
||||||
|
- Print URIs feature (it is the front-end's task):
|
||||||
|
- flag: PM_TRANS_FLAG_PRINTURIS
|
||||||
|
- event: PM_TRANS_EVT_PRINTURI
|
||||||
|
- alpm_delta_get_from_md5sum() and alpm_delta_get_to_md5sum()
|
||||||
|
- alpm_sync_sysupgrade()
|
||||||
|
- error codes:
|
||||||
|
PM_ERR_TRANS_COMMITING, PM_ERR_TRANS_DOWNLOADING, PM_ERR_PKG_LOAD,
|
||||||
|
PM_ERR_PKG_CANT_FRESH, PM_ERR_GRP_NOT_FOUND, PM_ERR_USER_ABORT,
|
||||||
|
PM_ERR_INTERNAL_ERROR, PM_ERR_DB_SYNC, PM_ERR_PKG_HOLD and
|
||||||
|
PM_ERR_LIBDOWNLOAD
|
||||||
|
|
||||||
|
[CHANGED]
|
||||||
|
- XferCommand support was removed, any fetch callback function can be defined:
|
||||||
|
- alpm_option_get_xfercommand() and alpm_option_set_xfercommand() were removed
|
||||||
|
- alpm_option_get_fetchcb() and alpm_option_set_fetchcb() were added
|
||||||
|
- function renames:
|
||||||
|
- alpm_db_getpkgcache() -> alpm_db_get_pkgcache()
|
||||||
|
- alpm_db_getgrpcache() -> alpm_db_get_grpcache()
|
||||||
|
- alpm_dep_get_string() -> alpm_dep_compute_string()
|
||||||
|
- alpm_get_md5sum() -> alpm_compute_md5sum()
|
||||||
|
- alpm_checkdbconflicts() -> alpm_checkconflicts()
|
||||||
|
- alpm_trans_sysupgrade() has a new enable_downgrade parameter
|
||||||
|
- alpm_checkdeps() and alpm_checkconflicts() require local package list instead
|
||||||
|
of local database
|
||||||
|
- the to-be-upgraded package is passed to the callback function with
|
||||||
|
PM_TRANS_EVT_UPGRADE_START (as the second parameter)
|
||||||
|
- the "requiredby" package is never passed to the callback function with
|
||||||
|
PM_TRANS_CONV_INSTALL_IGNOREPKG (the second parameter is always NULL)
|
||||||
|
|
||||||
|
[ADDED]
|
||||||
|
- alpm_pkg_get_db()
|
||||||
|
- alpm_pkg_get_removes()
|
||||||
|
- conversation: PM_TRANS_CONV_REMOVE_PKGS (remove unresolvable targets)
|
||||||
|
- flag: PM_TRANS_FLAG_NOLOCK (do not lock database)
|
||||||
|
- error codes:
|
||||||
|
PM_ERR_SERVER_NONE, PM_ERR_TRANS_NOT_LOCKED, PM_ERR_PKG_IGNORED and
|
||||||
|
PM_ERR_LIBFETCH
|
||||||
|
|||||||
14
TRANSLATORS
14
TRANSLATORS
@@ -14,26 +14,30 @@ Czech (cs):
|
|||||||
Vojtěch Gondžala <vojtech.gondzala@gmail.com>
|
Vojtěch Gondžala <vojtech.gondzala@gmail.com>
|
||||||
German (de):
|
German (de):
|
||||||
Matthias Gorissen <matthias@archlinux.de>
|
Matthias Gorissen <matthias@archlinux.de>
|
||||||
Benjamin Andresen <benny@in-ulm.de>
|
|
||||||
British English (en_GB):
|
British English (en_GB):
|
||||||
Jeff Bailes <thepizzaking@gmail.com>
|
Jeff Bailes <thepizzaking@gmail.com>
|
||||||
Spanish (es):
|
Spanish (es):
|
||||||
Juan Pablo González Tognarelli <jotapesan@gmail.com>
|
Juan Pablo González Tognarelli <lord_jotape@yahoo.com.ar>
|
||||||
Fernando Lagos <fernando@zerial.org>
|
Fernando Lagos <fernando@zerial.org>
|
||||||
French (fr):
|
French (fr):
|
||||||
Chantry Xavier <shiningxc@gmail.com>
|
Chantry Xavier <shiningxc@gmail.com>
|
||||||
Hungarian (hu):
|
Hungarian (hu):
|
||||||
Nagy Gabor <ngaba@bibl.u-szeged.hu>
|
Nagy Gabor <ngaba@bibl.u-szeged.hu>
|
||||||
|
Avramucz Péter <muczyjoe@gmail.com>
|
||||||
Italian (it):
|
Italian (it):
|
||||||
Giovanni 'voidnull' Scafora <linuxmania@gmail.com>
|
Giovanni Scafora <giovanni@archlinux.org>
|
||||||
|
Kazakh (kk):
|
||||||
|
Baurzhan Muftakhidinov <baurthefirst@gmail.com>
|
||||||
Polish (pl):
|
Polish (pl):
|
||||||
Mateusz Herych <heniekk@gmail.com>
|
Mateusz Herych <heniekk@gmail.com>
|
||||||
Jaroslaw Swierczynski <swiergot@gmail.com>
|
Jaroslaw Swierczynski <swiergot@gmail.com>
|
||||||
Mateusz Jędrasik <m.jedrasik@gmail.com>
|
Mateusz Jędrasik <m.jedrasik@gmail.com>
|
||||||
Brazilian Portuguese (pt_BR):
|
Brazilian Portuguese (pt_BR):
|
||||||
Hugo Doria <hugo@archlinux.org>
|
|
||||||
Armando M. Baratti <ambaratti@archlinux-br.org>
|
Armando M. Baratti <ambaratti@archlinux-br.org>
|
||||||
Leandro Inacio <leandro@archlinux-br.org>
|
Rodrigo Flores <flores@archlinux-br.org>
|
||||||
|
Marcelo Cavalcante <kalibslack@gmail.com>
|
||||||
|
Romanian (ro):
|
||||||
|
Volodia Macovei <blog@volodia.ro>
|
||||||
Russian (ru):
|
Russian (ru):
|
||||||
Sergey Tereschenko <serg.partizan@gmail.com>
|
Sergey Tereschenko <serg.partizan@gmail.com>
|
||||||
Vitaly Dolgov <ferhiord@gmail.com>
|
Vitaly Dolgov <ferhiord@gmail.com>
|
||||||
|
|||||||
57
autoclean.sh
57
autoclean.sh
@@ -2,33 +2,36 @@
|
|||||||
|
|
||||||
[ -f Makefile ] && make distclean
|
[ -f Makefile ] && make distclean
|
||||||
rm -rf autom4te.cache
|
rm -rf autom4te.cache
|
||||||
rm -rf {Makefile.in,Makefile}
|
rm -f {Makefile.in,Makefile}
|
||||||
rm -rf {config.h.in,config.h}
|
rm -f {config.h.in,config.h}
|
||||||
rm -rf config.status
|
rm -f config.status
|
||||||
rm -rf configure
|
rm -f configure
|
||||||
rm -rf stamp*
|
rm -f stamp*
|
||||||
rm -rf aclocal.m4
|
rm -f aclocal.m4
|
||||||
rm -rf compile
|
rm -f compile
|
||||||
rm -rf libtool
|
rm -f libtool
|
||||||
|
|
||||||
rm -rf lib/libalpm/{Makefile.in,Makefile}
|
rm -f lib/libalpm/{Makefile.in,Makefile}
|
||||||
rm -rf src/util/{Makefile.in,Makefile}
|
rm -f src/util/{Makefile.in,Makefile}
|
||||||
rm -rf src/pacman/{Makefile.in,Makefile}
|
rm -f src/pacman/{Makefile.in,Makefile}
|
||||||
rm -rf scripts/{Makefile.in,Makefile}
|
rm -f scripts/{Makefile.in,Makefile}
|
||||||
rm -rf etc/{Makefile.in,Makefile}
|
rm -f etc/{Makefile.in,Makefile}
|
||||||
rm -rf etc/pacman.d/{Makefile.in,Makefile}
|
rm -f etc/pacman.d/{Makefile.in,Makefile}
|
||||||
rm -rf etc/abs/{Makefile.in,Makefile}
|
rm -f etc/abs/{Makefile.in,Makefile}
|
||||||
rm -rf pactest/{Makefile.in,Makefile}
|
rm -f pactest{,/tests}/{Makefile.in,Makefile}
|
||||||
rm -rf doc/{Makefile.in,Makefile}
|
rm -f contrib/{Makefile.in,Makefile}
|
||||||
rm -rf doc/html/*.html
|
rm -f doc/{Makefile.in,Makefile}
|
||||||
rm -rf doc/man3/*.3
|
|
||||||
|
|
||||||
rm -rf po/{Makefile.in,Makefile}
|
rm -f pactest/*.pyc
|
||||||
rm -rf po/POTFILES
|
rm -f doc/html/*.html
|
||||||
rm -rf po/stamp-po
|
rm -f doc/man3/*.3
|
||||||
rm -rf po/*.gmo
|
|
||||||
|
|
||||||
rm -rf lib/libalpm/po/{Makefile.in,Makefile}
|
rm -f po/{Makefile.in,Makefile}
|
||||||
rm -rf lib/libalpm/po/POTFILES
|
rm -f po/POTFILES
|
||||||
rm -rf lib/libalpm/po/stamp-po
|
rm -f po/stamp-po
|
||||||
rm -rf lib/libalpm/po/*.gmo
|
rm -f po/*.gmo
|
||||||
|
|
||||||
|
rm -f lib/libalpm/po/{Makefile.in,Makefile}
|
||||||
|
rm -f lib/libalpm/po/POTFILES
|
||||||
|
rm -f lib/libalpm/po/stamp-po
|
||||||
|
rm -f lib/libalpm/po/*.gmo
|
||||||
|
|||||||
42
configure.ac
42
configure.ac
@@ -42,12 +42,12 @@ AC_PREREQ(2.60)
|
|||||||
# pacman_version_micro += 1
|
# pacman_version_micro += 1
|
||||||
|
|
||||||
m4_define([lib_current], [4])
|
m4_define([lib_current], [4])
|
||||||
m4_define([lib_revision], [1])
|
m4_define([lib_revision], [0])
|
||||||
m4_define([lib_age], [1])
|
m4_define([lib_age], [0])
|
||||||
|
|
||||||
m4_define([pacman_version_major], [3])
|
m4_define([pacman_version_major], [3])
|
||||||
m4_define([pacman_version_minor], [2])
|
m4_define([pacman_version_minor], [3])
|
||||||
m4_define([pacman_version_micro], [2])
|
m4_define([pacman_version_micro], [0])
|
||||||
m4_define([pacman_version],
|
m4_define([pacman_version],
|
||||||
[pacman_version_major.pacman_version_minor.pacman_version_micro])
|
[pacman_version_major.pacman_version_minor.pacman_version_micro])
|
||||||
|
|
||||||
@@ -88,9 +88,14 @@ AC_ARG_WITH(db-ext,
|
|||||||
AS_HELP_STRING([--with-db-ext=ext], [set the file extension used by the database]),
|
AS_HELP_STRING([--with-db-ext=ext], [set the file extension used by the database]),
|
||||||
[DBEXT=$withval], [DBEXT=.db.tar.gz])
|
[DBEXT=$withval], [DBEXT=.db.tar.gz])
|
||||||
|
|
||||||
# Help line for libdownload/libfetch
|
# Help line for buildscript filename
|
||||||
|
AC_ARG_WITH(buildscript,
|
||||||
|
AS_HELP_STRING([--with-buildscript=name], [set the build script name used by makepkg]),
|
||||||
|
[BUILDSCRIPT=$withval], [BUILDSCRIPT=PKGBUILD])
|
||||||
|
|
||||||
|
# Help line for libfetch
|
||||||
AC_ARG_ENABLE(internal-download,
|
AC_ARG_ENABLE(internal-download,
|
||||||
AS_HELP_STRING([--disable-internal-download], [do not build with libdownload/libfetch support]),
|
AS_HELP_STRING([--disable-internal-download], [do not build with libfetch support]),
|
||||||
[internaldownload=$enableval], [internaldownload=yes])
|
[internaldownload=$enableval], [internaldownload=yes])
|
||||||
|
|
||||||
# Help line for documentation
|
# Help line for documentation
|
||||||
@@ -121,7 +126,7 @@ AC_PROG_INSTALL
|
|||||||
AC_PROG_LN_S
|
AC_PROG_LN_S
|
||||||
AC_PROG_MAKE_SET
|
AC_PROG_MAKE_SET
|
||||||
AC_PROG_LIBTOOL
|
AC_PROG_LIBTOOL
|
||||||
AC_CHECK_PROGS([PYTHON], [python2.5 python2.4 python], [false])
|
AC_CHECK_PROGS([PYTHON], [python2.6 python2.5 python], [false])
|
||||||
|
|
||||||
# find installed gettext
|
# find installed gettext
|
||||||
AM_GNU_GETTEXT([external])
|
AM_GNU_GETTEXT([external])
|
||||||
@@ -131,17 +136,14 @@ AM_GNU_GETTEXT_VERSION(0.13.1)
|
|||||||
AC_CHECK_LIB([archive], [archive_read_data], ,
|
AC_CHECK_LIB([archive], [archive_read_data], ,
|
||||||
AC_MSG_ERROR([libarchive is needed to compile pacman!]))
|
AC_MSG_ERROR([libarchive is needed to compile pacman!]))
|
||||||
|
|
||||||
# Enable or disable usage of libdownload/libfetch
|
# Enable or disable usage of libfetch
|
||||||
# - this is a nested check- first see if we need a library, if we do then
|
AC_MSG_CHECKING(whether to link with libfetch)
|
||||||
# check for libdownload first, then fallback to libfetch, then die
|
|
||||||
AC_MSG_CHECKING(whether to link with download library)
|
|
||||||
if test "x$internaldownload" = "xyes" ; then
|
if test "x$internaldownload" = "xyes" ; then
|
||||||
AC_MSG_RESULT(yes)
|
AC_MSG_RESULT(yes)
|
||||||
AC_DEFINE([INTERNAL_DOWNLOAD], , [Use internal download library])
|
AC_DEFINE([INTERNAL_DOWNLOAD], , [Use internal download library])
|
||||||
# Check for a download library if it was actually requested
|
# Check for a download library if it was actually requested
|
||||||
AC_CHECK_LIB([download], [downloadParseURL], ,
|
AC_CHECK_LIB([fetch], [fetchParseURL], ,
|
||||||
AC_CHECK_LIB([fetch], [fetchParseURL], ,
|
AC_MSG_ERROR([libfetch is needed to compile with internal download support]) )
|
||||||
AC_MSG_ERROR([libdownload or libfetch are needed to compile with internal download support])) )
|
|
||||||
else
|
else
|
||||||
AC_MSG_RESULT(no)
|
AC_MSG_RESULT(no)
|
||||||
fi
|
fi
|
||||||
@@ -178,9 +180,11 @@ GCC_GNU89_INLINE_CC
|
|||||||
|
|
||||||
# Host-dependant definitions
|
# Host-dependant definitions
|
||||||
SIZECMD="stat -c %s"
|
SIZECMD="stat -c %s"
|
||||||
|
SEDINPLACE="sed -i"
|
||||||
case "${host_os}" in
|
case "${host_os}" in
|
||||||
*bsd*)
|
*bsd*)
|
||||||
SIZECMD="stat -f %z"
|
SIZECMD="stat -f %z"
|
||||||
|
SEDINPLACE="sed -i ''"
|
||||||
;;
|
;;
|
||||||
cygwin*)
|
cygwin*)
|
||||||
host_os_cygwin=yes
|
host_os_cygwin=yes
|
||||||
@@ -188,13 +192,15 @@ case "${host_os}" in
|
|||||||
;;
|
;;
|
||||||
darwin*)
|
darwin*)
|
||||||
host_os_darwin=yes
|
host_os_darwin=yes
|
||||||
SIZECMD="stat -f %z"
|
SIZECMD="/usr/bin/stat -f %z"
|
||||||
|
SEDINPLACE="/usr/bin/sed -i ''"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
AM_CONDITIONAL([CYGWIN], test "x$host_os_cygwin" = "xyes")
|
AM_CONDITIONAL([CYGWIN], test "x$host_os_cygwin" = "xyes")
|
||||||
AM_CONDITIONAL([DARWIN], test "x$host_os_darwin" = "xyes")
|
AM_CONDITIONAL([DARWIN], test "x$host_os_darwin" = "xyes")
|
||||||
AC_SUBST(SIZECMD)
|
AC_SUBST(SIZECMD)
|
||||||
|
AC_SUBST(SEDINPLACE)
|
||||||
|
|
||||||
# Check for architecture, used in default makepkg.conf
|
# Check for architecture, used in default makepkg.conf
|
||||||
# (Note single space left after CARCHFLAGS)
|
# (Note single space left after CARCHFLAGS)
|
||||||
@@ -314,6 +320,9 @@ AC_DEFINE_UNQUOTED([SRCEXT], "$SRCEXT", [The file extension used by pacman sourc
|
|||||||
# Set database file extension
|
# Set database file extension
|
||||||
AC_SUBST(DBEXT)
|
AC_SUBST(DBEXT)
|
||||||
AC_DEFINE_UNQUOTED([DBEXT], "$DBEXT", [The file extension used by pacman databases])
|
AC_DEFINE_UNQUOTED([DBEXT], "$DBEXT", [The file extension used by pacman databases])
|
||||||
|
# Set makepkg build script name
|
||||||
|
AC_SUBST(BUILDSCRIPT)
|
||||||
|
AC_DEFINE_UNQUOTED([BUILDSCRIPT], "$BUILDSCRIPT", [The build script name used by makepkg])
|
||||||
|
|
||||||
# Configuration files
|
# Configuration files
|
||||||
AC_CONFIG_FILES([
|
AC_CONFIG_FILES([
|
||||||
@@ -326,6 +335,7 @@ doc/Makefile
|
|||||||
etc/Makefile
|
etc/Makefile
|
||||||
po/Makefile.in
|
po/Makefile.in
|
||||||
pactest/Makefile
|
pactest/Makefile
|
||||||
|
pactest/tests/Makefile
|
||||||
contrib/Makefile
|
contrib/Makefile
|
||||||
Makefile
|
Makefile
|
||||||
])
|
])
|
||||||
@@ -350,6 +360,7 @@ ${PACKAGE_NAME}:
|
|||||||
Architecture flags : ${CARCHFLAGS}
|
Architecture flags : ${CARCHFLAGS}
|
||||||
Host Type : ${CHOST}
|
Host Type : ${CHOST}
|
||||||
Filesize command : ${SIZECMD}
|
Filesize command : ${SIZECMD}
|
||||||
|
In-place sed command : ${SEDINPLACE}
|
||||||
|
|
||||||
libalpm version : ${LIB_VERSION}
|
libalpm version : ${LIB_VERSION}
|
||||||
libalpm version info : ${LIB_VERSION_INFO}
|
libalpm version info : ${LIB_VERSION_INFO}
|
||||||
@@ -361,6 +372,7 @@ ${PACKAGE_NAME}:
|
|||||||
package extension : ${PKGEXT}
|
package extension : ${PKGEXT}
|
||||||
source pkg extension : ${SRCEXT}
|
source pkg extension : ${SRCEXT}
|
||||||
database extension : ${DBEXT}
|
database extension : ${DBEXT}
|
||||||
|
build script name : ${BUILDSCRIPT}
|
||||||
|
|
||||||
Compilation options:
|
Compilation options:
|
||||||
Run make in doc/ dir : ${wantdoc}
|
Run make in doc/ dir : ${wantdoc}
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ EXTRA_DIST = \
|
|||||||
gensync \
|
gensync \
|
||||||
pacdiff \
|
pacdiff \
|
||||||
paclist \
|
paclist \
|
||||||
|
pacscripts \
|
||||||
pacsearch \
|
pacsearch \
|
||||||
pactree \
|
pactree \
|
||||||
updatesync \
|
updatesync \
|
||||||
|
|||||||
@@ -16,6 +16,9 @@ paclist - list all packages installed from a given repository. Useful for
|
|||||||
seeing which packages you may have installed from the testing repository,
|
seeing which packages you may have installed from the testing repository,
|
||||||
for instance.
|
for instance.
|
||||||
|
|
||||||
|
pacscripts - tries to print out the {pre,post}_{install,remove,upgrade}
|
||||||
|
scripts of a given package.
|
||||||
|
|
||||||
pacsearch - a colorized search combining both -Ss and -Qs output. Installed
|
pacsearch - a colorized search combining both -Ss and -Qs output. Installed
|
||||||
packages are easily identified with a *** and local-only packages are also
|
packages are easily identified with a *** and local-only packages are also
|
||||||
listed.
|
listed.
|
||||||
|
|||||||
@@ -183,6 +183,7 @@ _pacman ()
|
|||||||
search) mod="${mod}s" ;;
|
search) mod="${mod}s" ;;
|
||||||
upgrades) mod="${mod}u" ;;
|
upgrades) mod="${mod}u" ;;
|
||||||
cascade) mod="${mod}c" ;;
|
cascade) mod="${mod}c" ;;
|
||||||
|
check) mod="${mod}k" ;;
|
||||||
dbonly) mod="${mod}k" ;;
|
dbonly) mod="${mod}k" ;;
|
||||||
nosave) mod="${mod}n" ;;
|
nosave) mod="${mod}n" ;;
|
||||||
recursive) mod="${mod}s" ;;
|
recursive) mod="${mod}s" ;;
|
||||||
@@ -294,6 +295,7 @@ _pacman ()
|
|||||||
-g --groups \
|
-g --groups \
|
||||||
-h --help \
|
-h --help \
|
||||||
-i --info \
|
-i --info \
|
||||||
|
-k --check \
|
||||||
-l --list \
|
-l --list \
|
||||||
-m --foreign \
|
-m --foreign \
|
||||||
-o --owns \
|
-o --owns \
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
#
|
#
|
||||||
# gensync
|
# gensync
|
||||||
#
|
#
|
||||||
# Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
# Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
|
||||||
#
|
#
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# 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
|
# it under the terms of the GNU General Public License as published by
|
||||||
@@ -44,7 +44,7 @@ note: The <destfile> name is important. It must be of the form\n\
|
|||||||
version() {
|
version() {
|
||||||
printf "gensync (pacman) %s\n" "$myver"
|
printf "gensync (pacman) %s\n" "$myver"
|
||||||
printf "\
|
printf "\
|
||||||
Copyright (C) 2002-2007 Judd Vinet <jvinet@zeroflux.org>.\n\n\
|
Copyright (C) 2002-2006 Judd Vinet <jvinet@zeroflux.org>.\n\n\
|
||||||
This is free software; see the source for copying conditions.\n\
|
This is free software; see the source for copying conditions.\n\
|
||||||
There is NO WARRANTY, to the extent permitted by law.\n"
|
There is NO WARRANTY, to the extent permitted by law.\n"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#!/bin/sh
|
#!/bin/bash
|
||||||
# pacdiff : a simple pacnew/pacorig/pacsave updater for /etc/
|
# pacdiff : a simple pacnew/pacorig/pacsave updater
|
||||||
#
|
#
|
||||||
# Copyright (c) 2007 Aaron Griffin <aaronmgriffin@gmail.com>
|
# Copyright (c) 2007 Aaron Griffin <aaronmgriffin@gmail.com>
|
||||||
#
|
#
|
||||||
@@ -17,29 +17,60 @@
|
|||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
#
|
#
|
||||||
|
|
||||||
# Original http://phraktured.net/config/bin/pacdiff
|
|
||||||
|
|
||||||
diffprog=${DIFFPROG:-vimdiff}
|
diffprog=${DIFFPROG:-vimdiff}
|
||||||
for x in $(find /etc/ -name "*.pacnew" -o -name "*.pacorig" -o -name "*.pacsave")
|
locate=0
|
||||||
do
|
|
||||||
echo "File: ${x%.pac*}"
|
usage() {
|
||||||
chk="$(cmp $x ${x%.pac*})"
|
echo "pacdiff : a simple pacnew/pacorig/pacsave updater"
|
||||||
if [ -z "${chk}" ]; then
|
echo "Usage : pacdiff [-l]"
|
||||||
echo " Files are identical, removing..."
|
echo "The -l/--locate flag makes pacdiff use locate rather than find"
|
||||||
rm $x
|
}
|
||||||
else
|
|
||||||
echo -n " File differences found. (V)iew, (S)kip, (R)emove: [v/s/r] "
|
cmd() {
|
||||||
read c
|
if [ $locate -eq 1 ]; then
|
||||||
c="$(echo $c| tr A-Z a-z)" #tolower
|
locate -0 -e -b \*.pacnew \*.pacorig \*.pacsave
|
||||||
if [ "$c" = "r" ]; then
|
else
|
||||||
rm $x
|
find /etc/ \( -name \*.pacnew -o -name \*.pacorig -o -name \*.pacsave \) -print0
|
||||||
elif [ "$c" = "s" ]; then
|
fi
|
||||||
continue
|
}
|
||||||
else
|
|
||||||
[ "$c" = "n" -o "$c" = "N" ] || $diffprog $x ${x%.pac*}
|
if [ $# -gt 0 ]; then
|
||||||
echo -n " Remove file? [Y/n] "
|
case $1 in
|
||||||
read c
|
-l|--locate)
|
||||||
[ "$c" = "n" -o "$c" = "N" ] || rm $x
|
locate=1;;
|
||||||
fi
|
*)
|
||||||
fi
|
usage; exit 0;;
|
||||||
done
|
esac
|
||||||
|
fi
|
||||||
|
|
||||||
|
# see http://mywiki.wooledge.org/BashFAQ/020
|
||||||
|
while IFS= read -u 3 -r -d '' pacfile; do
|
||||||
|
file="${pacfile%.pac*}"
|
||||||
|
echo "File: $file"
|
||||||
|
if [ ! -f "$file" ]; then
|
||||||
|
echo " $file does not exist"
|
||||||
|
rm -i "$pacfile"
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
check="$(cmp "$pacfile" "$file")"
|
||||||
|
if [ -z "${check}" ]; then
|
||||||
|
echo " Files are identical, removing..."
|
||||||
|
rm "$pacfile"
|
||||||
|
else
|
||||||
|
echo -n " File differences found. (V)iew, (S)kip, (R)emove: [v/s/r] "
|
||||||
|
while read c; do
|
||||||
|
case $c in
|
||||||
|
r|R) rm "$pacfile"; break ;;
|
||||||
|
v|V)
|
||||||
|
$diffprog "$pacfile" "$file"
|
||||||
|
rm -i "$pacfile"; break ;;
|
||||||
|
s|S) break ;;
|
||||||
|
*) echo -n " Invalid answer. Try again: [v/s/r] "; continue ;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
done 3< <(cmd)
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
# vim: set ts=2 sw=2 noet:
|
||||||
|
|||||||
132
contrib/pacscripts
Executable file
132
contrib/pacscripts
Executable file
@@ -0,0 +1,132 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# pacscripts : tries to print out the {pre,post}_{install,remove,upgrade}
|
||||||
|
# scripts of a given package
|
||||||
|
#
|
||||||
|
# Copyright (c) 2009 Giulio "giulivo" Fidente <giulivo.navigante@gmail.com>
|
||||||
|
# Copyright (c) 2009 Xavier Chantry <shiningxc@gmail.com>
|
||||||
|
#
|
||||||
|
# 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
|
||||||
|
# the Free Software Foundation; either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
|
||||||
|
# bash options
|
||||||
|
set -o nounset
|
||||||
|
set -o errexit
|
||||||
|
|
||||||
|
progname=$(basename $0)
|
||||||
|
progver="0.4"
|
||||||
|
|
||||||
|
conf="/etc/pacman.conf"
|
||||||
|
|
||||||
|
if [ ! -r "$conf" ]; then
|
||||||
|
echo "ERROR: unable to read $conf"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
eval $(awk '/DBPath/ {print $1$2$3}' "$conf")
|
||||||
|
eval $(awk '/CacheDir/ {print $1$2$3}' "$conf")
|
||||||
|
pac_db="${DBPath:-/var/lib/pacman}/local"
|
||||||
|
pac_cache="${CacheDir:-/var/cache/pacman/pkg}"
|
||||||
|
|
||||||
|
error() {
|
||||||
|
local mesg=$1; shift
|
||||||
|
printf "==> $(gettext "ERROR:") ${mesg}\n" "$@" >&2
|
||||||
|
}
|
||||||
|
|
||||||
|
usage() {
|
||||||
|
echo "This program prints out the {pre,post}_{install,remove,upgrade} scripts"
|
||||||
|
echo "of a given package."
|
||||||
|
echo "Usage: $progname pkgname|pkgfile"
|
||||||
|
echo
|
||||||
|
echo " OPTIONS:"
|
||||||
|
echo " -h, --help Print this help message"
|
||||||
|
echo " -v, --version Print program name and version"
|
||||||
|
echo
|
||||||
|
echo "Example: $progname gconf-editor"
|
||||||
|
echo "Example: $progname gconf-editor-2.24.1-1-x86_64.pkg.tar.gz"
|
||||||
|
}
|
||||||
|
|
||||||
|
spacman() {
|
||||||
|
if [ $EUID -eq 0 ]; then
|
||||||
|
pacman "$@"
|
||||||
|
else
|
||||||
|
if [ ! "$(type -p sudo)" ]; then
|
||||||
|
error "Cannot find the sudo binary! Is sudo installed?"
|
||||||
|
error "Otherwise try to run the program as root"
|
||||||
|
exit 1
|
||||||
|
else
|
||||||
|
sudo pacman "$@"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
print_db() {
|
||||||
|
pkg=$(pacman -Q "$1")
|
||||||
|
pkg=${pkg/ /-}
|
||||||
|
if [ -f $pac_db/$pkg*/install ]; then
|
||||||
|
cat $pac_db/$pkg*/install
|
||||||
|
echo
|
||||||
|
return 0
|
||||||
|
else
|
||||||
|
error "Package $1 does not include any .INSTALL script"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
print_pkg() {
|
||||||
|
if ! bsdtar -xOf "$1" .INSTALL 2>/dev/null; then
|
||||||
|
error "Package $1 does not include any .INSTALL script"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
echo
|
||||||
|
}
|
||||||
|
|
||||||
|
print_scriptlet() {
|
||||||
|
if [ -f "$1" ]; then
|
||||||
|
if bsdtar tf "$1" .PKGINFO &>/dev/null; then
|
||||||
|
print_pkg "$1"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
if pacman -Q "$1" &>/dev/null; then
|
||||||
|
print_db "$1"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
if ! pacman -Si $1 &>/dev/null; then
|
||||||
|
error "Package $1 not found"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
url=$(spacman -Sdp $1 | tail -n1)
|
||||||
|
filename=$(basename $url)
|
||||||
|
if [ ! -f "$pac_cache/$filename" ]; then
|
||||||
|
if ! spacman -Sdw --noconfirm $1 >&2; then
|
||||||
|
error "Failed to download $1"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
echo >&2
|
||||||
|
fi
|
||||||
|
print_pkg "$pac_cache/$filename"
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ $# -ne 1 ] ; then
|
||||||
|
usage
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
--help|-h) usage; exit 0 ;;
|
||||||
|
--version|-v) echo "$progname version $progver"; exit 0 ;;
|
||||||
|
*) print_scriptlet $1 ;;
|
||||||
|
esac
|
||||||
@@ -50,6 +50,7 @@ _pacman_opts_query_modifiers=(
|
|||||||
'-e[List packages explicitly installed]'
|
'-e[List packages explicitly installed]'
|
||||||
'-i[View package information]'
|
'-i[View package information]'
|
||||||
'-ii[View package information including backup files]'
|
'-ii[View package information including backup files]'
|
||||||
|
'-k[Check package files]'
|
||||||
'-l[List package contents]'
|
'-l[List package contents]'
|
||||||
'-m[List installed packages not found in sync db(s)]'
|
'-m[List installed packages not found in sync db(s)]'
|
||||||
'-t[List packages not required by any package]'
|
'-t[List packages not required by any package]'
|
||||||
|
|||||||
2
doc/.gitignore
vendored
2
doc/.gitignore
vendored
@@ -6,5 +6,7 @@ pacman.8
|
|||||||
pacman.conf.5
|
pacman.conf.5
|
||||||
repo-add.8
|
repo-add.8
|
||||||
repo-remove.8
|
repo-remove.8
|
||||||
|
*.css
|
||||||
|
*.html
|
||||||
*.xml
|
*.xml
|
||||||
man3
|
man3
|
||||||
|
|||||||
@@ -14,6 +14,24 @@ ASCIIDOC_MANS = \
|
|||||||
|
|
||||||
DOXYGEN_MANS = $(wildcard man3/*.3)
|
DOXYGEN_MANS = $(wildcard man3/*.3)
|
||||||
|
|
||||||
|
HTML_MANPAGES = \
|
||||||
|
pacman.8.html \
|
||||||
|
makepkg.8.html \
|
||||||
|
repo-add.8.html \
|
||||||
|
PKGBUILD.5.html \
|
||||||
|
makepkg.conf.5.html \
|
||||||
|
pacman.conf.5.html \
|
||||||
|
libalpm.3.html
|
||||||
|
|
||||||
|
HTML_OTHER = \
|
||||||
|
index.html \
|
||||||
|
submitting-patches.html \
|
||||||
|
translation-help.html
|
||||||
|
|
||||||
|
HTML_DOCS = \
|
||||||
|
$(HTML_MANPAGES) \
|
||||||
|
$(HTML_OTHER)
|
||||||
|
|
||||||
EXTRA_DIST = \
|
EXTRA_DIST = \
|
||||||
asciidoc.conf \
|
asciidoc.conf \
|
||||||
pacman.8.txt \
|
pacman.8.txt \
|
||||||
@@ -25,12 +43,15 @@ EXTRA_DIST = \
|
|||||||
pacman.conf.5.txt \
|
pacman.conf.5.txt \
|
||||||
libalpm.3.txt \
|
libalpm.3.txt \
|
||||||
footer.txt \
|
footer.txt \
|
||||||
|
index.txt \
|
||||||
|
submitting-patches.txt \
|
||||||
|
translation-help.txt \
|
||||||
Doxyfile \
|
Doxyfile \
|
||||||
$(ASCIIDOC_MANS) \
|
$(ASCIIDOC_MANS) \
|
||||||
$(DOXYGEN_MANS)
|
$(DOXYGEN_MANS)
|
||||||
|
|
||||||
# Files that should be removed, but which Automake does not know.
|
# Files that should be removed, but which Automake does not know.
|
||||||
MOSTLYCLEANFILES = *.xml $(ASCIIDOC_MANS)
|
MOSTLYCLEANFILES = *.xml $(ASCIIDOC_MANS) $(HTML_DOCS) repo-remove.8
|
||||||
|
|
||||||
# Ensure manpages are fresh when building a dist tarball
|
# Ensure manpages are fresh when building a dist tarball
|
||||||
dist-hook:
|
dist-hook:
|
||||||
@@ -56,6 +77,8 @@ doxygen.in:
|
|||||||
$(DOXYGEN) $(srcdir)/Doxyfile
|
$(DOXYGEN) $(srcdir)/Doxyfile
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
html: $(HTML_DOCS)
|
||||||
|
|
||||||
ASCIIDOC_OPTS = \
|
ASCIIDOC_OPTS = \
|
||||||
-f asciidoc.conf \
|
-f asciidoc.conf \
|
||||||
-a pacman_version="$(REAL_PACKAGE_VERSION)" \
|
-a pacman_version="$(REAL_PACKAGE_VERSION)" \
|
||||||
@@ -72,13 +95,25 @@ A2X_OPTS = \
|
|||||||
$(ASCIIDOC_MANS): asciidoc.conf footer.txt
|
$(ASCIIDOC_MANS): asciidoc.conf footer.txt
|
||||||
a2x $(A2X_OPTS) --asciidoc-opts="$(ASCIIDOC_OPTS)" $@.txt
|
a2x $(A2X_OPTS) --asciidoc-opts="$(ASCIIDOC_OPTS)" $@.txt
|
||||||
|
|
||||||
pacman.8: pacman.8.txt
|
%.html: %.txt
|
||||||
makepkg.8: makepkg.8.txt
|
asciidoc $(ASCIIDOC_OPTS) -a linkcss $*.txt
|
||||||
repo-add.8: repo-add.8.txt
|
dos2unix $@
|
||||||
PKGBUILD.5: PKGBUILD.5.txt PKGBUILD-example.txt
|
|
||||||
makepkg.conf.5: makepkg.conf.5.txt
|
# Customizations for certain HTML docs
|
||||||
pacman.conf.5: pacman.conf.5.txt
|
$(HTML_MANPAGES): asciidoc.conf footer.txt
|
||||||
libalpm.3: libalpm.3.txt
|
$(HTML_OTHER): asciidoc.conf
|
||||||
|
%.8.html: ASCIIDOC_OPTS += -d manpage
|
||||||
|
%.5.html: ASCIIDOC_OPTS += -d manpage
|
||||||
|
%.3.html: ASCIIDOC_OPTS += -d manpage
|
||||||
|
|
||||||
|
# Dependency rules
|
||||||
|
pacman.8 pacman.8.html: pacman.8.txt
|
||||||
|
makepkg.8 makepkg.8.html: makepkg.8.txt
|
||||||
|
repo-add.8 repo-add.8.html: repo-add.8.txt
|
||||||
|
PKGBUILD.5 PKGBUILD.5.html: PKGBUILD.5.txt PKGBUILD-example.txt
|
||||||
|
makepkg.conf.5 makepkg.conf.5.html: makepkg.conf.5.txt
|
||||||
|
pacman.conf.5 pacman.conf.5.html: pacman.conf.5.txt
|
||||||
|
libalpm.3 libalpm.3.html: libalpm.3.txt
|
||||||
# this one is just a symlink
|
# this one is just a symlink
|
||||||
repo-remove.8: repo-add.8
|
repo-remove.8: repo-add.8
|
||||||
rm -f repo-remove.8
|
rm -f repo-remove.8
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ pkgname=patch
|
|||||||
pkgver=2.5.4
|
pkgver=2.5.4
|
||||||
pkgrel=3
|
pkgrel=3
|
||||||
pkgdesc="A utility to apply patch files to original sources"
|
pkgdesc="A utility to apply patch files to original sources"
|
||||||
arch=(i686 x86_64)
|
arch=('i686' 'x86_64')
|
||||||
url="http://www.gnu.org/software/patch/patch.html"
|
url="http://www.gnu.org/software/patch/patch.html"
|
||||||
license=('GPL')
|
license=('GPL')
|
||||||
groups=('base-devel')
|
groups=('base-devel')
|
||||||
|
|||||||
@@ -65,19 +65,19 @@ similar to `$_basekernver`.
|
|||||||
This field specifies the license(s) that apply to the package.
|
This field specifies the license(s) that apply to the package.
|
||||||
Commonly-used licenses are found in '/usr/share/licenses/common'. If you
|
Commonly-used licenses are found in '/usr/share/licenses/common'. If you
|
||||||
see the package's license there, simply reference it in the license
|
see the package's license there, simply reference it in the license
|
||||||
field (e.g. `$$license=('GPL')$$`). If the package provides a license not
|
field (e.g. `license=('GPL')`). If the package provides a license not
|
||||||
found in '/usr/share/licenses/common', then you should include the license
|
found in '/usr/share/licenses/common', then you should include the license
|
||||||
in the package itself and set `$$license=('custom')$$` or
|
in the package itself and set `license=('custom')` or
|
||||||
`$$license=('custom:LicenseName')$$`. The license should be placed in
|
`license=('custom:LicenseName')`. The license should be placed in
|
||||||
'$pkgdir/usr/share/licenses/$pkgname' when building the package. If
|
'$pkgdir/usr/share/licenses/$pkgname' when building the package. If
|
||||||
multiple licenses are applicable for a package, list all of them:
|
multiple licenses are applicable for a package, list all of them:
|
||||||
`$$license=('GPL' 'FDL')$$`.
|
`license=('GPL' 'FDL')`.
|
||||||
|
|
||||||
*install*::
|
*install*::
|
||||||
Specifies a special install script that is to be included in the package.
|
Specifies a special install script that is to be included in the package.
|
||||||
This file should reside in the same directory as the PKGBUILD, and will
|
This file should reside in the same directory as the PKGBUILD, and will
|
||||||
be copied into the package by makepkg. It does not need to be included
|
be copied into the package by makepkg. It does not need to be included
|
||||||
in the source array (e.g. `$$install=pkgname.install$$`).
|
in the source array (e.g. `install=pkgname.install`).
|
||||||
|
|
||||||
*source (array)*::
|
*source (array)*::
|
||||||
An array of source files required to build the package. Source files
|
An array of source files required to build the package. Source files
|
||||||
@@ -90,7 +90,7 @@ similar to `$_basekernver`.
|
|||||||
+
|
+
|
||||||
It is also possible to specify an optional filename, which is helpful
|
It is also possible to specify an optional filename, which is helpful
|
||||||
with weird URLs and for handling multiple source files with the same
|
with weird URLs and for handling multiple source files with the same
|
||||||
name. The syntax is: `$$source=('filename::url')$$`
|
name. The syntax is: `source=('filename::url')`.
|
||||||
|
|
||||||
*noextract (array)*::
|
*noextract (array)*::
|
||||||
An array of filenames corresponding to those from the source array. Files
|
An array of filenames corresponding to those from the source array. Files
|
||||||
@@ -118,7 +118,7 @@ name. The syntax is: `$$source=('filename::url')$$`
|
|||||||
|
|
||||||
*arch (array)*::
|
*arch (array)*::
|
||||||
Defines on which architectures the given package is available (e.g.
|
Defines on which architectures the given package is available (e.g.
|
||||||
`$$arch=('i686' 'x86_64')$$`).
|
`arch=('i686' 'x86_64')`).
|
||||||
|
|
||||||
*backup (array)*::
|
*backup (array)*::
|
||||||
A space-delimited array of filenames, without preceding slashes, that
|
A space-delimited array of filenames, without preceding slashes, that
|
||||||
@@ -140,11 +140,11 @@ name. The syntax is: `$$source=('filename::url')$$`
|
|||||||
depends.
|
depends.
|
||||||
|
|
||||||
*optdepends (array)*::
|
*optdepends (array)*::
|
||||||
An array of optional packages (and accompanying reasons) that are not
|
An array of packages (and accompanying reasons) that are not essential for
|
||||||
essential to the package, but would offer increased functionality or other
|
base functionality, but may be necessary to make full use of the contents
|
||||||
features when installed. optdepends are currently for informational
|
of this package. optdepends are currently for informational purposes only
|
||||||
purposes only and are not utilized by pacman during dependency resolution.
|
and are not utilized by pacman during dependency resolution. The format
|
||||||
The format should be similar to the following:
|
should be similar to the following:
|
||||||
|
|
||||||
optdepends=('fakeroot: for makepkg usage as normal user')
|
optdepends=('fakeroot: for makepkg usage as normal user')
|
||||||
|
|
||||||
@@ -161,7 +161,7 @@ name. The syntax is: `$$source=('filename::url')$$`
|
|||||||
Versioned provisions are also possible, in the 'name=version' format.
|
Versioned provisions are also possible, in the 'name=version' format.
|
||||||
For example, dcron can provide 'cron=2.0' to satisfy the 'cron>=2.0'
|
For example, dcron can provide 'cron=2.0' to satisfy the 'cron>=2.0'
|
||||||
dependency of other packages. Provisions involving the '>' and '<'
|
dependency of other packages. Provisions involving the '>' and '<'
|
||||||
operators are invalid as only specifc versions of a package may be
|
operators are invalid as only specific versions of a package may be
|
||||||
provided.
|
provided.
|
||||||
|
|
||||||
*replaces (array)*::
|
*replaces (array)*::
|
||||||
@@ -187,8 +187,8 @@ name. The syntax is: `$$source=('filename::url')$$`
|
|||||||
disable this option.
|
disable this option.
|
||||||
|
|
||||||
*docs*;;
|
*docs*;;
|
||||||
Save doc and info directories. If you wish to delete doc and
|
Save doc directories. If you wish to delete doc directories,
|
||||||
info directories, specify `!docs` in the array.
|
specify `!docs` in the array.
|
||||||
|
|
||||||
*libtool*;;
|
*libtool*;;
|
||||||
Leave libtool (.la) files in packages. Specify `!libtool` to
|
Leave libtool (.la) files in packages. Specify `!libtool` to
|
||||||
@@ -198,7 +198,7 @@ name. The syntax is: `$$source=('filename::url')$$`
|
|||||||
Leave empty directories in packages.
|
Leave empty directories in packages.
|
||||||
|
|
||||||
*zipman*;;
|
*zipman*;;
|
||||||
Compress man pages with gzip.
|
Compress man and info pages with gzip.
|
||||||
|
|
||||||
*ccache*;;
|
*ccache*;;
|
||||||
Allow the use of ccache during build. More useful in its negative
|
Allow the use of ccache during build. More useful in its negative
|
||||||
@@ -221,7 +221,7 @@ name. The syntax is: `$$source=('filename::url')$$`
|
|||||||
operation, even if the version number would normally not trigger
|
operation, even if the version number would normally not trigger
|
||||||
such an upgrade. This is useful when the version numbering scheme
|
such an upgrade. This is useful when the version numbering scheme
|
||||||
of a package changes (or is alphanumeric). See linkman:pacman[8] for
|
of a package changes (or is alphanumeric). See linkman:pacman[8] for
|
||||||
more infomation on version comparisons.
|
more information on version comparisons.
|
||||||
|
|
||||||
|
|
||||||
build() Function
|
build() Function
|
||||||
@@ -238,24 +238,47 @@ use during the build and install process. These three variables are as follows:
|
|||||||
*startdir*::
|
*startdir*::
|
||||||
This contains the absolute path to the directory where the PKGBUILD was
|
This contains the absolute path to the directory where the PKGBUILD was
|
||||||
located, which is usually the output of `$(pwd)` when makepkg is started.
|
located, which is usually the output of `$(pwd)` when makepkg is started.
|
||||||
$$startdir$$ was most often used in combination with `/src` or `/pkg`
|
|
||||||
postfixes, but use of the `srcdir` and `pkgdir` variables is preferred.
|
|
||||||
|
|
||||||
*srcdir*::
|
*srcdir*::
|
||||||
This points to the directory where makepkg extracts or copies all source
|
This points to the directory where makepkg extracts or copies all source
|
||||||
files. Although it currently is an alias for `$startdir/src`, this
|
files.
|
||||||
assumption should not be assumed true for all future revisions of makepkg.
|
|
||||||
|
|
||||||
*pkgdir*::
|
*pkgdir*::
|
||||||
This points to the directory where makepkg bundles the installed package
|
This points to the directory where makepkg bundles the installed package
|
||||||
(this directory will become the root directory of your built package).
|
(this directory will become the root directory of your built package).
|
||||||
Although it currently is an alias for `$startdir/pkg`, this assumption
|
|
||||||
should not be assumed true for all future revisions of makepkg.
|
|
||||||
|
|
||||||
If you create any variables of your own in the build function, it is
|
If you create any variables of your own in the build function, it is
|
||||||
recommended to use the bash `local` keyword to scope the variable to inside
|
recommended to use the bash `local` keyword to scope the variable to inside
|
||||||
the build function.
|
the build function.
|
||||||
|
|
||||||
|
package() Function
|
||||||
|
------------------
|
||||||
|
An optional package() function can be specified in addition to the build() function.
|
||||||
|
This function is run immediately after the build() function. When specified in
|
||||||
|
combination with the fakeroot BUILDENV option in linkman:makepkg.conf[5], fakeroot
|
||||||
|
usage will be limited to running the packaging stage. The build() function will be
|
||||||
|
run as the user calling makepkg.
|
||||||
|
|
||||||
|
Package Splitting
|
||||||
|
-----------------
|
||||||
|
makepkg supports building multiple packages from a single PKGBUILD. This is achieved
|
||||||
|
by assigning an array of package names to the `pkgname` directive. Each split package
|
||||||
|
uses a corresponding packaging function with name `package_foo()`, where `foo` is the
|
||||||
|
name of the split package.
|
||||||
|
|
||||||
|
All options and directives for the split packages default to the global values given
|
||||||
|
within the PKGBUILD. However, some of these can be overridden within each split
|
||||||
|
package's packaging function. The following variables can be overridden: `pkgdesc`,
|
||||||
|
`license`, `groups`, `depends`, `optdepends`, `provides`, `conflicts`, `replaces`,
|
||||||
|
`backup`, `options` and `install`.
|
||||||
|
|
||||||
|
An optional global directive is available when building a split package:
|
||||||
|
|
||||||
|
*pkgbase*::
|
||||||
|
The name used to refer to the group of packages in the output of makepkg
|
||||||
|
and in the naming of source-only tarballs. If not specified, the first
|
||||||
|
element in the `pkgname` array is used.
|
||||||
|
|
||||||
Install/Upgrade/Remove Scripting
|
Install/Upgrade/Remove Scripting
|
||||||
--------------------------------
|
--------------------------------
|
||||||
Pacman has the ability to store and execute a package-specific script when it
|
Pacman has the ability to store and execute a package-specific script when it
|
||||||
|
|||||||
@@ -8,7 +8,11 @@
|
|||||||
# Show man link as: <command>(<section>); if section is defined, else just show
|
# Show man link as: <command>(<section>); if section is defined, else just show
|
||||||
# the command.
|
# the command.
|
||||||
|
|
||||||
|
[macros]
|
||||||
|
(?su)[\\]?(?P<name>linkman):(?P<target>\S*?)\[(?P<attrlist>.*?)\]=
|
||||||
|
|
||||||
[attributes]
|
[attributes]
|
||||||
|
asterisk=*
|
||||||
plus=+
|
plus=+
|
||||||
caret=^
|
caret=^
|
||||||
startsb=[
|
startsb=[
|
||||||
@@ -30,13 +34,7 @@ ifndef::docbook-xsl-172[]
|
|||||||
[listingblock]
|
[listingblock]
|
||||||
<example><title>{title}</title>
|
<example><title>{title}</title>
|
||||||
<literallayout>
|
<literallayout>
|
||||||
ifdef::doctype-manpage[]
|
|
||||||
.ft C
|
|
||||||
endif::doctype-manpage[]
|
|
||||||
|
|
|
|
||||||
ifdef::doctype-manpage[]
|
|
||||||
.ft
|
|
||||||
endif::doctype-manpage[]
|
|
||||||
</literallayout>
|
</literallayout>
|
||||||
{title#}</example>
|
{title#}</example>
|
||||||
endif::docbook-xsl-172[]
|
endif::docbook-xsl-172[]
|
||||||
|
|||||||
195
doc/index.txt
Normal file
195
doc/index.txt
Normal file
@@ -0,0 +1,195 @@
|
|||||||
|
Pacman Home Page
|
||||||
|
================
|
||||||
|
|
||||||
|
A simple library-based package manager.
|
||||||
|
|
||||||
|
Introduction
|
||||||
|
------------
|
||||||
|
pacman is a utility which manages software packages in Linux. It uses simple
|
||||||
|
compressed files as a package format, and maintains a text-based package
|
||||||
|
database (more of a hierarchy), just in case some hand tweaking is necessary.
|
||||||
|
|
||||||
|
pacman does not strive to "do everything." It will add, remove and upgrade
|
||||||
|
packages in the system, and it will allow you to query the package database for
|
||||||
|
installed packages, files and owners. It also attempts to handle dependencies
|
||||||
|
automatically and can download packages from a remote server.
|
||||||
|
|
||||||
|
History
|
||||||
|
~~~~~~~
|
||||||
|
Version 2.0 of pacman introduced the ability to sync packages (the `--sync`
|
||||||
|
option) with a master server through the use of package databases. Prior to
|
||||||
|
this, packages would have to be installed manually using the `--add` and
|
||||||
|
`--upgrade` operations.
|
||||||
|
|
||||||
|
Version 3.0 was the switch to a two-part pacman- a backend named libalpm
|
||||||
|
(library for Arch Linux Package Management), and the familiar pacman frontend.
|
||||||
|
Speed in many cases was improved, along with dependency and conflict resolution
|
||||||
|
being able to handle a much wider variety of cases. The switch to a
|
||||||
|
library-based program should also make it easier in the future to develop
|
||||||
|
alternative front ends.
|
||||||
|
|
||||||
|
Documentation
|
||||||
|
-------------
|
||||||
|
|
||||||
|
Manpages
|
||||||
|
~~~~~~~~
|
||||||
|
There are several manpages available for the programs, utilities, and
|
||||||
|
configuration files dealing with pacman.
|
||||||
|
|
||||||
|
* linkman:PKGBUILD[5]
|
||||||
|
* linkman:libalpm[3]
|
||||||
|
* linkman:makepkg[8]
|
||||||
|
* linkman:makepkg.conf[5]
|
||||||
|
* linkman:pacman[8]
|
||||||
|
* linkman:pacman.conf[5]
|
||||||
|
* linkman:repo-add[8]
|
||||||
|
|
||||||
|
Changelog
|
||||||
|
~~~~~~~~~
|
||||||
|
For a good idea of what is going on in pacman development, take a look at the
|
||||||
|
link:http://projects.archlinux.org/?p=pacman.git[Gitweb] summary
|
||||||
|
page for the project.
|
||||||
|
|
||||||
|
See the most recent
|
||||||
|
link:http://projects.archlinux.org/?p=pacman.git;a=blob_plain;f=NEWS;hb=HEAD[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.
|
||||||
|
|
||||||
|
|
||||||
|
Releases
|
||||||
|
--------
|
||||||
|
|
||||||
|
`------------`-------
|
||||||
|
Date Version
|
||||||
|
---------------------
|
||||||
|
2009-01-05 v3.2.2
|
||||||
|
2008-08-26 v3.2.1
|
||||||
|
2008-07-30 v3.2.0
|
||||||
|
2008-04-01 v3.1.4
|
||||||
|
2008-03-06 v3.1.3
|
||||||
|
2008-02-20 v3.1.2
|
||||||
|
2008-01-20 v3.1.1
|
||||||
|
2008-01-09 v3.1.0
|
||||||
|
2007-09-16 v3.0.6
|
||||||
|
2007-06-17 v3.0.5
|
||||||
|
2007-05-08 v3.0.4
|
||||||
|
2007-04-28 v3.0.3
|
||||||
|
2007-04-23 v3.0.2
|
||||||
|
2007-04-04 v3.0.1
|
||||||
|
2007-03-25 v3.0.0
|
||||||
|
2006-02-02 v2.9.8
|
||||||
|
2005-09-16 v2.9.7
|
||||||
|
2005-06-10 v2.9.6
|
||||||
|
2005-01-11 v2.9.5
|
||||||
|
2004-12-19 v2.9.4
|
||||||
|
2004-12-18 v2.9.3
|
||||||
|
2004-09-25 v2.9.2
|
||||||
|
2004-09-24 v2.9.1
|
||||||
|
2004-09-18 v2.9
|
||||||
|
---------------------
|
||||||
|
|
||||||
|
Source code for all releases is available at
|
||||||
|
link:ftp://ftp.archlinux.org/other/pacman/[]. To install, download the newest
|
||||||
|
available source tarball, unpack it in a directory, and run the three magic
|
||||||
|
commands:
|
||||||
|
|
||||||
|
$ ./configure
|
||||||
|
$ make
|
||||||
|
# make install
|
||||||
|
|
||||||
|
You may wish to read the options presented by `./configure --help` in order to
|
||||||
|
set appropriate paths and build options that are correct for your system.
|
||||||
|
|
||||||
|
Development
|
||||||
|
-----------
|
||||||
|
|
||||||
|
Mailing List
|
||||||
|
~~~~~~~~~~~~
|
||||||
|
There is a mailing list devoted to pacman development, hosted by Arch Linux.
|
||||||
|
link:http://www.archlinux.org/mailman/listinfo/pacman-dev/[Subscribe] or
|
||||||
|
link:http://www.archlinux.org/pipermail/pacman-dev/[view the archives].
|
||||||
|
|
||||||
|
Source Code
|
||||||
|
~~~~~~~~~~~
|
||||||
|
Development of pacman is currently done in GIT. The central repository is
|
||||||
|
hosted by Arch Linux, although some of the developers have their own trees (ask
|
||||||
|
on the above mailing lists if you are interested in finding the locations of
|
||||||
|
these trees).
|
||||||
|
|
||||||
|
The current development tree can be fetched with the following command:
|
||||||
|
|
||||||
|
git clone git://projects.archlinux.org/pacman.git pacman
|
||||||
|
|
||||||
|
which will fetch the full development history into a directory named pacman.
|
||||||
|
You can browse the source as well using
|
||||||
|
link:http://projects.archlinux.org/?p=pacman.git[Gitweb].
|
||||||
|
|
||||||
|
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
|
||||||
|
link:HACKING.html[HACKING] document.
|
||||||
|
link:submitting-patches.html[submitting-patches] is also a recommended read.
|
||||||
|
|
||||||
|
Not as familiar with code as you'd like to be, but still want to help out? If
|
||||||
|
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:http://archlinux.org[Arch Linux]. Most of these utilities
|
||||||
|
are available in the Arch Linux projects
|
||||||
|
link:http://projects.archlinux.org/[Gitweb browser].
|
||||||
|
|
||||||
|
Utilities available:
|
||||||
|
|
||||||
|
* link:http://projects.archlinux.org/?p=abs.git[abs] - ABS (Arch Build System), scripts to download & use the Arch Linux PKGBUILD tree
|
||||||
|
* link:http://projects.archlinux.org/?p=devtools.git[devtools] - tools to assist in packaging and dependency checking
|
||||||
|
* link:http://projects.archlinux.org/?p=namcap.git[namcap] - a package analysis utility written in python
|
||||||
|
* link:http://projects.archlinux.org/?p=pacbuild.git[pacbuild] - a package building system utilizing a daemon
|
||||||
|
* link:http://projects.archlinux.org/?p=srcpac.git[srcpac] - a bash build-from-source pacman wrapper
|
||||||
|
|
||||||
|
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
|
||||||
|
such as your commandline, the nature of the bug, and even the package database
|
||||||
|
if it helps.
|
||||||
|
|
||||||
|
You can also post a bug to the Archlinux bug tracker
|
||||||
|
link:http://bugs.archlinux.org/index.php?project=3[Flyspray]. Be sure to file
|
||||||
|
bugs under the Pacman project.
|
||||||
|
|
||||||
|
Pacman/libalpm in the Wild
|
||||||
|
--------------------------
|
||||||
|
Although Arch Linux is the primary user of pacman and libalpm, other
|
||||||
|
distributions and projects also use pacman as a package management tool. In
|
||||||
|
addition, there have been several projects started to provide a frontend GUI to
|
||||||
|
pacman and/or libalpm.
|
||||||
|
|
||||||
|
Arch derivatives:
|
||||||
|
|
||||||
|
* link:http://archie.dotsrc.org/[Archie] - Arch Live on steroids
|
||||||
|
* link:http://www.faunos.com/[FaunOS] - A portable, fully integrated operating system based on Arch Linux
|
||||||
|
* link:http://larch.berlios.de/[larch] - A live CD/DVD/USB-stick construction kit for Arch Linux
|
||||||
|
|
||||||
|
Other distributions:
|
||||||
|
|
||||||
|
* link:http://www.delilinux.org/[DeLi Linux] - "Desktop Light" Linux, a Linux distribution for old computers
|
||||||
|
* link:http://www.frugalware.org/[Frugalware Linux] - A general purpose Linux distribution for intermediate users (pacman is forked and maintained separately)
|
||||||
|
|
||||||
|
Pacman/libalpm frontends:
|
||||||
|
|
||||||
|
* link:http://shaman.iskrembilen.com/[Shaman] - A GUI frontend using Qt and libalpm
|
||||||
|
|
||||||
|
Copyright
|
||||||
|
---------
|
||||||
|
pacman is Copyright (C) 2006-2009 Pacman Development Team
|
||||||
|
<pacman-dev@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.
|
||||||
|
|
||||||
|
/////
|
||||||
|
vim: set ts=2 sw=2 syntax=asciidoc et:
|
||||||
|
/////
|
||||||
@@ -43,7 +43,7 @@ Options
|
|||||||
*-A, \--ignorearch*::
|
*-A, \--ignorearch*::
|
||||||
Ignore a missing or incomplete arch field in the build script. This is
|
Ignore a missing or incomplete arch field in the build script. This is
|
||||||
for rebuilding packages from source when the PKGBUILD may be slightly
|
for rebuilding packages from source when the PKGBUILD may be slightly
|
||||||
outdated and not updated with an `$$arch=('yourarch')$$` field.
|
outdated and not updated with an `arch=('yourarch')` field.
|
||||||
|
|
||||||
*-c, \--clean*::
|
*-c, \--clean*::
|
||||||
Clean up leftover work files and directories after a successful build.
|
Clean up leftover work files and directories after a successful build.
|
||||||
@@ -52,6 +52,9 @@ Options
|
|||||||
Removes all cached source files from the directory specified in `SRCDEST`
|
Removes all cached source files from the directory specified in `SRCDEST`
|
||||||
in linkman:makepkg.conf[5].
|
in linkman:makepkg.conf[5].
|
||||||
|
|
||||||
|
*--config* <`/path/to/config`>::
|
||||||
|
Use an alternate config file instead of the `/etc/makepkg.conf` default;
|
||||||
|
|
||||||
*-d, \--nodeps*::
|
*-d, \--nodeps*::
|
||||||
Do not perform any dependency checks. This will let you override and
|
Do not perform any dependency checks. This will let you override and
|
||||||
ignore any dependencies required. There is a good chance this option
|
ignore any dependencies required. There is a good chance this option
|
||||||
@@ -119,9 +122,9 @@ Options
|
|||||||
during dependency auto-resolution and installation when using `-s`.
|
during dependency auto-resolution and installation when using `-s`.
|
||||||
|
|
||||||
*-R, \--repackage*::
|
*-R, \--repackage*::
|
||||||
Repackage contents of pkg/ without rebuilding the package. This is
|
Repackage contents of the package without rebuilding the package. This
|
||||||
useful if you forgot a depend or install file in your PKGBUILD and the
|
is useful if you forgot a depend or install file in your PKGBUILD and
|
||||||
build itself will not change.
|
the build itself will not change.
|
||||||
|
|
||||||
*-s, \--syncdeps*::
|
*-s, \--syncdeps*::
|
||||||
Install missing dependencies using pacman. When build-time or run-time
|
Install missing dependencies using pacman. When build-time or run-time
|
||||||
|
|||||||
@@ -61,11 +61,16 @@ Options
|
|||||||
**CXXFLAGS=**"cxxflags"::
|
**CXXFLAGS=**"cxxflags"::
|
||||||
Flags used for the C++ compiler; see CFLAGS for more info.
|
Flags used for the C++ compiler; see CFLAGS for more info.
|
||||||
|
|
||||||
|
**LDFLAGS=**"ldflags"::
|
||||||
|
Flags used for the linker. Several options may be specified with common
|
||||||
|
usage resembling ``-Wl,--hash-style=gnu''. Read ld(1) for more details on
|
||||||
|
available linker flags.
|
||||||
|
|
||||||
**MAKEFLAGS=**"makeflags"::
|
**MAKEFLAGS=**"makeflags"::
|
||||||
This is often used to set the number of jobs used, for example, `-j2`.
|
This is often used to set the number of jobs used, for example, `-j2`.
|
||||||
Other flags that make accepts can also be passed.
|
Other flags that make accepts can also be passed.
|
||||||
|
|
||||||
**BUILDENV=(**fakeroot !distcc color !ccache !xdelta**)**::
|
**BUILDENV=(**fakeroot !distcc color !ccache**)**::
|
||||||
This array contains options that affect the build environment, the defaults
|
This array contains options that affect the build environment, the defaults
|
||||||
are shown here. All options should always be left in the array; to enable
|
are shown here. All options should always be left in the array; to enable
|
||||||
or disable an option simply remove or place an ``!'' at the front of the
|
or disable an option simply remove or place an ``!'' at the front of the
|
||||||
@@ -88,17 +93,12 @@ Options
|
|||||||
be disabled for individual packages by placing `!ccache` in the
|
be disabled for individual packages by placing `!ccache` in the
|
||||||
PKGBUILD options array.
|
PKGBUILD options array.
|
||||||
|
|
||||||
*xdelta*;;
|
|
||||||
Generate an xdelta binary patch from previous to current package. The
|
|
||||||
previous package must be available in the makepkg cache directory for
|
|
||||||
this to occur.
|
|
||||||
|
|
||||||
**DISTCC_HOSTS=**"host1 ..."::
|
**DISTCC_HOSTS=**"host1 ..."::
|
||||||
If using DistCC, this is used to specify a space-delimited list of hosts
|
If using DistCC, this is used to specify a space-delimited list of hosts
|
||||||
running in the DistCC cluster. In addition, you will want to modify your
|
running in the DistCC cluster. In addition, you will want to modify your
|
||||||
`MAKEFLAGS`.
|
`MAKEFLAGS`.
|
||||||
|
|
||||||
**OPTIONS=(**strip docs libtool emptydirs zipman**)**::
|
**OPTIONS=(**strip !docs libtool emptydirs zipman**)**::
|
||||||
This array contains options that affect the default packaging. They are
|
This array contains options that affect the default packaging. They are
|
||||||
equivalent to options that can be placed in the PKGBUILD; the defaults are
|
equivalent to options that can be placed in the PKGBUILD; the defaults are
|
||||||
shown here. All options should always be left in the array; to enable or
|
shown here. All options should always be left in the array; to enable or
|
||||||
@@ -111,37 +111,55 @@ Options
|
|||||||
option.
|
option.
|
||||||
|
|
||||||
*docs*;;
|
*docs*;;
|
||||||
Save doc and info directories. If you wish to delete doc and info
|
Save doc directories. If you wish to delete doc directories, specify
|
||||||
directories, specify `!docs' in the array.
|
`!docs` in the array. The directories affected are specified by the
|
||||||
|
`DOC_DIRS` variable.
|
||||||
|
|
||||||
*libtool*;;
|
*libtool*;;
|
||||||
Leave libtool (.la) files in packages. Specify `!libtool' to remove
|
Leave libtool (.la) files in packages. Specify `!libtool` to remove
|
||||||
them.
|
them.
|
||||||
|
|
||||||
*emptydirs*;;
|
*emptydirs*;;
|
||||||
Leave empty directories in packages.
|
Leave empty directories in packages.
|
||||||
|
|
||||||
*zipman*;;
|
*zipman*;;
|
||||||
Compress man pages with gzip.
|
Compress manual (man and info) pages with gzip. The directories
|
||||||
|
affected are specified by the `MAN_DIRS` variable.
|
||||||
|
|
||||||
|
*purge*;;
|
||||||
|
Remove files specified by the `PURGE_TARGETS` variable from the
|
||||||
|
package.
|
||||||
|
|
||||||
**INTEGRITY_CHECK=(**check1 ...**)**::
|
**INTEGRITY_CHECK=(**check1 ...**)**::
|
||||||
File integrity checks to use. Multiple checks may be specified; this
|
File integrity checks to use. Multiple checks may be specified; this
|
||||||
affects both generation and checking. The current valid options are:
|
affects both generation and checking. The current valid options are:
|
||||||
`md5`, `sha1`, `sha256`, `sha384`, and `sha512`.
|
`md5`, `sha1`, `sha256`, `sha384`, and `sha512`.
|
||||||
|
|
||||||
**DOC_DIRS=(**usr/{,share/}{info,doc} ...**)**::
|
**MAN_DIRS=(**{usr{,/local}{,/share},opt/*}/{man,info} ...**)**::
|
||||||
If "!docs" is specified in the OPTIONS array, this variable will
|
If `zipman` is specified in the OPTIONS array, this variable will
|
||||||
|
instruct makepkg where to look to compress manual (man and info)
|
||||||
|
pages. If you build packages 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.
|
||||||
|
|
||||||
|
**DOC_DIRS=(**usr/{,share/}{doc,gtk-doc} ...**)**::
|
||||||
|
If `!docs` is specified in the OPTIONS array, this variable will
|
||||||
instruct makepkg where to look to remove docs. If you build packages
|
instruct makepkg where to look to remove docs. If you build packages
|
||||||
that are located in opt/, you may need to add the directory to this
|
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.
|
array. *NOTE:* Do not add the leading slash to the directory name.
|
||||||
|
|
||||||
**STRIP_DIRS=(**bin lib sbin usr/{bin,lib} ...**)**::
|
**STRIP_DIRS=(**bin lib sbin usr/{bin,lib} ...**)**::
|
||||||
If "strip" is specified in the OPTIONS array, this variable will
|
If `strip` is specified in the OPTIONS array, this variable will
|
||||||
instruct makepkg where to look to for files to strip. If you build
|
instruct makepkg where to look to for files to strip. If you build
|
||||||
packages that are located in opt/, you may need to add the directory
|
packages 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
|
to this array. *NOTE:* Do not add the leading slash to the directory
|
||||||
name.
|
name.
|
||||||
|
|
||||||
|
**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
|
||||||
|
useful for index files that are added by multiple packages.
|
||||||
|
|
||||||
**PKGDEST=**"/path/to/folder"::
|
**PKGDEST=**"/path/to/folder"::
|
||||||
If this value is not set, packages will by default be placed in the
|
If this value is not set, packages will by default be placed in the
|
||||||
current directory (location of the linkman:PKGBUILD[5]). Many people
|
current directory (location of the linkman:PKGBUILD[5]). Many people
|
||||||
@@ -153,11 +171,11 @@ Options
|
|||||||
in the current directory. Many people like to keep all source files in
|
in the current directory. Many people like to keep all source files in
|
||||||
a central location for easy cleanup, so this path can be set here.
|
a central location for easy cleanup, so this path can be set here.
|
||||||
|
|
||||||
**PACKAGER=**"John Doe <john@doe.com>"::
|
**PACKAGER=**"John Doe <john@example.com>"::
|
||||||
This value is used when querying a package to see who was the builder.
|
This value is used when querying a package to see who was the builder.
|
||||||
It is recommended you change this to your name and email address.
|
It is recommended you change this to your name and email address.
|
||||||
|
|
||||||
*BUILDSCRIPT*, *PKGEXT*, *SRCEXT*, *DB_COMPRESSION*, *DB_CHECKSUMS*::
|
*PKGEXT*, *SRCEXT*::
|
||||||
Do not touch these unless you know what you are doing.
|
Do not touch these unless you know what you are doing.
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -22,8 +22,8 @@ hooks, and the ability to sync your local machine with a remote ftp server to
|
|||||||
automatically upgrade packages. Pacman packages are a zipped tar format.
|
automatically upgrade packages. Pacman packages are a zipped tar format.
|
||||||
|
|
||||||
Since version 3.0.0, pacman has been the frontend to linkman:libalpm[3], the
|
Since version 3.0.0, pacman has been the frontend to linkman:libalpm[3], the
|
||||||
"Arch Linux Package Management" library. This library allows alternative front
|
``Arch Linux Package Management'' library. This library allows alternative
|
||||||
ends to be written (for instance, a GUI front end).
|
front ends to be written (for instance, a GUI front end).
|
||||||
|
|
||||||
|
|
||||||
Operations
|
Operations
|
||||||
@@ -33,10 +33,13 @@ Operations
|
|||||||
packages and their files, as well as meta-information about individual
|
packages and their files, as well as meta-information about individual
|
||||||
packages (dependencies, conflicts, install date, build date, size). This
|
packages (dependencies, conflicts, install date, build date, size). This
|
||||||
can be run against the local package database or can be used on
|
can be run against the local package database or can be used on
|
||||||
individual '.tar.gz' packages. See <<QO,Query Options>> below.
|
individual '.tar.gz' packages. In the first case, if no package names
|
||||||
|
are provided in the command line, all installed packages will be
|
||||||
|
queried. Additionally, various filters can be applied on the package
|
||||||
|
list. See <<QO,Query Options>> below.
|
||||||
|
|
||||||
*-R, \--remove*::
|
*-R, \--remove*::
|
||||||
Remove a package from the system. Groups can also be specified to be
|
Remove package(s) from the system. Groups can also be specified to be
|
||||||
removed, in which case every package in that group will be removed.
|
removed, in which case every package in that group will be removed.
|
||||||
Files belonging to the specified package will be deleted, and the
|
Files belonging to the specified package will be deleted, and the
|
||||||
database will be updated. Most configuration files will be saved
|
database will be updated. Most configuration files will be saved
|
||||||
@@ -71,9 +74,16 @@ to determine which packages need upgrading. This behavior operates as follows:
|
|||||||
Numeric:
|
Numeric:
|
||||||
1 < 1.0 < 1.1 < 1.1.1 < 1.2 < 2.0 < 3.0.0
|
1 < 1.0 < 1.1 < 1.1.1 < 1.2 < 2.0 < 3.0.0
|
||||||
|
|
||||||
|
*-T, \--deptest*::
|
||||||
|
Check dependencies; this is useful in scripts such as makepkg to check
|
||||||
|
installed packages. This operation will check each dependency specified and
|
||||||
|
return a list of those which are not currently satisfied on the system.
|
||||||
|
This operation accepts no other options. Example usage: `pacman -T qt
|
||||||
|
"bash>=3.2"`.
|
||||||
|
|
||||||
*-U, \--upgrade*::
|
*-U, \--upgrade*::
|
||||||
Upgrade or add a package to the system. Either a URL or file path can be
|
Upgrade or add package(s) to the system. Either a URL or file path can be
|
||||||
specified. This is a "remove-then-add" process. See <<HCF,Handling Config
|
specified. This is a ``remove-then-add'' process. See <<HCF,Handling Config
|
||||||
Files>> for an explanation on how pacman takes care of config files.
|
Files>> for an explanation on how pacman takes care of config files.
|
||||||
|
|
||||||
*-V, \--version*::
|
*-V, \--version*::
|
||||||
@@ -124,9 +134,13 @@ Options
|
|||||||
command line or in linkman:pacman.conf[5], their default location will
|
command line or in linkman:pacman.conf[5], their default location will
|
||||||
be inside this root path.
|
be inside this root path.
|
||||||
|
|
||||||
*-v, --verbose*::
|
*-v, \--verbose*::
|
||||||
Output paths such as as the Root, Conf File, DB Path, Cache Dirs, etc.
|
Output paths such as as the Root, Conf File, DB Path, Cache Dirs, etc.
|
||||||
|
|
||||||
|
*\--debug*::
|
||||||
|
Display debug messages. When reporting bugs, this option is recommended
|
||||||
|
to be used.
|
||||||
|
|
||||||
*\--cachedir* <'dir'>::
|
*\--cachedir* <'dir'>::
|
||||||
Specify an alternative package cache location (a typical default is
|
Specify an alternative package cache location (a typical default is
|
||||||
``/var/cache/pacman/pkg''). Multiple cache directories can be specified,
|
``/var/cache/pacman/pkg''). Multiple cache directories can be specified,
|
||||||
@@ -141,7 +155,7 @@ Options
|
|||||||
the installation root setting.
|
the installation root setting.
|
||||||
|
|
||||||
*\--noconfirm*::
|
*\--noconfirm*::
|
||||||
Bypass any and all "Are you sure?" messages. It's not a good idea to do
|
Bypass any and all ``Are you sure?'' messages. It's not a good idea to do
|
||||||
this unless you want to run pacman from a script.
|
this unless you want to run pacman from a script.
|
||||||
|
|
||||||
*\--noprogressbar*::
|
*\--noprogressbar*::
|
||||||
@@ -160,16 +174,17 @@ Query Options[[QO]]
|
|||||||
it will be shown if available.
|
it will be shown if available.
|
||||||
|
|
||||||
*-d, \--deps*::
|
*-d, \--deps*::
|
||||||
List all packages installed as dependencies. This option can be combined
|
Restrict or filter output to packages installed as dependencies. This
|
||||||
with '-t' for listing real orphans- packages that were installed as
|
option can be combined with '-t' for listing real orphans- packages that
|
||||||
dependencies but are no longer required by any installed package. ('-Qdt'
|
were installed as dependencies but are no longer required by any
|
||||||
is equivalent to the pacman 3.0.X '-Qe' option.)
|
installed package. ('-Qdt' is equivalent to the pacman 3.0.X '-Qe'
|
||||||
|
option.)
|
||||||
|
|
||||||
*-e, \--explicit*::
|
*-e, \--explicit*::
|
||||||
List all packages explicitly installed. This option can be combined with
|
Restrict or filter output to packages explicitly installed. This option
|
||||||
'-t' to list top-level packages- those packages that were explicitly
|
can be combined with '-t' to list top-level packages- those packages
|
||||||
installed but are not required by any other package. ('-Qet' is equivalent
|
that were explicitly installed but are not required by any other
|
||||||
to the pacman 2.9.X '-Qe' option.)
|
package. ('-Qet' is equivalent to the pacman 2.9.X '-Qe' option.)
|
||||||
|
|
||||||
*-g, \--groups*::
|
*-g, \--groups*::
|
||||||
Display all packages that are members of a named group. If a name is not
|
Display all packages that are members of a named group. If a name is not
|
||||||
@@ -181,6 +196,11 @@ Query Options[[QO]]
|
|||||||
'\--info' or '-i' flags will also display the list of backup files and
|
'\--info' or '-i' flags will also display the list of backup files and
|
||||||
their modification states.
|
their modification states.
|
||||||
|
|
||||||
|
*-k \--check*::
|
||||||
|
Check that all files owned by the given package(s) are present on the
|
||||||
|
system. If packages are not specified or filter flags are not provided,
|
||||||
|
check all installed packages.
|
||||||
|
|
||||||
*-l, \--list*::
|
*-l, \--list*::
|
||||||
List all files owned by a given package. Multiple packages can be
|
List all files owned by a given package. Multiple packages can be
|
||||||
specified on the command line.
|
specified on the command line.
|
||||||
@@ -200,21 +220,30 @@ Query Options[[QO]]
|
|||||||
This is useful in combination with '\--info' and '\--list'.
|
This is useful in combination with '\--info' and '\--list'.
|
||||||
|
|
||||||
*-q, \--quiet*::
|
*-q, \--quiet*::
|
||||||
Show less information for certain query operations. Search will only show
|
Show less information for certain query operations. (This is useful when
|
||||||
package names and not version, group, and description information; a bare
|
pacman's output is processed in a script.) Search will only show package
|
||||||
query will only show package names rather than names and versions.
|
names and not version, group, and description information; owns will
|
||||||
|
only show package names instead of "file is owned by pkg" messages; group
|
||||||
|
will only show package names and omit group names; list will only show
|
||||||
|
files and omit package names; check will only show pairs of package names
|
||||||
|
and missing files; a bare query will only show package names
|
||||||
|
rather than names and versions.
|
||||||
|
|
||||||
*-s, \--search* <'regexp'>::
|
*-s, \--search* <'regexp'>::
|
||||||
This will search each locally-installed package for names or
|
This will search each locally-installed package for names or
|
||||||
descriptions that match `regexp`.
|
descriptions that match `regexp`. When you include multiple search
|
||||||
|
terms, only packages with descriptions matching ALL of those terms will
|
||||||
|
be returned.
|
||||||
|
|
||||||
*-t, \--unrequired*::
|
*-t, \--unrequired*::
|
||||||
Restrict or filter output to packages not required by any currently
|
Restrict or filter output to packages not required by any currently
|
||||||
installed package.
|
installed package.
|
||||||
|
|
||||||
*-u, \--upgrades*::
|
*-u, \--upgrades*::
|
||||||
Lists all packages that are out of date on the local system. This option
|
Restrict or filter output to packages that are out of date on the local
|
||||||
works best if the sync database is refreshed using '-Sy'.
|
system. (Only package versions are used to find outdated packages,
|
||||||
|
replacements are not checked here.) This option works best if the sync
|
||||||
|
database is refreshed using '-Sy'.
|
||||||
|
|
||||||
|
|
||||||
Remove Options[[RO]]
|
Remove Options[[RO]]
|
||||||
@@ -280,13 +309,17 @@ linkman:pacman.conf[5].
|
|||||||
downloaded at a later time, using a program like wget.
|
downloaded at a later time, using a program like wget.
|
||||||
|
|
||||||
*-q, \--quiet*::
|
*-q, \--quiet*::
|
||||||
Show less information for certain sync operations. Search will only show
|
Show less information for certain sync operations. (This is useful when
|
||||||
package names and not version, group, and description information; list
|
pacman's output is processed in a script.) Search will only show package
|
||||||
will only show package names and omit databases and versions.
|
names and not repo, version, group, and description information; list
|
||||||
|
will only show package names and omit databases and versions; group will
|
||||||
|
only show package names and omit group names.
|
||||||
|
|
||||||
*-s, \--search* <'regexp'>::
|
*-s, \--search* <'regexp'>::
|
||||||
This will search each package in the sync databases for names or
|
This will search each package in the sync databases for names or
|
||||||
descriptions that match `regexp`.
|
descriptions that match `regexp`. When you include multiple search
|
||||||
|
terms, only packages with descriptions matching ALL of those terms will
|
||||||
|
be returned.
|
||||||
|
|
||||||
*-u, \--sysupgrade*::
|
*-u, \--sysupgrade*::
|
||||||
Upgrades all packages that are out of date. Each currently-installed
|
Upgrades all packages that are out of date. Each currently-installed
|
||||||
@@ -294,7 +327,10 @@ linkman:pacman.conf[5].
|
|||||||
report of all packages to upgrade will be presented and the operation
|
report of all packages to upgrade will be presented and the operation
|
||||||
will not proceed without user confirmation. Dependencies are
|
will not proceed without user confirmation. Dependencies are
|
||||||
automatically resolved at this level and will be installed/upgraded if
|
automatically resolved at this level and will be installed/upgraded if
|
||||||
necessary.
|
necessary. Pass this option twice to enable package downgrade; in this
|
||||||
|
case pacman will select sync packages whose version does not match with
|
||||||
|
the local version. This can be useful when the user switches from a testing
|
||||||
|
repo to a stable one.
|
||||||
|
|
||||||
*-w, \--downloadonly*::
|
*-w, \--downloadonly*::
|
||||||
Retrieve all packages from the server, but do not install/upgrade
|
Retrieve all packages from the server, but do not install/upgrade
|
||||||
|
|||||||
@@ -25,6 +25,7 @@ which defines global options.
|
|||||||
|
|
||||||
Example
|
Example
|
||||||
-------
|
-------
|
||||||
|
|
||||||
--------
|
--------
|
||||||
#
|
#
|
||||||
# pacman.conf
|
# pacman.conf
|
||||||
@@ -112,7 +113,8 @@ Options
|
|||||||
|
|
||||||
*NoUpgrade =* file ...::
|
*NoUpgrade =* file ...::
|
||||||
All files listed with a `NoUpgrade` directive will never be touched during
|
All files listed with a `NoUpgrade` directive will never be touched during
|
||||||
a package install/upgrade.
|
a package install/upgrade, and the new files will be installed with a
|
||||||
|
'.pacnew' extension.
|
||||||
These files refer to files in the package archive, so do not include the
|
These files refer to files in the package archive, so do not include the
|
||||||
leading slash (the RootDir) when specifying them.
|
leading slash (the RootDir) when specifying them.
|
||||||
|
|
||||||
@@ -143,7 +145,7 @@ Options
|
|||||||
|
|
||||||
*UseDelta*::
|
*UseDelta*::
|
||||||
Download delta files instead of complete packages if possible. Requires
|
Download delta files instead of complete packages if possible. Requires
|
||||||
the xdelta program to be installed.
|
the xdelta3 program to be installed.
|
||||||
|
|
||||||
*TotalDownload*::
|
*TotalDownload*::
|
||||||
When downloading, display the amount downloaded, download rate, ETA,
|
When downloading, display the amount downloaded, download rate, ETA,
|
||||||
|
|||||||
@@ -6,14 +6,8 @@ repo-add(8)
|
|||||||
|
|
||||||
Name
|
Name
|
||||||
----
|
----
|
||||||
////
|
|
||||||
* If we use this below line, the manpage name comes out all weird. We also
|
|
||||||
* can't use two separate lines, which is quite annoying. *
|
|
||||||
repo-add, repo-remove - package database maintenance utilities
|
|
||||||
////
|
|
||||||
repo-add - package database maintenance utility
|
repo-add - package database maintenance utility
|
||||||
|
|
||||||
|
|
||||||
Synopsis
|
Synopsis
|
||||||
--------
|
--------
|
||||||
repo-add [-q] <path-to-db> <package1> [<package2> ...]
|
repo-add [-q] <path-to-db> <package1> [<package2> ...]
|
||||||
|
|||||||
@@ -20,9 +20,10 @@ edit = sed \
|
|||||||
-e 's|@ROOTDIR[@]|$(ROOTDIR)|g'
|
-e 's|@ROOTDIR[@]|$(ROOTDIR)|g'
|
||||||
|
|
||||||
$(dist_sysconf_DATA): Makefile
|
$(dist_sysconf_DATA): Makefile
|
||||||
rm -f $@ $@.tmp
|
@echo ' ' GEN $@;
|
||||||
$(edit) `test -f ./$@.in || echo $(srcdir)/`$@.in >$@.tmp
|
@rm -f $@ $@.tmp
|
||||||
mv $@.tmp $@
|
@$(edit) `test -f ./$@.in || echo $(srcdir)/`$@.in >$@.tmp
|
||||||
|
@mv $@.tmp $@
|
||||||
|
|
||||||
makepkg.conf: $(srcdir)/makepkg.conf.in
|
makepkg.conf: $(srcdir)/makepkg.conf.in
|
||||||
pacman.conf: $(srcdir)/pacman.conf.in
|
pacman.conf: $(srcdir)/pacman.conf.in
|
||||||
|
|||||||
@@ -31,6 +31,7 @@ CHOST="@CHOST@"
|
|||||||
# -mtune optimizes for an architecture, but builds for whole processor family
|
# -mtune optimizes for an architecture, but builds for whole processor family
|
||||||
CFLAGS="@CARCHFLAGS@-mtune=generic -O2 -pipe"
|
CFLAGS="@CARCHFLAGS@-mtune=generic -O2 -pipe"
|
||||||
CXXFLAGS="@CARCHFLAGS@-mtune=generic -O2 -pipe"
|
CXXFLAGS="@CARCHFLAGS@-mtune=generic -O2 -pipe"
|
||||||
|
#LDFLAGS=""
|
||||||
#-- Make Flags: change this for DistCC/SMP systems
|
#-- Make Flags: change this for DistCC/SMP systems
|
||||||
#MAKEFLAGS="-j2"
|
#MAKEFLAGS="-j2"
|
||||||
|
|
||||||
@@ -38,16 +39,15 @@ CXXFLAGS="@CARCHFLAGS@-mtune=generic -O2 -pipe"
|
|||||||
# BUILD ENVIRONMENT
|
# BUILD ENVIRONMENT
|
||||||
#########################################################################
|
#########################################################################
|
||||||
#
|
#
|
||||||
# Defaults: BUILDENV=(fakeroot !distcc color !ccache !xdelta)
|
# Defaults: BUILDENV=(fakeroot !distcc color !ccache)
|
||||||
# A negated environment option will do the opposite of the comments below.
|
# A negated environment option will do the opposite of the comments below.
|
||||||
#
|
#
|
||||||
#-- fakeroot: Allow building packages as a non-root user
|
#-- fakeroot: Allow building packages as a non-root user
|
||||||
#-- distcc: Use the Distributed C/C++/ObjC compiler
|
#-- distcc: Use the Distributed C/C++/ObjC compiler
|
||||||
#-- color: Colorize output messages
|
#-- color: Colorize output messages
|
||||||
#-- ccache: Use ccache to cache compilation
|
#-- ccache: Use ccache to cache compilation
|
||||||
#-- xdelta: Generate delta patch from previous to current package
|
|
||||||
#
|
#
|
||||||
BUILDENV=(fakeroot !distcc color !ccache !xdelta)
|
BUILDENV=(fakeroot !distcc color !ccache)
|
||||||
#
|
#
|
||||||
#-- If using DistCC, your MAKEFLAGS will also need modification. In addition,
|
#-- If using DistCC, your MAKEFLAGS will also need modification. In addition,
|
||||||
#-- specify a space-delimited list of hosts running in the DistCC cluster.
|
#-- specify a space-delimited list of hosts running in the DistCC cluster.
|
||||||
@@ -58,23 +58,28 @@ BUILDENV=(fakeroot !distcc color !ccache !xdelta)
|
|||||||
# These are default values for the options=() settings
|
# These are default values for the options=() settings
|
||||||
#########################################################################
|
#########################################################################
|
||||||
#
|
#
|
||||||
# Default: OPTIONS=(strip docs libtool emptydirs zipman)
|
# Default: OPTIONS=(strip docs libtool emptydirs zipman purge)
|
||||||
# A negated option will do the opposite of the comments below.
|
# A negated option will do the opposite of the comments below.
|
||||||
#
|
#
|
||||||
#-- strip: Strip symbols from binaries/libraries
|
#-- strip: Strip symbols from binaries/libraries in STRIP_DIRS
|
||||||
#-- docs: Save doc and info directories
|
#-- docs: Save doc directories specified by DOC_DIRS
|
||||||
#-- libtool: Leave libtool (.la) files in packages
|
#-- libtool: Leave libtool (.la) files in packages
|
||||||
#-- emptydirs: Leave empty directories in packages
|
#-- emptydirs: Leave empty directories in packages
|
||||||
#-- zipman: Compress manpages with gzip
|
#-- zipman: Compress manual (man and info) pages in MAN_DIRS with gzip
|
||||||
|
#-- purge: Remove files specified by PURGE_TARGETS
|
||||||
#
|
#
|
||||||
OPTIONS=(strip docs libtool emptydirs zipman)
|
OPTIONS=(strip docs libtool emptydirs zipman purge)
|
||||||
|
|
||||||
#-- File integrity checks to use. Valid: md5, sha1, sha256, sha384, sha512
|
#-- File integrity checks to use. Valid: md5, sha1, sha256, sha384, sha512
|
||||||
INTEGRITY_CHECK=(md5)
|
INTEGRITY_CHECK=(md5)
|
||||||
#-- Info and doc directories to remove (if option set correctly above)
|
#-- Manual (man and info) directories to compress (if zipman is specified)
|
||||||
DOC_DIRS=(usr/{,share/}{info,doc,gtk-doc} opt/*/{info,doc,gtk-doc})
|
MAN_DIRS=({usr{,/local}{,/share},opt/*}/{man,info})
|
||||||
#-- Directories to be searched for the strip option (if option set correctly above)
|
#-- Doc directories to remove (if !docs is specified)
|
||||||
|
DOC_DIRS=(usr/{,local/}{,share/}{doc,gtk-doc} opt/*/{doc,gtk-doc})
|
||||||
|
#-- Directories to be searched for the strip option (if strip is specified)
|
||||||
STRIP_DIRS=(bin lib sbin usr/{bin,lib,sbin,local/{bin,lib,sbin}} opt/*/{bin,lib,sbin})
|
STRIP_DIRS=(bin lib sbin usr/{bin,lib,sbin,local/{bin,lib,sbin}} opt/*/{bin,lib,sbin})
|
||||||
|
#-- Files to be removed from all packages (if purge is specified)
|
||||||
|
PURGE_TARGETS=(usr/{,share}/info/dir .packlist *.pod)
|
||||||
|
|
||||||
#########################################################################
|
#########################################################################
|
||||||
# PACKAGE OUTPUT
|
# PACKAGE OUTPUT
|
||||||
@@ -90,16 +95,13 @@ STRIP_DIRS=(bin lib sbin usr/{bin,lib,sbin,local/{bin,lib,sbin}} opt/*/{bin,lib,
|
|||||||
#PACKAGER="John Doe <john@doe.com>"
|
#PACKAGER="John Doe <john@doe.com>"
|
||||||
|
|
||||||
#########################################################################
|
#########################################################################
|
||||||
# BUILDSCRIPT/EXTENSION DEFAULTS
|
# EXTENSION DEFAULTS
|
||||||
#########################################################################
|
#########################################################################
|
||||||
#
|
#
|
||||||
# WARNING: Do NOT modify these variables unless you know what you are
|
# WARNING: Do NOT modify these variables unless you know what you are
|
||||||
# doing.
|
# doing.
|
||||||
#
|
#
|
||||||
BUILDSCRIPT='PKGBUILD'
|
|
||||||
PKGEXT='@PKGEXT@'
|
PKGEXT='@PKGEXT@'
|
||||||
SRCEXT='@SRCEXT@'
|
SRCEXT='@SRCEXT@'
|
||||||
DB_COMPRESSION='gz'
|
|
||||||
DB_CHECKSUMS=(md5)
|
|
||||||
|
|
||||||
# vim: set ft=sh ts=2 sw=2 et:
|
# vim: set ft=sh ts=2 sw=2 et:
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* add.c
|
* add.c
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@archlinux.org>
|
||||||
|
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* 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
|
* it under the terms of the GNU General Public License as published by
|
||||||
@@ -114,7 +115,7 @@ int _alpm_add_prepare(pmtrans_t *trans, pmdb_t *db, alpm_list_t **data)
|
|||||||
|
|
||||||
/* look for unsatisfied dependencies */
|
/* look for unsatisfied dependencies */
|
||||||
_alpm_log(PM_LOG_DEBUG, "looking for unsatisfied dependencies\n");
|
_alpm_log(PM_LOG_DEBUG, "looking for unsatisfied dependencies\n");
|
||||||
lp = alpm_checkdeps(db, 1, NULL, trans->packages);
|
lp = alpm_checkdeps(_alpm_db_get_pkgcache(db), 1, NULL, trans->packages);
|
||||||
if(lp != NULL) {
|
if(lp != NULL) {
|
||||||
if(data) {
|
if(data) {
|
||||||
*data = lp;
|
*data = lp;
|
||||||
@@ -166,7 +167,7 @@ int _alpm_add_prepare(pmtrans_t *trans, pmdb_t *db, alpm_list_t **data)
|
|||||||
EVENT(trans, PM_TRANS_EVT_FILECONFLICTS_START, NULL, NULL);
|
EVENT(trans, PM_TRANS_EVT_FILECONFLICTS_START, NULL, NULL);
|
||||||
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "looking for file conflicts\n");
|
_alpm_log(PM_LOG_DEBUG, "looking for file conflicts\n");
|
||||||
lp = _alpm_db_find_fileconflicts(db, trans, handle->root);
|
lp = _alpm_db_find_fileconflicts(db, trans, trans->packages, NULL);
|
||||||
if(lp != NULL) {
|
if(lp != NULL) {
|
||||||
if(data) {
|
if(data) {
|
||||||
*data = lp;
|
*data = lp;
|
||||||
@@ -292,12 +293,12 @@ static int extract_single_file(struct archive *archive,
|
|||||||
/* the install script goes inside the db */
|
/* the install script goes inside the db */
|
||||||
snprintf(filename, PATH_MAX, "%s%s-%s/install", db->path,
|
snprintf(filename, PATH_MAX, "%s%s-%s/install", db->path,
|
||||||
newpkg->name, newpkg->version);
|
newpkg->name, newpkg->version);
|
||||||
archive_entry_set_mode(entry, 0644);
|
archive_entry_set_perm(entry, 0644);
|
||||||
} else if(strcmp(entryname, ".CHANGELOG") == 0) {
|
} else if(strcmp(entryname, ".CHANGELOG") == 0) {
|
||||||
/* the changelog goes inside the db */
|
/* the changelog goes inside the db */
|
||||||
snprintf(filename, PATH_MAX, "%s%s-%s/changelog", db->path,
|
snprintf(filename, PATH_MAX, "%s%s-%s/changelog", db->path,
|
||||||
newpkg->name, newpkg->version);
|
newpkg->name, newpkg->version);
|
||||||
archive_entry_set_mode(entry, 0644);
|
archive_entry_set_perm(entry, 0644);
|
||||||
} else if(*entryname == '.') {
|
} else if(*entryname == '.') {
|
||||||
/* for now, ignore all files starting with '.' that haven't
|
/* for now, ignore all files starting with '.' that haven't
|
||||||
* already been handled (for future possibilities) */
|
* already been handled (for future possibilities) */
|
||||||
@@ -352,28 +353,30 @@ static int extract_single_file(struct archive *archive,
|
|||||||
if(_alpm_lstat(filename, &lsbuf) != 0 || stat(filename, &sbuf) != 0) {
|
if(_alpm_lstat(filename, &lsbuf) != 0 || stat(filename, &sbuf) != 0) {
|
||||||
/* cases 1,2,3: couldn't stat an existing file, skip all backup checks */
|
/* cases 1,2,3: couldn't stat an existing file, skip all backup checks */
|
||||||
} else {
|
} else {
|
||||||
if(S_ISDIR(lsbuf.st_mode) && S_ISDIR(entrymode)) {
|
if(S_ISDIR(lsbuf.st_mode)) {
|
||||||
/* case 12: existing dir, ignore it */
|
if(S_ISDIR(entrymode)) {
|
||||||
if(lsbuf.st_mode != entrymode) {
|
/* case 12: existing dir, ignore it */
|
||||||
/* if filesystem perms are different than pkg perms, warn user */
|
if(lsbuf.st_mode != entrymode) {
|
||||||
int mask = 07777;
|
/* if filesystem perms are different than pkg perms, warn user */
|
||||||
_alpm_log(PM_LOG_WARNING, _("directory permissions differ on %s\n"
|
int mask = 07777;
|
||||||
"filesystem: %o package: %o\n"), entryname, lsbuf.st_mode & mask,
|
_alpm_log(PM_LOG_WARNING, _("directory permissions differ on %s\n"
|
||||||
entrymode & mask);
|
"filesystem: %o package: %o\n"), entryname, lsbuf.st_mode & mask,
|
||||||
alpm_logaction("warning: directory permissions differ on %s\n"
|
entrymode & mask);
|
||||||
|
alpm_logaction("warning: directory permissions differ on %s\n"
|
||||||
"filesystem: %o package: %o\n", entryname, lsbuf.st_mode & mask,
|
"filesystem: %o package: %o\n", entryname, lsbuf.st_mode & mask,
|
||||||
entrymode & mask);
|
entrymode & mask);
|
||||||
|
}
|
||||||
|
_alpm_log(PM_LOG_DEBUG, "extract: skipping dir extraction of %s\n",
|
||||||
|
entryname);
|
||||||
|
archive_read_data_skip(archive);
|
||||||
|
return(0);
|
||||||
|
} else {
|
||||||
|
/* case 10/11: trying to overwrite dir with file/symlink, don't allow it */
|
||||||
|
_alpm_log(PM_LOG_ERROR, _("extract: not overwriting dir with file %s\n"),
|
||||||
|
entryname);
|
||||||
|
archive_read_data_skip(archive);
|
||||||
|
return(1);
|
||||||
}
|
}
|
||||||
_alpm_log(PM_LOG_DEBUG, "extract: skipping dir extraction of %s\n",
|
|
||||||
entryname);
|
|
||||||
archive_read_data_skip(archive);
|
|
||||||
return(0);
|
|
||||||
} else if(S_ISDIR(lsbuf.st_mode) && S_ISLNK(entrymode)) {
|
|
||||||
/* case 11: existing dir, symlink in package, ignore it */
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "extract: skipping symlink extraction of %s\n",
|
|
||||||
entryname);
|
|
||||||
archive_read_data_skip(archive);
|
|
||||||
return(0);
|
|
||||||
} else if(S_ISLNK(lsbuf.st_mode) && S_ISDIR(entrymode)) {
|
} else if(S_ISLNK(lsbuf.st_mode) && S_ISDIR(entrymode)) {
|
||||||
/* case 9: existing symlink, dir in package */
|
/* case 9: existing symlink, dir in package */
|
||||||
if(S_ISDIR(sbuf.st_mode)) {
|
if(S_ISDIR(sbuf.st_mode)) {
|
||||||
@@ -389,12 +392,6 @@ static int extract_single_file(struct archive *archive,
|
|||||||
archive_read_data_skip(archive);
|
archive_read_data_skip(archive);
|
||||||
return(1);
|
return(1);
|
||||||
}
|
}
|
||||||
} else if(S_ISDIR(lsbuf.st_mode) && S_ISREG(entrymode)) {
|
|
||||||
/* case 10: trying to overwrite dir tree with file, don't allow it */
|
|
||||||
_alpm_log(PM_LOG_ERROR, _("extract: not overwriting dir with file %s\n"),
|
|
||||||
entryname);
|
|
||||||
archive_read_data_skip(archive);
|
|
||||||
return(1);
|
|
||||||
} else if(S_ISREG(lsbuf.st_mode) && S_ISDIR(entrymode)) {
|
} else if(S_ISREG(lsbuf.st_mode) && S_ISDIR(entrymode)) {
|
||||||
/* case 6: trying to overwrite file with dir */
|
/* case 6: trying to overwrite file with dir */
|
||||||
_alpm_log(PM_LOG_DEBUG, "extract: overwriting file with dir %s\n",
|
_alpm_log(PM_LOG_DEBUG, "extract: overwriting file with dir %s\n",
|
||||||
@@ -456,8 +453,8 @@ static int extract_single_file(struct archive *archive,
|
|||||||
return(1);
|
return(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
hash_local = alpm_get_md5sum(filename);
|
hash_local = alpm_compute_md5sum(filename);
|
||||||
hash_pkg = alpm_get_md5sum(checkfile);
|
hash_pkg = alpm_compute_md5sum(checkfile);
|
||||||
|
|
||||||
/* append the new md5 hash to it's respective entry
|
/* append the new md5 hash to it's respective entry
|
||||||
* in newpkg's backup (it will be the new orginal) */
|
* in newpkg's backup (it will be the new orginal) */
|
||||||
@@ -485,9 +482,9 @@ static int extract_single_file(struct archive *archive,
|
|||||||
_alpm_log(PM_LOG_DEBUG, "original: %s\n", hash_orig);
|
_alpm_log(PM_LOG_DEBUG, "original: %s\n", hash_orig);
|
||||||
|
|
||||||
if(!oldpkg) {
|
if(!oldpkg) {
|
||||||
/* looks like we have a local file that has a different hash as the
|
|
||||||
* file in the package, move it to a .pacorig */
|
|
||||||
if(strcmp(hash_local, hash_pkg) != 0) {
|
if(strcmp(hash_local, hash_pkg) != 0) {
|
||||||
|
/* looks like we have a local file that has a different hash as the
|
||||||
|
* file in the package, move it to a .pacorig */
|
||||||
char newpath[PATH_MAX];
|
char newpath[PATH_MAX];
|
||||||
snprintf(newpath, PATH_MAX, "%s.pacorig", filename);
|
snprintf(newpath, PATH_MAX, "%s.pacorig", filename);
|
||||||
|
|
||||||
@@ -511,6 +508,9 @@ static int extract_single_file(struct archive *archive,
|
|||||||
alpm_logaction("warning: %s saved as %s\n", filename, newpath);
|
alpm_logaction("warning: %s saved as %s\n", filename, newpath);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
/* local file is identical to pkg one, so just remove pkg one */
|
||||||
|
unlink(checkfile);
|
||||||
}
|
}
|
||||||
} else if(hash_orig) {
|
} else if(hash_orig) {
|
||||||
/* the fun part */
|
/* the fun part */
|
||||||
@@ -618,7 +618,7 @@ static int extract_single_file(struct archive *archive,
|
|||||||
}
|
}
|
||||||
_alpm_log(PM_LOG_DEBUG, "appending backup entry for %s\n", filename);
|
_alpm_log(PM_LOG_DEBUG, "appending backup entry for %s\n", filename);
|
||||||
|
|
||||||
hash = alpm_get_md5sum(filename);
|
hash = alpm_compute_md5sum(filename);
|
||||||
MALLOC(backup, backup_len, RET_ERR(PM_ERR_MEMORY, -1));
|
MALLOC(backup, backup_len, RET_ERR(PM_ERR_MEMORY, -1));
|
||||||
|
|
||||||
sprintf(backup, "%s\t%s", oldbackup, hash);
|
sprintf(backup, "%s\t%s", oldbackup, hash);
|
||||||
@@ -650,17 +650,18 @@ static int commit_single_pkg(pmpkg_t *newpkg, int pkg_current, int pkg_count,
|
|||||||
if(local) {
|
if(local) {
|
||||||
is_upgrade = 1;
|
is_upgrade = 1;
|
||||||
|
|
||||||
EVENT(trans, PM_TRANS_EVT_UPGRADE_START, newpkg, NULL);
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "upgrading package %s-%s\n",
|
|
||||||
newpkg->name, newpkg->version);
|
|
||||||
|
|
||||||
/* we'll need to save some record for backup checks later */
|
/* we'll need to save some record for backup checks later */
|
||||||
oldpkg = _alpm_pkg_dup(local);
|
oldpkg = _alpm_pkg_dup(local);
|
||||||
/* make sure all infos are loaded because the database entry
|
/* make sure all infos are loaded because the database entry
|
||||||
* will be removed soon */
|
* will be removed soon */
|
||||||
_alpm_db_read(oldpkg->origin_data.db, oldpkg, INFRQ_ALL);
|
_alpm_db_read(oldpkg->origin_data.db, oldpkg, INFRQ_ALL);
|
||||||
|
|
||||||
|
EVENT(trans, PM_TRANS_EVT_UPGRADE_START, newpkg, oldpkg);
|
||||||
|
_alpm_log(PM_LOG_DEBUG, "upgrading package %s-%s\n",
|
||||||
|
newpkg->name, newpkg->version);
|
||||||
|
|
||||||
/* copy over the install reason */
|
/* copy over the install reason */
|
||||||
newpkg->reason = alpm_pkg_get_reason(local);
|
newpkg->reason = alpm_pkg_get_reason(oldpkg);
|
||||||
|
|
||||||
/* pre_upgrade scriptlet */
|
/* pre_upgrade scriptlet */
|
||||||
if(alpm_pkg_has_scriptlet(newpkg) && !(trans->flags & PM_TRANS_FLAG_NOSCRIPTLET)) {
|
if(alpm_pkg_has_scriptlet(newpkg) && !(trans->flags & PM_TRANS_FLAG_NOSCRIPTLET)) {
|
||||||
@@ -886,7 +887,6 @@ int _alpm_add_commit(pmtrans_t *trans, pmdb_t *db)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* run ldconfig if it exists */
|
/* run ldconfig if it exists */
|
||||||
_alpm_log(PM_LOG_DEBUG, "running \"ldconfig -r %s\"\n", handle->root);
|
|
||||||
_alpm_ldconfig(handle->root);
|
_alpm_ldconfig(handle->root);
|
||||||
|
|
||||||
return(0);
|
return(0);
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* add.h
|
* add.h
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@archlinux.org>
|
||||||
|
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* 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
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* alpm.c
|
* alpm.c
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@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 Aurelien Foret <orelien@chez.com>
|
||||||
* Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
|
* Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
|
||||||
* Copyright (c) 2005, 2006 by Miklos Vajna <vmiklos@frugalware.org>
|
* Copyright (c) 2005, 2006 by Miklos Vajna <vmiklos@frugalware.org>
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* alpm.h
|
* alpm.h
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2008 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@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 Aurelien Foret <orelien@chez.com>
|
||||||
* Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
|
* Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
|
||||||
* Copyright (c) 2005, 2006 by Miklos Vajna <vmiklos@frugalware.org>
|
* Copyright (c) 2005, 2006 by Miklos Vajna <vmiklos@frugalware.org>
|
||||||
@@ -47,7 +48,6 @@ typedef struct __pmpkg_t pmpkg_t;
|
|||||||
typedef struct __pmdelta_t pmdelta_t;
|
typedef struct __pmdelta_t pmdelta_t;
|
||||||
typedef struct __pmgrp_t pmgrp_t;
|
typedef struct __pmgrp_t pmgrp_t;
|
||||||
typedef struct __pmtrans_t pmtrans_t;
|
typedef struct __pmtrans_t pmtrans_t;
|
||||||
typedef struct __pmsyncpkg_t pmsyncpkg_t;
|
|
||||||
typedef struct __pmdepend_t pmdepend_t;
|
typedef struct __pmdepend_t pmdepend_t;
|
||||||
typedef struct __pmdepmissing_t pmdepmissing_t;
|
typedef struct __pmdepmissing_t pmdepmissing_t;
|
||||||
typedef struct __pmconflict_t pmconflict_t;
|
typedef struct __pmconflict_t pmconflict_t;
|
||||||
@@ -83,6 +83,17 @@ int alpm_logaction(char *fmt, ...);
|
|||||||
typedef void (*alpm_cb_download)(const char *filename,
|
typedef void (*alpm_cb_download)(const char *filename,
|
||||||
off_t xfered, off_t total);
|
off_t xfered, off_t total);
|
||||||
typedef void (*alpm_cb_totaldl)(off_t total);
|
typedef void (*alpm_cb_totaldl)(off_t total);
|
||||||
|
/** A callback for downloading files
|
||||||
|
* @param url the URL of the file to be downloaded
|
||||||
|
* @param localpath the directory to which the file should be downloaded
|
||||||
|
* @param mtimeold the modification time of the file previously downloaded
|
||||||
|
* @param mtimenew the modification time of the newly downloaded file.
|
||||||
|
* This should be set by the callback.
|
||||||
|
* @return 0 on success, 1 if the modification times are identical, -1 on
|
||||||
|
* error.
|
||||||
|
*/
|
||||||
|
typedef int (*alpm_cb_fetch)(const char *url, const char *localpath,
|
||||||
|
time_t mtimeold, time_t *mtimenew);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Options
|
* Options
|
||||||
@@ -94,6 +105,9 @@ void alpm_option_set_logcb(alpm_cb_log cb);
|
|||||||
alpm_cb_download alpm_option_get_dlcb();
|
alpm_cb_download alpm_option_get_dlcb();
|
||||||
void alpm_option_set_dlcb(alpm_cb_download cb);
|
void alpm_option_set_dlcb(alpm_cb_download cb);
|
||||||
|
|
||||||
|
alpm_cb_fetch alpm_option_get_fetchcb();
|
||||||
|
void alpm_option_set_fetchcb(alpm_cb_fetch cb);
|
||||||
|
|
||||||
alpm_cb_totaldl alpm_option_get_totaldlcb();
|
alpm_cb_totaldl alpm_option_get_totaldlcb();
|
||||||
void alpm_option_set_totaldlcb(alpm_cb_totaldl cb);
|
void alpm_option_set_totaldlcb(alpm_cb_totaldl cb);
|
||||||
|
|
||||||
@@ -132,19 +146,11 @@ void alpm_option_add_ignorepkg(const char *pkg);
|
|||||||
void alpm_option_set_ignorepkgs(alpm_list_t *ignorepkgs);
|
void alpm_option_set_ignorepkgs(alpm_list_t *ignorepkgs);
|
||||||
int alpm_option_remove_ignorepkg(const char *pkg);
|
int alpm_option_remove_ignorepkg(const char *pkg);
|
||||||
|
|
||||||
alpm_list_t *alpm_option_get_holdpkgs();
|
|
||||||
void alpm_option_add_holdpkg(const char *pkg);
|
|
||||||
void alpm_option_set_holdpkgs(alpm_list_t *holdpkgs);
|
|
||||||
int alpm_option_remove_holdpkg(const char *pkg);
|
|
||||||
|
|
||||||
alpm_list_t *alpm_option_get_ignoregrps();
|
alpm_list_t *alpm_option_get_ignoregrps();
|
||||||
void alpm_option_add_ignoregrp(const char *grp);
|
void alpm_option_add_ignoregrp(const char *grp);
|
||||||
void alpm_option_set_ignoregrps(alpm_list_t *ignoregrps);
|
void alpm_option_set_ignoregrps(alpm_list_t *ignoregrps);
|
||||||
int alpm_option_remove_ignoregrp(const char *grp);
|
int alpm_option_remove_ignoregrp(const char *grp);
|
||||||
|
|
||||||
const char *alpm_option_get_xfercommand();
|
|
||||||
void alpm_option_set_xfercommand(const char *cmd);
|
|
||||||
|
|
||||||
unsigned short alpm_option_get_nopassiveftp();
|
unsigned short alpm_option_get_nopassiveftp();
|
||||||
void alpm_option_set_nopassiveftp(unsigned short nopasv);
|
void alpm_option_set_nopassiveftp(unsigned short nopasv);
|
||||||
void alpm_option_set_usedelta(unsigned short usedelta);
|
void alpm_option_set_usedelta(unsigned short usedelta);
|
||||||
@@ -170,10 +176,10 @@ int alpm_db_setserver(pmdb_t *db, const char *url);
|
|||||||
int alpm_db_update(int level, pmdb_t *db);
|
int alpm_db_update(int level, pmdb_t *db);
|
||||||
|
|
||||||
pmpkg_t *alpm_db_get_pkg(pmdb_t *db, const char *name);
|
pmpkg_t *alpm_db_get_pkg(pmdb_t *db, const char *name);
|
||||||
alpm_list_t *alpm_db_getpkgcache(pmdb_t *db);
|
alpm_list_t *alpm_db_get_pkgcache(pmdb_t *db);
|
||||||
|
|
||||||
pmgrp_t *alpm_db_readgrp(pmdb_t *db, const char *name);
|
pmgrp_t *alpm_db_readgrp(pmdb_t *db, const char *name);
|
||||||
alpm_list_t *alpm_db_getgrpcache(pmdb_t *db);
|
alpm_list_t *alpm_db_get_grpcache(pmdb_t *db);
|
||||||
alpm_list_t *alpm_db_search(pmdb_t *db, const alpm_list_t* needles);
|
alpm_list_t *alpm_db_search(pmdb_t *db, const alpm_list_t* needles);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -218,6 +224,8 @@ alpm_list_t *alpm_pkg_get_deltas(pmpkg_t *pkg);
|
|||||||
alpm_list_t *alpm_pkg_get_replaces(pmpkg_t *pkg);
|
alpm_list_t *alpm_pkg_get_replaces(pmpkg_t *pkg);
|
||||||
alpm_list_t *alpm_pkg_get_files(pmpkg_t *pkg);
|
alpm_list_t *alpm_pkg_get_files(pmpkg_t *pkg);
|
||||||
alpm_list_t *alpm_pkg_get_backup(pmpkg_t *pkg);
|
alpm_list_t *alpm_pkg_get_backup(pmpkg_t *pkg);
|
||||||
|
alpm_list_t *alpm_pkg_get_removes(pmpkg_t *pkg);
|
||||||
|
pmdb_t *alpm_pkg_get_db(pmpkg_t *pkg);
|
||||||
void *alpm_pkg_changelog_open(pmpkg_t *pkg);
|
void *alpm_pkg_changelog_open(pmpkg_t *pkg);
|
||||||
size_t alpm_pkg_changelog_read(void *ptr, size_t size,
|
size_t alpm_pkg_changelog_read(void *ptr, size_t size,
|
||||||
const pmpkg_t *pkg, const void *fp);
|
const pmpkg_t *pkg, const void *fp);
|
||||||
@@ -233,9 +241,7 @@ off_t alpm_pkg_download_size(pmpkg_t *newpkg);
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
const char *alpm_delta_get_from(pmdelta_t *delta);
|
const char *alpm_delta_get_from(pmdelta_t *delta);
|
||||||
const char *alpm_delta_get_from_md5sum(pmdelta_t *delta);
|
|
||||||
const char *alpm_delta_get_to(pmdelta_t *delta);
|
const char *alpm_delta_get_to(pmdelta_t *delta);
|
||||||
const char *alpm_delta_get_to_md5sum(pmdelta_t *delta);
|
|
||||||
const char *alpm_delta_get_filename(pmdelta_t *delta);
|
const char *alpm_delta_get_filename(pmdelta_t *delta);
|
||||||
const char *alpm_delta_get_md5sum(pmdelta_t *delta);
|
const char *alpm_delta_get_md5sum(pmdelta_t *delta);
|
||||||
off_t alpm_delta_get_size(pmdelta_t *delta);
|
off_t alpm_delta_get_size(pmdelta_t *delta);
|
||||||
@@ -250,11 +256,7 @@ alpm_list_t *alpm_grp_get_pkgs(const pmgrp_t *grp);
|
|||||||
* Sync
|
* Sync
|
||||||
*/
|
*/
|
||||||
|
|
||||||
pmpkg_t *alpm_sync_get_pkg(const pmsyncpkg_t *sync);
|
|
||||||
alpm_list_t *alpm_sync_get_removes(const pmsyncpkg_t *sync);
|
|
||||||
pmpkg_t *alpm_sync_newversion(pmpkg_t *pkg, alpm_list_t *dbs_sync);
|
pmpkg_t *alpm_sync_newversion(pmpkg_t *pkg, alpm_list_t *dbs_sync);
|
||||||
int alpm_sync_sysupgrade(pmdb_t *db_local,
|
|
||||||
alpm_list_t *dbs_sync, alpm_list_t **syncpkgs);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Transactions
|
* Transactions
|
||||||
@@ -282,11 +284,12 @@ typedef enum _pmtransflag_t {
|
|||||||
PM_TRANS_FLAG_DOWNLOADONLY = 0x200,
|
PM_TRANS_FLAG_DOWNLOADONLY = 0x200,
|
||||||
PM_TRANS_FLAG_NOSCRIPTLET = 0x400,
|
PM_TRANS_FLAG_NOSCRIPTLET = 0x400,
|
||||||
PM_TRANS_FLAG_NOCONFLICTS = 0x800,
|
PM_TRANS_FLAG_NOCONFLICTS = 0x800,
|
||||||
PM_TRANS_FLAG_PRINTURIS = 0x1000,
|
/* 0x1000 flag can go here */
|
||||||
PM_TRANS_FLAG_NEEDED = 0x2000,
|
PM_TRANS_FLAG_NEEDED = 0x2000,
|
||||||
PM_TRANS_FLAG_ALLEXPLICIT = 0x4000,
|
PM_TRANS_FLAG_ALLEXPLICIT = 0x4000,
|
||||||
PM_TRANS_FLAG_UNNEEDED = 0x8000,
|
PM_TRANS_FLAG_UNNEEDED = 0x8000,
|
||||||
PM_TRANS_FLAG_RECURSEALL = 0x10000
|
PM_TRANS_FLAG_RECURSEALL = 0x10000,
|
||||||
|
PM_TRANS_FLAG_NOLOCK = 0x20000
|
||||||
} pmtransflag_t;
|
} pmtransflag_t;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -364,10 +367,6 @@ typedef enum _pmtransevt_t {
|
|||||||
* A line of text is passed to the callback.
|
* A line of text is passed to the callback.
|
||||||
*/
|
*/
|
||||||
PM_TRANS_EVT_SCRIPTLET_INFO,
|
PM_TRANS_EVT_SCRIPTLET_INFO,
|
||||||
/** Print URI.
|
|
||||||
* The database's URI and the package's filename are passed to the callback.
|
|
||||||
*/
|
|
||||||
PM_TRANS_EVT_PRINTURI,
|
|
||||||
/** Files will be downloaded from a repository.
|
/** Files will be downloaded from a repository.
|
||||||
* The repository's tree name is passed to the callback.
|
* The repository's tree name is passed to the callback.
|
||||||
*/
|
*/
|
||||||
@@ -382,8 +381,7 @@ typedef enum _pmtransconv_t {
|
|||||||
PM_TRANS_CONV_CONFLICT_PKG = 0x04,
|
PM_TRANS_CONV_CONFLICT_PKG = 0x04,
|
||||||
PM_TRANS_CONV_CORRUPTED_PKG = 0x08,
|
PM_TRANS_CONV_CORRUPTED_PKG = 0x08,
|
||||||
PM_TRANS_CONV_LOCAL_NEWER = 0x10,
|
PM_TRANS_CONV_LOCAL_NEWER = 0x10,
|
||||||
/* 0x20 flag can go here */
|
PM_TRANS_CONV_REMOVE_PKGS = 0x20,
|
||||||
PM_TRANS_CONV_REMOVE_HOLDPKG = 0x40
|
|
||||||
} pmtransconv_t;
|
} pmtransconv_t;
|
||||||
|
|
||||||
/* Transaction Progress */
|
/* Transaction Progress */
|
||||||
@@ -410,7 +408,7 @@ alpm_list_t * alpm_trans_get_pkgs();
|
|||||||
int alpm_trans_init(pmtranstype_t type, pmtransflag_t flags,
|
int alpm_trans_init(pmtranstype_t type, pmtransflag_t flags,
|
||||||
alpm_trans_cb_event cb_event, alpm_trans_cb_conv conv,
|
alpm_trans_cb_event cb_event, alpm_trans_cb_conv conv,
|
||||||
alpm_trans_cb_progress cb_progress);
|
alpm_trans_cb_progress cb_progress);
|
||||||
int alpm_trans_sysupgrade(void);
|
int alpm_trans_sysupgrade(int enable_downgrade);
|
||||||
int alpm_trans_addtarget(char *target);
|
int alpm_trans_addtarget(char *target);
|
||||||
int alpm_trans_prepare(alpm_list_t **data);
|
int alpm_trans_prepare(alpm_list_t **data);
|
||||||
int alpm_trans_commit(alpm_list_t **data);
|
int alpm_trans_commit(alpm_list_t **data);
|
||||||
@@ -431,7 +429,7 @@ typedef enum _pmdepmod_t {
|
|||||||
} pmdepmod_t;
|
} pmdepmod_t;
|
||||||
|
|
||||||
int alpm_depcmp(pmpkg_t *pkg, pmdepend_t *dep);
|
int alpm_depcmp(pmpkg_t *pkg, pmdepend_t *dep);
|
||||||
alpm_list_t *alpm_checkdeps(pmdb_t *db, int reversedeps,
|
alpm_list_t *alpm_checkdeps(alpm_list_t *pkglist, int reversedeps,
|
||||||
alpm_list_t *remove, alpm_list_t *upgrade);
|
alpm_list_t *remove, alpm_list_t *upgrade);
|
||||||
alpm_list_t *alpm_deptest(pmdb_t *db, alpm_list_t *targets);
|
alpm_list_t *alpm_deptest(pmdb_t *db, alpm_list_t *targets);
|
||||||
|
|
||||||
@@ -439,7 +437,7 @@ const char *alpm_miss_get_target(const pmdepmissing_t *miss);
|
|||||||
pmdepend_t *alpm_miss_get_dep(pmdepmissing_t *miss);
|
pmdepend_t *alpm_miss_get_dep(pmdepmissing_t *miss);
|
||||||
const char *alpm_miss_get_causingpkg(const pmdepmissing_t *miss);
|
const char *alpm_miss_get_causingpkg(const pmdepmissing_t *miss);
|
||||||
|
|
||||||
alpm_list_t *alpm_checkdbconflicts(pmdb_t *db_local);
|
alpm_list_t *alpm_checkconflicts(alpm_list_t *pkglist);
|
||||||
|
|
||||||
const char *alpm_conflict_get_package1(pmconflict_t *conflict);
|
const char *alpm_conflict_get_package1(pmconflict_t *conflict);
|
||||||
const char *alpm_conflict_get_package2(pmconflict_t *conflict);
|
const char *alpm_conflict_get_package2(pmconflict_t *conflict);
|
||||||
@@ -447,7 +445,7 @@ const char *alpm_conflict_get_package2(pmconflict_t *conflict);
|
|||||||
pmdepmod_t alpm_dep_get_mod(const pmdepend_t *dep);
|
pmdepmod_t alpm_dep_get_mod(const pmdepend_t *dep);
|
||||||
const char *alpm_dep_get_name(const pmdepend_t *dep);
|
const char *alpm_dep_get_name(const pmdepend_t *dep);
|
||||||
const char *alpm_dep_get_version(const pmdepend_t *dep);
|
const char *alpm_dep_get_version(const pmdepend_t *dep);
|
||||||
char *alpm_dep_get_string(const pmdepend_t *dep);
|
char *alpm_dep_compute_string(const pmdepend_t *dep);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* File conflicts
|
* File conflicts
|
||||||
@@ -468,7 +466,7 @@ const char *alpm_fileconflict_get_ctarget(pmfileconflict_t *conflict);
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/* checksums */
|
/* checksums */
|
||||||
char *alpm_get_md5sum(const char *name);
|
char *alpm_compute_md5sum(const char *name);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Errors
|
* Errors
|
||||||
@@ -494,6 +492,7 @@ enum _pmerrno_t {
|
|||||||
PM_ERR_DB_REMOVE,
|
PM_ERR_DB_REMOVE,
|
||||||
/* Servers */
|
/* Servers */
|
||||||
PM_ERR_SERVER_BAD_URL,
|
PM_ERR_SERVER_BAD_URL,
|
||||||
|
PM_ERR_SERVER_NONE,
|
||||||
/* Transactions */
|
/* Transactions */
|
||||||
PM_ERR_TRANS_NOT_NULL,
|
PM_ERR_TRANS_NOT_NULL,
|
||||||
PM_ERR_TRANS_NULL,
|
PM_ERR_TRANS_NULL,
|
||||||
@@ -502,36 +501,28 @@ enum _pmerrno_t {
|
|||||||
PM_ERR_TRANS_NOT_PREPARED,
|
PM_ERR_TRANS_NOT_PREPARED,
|
||||||
PM_ERR_TRANS_ABORT,
|
PM_ERR_TRANS_ABORT,
|
||||||
PM_ERR_TRANS_TYPE,
|
PM_ERR_TRANS_TYPE,
|
||||||
PM_ERR_TRANS_COMMITING,
|
PM_ERR_TRANS_NOT_LOCKED,
|
||||||
PM_ERR_TRANS_DOWNLOADING,
|
|
||||||
/* Packages */
|
/* Packages */
|
||||||
PM_ERR_PKG_NOT_FOUND,
|
PM_ERR_PKG_NOT_FOUND,
|
||||||
|
PM_ERR_PKG_IGNORED,
|
||||||
PM_ERR_PKG_INVALID,
|
PM_ERR_PKG_INVALID,
|
||||||
PM_ERR_PKG_OPEN,
|
PM_ERR_PKG_OPEN,
|
||||||
PM_ERR_PKG_LOAD,
|
|
||||||
PM_ERR_PKG_CANT_FRESH,
|
|
||||||
PM_ERR_PKG_CANT_REMOVE,
|
PM_ERR_PKG_CANT_REMOVE,
|
||||||
PM_ERR_PKG_INVALID_NAME,
|
PM_ERR_PKG_INVALID_NAME,
|
||||||
PM_ERR_PKG_REPO_NOT_FOUND,
|
PM_ERR_PKG_REPO_NOT_FOUND,
|
||||||
/* Deltas */
|
/* Deltas */
|
||||||
PM_ERR_DLT_INVALID,
|
PM_ERR_DLT_INVALID,
|
||||||
PM_ERR_DLT_PATCHFAILED,
|
PM_ERR_DLT_PATCHFAILED,
|
||||||
/* Groups */
|
|
||||||
PM_ERR_GRP_NOT_FOUND,
|
|
||||||
/* Dependencies */
|
/* Dependencies */
|
||||||
PM_ERR_UNSATISFIED_DEPS,
|
PM_ERR_UNSATISFIED_DEPS,
|
||||||
PM_ERR_CONFLICTING_DEPS,
|
PM_ERR_CONFLICTING_DEPS,
|
||||||
PM_ERR_FILE_CONFLICTS,
|
PM_ERR_FILE_CONFLICTS,
|
||||||
/* Misc */
|
/* Misc */
|
||||||
PM_ERR_USER_ABORT,
|
|
||||||
PM_ERR_INTERNAL_ERROR,
|
|
||||||
PM_ERR_DB_SYNC,
|
|
||||||
PM_ERR_RETRIEVE,
|
PM_ERR_RETRIEVE,
|
||||||
PM_ERR_PKG_HOLD,
|
|
||||||
PM_ERR_INVALID_REGEX,
|
PM_ERR_INVALID_REGEX,
|
||||||
/* External library errors */
|
/* External library errors */
|
||||||
PM_ERR_LIBARCHIVE,
|
PM_ERR_LIBARCHIVE,
|
||||||
PM_ERR_LIBDOWNLOAD,
|
PM_ERR_LIBFETCH,
|
||||||
PM_ERR_EXTERNAL_DOWNLOAD
|
PM_ERR_EXTERNAL_DOWNLOAD
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* alpm_list.c
|
* alpm_list.c
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2008 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@archlinux.org>
|
||||||
|
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* 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
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* alpm_list.h
|
* alpm_list.h
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@archlinux.org>
|
||||||
|
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* 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
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
* backup.c
|
* backup.c
|
||||||
*
|
*
|
||||||
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@archlinux.org>
|
||||||
* Copyright (c) 2005 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2005 by Judd Vinet <jvinet@zeroflux.org>
|
||||||
* Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
|
* Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
|
||||||
* Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
|
* Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* backup.h
|
* backup.h
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@archlinux.org>
|
||||||
|
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* 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
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
|||||||
@@ -113,7 +113,58 @@ static int setlastupdate(const pmdb_t *db, time_t time)
|
|||||||
return(ret);
|
return(ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int checkdbdir(pmdb_t *db)
|
||||||
|
{
|
||||||
|
struct stat buf;
|
||||||
|
char *path = db->path;
|
||||||
|
|
||||||
|
if(stat(path, &buf) != 0) {
|
||||||
|
_alpm_log(PM_LOG_DEBUG, "database dir '%s' does not exist, creating it\n",
|
||||||
|
path);
|
||||||
|
if(_alpm_makepath(path) != 0) {
|
||||||
|
RET_ERR(PM_ERR_SYSTEM, -1);
|
||||||
|
}
|
||||||
|
} else if(!S_ISDIR(buf.st_mode)) {
|
||||||
|
_alpm_log(PM_LOG_WARNING, "removing bogus database: %s\n", path);
|
||||||
|
if(unlink(path) != 0 || _alpm_makepath(path) != 0) {
|
||||||
|
RET_ERR(PM_ERR_SYSTEM, -1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return(0);
|
||||||
|
}
|
||||||
|
|
||||||
/** Update a package database
|
/** Update a package database
|
||||||
|
*
|
||||||
|
* An update of the package database \a db will be attempted. Unless
|
||||||
|
* \a force is true, the update will only be performed if the remote
|
||||||
|
* database was modified since the last update.
|
||||||
|
*
|
||||||
|
* A transaction is necessary for this operation, in order to obtain a
|
||||||
|
* database lock. During this transaction the front-end will be informed
|
||||||
|
* of the download progress of the database via the download callback.
|
||||||
|
*
|
||||||
|
* Example:
|
||||||
|
* @code
|
||||||
|
* pmdb_t *db;
|
||||||
|
* int result;
|
||||||
|
* db = alpm_list_getdata(alpm_option_get_syncdbs());
|
||||||
|
* if(alpm_trans_init(PM_TRANS_TYPE_SYNC, 0, NULL, NULL, NULL) == 0) {
|
||||||
|
* result = alpm_db_update(0, db);
|
||||||
|
* alpm_trans_release();
|
||||||
|
*
|
||||||
|
* if(result > 0) {
|
||||||
|
* printf("Unable to update database: %s\n", alpm_strerrorlast());
|
||||||
|
* } else if(result < 0) {
|
||||||
|
* printf("Database already up to date\n");
|
||||||
|
* } else {
|
||||||
|
* printf("Database updated\n");
|
||||||
|
* }
|
||||||
|
* }
|
||||||
|
* @endcode
|
||||||
|
*
|
||||||
|
* @ingroup alpm_databases
|
||||||
|
* @note After a successful update, the \link alpm_db_get_pkgcache()
|
||||||
|
* package cache \endlink will be invalidated
|
||||||
* @param force if true, then forces the update, otherwise update only in case
|
* @param force if true, then forces the update, otherwise update only in case
|
||||||
* the database isn't up to date
|
* the database isn't up to date
|
||||||
* @param db pointer to the package database to update
|
* @param db pointer to the package database to update
|
||||||
@@ -122,7 +173,6 @@ static int setlastupdate(const pmdb_t *db, time_t time)
|
|||||||
*/
|
*/
|
||||||
int SYMEXPORT alpm_db_update(int force, pmdb_t *db)
|
int SYMEXPORT alpm_db_update(int force, pmdb_t *db)
|
||||||
{
|
{
|
||||||
alpm_list_t *lp;
|
|
||||||
char *dbfile, *dbfilepath;
|
char *dbfile, *dbfilepath;
|
||||||
time_t newmtime = 0, lastupdate = 0;
|
time_t newmtime = 0, lastupdate = 0;
|
||||||
const char *dbpath;
|
const char *dbpath;
|
||||||
@@ -176,14 +226,9 @@ int SYMEXPORT alpm_db_update(int force, pmdb_t *db)
|
|||||||
return(-1);
|
return(-1);
|
||||||
} else {
|
} else {
|
||||||
/* remove the old dir */
|
/* remove the old dir */
|
||||||
_alpm_log(PM_LOG_DEBUG, "flushing database %s\n", db->path);
|
if(_alpm_rmrf(db->path) != 0) {
|
||||||
for(lp = _alpm_db_get_pkgcache(db); lp; lp = lp->next) {
|
_alpm_log(PM_LOG_ERROR, _("could not remove database %s\n"), db->treename);
|
||||||
pmpkg_t *pkg = lp->data;
|
RET_ERR(PM_ERR_DB_REMOVE, -1);
|
||||||
if(pkg && _alpm_db_remove(db, pkg) == -1) {
|
|
||||||
_alpm_log(PM_LOG_ERROR, _("could not remove database entry %s%s\n"),
|
|
||||||
db->treename, pkg->name);
|
|
||||||
RET_ERR(PM_ERR_DB_REMOVE, -1);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Cache needs to be rebuilt */
|
/* Cache needs to be rebuilt */
|
||||||
@@ -195,6 +240,7 @@ int SYMEXPORT alpm_db_update(int force, pmdb_t *db)
|
|||||||
sprintf(dbfilepath, "%s%s" DBEXT, dbpath, db->treename);
|
sprintf(dbfilepath, "%s%s" DBEXT, dbpath, db->treename);
|
||||||
|
|
||||||
/* uncompress the sync database */
|
/* uncompress the sync database */
|
||||||
|
checkdbdir(db);
|
||||||
ret = _alpm_unpack(dbfilepath, db->path, NULL);
|
ret = _alpm_unpack(dbfilepath, db->path, NULL);
|
||||||
if(ret) {
|
if(ret) {
|
||||||
free(dbfilepath);
|
free(dbfilepath);
|
||||||
@@ -214,36 +260,6 @@ int SYMEXPORT alpm_db_update(int force, pmdb_t *db)
|
|||||||
return(0);
|
return(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
int _alpm_db_open(pmdb_t *db)
|
|
||||||
{
|
|
||||||
ALPM_LOG_FUNC;
|
|
||||||
|
|
||||||
if(db == NULL) {
|
|
||||||
RET_ERR(PM_ERR_DB_NULL, -1);
|
|
||||||
}
|
|
||||||
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "opening database from path '%s'\n", db->path);
|
|
||||||
db->handle = opendir(db->path);
|
|
||||||
if(db->handle == NULL) {
|
|
||||||
RET_ERR(PM_ERR_DB_OPEN, -1);
|
|
||||||
}
|
|
||||||
|
|
||||||
return(0);
|
|
||||||
}
|
|
||||||
|
|
||||||
void _alpm_db_close(pmdb_t *db)
|
|
||||||
{
|
|
||||||
ALPM_LOG_FUNC;
|
|
||||||
|
|
||||||
if(db == NULL) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(db->handle) {
|
|
||||||
closedir(db->handle);
|
|
||||||
db->handle = NULL;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static int splitname(const char *target, pmpkg_t *pkg)
|
static int splitname(const char *target, pmpkg_t *pkg)
|
||||||
{
|
{
|
||||||
@@ -290,13 +306,17 @@ int _alpm_db_populate(pmdb_t *db)
|
|||||||
struct dirent *ent = NULL;
|
struct dirent *ent = NULL;
|
||||||
struct stat sbuf;
|
struct stat sbuf;
|
||||||
char path[PATH_MAX];
|
char path[PATH_MAX];
|
||||||
|
DIR *dbdir;
|
||||||
|
|
||||||
ALPM_LOG_FUNC;
|
ALPM_LOG_FUNC;
|
||||||
|
|
||||||
ASSERT(db != NULL, RET_ERR(PM_ERR_DB_NULL, -1));
|
ASSERT(db != NULL, RET_ERR(PM_ERR_DB_NULL, -1));
|
||||||
|
|
||||||
rewinddir(db->handle);
|
dbdir = opendir(db->path);
|
||||||
while((ent = readdir(db->handle)) != NULL) {
|
if(dbdir == NULL) {
|
||||||
|
return(0);
|
||||||
|
}
|
||||||
|
while((ent = readdir(dbdir)) != NULL) {
|
||||||
const char *name = ent->d_name;
|
const char *name = ent->d_name;
|
||||||
pmpkg_t *pkg;
|
pmpkg_t *pkg;
|
||||||
|
|
||||||
@@ -311,6 +331,7 @@ int _alpm_db_populate(pmdb_t *db)
|
|||||||
|
|
||||||
pkg = _alpm_pkg_new();
|
pkg = _alpm_pkg_new();
|
||||||
if(pkg == NULL) {
|
if(pkg == NULL) {
|
||||||
|
closedir(dbdir);
|
||||||
return(-1);
|
return(-1);
|
||||||
}
|
}
|
||||||
/* split the db entry name */
|
/* split the db entry name */
|
||||||
@@ -336,6 +357,7 @@ int _alpm_db_populate(pmdb_t *db)
|
|||||||
count++;
|
count++;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
closedir(dbdir);
|
||||||
db->pkgcache = alpm_list_msort(db->pkgcache, count, _alpm_pkg_cmp);
|
db->pkgcache = alpm_list_msort(db->pkgcache, count, _alpm_pkg_cmp);
|
||||||
return(count);
|
return(count);
|
||||||
}
|
}
|
||||||
@@ -467,7 +489,7 @@ int _alpm_db_read(pmdb_t *db, pmpkg_t *info, pmdbinfrq_t inforeq)
|
|||||||
|
|
||||||
char first = tolower(line[0]);
|
char first = tolower(line[0]);
|
||||||
if(first > 'a' && first < 'z') {
|
if(first > 'a' && first < 'z') {
|
||||||
struct tm tmp_tm = {0}; //initialize to null incase of failure
|
struct tm tmp_tm = {0}; /* initialize to null in case of failure */
|
||||||
setlocale(LC_TIME, "C");
|
setlocale(LC_TIME, "C");
|
||||||
strptime(line, "%a %b %e %H:%M:%S %Y", &tmp_tm);
|
strptime(line, "%a %b %e %H:%M:%S %Y", &tmp_tm);
|
||||||
info->builddate = mktime(&tmp_tm);
|
info->builddate = mktime(&tmp_tm);
|
||||||
@@ -483,7 +505,7 @@ int _alpm_db_read(pmdb_t *db, pmpkg_t *info, pmdbinfrq_t inforeq)
|
|||||||
|
|
||||||
char first = tolower(line[0]);
|
char first = tolower(line[0]);
|
||||||
if(first > 'a' && first < 'z') {
|
if(first > 'a' && first < 'z') {
|
||||||
struct tm tmp_tm = {0}; //initialize to null incase of failure
|
struct tm tmp_tm = {0}; /* initialize to null in case of failure */
|
||||||
setlocale(LC_TIME, "C");
|
setlocale(LC_TIME, "C");
|
||||||
strptime(line, "%a %b %e %H:%M:%S %Y", &tmp_tm);
|
strptime(line, "%a %b %e %H:%M:%S %Y", &tmp_tm);
|
||||||
info->installdate = mktime(&tmp_tm);
|
info->installdate = mktime(&tmp_tm);
|
||||||
@@ -658,12 +680,16 @@ int _alpm_db_prepare(pmdb_t *db, pmpkg_t *info)
|
|||||||
int retval = 0;
|
int retval = 0;
|
||||||
char *pkgpath = NULL;
|
char *pkgpath = NULL;
|
||||||
|
|
||||||
oldmask = umask(0000);
|
if(checkdbdir(db) != 0) {
|
||||||
|
return(-1);
|
||||||
|
}
|
||||||
|
|
||||||
|
oldmask = umask(0000);
|
||||||
pkgpath = get_pkgpath(db, info);
|
pkgpath = get_pkgpath(db, info);
|
||||||
|
|
||||||
if((retval = mkdir(pkgpath, 0755)) != 0) {
|
if((retval = mkdir(pkgpath, 0755)) != 0) {
|
||||||
_alpm_log(PM_LOG_ERROR, _("could not create directory %s: %s\n"), pkgpath, strerror(errno));
|
_alpm_log(PM_LOG_ERROR, _("could not create directory %s: %s\n"),
|
||||||
|
pkgpath, strerror(errno));
|
||||||
}
|
}
|
||||||
|
|
||||||
free(pkgpath);
|
free(pkgpath);
|
||||||
@@ -761,7 +787,7 @@ int _alpm_db_write(pmdb_t *db, pmpkg_t *info, pmdbinfrq_t inforeq)
|
|||||||
if(info->isize) {
|
if(info->isize) {
|
||||||
/* only write installed size, csize is irrelevant once installed */
|
/* only write installed size, csize is irrelevant once installed */
|
||||||
fprintf(fp, "%%SIZE%%\n"
|
fprintf(fp, "%%SIZE%%\n"
|
||||||
"%ju\n\n", (intmax_t)info->isize);
|
"%jd\n\n", (intmax_t)info->isize);
|
||||||
}
|
}
|
||||||
if(info->reason) {
|
if(info->reason) {
|
||||||
fprintf(fp, "%%REASON%%\n"
|
fprintf(fp, "%%REASON%%\n"
|
||||||
@@ -770,11 +796,11 @@ int _alpm_db_write(pmdb_t *db, pmpkg_t *info, pmdbinfrq_t inforeq)
|
|||||||
} else {
|
} else {
|
||||||
if(info->size) {
|
if(info->size) {
|
||||||
fprintf(fp, "%%CSIZE%%\n"
|
fprintf(fp, "%%CSIZE%%\n"
|
||||||
"%ju\n\n", (intmax_t)info->size);
|
"%jd\n\n", (intmax_t)info->size);
|
||||||
}
|
}
|
||||||
if(info->isize) {
|
if(info->isize) {
|
||||||
fprintf(fp, "%%ISIZE%%\n"
|
fprintf(fp, "%%ISIZE%%\n"
|
||||||
"%ju\n\n", (intmax_t)info->isize);
|
"%jd\n\n", (intmax_t)info->isize);
|
||||||
}
|
}
|
||||||
if(info->md5sum) {
|
if(info->md5sum) {
|
||||||
fprintf(fp, "%%MD5SUM%%\n"
|
fprintf(fp, "%%MD5SUM%%\n"
|
||||||
@@ -826,7 +852,7 @@ int _alpm_db_write(pmdb_t *db, pmpkg_t *info, pmdbinfrq_t inforeq)
|
|||||||
if(info->depends) {
|
if(info->depends) {
|
||||||
fputs("%DEPENDS%\n", fp);
|
fputs("%DEPENDS%\n", fp);
|
||||||
for(lp = info->depends; lp; lp = lp->next) {
|
for(lp = info->depends; lp; lp = lp->next) {
|
||||||
char *depstring = alpm_dep_get_string(lp->data);
|
char *depstring = alpm_dep_compute_string(lp->data);
|
||||||
fprintf(fp, "%s\n", depstring);
|
fprintf(fp, "%s\n", depstring);
|
||||||
free(depstring);
|
free(depstring);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* be_package.c
|
* be_package.c
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2008 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@archlinux.org>
|
||||||
|
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* 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
|
* it under the terms of the GNU General Public License as published by
|
||||||
@@ -83,7 +84,7 @@ static int parse_descfile(struct archive *a, pmpkg_t *newpkg)
|
|||||||
} else if(!strcmp(key, "builddate")) {
|
} else if(!strcmp(key, "builddate")) {
|
||||||
char first = tolower(ptr[0]);
|
char first = tolower(ptr[0]);
|
||||||
if(first > 'a' && first < 'z') {
|
if(first > 'a' && first < 'z') {
|
||||||
struct tm tmp_tm = {0}; //initialize to null in case of failure
|
struct tm tmp_tm = {0}; /* initialize to null in case of failure */
|
||||||
setlocale(LC_TIME, "C");
|
setlocale(LC_TIME, "C");
|
||||||
strptime(ptr, "%a %b %e %H:%M:%S %Y", &tmp_tm);
|
strptime(ptr, "%a %b %e %H:%M:%S %Y", &tmp_tm);
|
||||||
newpkg->builddate = mktime(&tmp_tm);
|
newpkg->builddate = mktime(&tmp_tm);
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* cache.c
|
* cache.c
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@archlinux.org>
|
||||||
|
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* 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
|
* it under the terms of the GNU General Public License as published by
|
||||||
@@ -54,6 +55,7 @@ int _alpm_db_load_pkgcache(pmdb_t *db)
|
|||||||
return(-1);
|
return(-1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
db->pkgcache_loaded = 1;
|
||||||
return(0);
|
return(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -61,7 +63,7 @@ void _alpm_db_free_pkgcache(pmdb_t *db)
|
|||||||
{
|
{
|
||||||
ALPM_LOG_FUNC;
|
ALPM_LOG_FUNC;
|
||||||
|
|
||||||
if(db == NULL || db->pkgcache == NULL) {
|
if(db == NULL || !db->pkgcache_loaded) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -71,10 +73,9 @@ void _alpm_db_free_pkgcache(pmdb_t *db)
|
|||||||
alpm_list_free_inner(db->pkgcache, (alpm_list_fn_free)_alpm_pkg_free);
|
alpm_list_free_inner(db->pkgcache, (alpm_list_fn_free)_alpm_pkg_free);
|
||||||
alpm_list_free(db->pkgcache);
|
alpm_list_free(db->pkgcache);
|
||||||
db->pkgcache = NULL;
|
db->pkgcache = NULL;
|
||||||
|
db->pkgcache_loaded = 0;
|
||||||
|
|
||||||
if(db->grpcache) {
|
_alpm_db_free_grpcache(db);
|
||||||
_alpm_db_free_grpcache(db);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
alpm_list_t *_alpm_db_get_pkgcache(pmdb_t *db)
|
alpm_list_t *_alpm_db_get_pkgcache(pmdb_t *db)
|
||||||
@@ -85,13 +86,13 @@ alpm_list_t *_alpm_db_get_pkgcache(pmdb_t *db)
|
|||||||
return(NULL);
|
return(NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!db->pkgcache) {
|
if(!db->pkgcache_loaded) {
|
||||||
_alpm_db_load_pkgcache(db);
|
_alpm_db_load_pkgcache(db);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* hmmm, still NULL ?*/
|
/* hmmm, still NULL ?*/
|
||||||
if(!db->pkgcache) {
|
if(!db->pkgcache) {
|
||||||
_alpm_log(PM_LOG_DEBUG, "error: pkgcache is NULL for db '%s'\n", db->treename);
|
_alpm_log(PM_LOG_DEBUG, "warning: pkgcache is NULL for db '%s'\n", db->treename);
|
||||||
}
|
}
|
||||||
|
|
||||||
return(db->pkgcache);
|
return(db->pkgcache);
|
||||||
@@ -104,7 +105,7 @@ int _alpm_db_add_pkgincache(pmdb_t *db, pmpkg_t *pkg)
|
|||||||
|
|
||||||
ALPM_LOG_FUNC;
|
ALPM_LOG_FUNC;
|
||||||
|
|
||||||
if(db == NULL || pkg == NULL) {
|
if(db == NULL || !db->pkgcache_loaded || pkg == NULL) {
|
||||||
return(-1);
|
return(-1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -139,7 +140,7 @@ int _alpm_db_remove_pkgfromcache(pmdb_t *db, pmpkg_t *pkg)
|
|||||||
|
|
||||||
ALPM_LOG_FUNC;
|
ALPM_LOG_FUNC;
|
||||||
|
|
||||||
if(db == NULL || pkg == NULL) {
|
if(db == NULL || !db->pkgcache_loaded || pkg == NULL) {
|
||||||
return(-1);
|
return(-1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -172,7 +173,7 @@ pmpkg_t *_alpm_db_get_pkgfromcache(pmdb_t *db, const char *target)
|
|||||||
|
|
||||||
alpm_list_t *pkgcache = _alpm_db_get_pkgcache(db);
|
alpm_list_t *pkgcache = _alpm_db_get_pkgcache(db);
|
||||||
if(!pkgcache) {
|
if(!pkgcache) {
|
||||||
_alpm_log(PM_LOG_DEBUG, "error: failed to get '%s' from NULL pkgcache\n",
|
_alpm_log(PM_LOG_DEBUG, "warning: failed to get '%s' from NULL pkgcache\n",
|
||||||
target);
|
target);
|
||||||
return(NULL);
|
return(NULL);
|
||||||
}
|
}
|
||||||
@@ -192,10 +193,6 @@ int _alpm_db_load_grpcache(pmdb_t *db)
|
|||||||
return(-1);
|
return(-1);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(db->pkgcache == NULL) {
|
|
||||||
_alpm_db_load_pkgcache(db);
|
|
||||||
}
|
|
||||||
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "loading group cache for repository '%s'\n",
|
_alpm_log(PM_LOG_DEBUG, "loading group cache for repository '%s'\n",
|
||||||
db->treename);
|
db->treename);
|
||||||
|
|
||||||
@@ -230,6 +227,7 @@ int _alpm_db_load_grpcache(pmdb_t *db)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
db->grpcache_loaded = 1;
|
||||||
return(0);
|
return(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -239,15 +237,19 @@ void _alpm_db_free_grpcache(pmdb_t *db)
|
|||||||
|
|
||||||
ALPM_LOG_FUNC;
|
ALPM_LOG_FUNC;
|
||||||
|
|
||||||
if(db == NULL || db->grpcache == NULL) {
|
if(db == NULL || !db->grpcache_loaded) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_alpm_log(PM_LOG_DEBUG, "freeing group cache for repository '%s'\n",
|
||||||
|
db->treename);
|
||||||
|
|
||||||
for(lg = db->grpcache; lg; lg = lg->next) {
|
for(lg = db->grpcache; lg; lg = lg->next) {
|
||||||
_alpm_grp_free(lg->data);
|
_alpm_grp_free(lg->data);
|
||||||
lg->data = NULL;
|
lg->data = NULL;
|
||||||
}
|
}
|
||||||
FREELIST(db->grpcache);
|
FREELIST(db->grpcache);
|
||||||
|
db->grpcache_loaded = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
alpm_list_t *_alpm_db_get_grpcache(pmdb_t *db)
|
alpm_list_t *_alpm_db_get_grpcache(pmdb_t *db)
|
||||||
@@ -258,7 +260,7 @@ alpm_list_t *_alpm_db_get_grpcache(pmdb_t *db)
|
|||||||
return(NULL);
|
return(NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(db->grpcache == NULL) {
|
if(!db->grpcache_loaded) {
|
||||||
_alpm_db_load_grpcache(db);
|
_alpm_db_load_grpcache(db);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* cache.h
|
* cache.h
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@archlinux.org>
|
||||||
|
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* 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
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* conflict.c
|
* conflict.c
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@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 Aurelien Foret <orelien@chez.com>
|
||||||
* Copyright (c) 2006 by David Kimpe <dnaku@frugalware.org>
|
* Copyright (c) 2006 by David Kimpe <dnaku@frugalware.org>
|
||||||
* Copyright (c) 2006 by Miklos Vajna <vmiklos@frugalware.org>
|
* Copyright (c) 2006 by Miklos Vajna <vmiklos@frugalware.org>
|
||||||
@@ -28,6 +29,7 @@
|
|||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <limits.h>
|
#include <limits.h>
|
||||||
#include <sys/stat.h>
|
#include <sys/stat.h>
|
||||||
|
#include <dirent.h>
|
||||||
|
|
||||||
/* libalpm */
|
/* libalpm */
|
||||||
#include "conflict.h"
|
#include "conflict.h"
|
||||||
@@ -218,11 +220,11 @@ alpm_list_t *_alpm_outerconflicts(pmdb_t *db, alpm_list_t *packages)
|
|||||||
|
|
||||||
/** Check the package conflicts in a database
|
/** Check the package conflicts in a database
|
||||||
*
|
*
|
||||||
* @param db_local the database to check
|
* @param pkglist the list of packages to check
|
||||||
* @return an alpm_list_t of pmconflict_t
|
* @return an alpm_list_t of pmconflict_t
|
||||||
*/
|
*/
|
||||||
alpm_list_t SYMEXPORT *alpm_checkdbconflicts(pmdb_t *db_local) {
|
alpm_list_t SYMEXPORT *alpm_checkconflicts(alpm_list_t *pkglist) {
|
||||||
return(_alpm_innerconflicts(_alpm_db_get_pkgcache(db_local)));
|
return(_alpm_innerconflicts(pkglist));
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Returns a alpm_list_t* of file conflicts.
|
/* Returns a alpm_list_t* of file conflicts.
|
||||||
@@ -347,19 +349,63 @@ void _alpm_fileconflict_free(pmfileconflict_t *conflict)
|
|||||||
FREE(conflict);
|
FREE(conflict);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int dir_belongsto_pkg(char *dirpath, pmpkg_t *pkg)
|
||||||
|
{
|
||||||
|
struct dirent *ent = NULL;
|
||||||
|
struct stat sbuf;
|
||||||
|
char path[PATH_MAX];
|
||||||
|
char abspath[PATH_MAX];
|
||||||
|
DIR *dir;
|
||||||
|
|
||||||
|
snprintf(abspath, PATH_MAX, "%s%s", handle->root, dirpath);
|
||||||
|
dir = opendir(abspath);
|
||||||
|
if(dir == NULL) {
|
||||||
|
return(1);
|
||||||
|
}
|
||||||
|
while((ent = readdir(dir)) != NULL) {
|
||||||
|
const char *name = ent->d_name;
|
||||||
|
|
||||||
|
if(strcmp(name, ".") == 0 || strcmp(name, "..") == 0) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
snprintf(path, PATH_MAX, "%s/%s", dirpath, name);
|
||||||
|
snprintf(abspath, PATH_MAX, "%s%s", handle->root, path);
|
||||||
|
if(stat(abspath, &sbuf) != 0) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if(S_ISDIR(sbuf.st_mode)) {
|
||||||
|
if(dir_belongsto_pkg(path, pkg)) {
|
||||||
|
continue;
|
||||||
|
} else {
|
||||||
|
closedir(dir);
|
||||||
|
return(0);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if(alpm_list_find_str(alpm_pkg_get_files(pkg),path)) {
|
||||||
|
continue;
|
||||||
|
} else {
|
||||||
|
closedir(dir);
|
||||||
|
return(0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
closedir(dir);
|
||||||
|
return(1);
|
||||||
|
}
|
||||||
|
|
||||||
/* Find file conflicts that may occur during the transaction with two checks:
|
/* Find file conflicts that may occur during the transaction with two checks:
|
||||||
* 1: check every target against every target
|
* 1: check every target against every target
|
||||||
* 2: check every target against the filesystem */
|
* 2: check every target against the filesystem */
|
||||||
alpm_list_t *_alpm_db_find_fileconflicts(pmdb_t *db, pmtrans_t *trans, char *root)
|
alpm_list_t *_alpm_db_find_fileconflicts(pmdb_t *db, pmtrans_t *trans,
|
||||||
|
alpm_list_t *upgrade, alpm_list_t *remove)
|
||||||
{
|
{
|
||||||
alpm_list_t *i, *conflicts = NULL;
|
alpm_list_t *i, *j, *conflicts = NULL;
|
||||||
alpm_list_t *targets = trans->packages;
|
int numtargs = alpm_list_count(upgrade);
|
||||||
int numtargs = alpm_list_count(targets);
|
|
||||||
int current;
|
int current;
|
||||||
|
|
||||||
ALPM_LOG_FUNC;
|
ALPM_LOG_FUNC;
|
||||||
|
|
||||||
if(db == NULL || targets == NULL || root == NULL) {
|
if(db == NULL || upgrade == NULL) {
|
||||||
return(NULL);
|
return(NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -367,8 +413,8 @@ alpm_list_t *_alpm_db_find_fileconflicts(pmdb_t *db, pmtrans_t *trans, char *roo
|
|||||||
* be possible with real transactions. Right now we only do half as much
|
* be possible with real transactions. Right now we only do half as much
|
||||||
* here as we do when we actually extract files in add.c with our 12
|
* here as we do when we actually extract files in add.c with our 12
|
||||||
* different cases. */
|
* different cases. */
|
||||||
for(current = 1, i = targets; i; i = i->next, current++) {
|
for(current = 1, i = upgrade; i; i = i->next, current++) {
|
||||||
alpm_list_t *j, *k, *tmpfiles = NULL;
|
alpm_list_t *k, *tmpfiles = NULL;
|
||||||
pmpkg_t *p1, *p2, *dbpkg;
|
pmpkg_t *p1, *p2, *dbpkg;
|
||||||
char path[PATH_MAX+1];
|
char path[PATH_MAX+1];
|
||||||
|
|
||||||
@@ -392,7 +438,7 @@ alpm_list_t *_alpm_db_find_fileconflicts(pmdb_t *db, pmtrans_t *trans, char *roo
|
|||||||
|
|
||||||
if(tmpfiles) {
|
if(tmpfiles) {
|
||||||
for(k = tmpfiles; k; k = k->next) {
|
for(k = tmpfiles; k; k = k->next) {
|
||||||
snprintf(path, PATH_MAX, "%s%s", root, (char *)k->data);
|
snprintf(path, PATH_MAX, "%s%s", handle->root, (char *)k->data);
|
||||||
conflicts = add_fileconflict(conflicts, PM_FILECONFLICT_TARGET, path,
|
conflicts = add_fileconflict(conflicts, PM_FILECONFLICT_TARGET, path,
|
||||||
alpm_pkg_get_name(p1), alpm_pkg_get_name(p2));
|
alpm_pkg_get_name(p1), alpm_pkg_get_name(p2));
|
||||||
}
|
}
|
||||||
@@ -408,7 +454,7 @@ alpm_list_t *_alpm_db_find_fileconflicts(pmdb_t *db, pmtrans_t *trans, char *roo
|
|||||||
_alpm_log(PM_LOG_DEBUG, "searching for filesystem conflicts: %s\n", p1->name);
|
_alpm_log(PM_LOG_DEBUG, "searching for filesystem conflicts: %s\n", p1->name);
|
||||||
dbpkg = _alpm_db_get_pkgfromcache(db, p1->name);
|
dbpkg = _alpm_db_get_pkgfromcache(db, p1->name);
|
||||||
|
|
||||||
/* Do two different checks here. f the package is currently installed,
|
/* Do two different checks here. If the package is currently installed,
|
||||||
* then only check files that are new in the new package. If the package
|
* then only check files that are new in the new package. If the package
|
||||||
* is not currently installed, then simply stat the whole filelist */
|
* is not currently installed, then simply stat the whole filelist */
|
||||||
if(dbpkg) {
|
if(dbpkg) {
|
||||||
@@ -420,12 +466,10 @@ alpm_list_t *_alpm_db_find_fileconflicts(pmdb_t *db, pmtrans_t *trans, char *roo
|
|||||||
tmpfiles = alpm_list_strdup(alpm_pkg_get_files(p1));
|
tmpfiles = alpm_list_strdup(alpm_pkg_get_files(p1));
|
||||||
}
|
}
|
||||||
|
|
||||||
/* loop over each file to be installed */
|
|
||||||
for(j = tmpfiles; j; j = j->next) {
|
for(j = tmpfiles; j; j = j->next) {
|
||||||
int skip_conflict = 0;
|
|
||||||
filestr = j->data;
|
filestr = j->data;
|
||||||
|
|
||||||
snprintf(path, PATH_MAX, "%s%s", root, filestr);
|
snprintf(path, PATH_MAX, "%s%s", handle->root, filestr);
|
||||||
|
|
||||||
/* stat the file - if it exists, do some checks */
|
/* stat the file - if it exists, do some checks */
|
||||||
if(_alpm_lstat(path, &lsbuf) != 0) {
|
if(_alpm_lstat(path, &lsbuf) != 0) {
|
||||||
@@ -436,47 +480,74 @@ alpm_list_t *_alpm_db_find_fileconflicts(pmdb_t *db, pmtrans_t *trans, char *roo
|
|||||||
if(path[strlen(path)-1] == '/') {
|
if(path[strlen(path)-1] == '/') {
|
||||||
if(S_ISDIR(lsbuf.st_mode)) {
|
if(S_ISDIR(lsbuf.st_mode)) {
|
||||||
_alpm_log(PM_LOG_DEBUG, "%s is a directory, not a conflict\n", path);
|
_alpm_log(PM_LOG_DEBUG, "%s is a directory, not a conflict\n", path);
|
||||||
skip_conflict = 1;
|
continue;
|
||||||
} else if(S_ISLNK(lsbuf.st_mode) && S_ISDIR(sbuf.st_mode)) {
|
} else if(S_ISLNK(lsbuf.st_mode) && S_ISDIR(sbuf.st_mode)) {
|
||||||
_alpm_log(PM_LOG_DEBUG,
|
_alpm_log(PM_LOG_DEBUG,
|
||||||
"%s is a symlink to a dir, hopefully not a conflict\n", path);
|
"%s is a symlink to a dir, hopefully not a conflict\n", path);
|
||||||
skip_conflict = 1;
|
continue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(!skip_conflict) {
|
_alpm_log(PM_LOG_DEBUG, "checking possible conflict: %s\n", path);
|
||||||
_alpm_log(PM_LOG_DEBUG, "checking possible conflict: %s\n", path);
|
|
||||||
|
|
||||||
/* Look at all the targets to see if file has changed hands */
|
int resolved_conflict = 0; /* have we acted on this conflict? */
|
||||||
int resolved_conflict = 0; /* have we acted on this conflict? */
|
|
||||||
for(k = targets; k; k = k->next) {
|
|
||||||
p2 = k->data;
|
|
||||||
if(!p2 || strcmp(p1->name, p2->name) == 0) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
pmpkg_t *localp2 = _alpm_db_get_pkgfromcache(db, p2->name);
|
/* Check remove list (will we remove the conflicting local file?) */
|
||||||
|
for(k = remove; k && !resolved_conflict; k = k->next) {
|
||||||
/* Check if it used to exist in a package, but doesn't anymore */
|
pmpkg_t *rempkg = k->data;
|
||||||
alpm_list_t *pkgfiles, *localfiles; /* added for readability */
|
if(rempkg && alpm_list_find_str(alpm_pkg_get_files(rempkg), filestr)) {
|
||||||
pkgfiles = alpm_pkg_get_files(p2);
|
_alpm_log(PM_LOG_DEBUG, "local file will be removed, not a conflict: %s\n", filestr);
|
||||||
localfiles = alpm_pkg_get_files(localp2);
|
resolved_conflict = 1;
|
||||||
|
|
||||||
if(localp2 && !alpm_list_find_str(pkgfiles, filestr)
|
|
||||||
&& alpm_list_find_str(localfiles, filestr)) {
|
|
||||||
/* skip removal of file, but not add. this will prevent a second
|
|
||||||
* package from removing the file when it was already installed
|
|
||||||
* by its new owner (whether the file is in backup array or not */
|
|
||||||
trans->skip_remove = alpm_list_add(trans->skip_remove, strdup(path));
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "file changed packages, adding to remove skiplist: %s\n", filestr);
|
|
||||||
resolved_conflict = 1;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if(!resolved_conflict) {
|
}
|
||||||
_alpm_log(PM_LOG_DEBUG, "file found in conflict: %s\n", path);
|
|
||||||
conflicts = add_fileconflict(conflicts, PM_FILECONFLICT_FILESYSTEM,
|
/* Look at all the targets to see if file has changed hands */
|
||||||
path, p1->name, NULL);
|
for(k = upgrade; k && !resolved_conflict; k = k->next) {
|
||||||
|
p2 = k->data;
|
||||||
|
if(!p2 || strcmp(p1->name, p2->name) == 0) {
|
||||||
|
continue;
|
||||||
}
|
}
|
||||||
|
pmpkg_t *localp2 = _alpm_db_get_pkgfromcache(db, p2->name);
|
||||||
|
|
||||||
|
/* localp2->files will be removed (target conflicts are handled by CHECK 1) */
|
||||||
|
if(localp2 && alpm_list_find_str(alpm_pkg_get_files(localp2), filestr)) {
|
||||||
|
/* skip removal of file, but not add. this will prevent a second
|
||||||
|
* package from removing the file when it was already installed
|
||||||
|
* by its new owner (whether the file is in backup array or not */
|
||||||
|
trans->skip_remove = alpm_list_add(trans->skip_remove, strdup(path));
|
||||||
|
_alpm_log(PM_LOG_DEBUG, "file changed packages, adding to remove skiplist: %s\n", filestr);
|
||||||
|
resolved_conflict = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* check if all files of the dir belong to the installed pkg */
|
||||||
|
if(!resolved_conflict && S_ISDIR(lsbuf.st_mode) && dbpkg) {
|
||||||
|
char *dir = malloc(strlen(filestr) + 2);
|
||||||
|
sprintf(dir, "%s/", filestr);
|
||||||
|
if(alpm_list_find_str(alpm_pkg_get_files(dbpkg),dir)) {
|
||||||
|
_alpm_log(PM_LOG_DEBUG, "check if all files in %s belongs to %s\n",
|
||||||
|
dir, dbpkg->name);
|
||||||
|
resolved_conflict = dir_belongsto_pkg(filestr, dbpkg);
|
||||||
|
}
|
||||||
|
free(dir);
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!resolved_conflict && dbpkg) {
|
||||||
|
char *rpath = calloc(PATH_MAX+1, sizeof(char));
|
||||||
|
if(!realpath(path, rpath)) {
|
||||||
|
FREE(rpath);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
char *filestr = rpath + strlen(handle->root);
|
||||||
|
if(alpm_list_find_str(alpm_pkg_get_files(dbpkg),filestr)) {
|
||||||
|
resolved_conflict = 1;
|
||||||
|
}
|
||||||
|
free(rpath);
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!resolved_conflict) {
|
||||||
|
_alpm_log(PM_LOG_DEBUG, "file found in conflict: %s\n", path);
|
||||||
|
conflicts = add_fileconflict(conflicts, PM_FILECONFLICT_FILESYSTEM,
|
||||||
|
path, p1->name, NULL);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
FREELIST(tmpfiles);
|
FREELIST(tmpfiles);
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* conflict.h
|
* conflict.h
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@archlinux.org>
|
||||||
|
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* 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
|
* it under the terms of the GNU General Public License as published by
|
||||||
@@ -41,7 +42,8 @@ void _alpm_conflict_free(pmconflict_t *conflict);
|
|||||||
int _alpm_conflict_isin(pmconflict_t *needle, alpm_list_t *haystack);
|
int _alpm_conflict_isin(pmconflict_t *needle, alpm_list_t *haystack);
|
||||||
alpm_list_t *_alpm_innerconflicts(alpm_list_t *packages);
|
alpm_list_t *_alpm_innerconflicts(alpm_list_t *packages);
|
||||||
alpm_list_t *_alpm_outerconflicts(pmdb_t *db, alpm_list_t *packages);
|
alpm_list_t *_alpm_outerconflicts(pmdb_t *db, alpm_list_t *packages);
|
||||||
alpm_list_t *_alpm_db_find_fileconflicts(pmdb_t *db, pmtrans_t *trans, char *root);
|
alpm_list_t *_alpm_db_find_fileconflicts(pmdb_t *db, pmtrans_t *trans,
|
||||||
|
alpm_list_t *upgrade, alpm_list_t *remove);
|
||||||
|
|
||||||
void _alpm_fileconflict_free(pmfileconflict_t *conflict);
|
void _alpm_fileconflict_free(pmfileconflict_t *conflict);
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* db.c
|
* db.c
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@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 Aurelien Foret <orelien@chez.com>
|
||||||
* Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
|
* Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
|
||||||
* Copyright (c) 2006 by David Kimpe <dnaku@frugalware.org>
|
* Copyright (c) 2006 by David Kimpe <dnaku@frugalware.org>
|
||||||
@@ -85,9 +86,6 @@ static void _alpm_db_unregister(pmdb_t *db)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "closing database '%s'\n", db->treename);
|
|
||||||
_alpm_db_close(db);
|
|
||||||
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "unregistering database '%s'\n", db->treename);
|
_alpm_log(PM_LOG_DEBUG, "unregistering database '%s'\n", db->treename);
|
||||||
_alpm_db_free(db);
|
_alpm_db_free(db);
|
||||||
}
|
}
|
||||||
@@ -235,6 +233,7 @@ const char SYMEXPORT *alpm_db_get_url(const pmdb_t *db)
|
|||||||
/* Sanity checks */
|
/* Sanity checks */
|
||||||
ASSERT(handle != NULL, return(NULL));
|
ASSERT(handle != NULL, return(NULL));
|
||||||
ASSERT(db != NULL, return(NULL));
|
ASSERT(db != NULL, return(NULL));
|
||||||
|
ASSERT(db->servers != NULL, return(NULL));
|
||||||
|
|
||||||
url = (char*)db->servers->data;
|
url = (char*)db->servers->data;
|
||||||
|
|
||||||
@@ -263,7 +262,7 @@ pmpkg_t SYMEXPORT *alpm_db_get_pkg(pmdb_t *db, const char *name)
|
|||||||
* @param db pointer to the package database to get the package from
|
* @param db pointer to the package database to get the package from
|
||||||
* @return the list of packages on success, NULL on error
|
* @return the list of packages on success, NULL on error
|
||||||
*/
|
*/
|
||||||
alpm_list_t SYMEXPORT *alpm_db_getpkgcache(pmdb_t *db)
|
alpm_list_t SYMEXPORT *alpm_db_get_pkgcache(pmdb_t *db)
|
||||||
{
|
{
|
||||||
ALPM_LOG_FUNC;
|
ALPM_LOG_FUNC;
|
||||||
|
|
||||||
@@ -295,7 +294,7 @@ pmgrp_t SYMEXPORT *alpm_db_readgrp(pmdb_t *db, const char *name)
|
|||||||
* @param db pointer to the package database to get the group from
|
* @param db pointer to the package database to get the group from
|
||||||
* @return the list of groups on success, NULL on error
|
* @return the list of groups on success, NULL on error
|
||||||
*/
|
*/
|
||||||
alpm_list_t SYMEXPORT *alpm_db_getgrpcache(pmdb_t *db)
|
alpm_list_t SYMEXPORT *alpm_db_get_grpcache(pmdb_t *db)
|
||||||
{
|
{
|
||||||
ALPM_LOG_FUNC;
|
ALPM_LOG_FUNC;
|
||||||
|
|
||||||
@@ -400,10 +399,10 @@ alpm_list_t *_alpm_db_search(pmdb_t *db, const alpm_list_t *needles)
|
|||||||
else if (desc && regexec(®, desc, 0, 0, 0) == 0) {
|
else if (desc && regexec(®, desc, 0, 0, 0) == 0) {
|
||||||
matched = desc;
|
matched = desc;
|
||||||
}
|
}
|
||||||
/* check provides */
|
|
||||||
/* TODO: should we be doing this, and should we print something
|
/* TODO: should we be doing this, and should we print something
|
||||||
* differently when we do match it since it isn't currently printed? */
|
* differently when we do match it since it isn't currently printed? */
|
||||||
else {
|
if(!matched) {
|
||||||
|
/* check provides */
|
||||||
for(k = alpm_pkg_get_provides(pkg); k; k = k->next) {
|
for(k = alpm_pkg_get_provides(pkg); k; k = k->next) {
|
||||||
if (regexec(®, k->data, 0, 0, 0) == 0) {
|
if (regexec(®, k->data, 0, 0, 0) == 0) {
|
||||||
matched = k->data;
|
matched = k->data;
|
||||||
@@ -411,6 +410,15 @@ alpm_list_t *_alpm_db_search(pmdb_t *db, const alpm_list_t *needles)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if(!matched) {
|
||||||
|
/* check groups */
|
||||||
|
for(k = alpm_pkg_get_groups(pkg); k; k = k->next) {
|
||||||
|
if (regexec(®, k->data, 0, 0, 0) == 0) {
|
||||||
|
matched = k->data;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if(matched != NULL) {
|
if(matched != NULL) {
|
||||||
_alpm_log(PM_LOG_DEBUG, " search target '%s' matched '%s'\n",
|
_alpm_log(PM_LOG_DEBUG, " search target '%s' matched '%s'\n",
|
||||||
@@ -431,10 +439,8 @@ alpm_list_t *_alpm_db_search(pmdb_t *db, const alpm_list_t *needles)
|
|||||||
|
|
||||||
pmdb_t *_alpm_db_register_local(void)
|
pmdb_t *_alpm_db_register_local(void)
|
||||||
{
|
{
|
||||||
struct stat buf;
|
|
||||||
pmdb_t *db;
|
pmdb_t *db;
|
||||||
const char *dbpath;
|
const char *dbpath;
|
||||||
char path[PATH_MAX];
|
|
||||||
|
|
||||||
ALPM_LOG_FUNC;
|
ALPM_LOG_FUNC;
|
||||||
|
|
||||||
@@ -445,40 +451,23 @@ pmdb_t *_alpm_db_register_local(void)
|
|||||||
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "registering local database\n");
|
_alpm_log(PM_LOG_DEBUG, "registering local database\n");
|
||||||
|
|
||||||
/* make sure the database directory exists */
|
|
||||||
dbpath = alpm_option_get_dbpath();
|
dbpath = alpm_option_get_dbpath();
|
||||||
if(!dbpath) {
|
if(!dbpath) {
|
||||||
_alpm_log(PM_LOG_ERROR, _("database path is undefined\n"));
|
_alpm_log(PM_LOG_ERROR, _("database path is undefined\n"));
|
||||||
RET_ERR(PM_ERR_DB_OPEN, NULL);
|
RET_ERR(PM_ERR_DB_OPEN, NULL);
|
||||||
}
|
}
|
||||||
snprintf(path, PATH_MAX, "%slocal", dbpath);
|
|
||||||
/* TODO this is rediculous, we try to do this even if we can't */
|
|
||||||
if(stat(path, &buf) != 0 || !S_ISDIR(buf.st_mode)) {
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "database dir '%s' does not exist, creating it\n",
|
|
||||||
path);
|
|
||||||
if(_alpm_makepath(path) != 0) {
|
|
||||||
RET_ERR(PM_ERR_SYSTEM, NULL);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
db = _alpm_db_new(dbpath, "local");
|
db = _alpm_db_new(dbpath, "local");
|
||||||
if(db == NULL) {
|
if(db == NULL) {
|
||||||
RET_ERR(PM_ERR_DB_CREATE, NULL);
|
RET_ERR(PM_ERR_DB_CREATE, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "opening database '%s'\n", db->treename);
|
|
||||||
if(_alpm_db_open(db) == -1) {
|
|
||||||
_alpm_db_free(db);
|
|
||||||
RET_ERR(PM_ERR_DB_OPEN, NULL);
|
|
||||||
}
|
|
||||||
|
|
||||||
handle->db_local = db;
|
handle->db_local = db;
|
||||||
return(db);
|
return(db);
|
||||||
}
|
}
|
||||||
|
|
||||||
pmdb_t *_alpm_db_register_sync(const char *treename)
|
pmdb_t *_alpm_db_register_sync(const char *treename)
|
||||||
{
|
{
|
||||||
struct stat buf;
|
|
||||||
pmdb_t *db;
|
pmdb_t *db;
|
||||||
const char *dbpath;
|
const char *dbpath;
|
||||||
char path[PATH_MAX];
|
char path[PATH_MAX];
|
||||||
@@ -496,25 +485,12 @@ pmdb_t *_alpm_db_register_sync(const char *treename)
|
|||||||
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "registering sync database '%s'\n", treename);
|
_alpm_log(PM_LOG_DEBUG, "registering sync database '%s'\n", treename);
|
||||||
|
|
||||||
/* make sure the database directory exists */
|
|
||||||
dbpath = alpm_option_get_dbpath();
|
dbpath = alpm_option_get_dbpath();
|
||||||
if(!dbpath) {
|
if(!dbpath) {
|
||||||
_alpm_log(PM_LOG_ERROR, _("database path is undefined\n"));
|
_alpm_log(PM_LOG_ERROR, _("database path is undefined\n"));
|
||||||
RET_ERR(PM_ERR_DB_OPEN, NULL);
|
RET_ERR(PM_ERR_DB_OPEN, NULL);
|
||||||
}
|
}
|
||||||
/* all sync DBs now reside in the sync/ subdir of the dbpath */
|
/* all sync DBs now reside in the sync/ subdir of the dbpath */
|
||||||
snprintf(path, PATH_MAX, "%ssync/%s", dbpath, treename);
|
|
||||||
/* TODO this is rediculous, we try to do this even if we can't */
|
|
||||||
if(stat(path, &buf) != 0 || !S_ISDIR(buf.st_mode)) {
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "database dir '%s' does not exist, creating it\n",
|
|
||||||
path);
|
|
||||||
if(_alpm_makepath(path) != 0) {
|
|
||||||
RET_ERR(PM_ERR_SYSTEM, NULL);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Ensure the db gets the real path. */
|
|
||||||
path[0] = '\0';
|
|
||||||
snprintf(path, PATH_MAX, "%ssync/", dbpath);
|
snprintf(path, PATH_MAX, "%ssync/", dbpath);
|
||||||
|
|
||||||
db = _alpm_db_new(path, treename);
|
db = _alpm_db_new(path, treename);
|
||||||
@@ -522,12 +498,6 @@ pmdb_t *_alpm_db_register_sync(const char *treename)
|
|||||||
RET_ERR(PM_ERR_DB_CREATE, NULL);
|
RET_ERR(PM_ERR_DB_CREATE, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "opening database '%s'\n", db->treename);
|
|
||||||
if(_alpm_db_open(db) == -1) {
|
|
||||||
_alpm_db_free(db);
|
|
||||||
RET_ERR(PM_ERR_DB_OPEN, NULL);
|
|
||||||
}
|
|
||||||
|
|
||||||
handle->dbs_sync = alpm_list_add(handle->dbs_sync, db);
|
handle->dbs_sync = alpm_list_add(handle->dbs_sync, db);
|
||||||
return(db);
|
return(db);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* db.h
|
* db.h
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@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 Aurelien Foret <orelien@chez.com>
|
||||||
* Copyright (c) 2006 by Miklos Vajna <vmiklos@frugalware.org>
|
* Copyright (c) 2006 by Miklos Vajna <vmiklos@frugalware.org>
|
||||||
*
|
*
|
||||||
@@ -41,8 +42,9 @@ typedef enum _pmdbinfrq_t {
|
|||||||
struct __pmdb_t {
|
struct __pmdb_t {
|
||||||
char *path;
|
char *path;
|
||||||
char *treename;
|
char *treename;
|
||||||
void *handle;
|
unsigned short pkgcache_loaded;
|
||||||
alpm_list_t *pkgcache;
|
alpm_list_t *pkgcache;
|
||||||
|
unsigned short grpcache_loaded;
|
||||||
alpm_list_t *grpcache;
|
alpm_list_t *grpcache;
|
||||||
alpm_list_t *servers;
|
alpm_list_t *servers;
|
||||||
};
|
};
|
||||||
@@ -56,8 +58,6 @@ pmdb_t *_alpm_db_register_local(void);
|
|||||||
pmdb_t *_alpm_db_register_sync(const char *treename);
|
pmdb_t *_alpm_db_register_sync(const char *treename);
|
||||||
|
|
||||||
/* be.c, backend specific calls */
|
/* be.c, backend specific calls */
|
||||||
int _alpm_db_open(pmdb_t *db);
|
|
||||||
void _alpm_db_close(pmdb_t *db);
|
|
||||||
int _alpm_db_populate(pmdb_t *db);
|
int _alpm_db_populate(pmdb_t *db);
|
||||||
int _alpm_db_read(pmdb_t *db, pmpkg_t *info, pmdbinfrq_t inforeq);
|
int _alpm_db_read(pmdb_t *db, pmpkg_t *info, pmdbinfrq_t inforeq);
|
||||||
int _alpm_db_prepare(pmdb_t *db, pmpkg_t *info);
|
int _alpm_db_prepare(pmdb_t *db, pmpkg_t *info);
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* delta.c
|
* delta.c
|
||||||
*
|
*
|
||||||
* Copyright (c) 2007-2008 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@archlinux.org>
|
||||||
|
* Copyright (c) 2007-2006 by Judd Vinet <jvinet@zeroflux.org>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* 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
|
* it under the terms of the GNU General Public License as published by
|
||||||
@@ -21,6 +22,7 @@
|
|||||||
|
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
#include <stdint.h> /* intmax_t */
|
||||||
#include <limits.h>
|
#include <limits.h>
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <regex.h>
|
#include <regex.h>
|
||||||
@@ -43,24 +45,12 @@ const char SYMEXPORT *alpm_delta_get_from(pmdelta_t *delta)
|
|||||||
return(delta->from);
|
return(delta->from);
|
||||||
}
|
}
|
||||||
|
|
||||||
const char SYMEXPORT *alpm_delta_get_from_md5sum(pmdelta_t *delta)
|
|
||||||
{
|
|
||||||
ASSERT(delta != NULL, return(NULL));
|
|
||||||
return(delta->from_md5);
|
|
||||||
}
|
|
||||||
|
|
||||||
const char SYMEXPORT *alpm_delta_get_to(pmdelta_t *delta)
|
const char SYMEXPORT *alpm_delta_get_to(pmdelta_t *delta)
|
||||||
{
|
{
|
||||||
ASSERT(delta != NULL, return(NULL));
|
ASSERT(delta != NULL, return(NULL));
|
||||||
return(delta->to);
|
return(delta->to);
|
||||||
}
|
}
|
||||||
|
|
||||||
const char SYMEXPORT *alpm_delta_get_to_md5sum(pmdelta_t *delta)
|
|
||||||
{
|
|
||||||
ASSERT(delta != NULL, return(NULL));
|
|
||||||
return(delta->to_md5);
|
|
||||||
}
|
|
||||||
|
|
||||||
const char SYMEXPORT *alpm_delta_get_filename(pmdelta_t *delta)
|
const char SYMEXPORT *alpm_delta_get_filename(pmdelta_t *delta)
|
||||||
{
|
{
|
||||||
ASSERT(delta != NULL, return(NULL));
|
ASSERT(delta != NULL, return(NULL));
|
||||||
@@ -95,7 +85,7 @@ static alpm_list_t *delta_graph_init(alpm_list_t *deltas)
|
|||||||
|
|
||||||
/* determine whether the delta file already exists */
|
/* determine whether the delta file already exists */
|
||||||
fpath = _alpm_filecache_find(vdelta->delta);
|
fpath = _alpm_filecache_find(vdelta->delta);
|
||||||
md5sum = alpm_get_md5sum(fpath);
|
md5sum = alpm_compute_md5sum(fpath);
|
||||||
if(fpath && md5sum && strcmp(md5sum, vdelta->delta_md5) == 0) {
|
if(fpath && md5sum && strcmp(md5sum, vdelta->delta_md5) == 0) {
|
||||||
vdelta->download_size = 0;
|
vdelta->download_size = 0;
|
||||||
}
|
}
|
||||||
@@ -104,12 +94,10 @@ static alpm_list_t *delta_graph_init(alpm_list_t *deltas)
|
|||||||
|
|
||||||
/* determine whether a base 'from' file exists */
|
/* determine whether a base 'from' file exists */
|
||||||
fpath = _alpm_filecache_find(vdelta->from);
|
fpath = _alpm_filecache_find(vdelta->from);
|
||||||
md5sum = alpm_get_md5sum(fpath);
|
if(fpath) {
|
||||||
if(fpath && md5sum && strcmp(md5sum, vdelta->from_md5) == 0) {
|
|
||||||
v->weight = vdelta->download_size;
|
v->weight = vdelta->download_size;
|
||||||
}
|
}
|
||||||
FREE(fpath);
|
FREE(fpath);
|
||||||
FREE(md5sum);
|
|
||||||
|
|
||||||
v->data = vdelta;
|
v->data = vdelta;
|
||||||
vertices = alpm_list_add(vertices, v);
|
vertices = alpm_list_add(vertices, v);
|
||||||
@@ -131,8 +119,7 @@ static alpm_list_t *delta_graph_init(alpm_list_t *deltas)
|
|||||||
* 3_to_4
|
* 3_to_4
|
||||||
* If J 'from' is equal to I 'to', then J is a child of I.
|
* If J 'from' is equal to I 'to', then J is a child of I.
|
||||||
* */
|
* */
|
||||||
if(strcmp(d_j->from, d_i->to) == 0
|
if(strcmp(d_j->from, d_i->to) == 0) {
|
||||||
&& strcmp(d_j->from_md5, d_i->to_md5) == 0) {
|
|
||||||
v_i->children = alpm_list_add(v_i->children, v_j);
|
v_i->children = alpm_list_add(v_i->children, v_j);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -142,7 +129,7 @@ static alpm_list_t *delta_graph_init(alpm_list_t *deltas)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static off_t delta_vert(alpm_list_t *vertices,
|
static off_t delta_vert(alpm_list_t *vertices,
|
||||||
const char *to, const char *to_md5, alpm_list_t **path) {
|
const char *to, alpm_list_t **path) {
|
||||||
alpm_list_t *i;
|
alpm_list_t *i;
|
||||||
pmgraph_t *v;
|
pmgraph_t *v;
|
||||||
while(1) {
|
while(1) {
|
||||||
@@ -186,8 +173,7 @@ static off_t delta_vert(alpm_list_t *vertices,
|
|||||||
pmgraph_t *v_i = i->data;
|
pmgraph_t *v_i = i->data;
|
||||||
pmdelta_t *d_i = v_i->data;
|
pmdelta_t *d_i = v_i->data;
|
||||||
|
|
||||||
if(strcmp(d_i->to, to) == 0
|
if(strcmp(d_i->to, to) == 0) {
|
||||||
|| strcmp(d_i->to_md5, to_md5) == 0) {
|
|
||||||
if(v == NULL || v_i->weight < v->weight) {
|
if(v == NULL || v_i->weight < v->weight) {
|
||||||
v = v_i;
|
v = v_i;
|
||||||
bestsize = v->weight;
|
bestsize = v->weight;
|
||||||
@@ -212,14 +198,13 @@ static off_t delta_vert(alpm_list_t *vertices,
|
|||||||
* size, not the length of the path.
|
* size, not the length of the path.
|
||||||
* @param deltas the list of pmdelta_t * objects that a file has
|
* @param deltas the list of pmdelta_t * objects that a file has
|
||||||
* @param to the file to start the search at
|
* @param to the file to start the search at
|
||||||
* @param to_md5 the md5sum of the above named file
|
|
||||||
* @param path the pointer to a list location where pmdelta_t * objects that
|
* @param path the pointer to a list location where pmdelta_t * objects that
|
||||||
* have the smallest size are placed. NULL is set if there is no path
|
* have the smallest size are placed. NULL is set if there is no path
|
||||||
* possible with the files available.
|
* possible with the files available.
|
||||||
* @return the size of the path stored, or LONG_MAX if path is unfindable
|
* @return the size of the path stored, or LONG_MAX if path is unfindable
|
||||||
*/
|
*/
|
||||||
off_t _alpm_shortest_delta_path(alpm_list_t *deltas,
|
off_t _alpm_shortest_delta_path(alpm_list_t *deltas,
|
||||||
const char *to, const char *to_md5, alpm_list_t **path)
|
const char *to, alpm_list_t **path)
|
||||||
{
|
{
|
||||||
alpm_list_t *bestpath = NULL;
|
alpm_list_t *bestpath = NULL;
|
||||||
alpm_list_t *vertices;
|
alpm_list_t *vertices;
|
||||||
@@ -232,13 +217,13 @@ off_t _alpm_shortest_delta_path(alpm_list_t *deltas,
|
|||||||
return(bestsize);
|
return(bestsize);
|
||||||
}
|
}
|
||||||
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "started delta shortest-path search\n");
|
_alpm_log(PM_LOG_DEBUG, "started delta shortest-path search for '%s'\n", to);
|
||||||
|
|
||||||
vertices = delta_graph_init(deltas);
|
vertices = delta_graph_init(deltas);
|
||||||
|
|
||||||
bestsize = delta_vert(vertices, to, to_md5, &bestpath);
|
bestsize = delta_vert(vertices, to, &bestpath);
|
||||||
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "delta shortest-path search complete\n");
|
_alpm_log(PM_LOG_DEBUG, "delta shortest-path search complete : '%jd'\n", (intmax_t)bestsize);
|
||||||
|
|
||||||
alpm_list_free_inner(vertices, _alpm_graph_free);
|
alpm_list_free_inner(vertices, _alpm_graph_free);
|
||||||
alpm_list_free(vertices);
|
alpm_list_free(vertices);
|
||||||
@@ -250,7 +235,7 @@ off_t _alpm_shortest_delta_path(alpm_list_t *deltas,
|
|||||||
/** Parses the string representation of a pmdelta_t object.
|
/** Parses the string representation of a pmdelta_t object.
|
||||||
* This function assumes that the string is in the correct format.
|
* This function assumes that the string is in the correct format.
|
||||||
* This format is as follows:
|
* This format is as follows:
|
||||||
* $oldfile $oldmd5 $newfile $newmd5 $deltafile $deltamd5 $deltasize
|
* $deltafile $deltamd5 $deltasize $oldfile $newfile
|
||||||
* @param line the string to parse
|
* @param line the string to parse
|
||||||
* @return A pointer to the new pmdelta_t object
|
* @return A pointer to the new pmdelta_t object
|
||||||
*/
|
*/
|
||||||
@@ -262,9 +247,8 @@ pmdelta_t *_alpm_delta_parse(char *line)
|
|||||||
regex_t reg;
|
regex_t reg;
|
||||||
|
|
||||||
regcomp(®,
|
regcomp(®,
|
||||||
"^[^[:space:]]* [[:xdigit:]]{32}"
|
"^[^[:space:]]* [[:xdigit:]]{32} [[:digit:]]*"
|
||||||
" [^[:space:]]* [[:xdigit:]]{32}"
|
" [^[:space:]]* [^[:space:]]*$",
|
||||||
" [^[:space:]]* [[:xdigit:]]{32} [[:digit:]]*$",
|
|
||||||
REG_EXTENDED | REG_NOSUB | REG_NEWLINE);
|
REG_EXTENDED | REG_NOSUB | REG_NEWLINE);
|
||||||
if(regexec(®, line, 0, 0, 0) != 0) {
|
if(regexec(®, line, 0, 0, 0) != 0) {
|
||||||
/* delta line is invalid, return NULL */
|
/* delta line is invalid, return NULL */
|
||||||
@@ -275,26 +259,6 @@ pmdelta_t *_alpm_delta_parse(char *line)
|
|||||||
|
|
||||||
CALLOC(delta, 1, sizeof(pmdelta_t), RET_ERR(PM_ERR_MEMORY, NULL));
|
CALLOC(delta, 1, sizeof(pmdelta_t), RET_ERR(PM_ERR_MEMORY, NULL));
|
||||||
|
|
||||||
tmp2 = tmp;
|
|
||||||
tmp = strchr(tmp, ' ');
|
|
||||||
*(tmp++) = '\0';
|
|
||||||
STRDUP(delta->from, tmp2, RET_ERR(PM_ERR_MEMORY, NULL));
|
|
||||||
|
|
||||||
tmp2 = tmp;
|
|
||||||
tmp = strchr(tmp, ' ');
|
|
||||||
*(tmp++) = '\0';
|
|
||||||
STRDUP(delta->from_md5, tmp2, RET_ERR(PM_ERR_MEMORY, NULL));
|
|
||||||
|
|
||||||
tmp2 = tmp;
|
|
||||||
tmp = strchr(tmp, ' ');
|
|
||||||
*(tmp++) = '\0';
|
|
||||||
STRDUP(delta->to, tmp2, RET_ERR(PM_ERR_MEMORY, NULL));
|
|
||||||
|
|
||||||
tmp2 = tmp;
|
|
||||||
tmp = strchr(tmp, ' ');
|
|
||||||
*(tmp++) = '\0';
|
|
||||||
STRDUP(delta->to_md5, tmp2, RET_ERR(PM_ERR_MEMORY, NULL));
|
|
||||||
|
|
||||||
tmp2 = tmp;
|
tmp2 = tmp;
|
||||||
tmp = strchr(tmp, ' ');
|
tmp = strchr(tmp, ' ');
|
||||||
*(tmp++) = '\0';
|
*(tmp++) = '\0';
|
||||||
@@ -305,7 +269,20 @@ pmdelta_t *_alpm_delta_parse(char *line)
|
|||||||
*(tmp++) = '\0';
|
*(tmp++) = '\0';
|
||||||
STRDUP(delta->delta_md5, tmp2, RET_ERR(PM_ERR_MEMORY, NULL));
|
STRDUP(delta->delta_md5, tmp2, RET_ERR(PM_ERR_MEMORY, NULL));
|
||||||
|
|
||||||
delta->delta_size = atol(tmp);
|
tmp2 = tmp;
|
||||||
|
tmp = strchr(tmp, ' ');
|
||||||
|
*(tmp++) = '\0';
|
||||||
|
delta->delta_size = atol(tmp2);
|
||||||
|
|
||||||
|
tmp2 = tmp;
|
||||||
|
tmp = strchr(tmp, ' ');
|
||||||
|
*(tmp++) = '\0';
|
||||||
|
STRDUP(delta->from, tmp2, RET_ERR(PM_ERR_MEMORY, NULL));
|
||||||
|
|
||||||
|
tmp2 = tmp;
|
||||||
|
STRDUP(delta->to, tmp2, RET_ERR(PM_ERR_MEMORY, NULL));
|
||||||
|
|
||||||
|
_alpm_log(PM_LOG_DEBUG, "delta : %s %s '%lld'\n", delta->from, delta->to, (long long)delta->delta_size);
|
||||||
|
|
||||||
return(delta);
|
return(delta);
|
||||||
}
|
}
|
||||||
@@ -313,9 +290,7 @@ pmdelta_t *_alpm_delta_parse(char *line)
|
|||||||
void _alpm_delta_free(pmdelta_t *delta)
|
void _alpm_delta_free(pmdelta_t *delta)
|
||||||
{
|
{
|
||||||
FREE(delta->from);
|
FREE(delta->from);
|
||||||
FREE(delta->from_md5);
|
|
||||||
FREE(delta->to);
|
FREE(delta->to);
|
||||||
FREE(delta->to_md5);
|
|
||||||
FREE(delta->delta);
|
FREE(delta->delta);
|
||||||
FREE(delta->delta_md5);
|
FREE(delta->delta_md5);
|
||||||
FREE(delta);
|
FREE(delta);
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* delta.h
|
* delta.h
|
||||||
*
|
*
|
||||||
* Copyright (c) 2007-2008 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@archlinux.org>
|
||||||
|
* Copyright (c) 2007-2006 by Judd Vinet <jvinet@zeroflux.org>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* 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
|
* it under the terms of the GNU General Public License as published by
|
||||||
@@ -24,20 +25,16 @@
|
|||||||
#include "alpm.h"
|
#include "alpm.h"
|
||||||
|
|
||||||
struct __pmdelta_t {
|
struct __pmdelta_t {
|
||||||
/** filename of the 'before' file */
|
|
||||||
char *from;
|
|
||||||
/** md5sum of the 'before' file */
|
|
||||||
char *from_md5;
|
|
||||||
/** filename of the 'after' file */
|
|
||||||
char *to;
|
|
||||||
/** md5sum of the 'after' file */
|
|
||||||
char *to_md5;
|
|
||||||
/** filename of the delta patch */
|
/** filename of the delta patch */
|
||||||
char *delta;
|
char *delta;
|
||||||
/** md5sum of the delta file */
|
/** md5sum of the delta file */
|
||||||
char *delta_md5;
|
char *delta_md5;
|
||||||
/** filesize of the delta file */
|
/** filesize of the delta file */
|
||||||
off_t delta_size;
|
off_t delta_size;
|
||||||
|
/** filename of the 'before' file */
|
||||||
|
char *from;
|
||||||
|
/** filename of the 'after' file */
|
||||||
|
char *to;
|
||||||
/** download filesize of the delta file */
|
/** download filesize of the delta file */
|
||||||
off_t download_size;
|
off_t download_size;
|
||||||
};
|
};
|
||||||
@@ -45,7 +42,7 @@ struct __pmdelta_t {
|
|||||||
pmdelta_t *_alpm_delta_parse(char *line);
|
pmdelta_t *_alpm_delta_parse(char *line);
|
||||||
void _alpm_delta_free(pmdelta_t *delta);
|
void _alpm_delta_free(pmdelta_t *delta);
|
||||||
off_t _alpm_shortest_delta_path(alpm_list_t *deltas,
|
off_t _alpm_shortest_delta_path(alpm_list_t *deltas,
|
||||||
const char *to, const char *to_md5, alpm_list_t **path);
|
const char *to, alpm_list_t **path);
|
||||||
|
|
||||||
#endif /* _ALPM_DELTA_H */
|
#endif /* _ALPM_DELTA_H */
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* deps.c
|
* deps.c
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@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 Aurelien Foret <orelien@chez.com>
|
||||||
* Copyright (c) 2005, 2006 by Miklos Vajna <vmiklos@frugalware.org>
|
* Copyright (c) 2005, 2006 by Miklos Vajna <vmiklos@frugalware.org>
|
||||||
*
|
*
|
||||||
@@ -229,13 +230,13 @@ alpm_list_t SYMEXPORT *alpm_deptest(pmdb_t *db, alpm_list_t *targets)
|
|||||||
|
|
||||||
/** Checks dependencies and returns missing ones in a list.
|
/** Checks dependencies and returns missing ones in a list.
|
||||||
* Dependencies can include versions with depmod operators.
|
* Dependencies can include versions with depmod operators.
|
||||||
* @param db pointer to the local package database
|
* @param pkglist the list of local packages
|
||||||
* @param reversedeps handles the backward dependencies
|
* @param reversedeps handles the backward dependencies
|
||||||
* @param remove an alpm_list_t* of packages to be removed
|
* @param remove an alpm_list_t* of packages to be removed
|
||||||
* @param upgrade an alpm_list_t* of packages to be upgraded (remove-then-upgrade)
|
* @param upgrade an alpm_list_t* of packages to be upgraded (remove-then-upgrade)
|
||||||
* @return an alpm_list_t* of pmpkg_t* of missing_t pointers.
|
* @return an alpm_list_t* of pmpkg_t* of missing_t pointers.
|
||||||
*/
|
*/
|
||||||
alpm_list_t SYMEXPORT *alpm_checkdeps(pmdb_t *db, int reversedeps,
|
alpm_list_t SYMEXPORT *alpm_checkdeps(alpm_list_t *pkglist, int reversedeps,
|
||||||
alpm_list_t *remove, alpm_list_t *upgrade)
|
alpm_list_t *remove, alpm_list_t *upgrade)
|
||||||
{
|
{
|
||||||
alpm_list_t *i, *j;
|
alpm_list_t *i, *j;
|
||||||
@@ -245,12 +246,8 @@ alpm_list_t SYMEXPORT *alpm_checkdeps(pmdb_t *db, int reversedeps,
|
|||||||
|
|
||||||
ALPM_LOG_FUNC;
|
ALPM_LOG_FUNC;
|
||||||
|
|
||||||
if(db == NULL) {
|
|
||||||
return(NULL);
|
|
||||||
}
|
|
||||||
|
|
||||||
targets = alpm_list_join(alpm_list_copy(remove), alpm_list_copy(upgrade));
|
targets = alpm_list_join(alpm_list_copy(remove), alpm_list_copy(upgrade));
|
||||||
for(i = _alpm_db_get_pkgcache(db); i; i = i->next) {
|
for(i = pkglist; i; i = i->next) {
|
||||||
void *pkg = i->data;
|
void *pkg = i->data;
|
||||||
if(alpm_list_find(targets, pkg, _alpm_pkg_cmp)) {
|
if(alpm_list_find(targets, pkg, _alpm_pkg_cmp)) {
|
||||||
modified = alpm_list_add(modified, pkg);
|
modified = alpm_list_add(modified, pkg);
|
||||||
@@ -273,7 +270,7 @@ alpm_list_t SYMEXPORT *alpm_checkdeps(pmdb_t *db, int reversedeps,
|
|||||||
if(!_alpm_find_dep_satisfier(upgrade, depend) &&
|
if(!_alpm_find_dep_satisfier(upgrade, depend) &&
|
||||||
!_alpm_find_dep_satisfier(dblist, depend)) {
|
!_alpm_find_dep_satisfier(dblist, depend)) {
|
||||||
/* Unsatisfied dependency in the upgrade list */
|
/* Unsatisfied dependency in the upgrade list */
|
||||||
char *missdepstring = alpm_dep_get_string(depend);
|
char *missdepstring = alpm_dep_compute_string(depend);
|
||||||
_alpm_log(PM_LOG_DEBUG, "checkdeps: missing dependency '%s' for package '%s'\n",
|
_alpm_log(PM_LOG_DEBUG, "checkdeps: missing dependency '%s' for package '%s'\n",
|
||||||
missdepstring, alpm_pkg_get_name(tp));
|
missdepstring, alpm_pkg_get_name(tp));
|
||||||
free(missdepstring);
|
free(missdepstring);
|
||||||
@@ -297,7 +294,7 @@ alpm_list_t SYMEXPORT *alpm_checkdeps(pmdb_t *db, int reversedeps,
|
|||||||
if(causingpkg &&
|
if(causingpkg &&
|
||||||
!_alpm_find_dep_satisfier(upgrade, depend) &&
|
!_alpm_find_dep_satisfier(upgrade, depend) &&
|
||||||
!_alpm_find_dep_satisfier(dblist, depend)) {
|
!_alpm_find_dep_satisfier(dblist, depend)) {
|
||||||
char *missdepstring = alpm_dep_get_string(depend);
|
char *missdepstring = alpm_dep_compute_string(depend);
|
||||||
_alpm_log(PM_LOG_DEBUG, "checkdeps: transaction would break '%s' dependency of '%s'\n",
|
_alpm_log(PM_LOG_DEBUG, "checkdeps: transaction would break '%s' dependency of '%s'\n",
|
||||||
missdepstring, alpm_pkg_get_name(lp));
|
missdepstring, alpm_pkg_get_name(lp));
|
||||||
free(missdepstring);
|
free(missdepstring);
|
||||||
@@ -508,19 +505,37 @@ void _alpm_recursedeps(pmdb_t *db, alpm_list_t *targs, int include_explicit)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* helper function for resolvedeps: search for dep satisfier in dbs */
|
/**
|
||||||
pmpkg_t *_alpm_resolvedep(pmdepend_t *dep, alpm_list_t *dbs, alpm_list_t *excluding, pmpkg_t *tpkg)
|
* helper function for resolvedeps: search for dep satisfier in dbs
|
||||||
|
*
|
||||||
|
* @param dep is the dependency to search for
|
||||||
|
* @param dbs are the databases to search
|
||||||
|
* @param excluding are the packages to exclude from the search
|
||||||
|
* @param prompt if true, will cause an unresolvable dependency to issue an
|
||||||
|
* interactive prompt asking whether the package should be removed from
|
||||||
|
* the transaction or the transaction aborted; if false, simply returns
|
||||||
|
* an error code without prompting
|
||||||
|
* @return the resolved package
|
||||||
|
**/
|
||||||
|
pmpkg_t *_alpm_resolvedep(pmdepend_t *dep, alpm_list_t *dbs,
|
||||||
|
alpm_list_t *excluding, int prompt)
|
||||||
{
|
{
|
||||||
alpm_list_t *i, *j;
|
alpm_list_t *i, *j;
|
||||||
|
int ignored = 0;
|
||||||
/* 1. literals */
|
/* 1. literals */
|
||||||
for(i = dbs; i; i = i->next) {
|
for(i = dbs; i; i = i->next) {
|
||||||
pmpkg_t *pkg = _alpm_db_get_pkgfromcache(i->data, dep->name);
|
pmpkg_t *pkg = _alpm_db_get_pkgfromcache(i->data, dep->name);
|
||||||
if(pkg && alpm_depcmp(pkg, dep) && !_alpm_pkg_find(excluding, pkg->name)) {
|
if(pkg && alpm_depcmp(pkg, dep) && !_alpm_pkg_find(excluding, pkg->name)) {
|
||||||
if(_alpm_pkg_should_ignore(pkg)) {
|
if(_alpm_pkg_should_ignore(pkg)) {
|
||||||
int install;
|
int install = 0;
|
||||||
QUESTION(handle->trans, PM_TRANS_CONV_INSTALL_IGNOREPKG, pkg,
|
if (prompt) {
|
||||||
tpkg, NULL, &install);
|
QUESTION(handle->trans, PM_TRANS_CONV_INSTALL_IGNOREPKG, pkg,
|
||||||
|
NULL, NULL, &install);
|
||||||
|
} else {
|
||||||
|
_alpm_log(PM_LOG_WARNING, _("ignoring package %s-%s\n"), pkg->name, pkg->version);
|
||||||
|
}
|
||||||
if(!install) {
|
if(!install) {
|
||||||
|
ignored = 1;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -534,10 +549,15 @@ pmpkg_t *_alpm_resolvedep(pmdepend_t *dep, alpm_list_t *dbs, alpm_list_t *exclud
|
|||||||
if(alpm_depcmp(pkg, dep) && strcmp(pkg->name, dep->name) &&
|
if(alpm_depcmp(pkg, dep) && strcmp(pkg->name, dep->name) &&
|
||||||
!_alpm_pkg_find(excluding, pkg->name)) {
|
!_alpm_pkg_find(excluding, pkg->name)) {
|
||||||
if(_alpm_pkg_should_ignore(pkg)) {
|
if(_alpm_pkg_should_ignore(pkg)) {
|
||||||
int install;
|
int install = 0;
|
||||||
QUESTION(handle->trans, PM_TRANS_CONV_INSTALL_IGNOREPKG, pkg,
|
if (prompt) {
|
||||||
tpkg, NULL, &install);
|
QUESTION(handle->trans, PM_TRANS_CONV_INSTALL_IGNOREPKG,
|
||||||
|
pkg, NULL, NULL, &install);
|
||||||
|
} else {
|
||||||
|
_alpm_log(PM_LOG_WARNING, _("ignoring package %s-%s\n"), pkg->name, pkg->version);
|
||||||
|
}
|
||||||
if(!install) {
|
if(!install) {
|
||||||
|
ignored = 1;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -547,20 +567,41 @@ pmpkg_t *_alpm_resolvedep(pmdepend_t *dep, alpm_list_t *dbs, alpm_list_t *exclud
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if(ignored) { /* resolvedeps will override these */
|
||||||
|
pm_errno = PM_ERR_PKG_IGNORED;
|
||||||
|
} else {
|
||||||
|
pm_errno = PM_ERR_PKG_NOT_FOUND;
|
||||||
|
}
|
||||||
return(NULL);
|
return(NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* populates list with packages that need to be installed to satisfy all
|
/* Computes resolvable dependencies for a given package and adds that package
|
||||||
* dependencies of packages in list
|
* and those resolvable dependencies to a list.
|
||||||
*
|
*
|
||||||
* @param remove contains packages elected for removal
|
* @param local is the local database
|
||||||
|
* @param dbs_sync are the sync databases
|
||||||
|
* @param pkg is the package to resolve
|
||||||
|
* @param packages is a pointer to a list of packages which will be
|
||||||
|
* searched first for any dependency packages needed to complete the
|
||||||
|
* resolve, and to which will be added any [pkg] and all of its
|
||||||
|
* dependencies not already on the list
|
||||||
|
* @param remove is the set of packages which will be removed in this
|
||||||
|
* transaction
|
||||||
|
* @param data returns the dependency which could not be satisfied in the
|
||||||
|
* event of an error
|
||||||
|
* @return 0 on success, with [pkg] and all of its dependencies not already on
|
||||||
|
* the [*packages] list added to that list, or -1 on failure due to an
|
||||||
|
* unresolvable dependency, in which case the [*packages] list will be
|
||||||
|
* unmodified by this function
|
||||||
*/
|
*/
|
||||||
int _alpm_resolvedeps(pmdb_t *local, alpm_list_t *dbs_sync, alpm_list_t *list,
|
int _alpm_resolvedeps(pmdb_t *local, alpm_list_t *dbs_sync, pmpkg_t *pkg,
|
||||||
|
alpm_list_t *preferred, alpm_list_t **packages,
|
||||||
alpm_list_t *remove, alpm_list_t **data)
|
alpm_list_t *remove, alpm_list_t **data)
|
||||||
{
|
{
|
||||||
alpm_list_t *i, *j;
|
alpm_list_t *i, *j;
|
||||||
alpm_list_t *targ;
|
alpm_list_t *targ;
|
||||||
alpm_list_t *deps = NULL;
|
alpm_list_t *deps = NULL;
|
||||||
|
alpm_list_t *packages_copy;
|
||||||
|
|
||||||
ALPM_LOG_FUNC;
|
ALPM_LOG_FUNC;
|
||||||
|
|
||||||
@@ -568,46 +609,64 @@ int _alpm_resolvedeps(pmdb_t *local, alpm_list_t *dbs_sync, alpm_list_t *list,
|
|||||||
return(-1);
|
return(-1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(_alpm_pkg_find(*packages, pkg->name) != NULL) {
|
||||||
|
return(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Create a copy of the packages list, so that it can be restored
|
||||||
|
on error */
|
||||||
|
packages_copy = alpm_list_copy(*packages);
|
||||||
|
/* [pkg] has not already been resolved into the packages list, so put it
|
||||||
|
on that list */
|
||||||
|
*packages = alpm_list_add(*packages, pkg);
|
||||||
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "started resolving dependencies\n");
|
_alpm_log(PM_LOG_DEBUG, "started resolving dependencies\n");
|
||||||
for(i = list; i; i = i->next) {
|
for(i = alpm_list_last(*packages); i; i = i->next) {
|
||||||
pmpkg_t *tpkg = i->data;
|
pmpkg_t *tpkg = i->data;
|
||||||
targ = alpm_list_add(NULL, tpkg);
|
targ = alpm_list_add(NULL, tpkg);
|
||||||
deps = alpm_checkdeps(local, 0, remove, targ);
|
deps = alpm_checkdeps(_alpm_db_get_pkgcache(local), 0, remove, targ);
|
||||||
alpm_list_free(targ);
|
alpm_list_free(targ);
|
||||||
for(j = deps; j; j = j->next) {
|
for(j = deps; j; j = j->next) {
|
||||||
pmdepmissing_t *miss = j->data;
|
pmdepmissing_t *miss = j->data;
|
||||||
pmdepend_t *missdep = alpm_miss_get_dep(miss);
|
pmdepend_t *missdep = alpm_miss_get_dep(miss);
|
||||||
/* check if one of the packages in list already satisfies this dependency */
|
/* check if one of the packages in the [*packages] list already satisfies this dependency */
|
||||||
if(_alpm_find_dep_satisfier(list, missdep)) {
|
if(_alpm_find_dep_satisfier(*packages, missdep)) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
/* find a satisfier package in the given repositories */
|
/* check if one of the packages in the [preferred] list already satisfies this dependency */
|
||||||
pmpkg_t *spkg = _alpm_resolvedep(missdep, dbs_sync, list, tpkg);
|
pmpkg_t *spkg = _alpm_find_dep_satisfier(preferred, missdep);
|
||||||
|
if(!spkg) {
|
||||||
|
/* find a satisfier package in the given repositories */
|
||||||
|
spkg = _alpm_resolvedep(missdep, dbs_sync, *packages, 0);
|
||||||
|
}
|
||||||
if(!spkg) {
|
if(!spkg) {
|
||||||
pm_errno = PM_ERR_UNSATISFIED_DEPS;
|
pm_errno = PM_ERR_UNSATISFIED_DEPS;
|
||||||
char *missdepstring = alpm_dep_get_string(missdep);
|
char *missdepstring = alpm_dep_compute_string(missdep);
|
||||||
_alpm_log(PM_LOG_ERROR, _("cannot resolve \"%s\", a dependency of \"%s\"\n"),
|
_alpm_log(PM_LOG_WARNING, _("cannot resolve \"%s\", a dependency of \"%s\"\n"),
|
||||||
missdepstring, tpkg->name);
|
missdepstring, tpkg->name);
|
||||||
free(missdepstring);
|
free(missdepstring);
|
||||||
if(data) {
|
if(data) {
|
||||||
pmdepmissing_t *missd = _alpm_depmiss_new(miss->target,
|
pmdepmissing_t *missd = _alpm_depmiss_new(miss->target,
|
||||||
miss->depend, miss->causingpkg);
|
miss->depend, miss->causingpkg);
|
||||||
if(missd) {
|
if(missd) {
|
||||||
*data = alpm_list_add(*data, missd);
|
*data = alpm_list_add(*data, missd);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
alpm_list_free(*packages);
|
||||||
|
*packages = packages_copy;
|
||||||
alpm_list_free_inner(deps, (alpm_list_fn_free)_alpm_depmiss_free);
|
alpm_list_free_inner(deps, (alpm_list_fn_free)_alpm_depmiss_free);
|
||||||
alpm_list_free(deps);
|
alpm_list_free(deps);
|
||||||
return(-1);
|
return(-1);
|
||||||
} else {
|
} else {
|
||||||
_alpm_log(PM_LOG_DEBUG, "pulling dependency %s (needed by %s)\n",
|
_alpm_log(PM_LOG_DEBUG, "pulling dependency %s (needed by %s)\n",
|
||||||
alpm_pkg_get_name(spkg), alpm_pkg_get_name(tpkg));
|
alpm_pkg_get_name(spkg), alpm_pkg_get_name(tpkg));
|
||||||
list = alpm_list_add(list, spkg);
|
*packages = alpm_list_add(*packages, spkg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
alpm_list_free_inner(deps, (alpm_list_fn_free)_alpm_depmiss_free);
|
alpm_list_free_inner(deps, (alpm_list_fn_free)_alpm_depmiss_free);
|
||||||
alpm_list_free(deps);
|
alpm_list_free(deps);
|
||||||
}
|
}
|
||||||
|
alpm_list_free(packages_copy);
|
||||||
_alpm_log(PM_LOG_DEBUG, "finished resolving dependencies\n");
|
_alpm_log(PM_LOG_DEBUG, "finished resolving dependencies\n");
|
||||||
return(0);
|
return(0);
|
||||||
}
|
}
|
||||||
@@ -689,7 +748,7 @@ const char SYMEXPORT *alpm_dep_get_version(const pmdepend_t *dep)
|
|||||||
* @param dep the depend to turn into a string
|
* @param dep the depend to turn into a string
|
||||||
* @return a string-formatted dependency with operator if necessary
|
* @return a string-formatted dependency with operator if necessary
|
||||||
*/
|
*/
|
||||||
char SYMEXPORT *alpm_dep_get_string(const pmdepend_t *dep)
|
char SYMEXPORT *alpm_dep_compute_string(const pmdepend_t *dep)
|
||||||
{
|
{
|
||||||
char *name, *opr, *ver, *str = NULL;
|
char *name, *opr, *ver, *str = NULL;
|
||||||
size_t len;
|
size_t len;
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* deps.h
|
* deps.h
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@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 Aurelien Foret <orelien@chez.com>
|
||||||
* Copyright (c) 2006 by Miklos Vajna <vmiklos@frugalware.org>
|
* Copyright (c) 2006 by Miklos Vajna <vmiklos@frugalware.org>
|
||||||
*
|
*
|
||||||
@@ -47,9 +48,10 @@ pmdepmissing_t *_alpm_depmiss_new(const char *target, pmdepend_t *dep,
|
|||||||
void _alpm_depmiss_free(pmdepmissing_t *miss);
|
void _alpm_depmiss_free(pmdepmissing_t *miss);
|
||||||
alpm_list_t *_alpm_sortbydeps(alpm_list_t *targets, int reverse);
|
alpm_list_t *_alpm_sortbydeps(alpm_list_t *targets, int reverse);
|
||||||
void _alpm_recursedeps(pmdb_t *db, alpm_list_t *targs, int include_explicit);
|
void _alpm_recursedeps(pmdb_t *db, alpm_list_t *targs, int include_explicit);
|
||||||
pmpkg_t *_alpm_resolvedep(pmdepend_t *dep, alpm_list_t *dbs, alpm_list_t *excluding, pmpkg_t *tpkg);
|
pmpkg_t *_alpm_resolvedep(pmdepend_t *dep, alpm_list_t *dbs, alpm_list_t *excluding, int prompt);
|
||||||
int _alpm_resolvedeps(pmdb_t *local, alpm_list_t *dbs_sync, alpm_list_t *list,
|
int _alpm_resolvedeps(pmdb_t *local, alpm_list_t *dbs_sync, pmpkg_t *pkg,
|
||||||
alpm_list_t *remove, alpm_list_t **data);
|
alpm_list_t *preferred, alpm_list_t **packages, alpm_list_t *remove,
|
||||||
|
alpm_list_t **data);
|
||||||
int _alpm_dep_edge(pmpkg_t *pkg1, pmpkg_t *pkg2);
|
int _alpm_dep_edge(pmpkg_t *pkg1, pmpkg_t *pkg2);
|
||||||
pmdepend_t *_alpm_splitdep(const char *depstring);
|
pmdepend_t *_alpm_splitdep(const char *depstring);
|
||||||
pmpkg_t *_alpm_find_dep_satisfier(alpm_list_t *pkgs, pmdepend_t *dep);
|
pmpkg_t *_alpm_find_dep_satisfier(alpm_list_t *pkgs, pmdepend_t *dep);
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* download.c
|
* download.c
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2008 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@archlinux.org>
|
||||||
|
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* 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
|
* it under the terms of the GNU General Public License as published by
|
||||||
@@ -24,6 +25,7 @@
|
|||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
|
#include <signal.h>
|
||||||
#include <limits.h>
|
#include <limits.h>
|
||||||
/* the following two are needed on BSD for libfetch */
|
/* the following two are needed on BSD for libfetch */
|
||||||
#if defined(HAVE_SYS_SYSLIMITS_H)
|
#if defined(HAVE_SYS_SYSLIMITS_H)
|
||||||
@@ -33,16 +35,8 @@
|
|||||||
#include <sys/param.h> /* MAXHOSTNAMELEN */
|
#include <sys/param.h> /* MAXHOSTNAMELEN */
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(HAVE_LIBDOWNLOAD)
|
#if defined(INTERNAL_DOWNLOAD)
|
||||||
#include <download.h>
|
|
||||||
#elif defined(HAVE_LIBFETCH)
|
|
||||||
#include <fetch.h>
|
#include <fetch.h>
|
||||||
#define downloadFreeURL fetchFreeURL
|
|
||||||
#define downloadLastErrCode fetchLastErrCode
|
|
||||||
#define downloadLastErrString fetchLastErrString
|
|
||||||
#define downloadParseURL fetchParseURL
|
|
||||||
#define downloadTimeout fetchTimeout
|
|
||||||
#define downloadXGet fetchXGet
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* libalpm */
|
/* libalpm */
|
||||||
@@ -61,6 +55,7 @@ static char *get_filename(const char *url) {
|
|||||||
return(filename);
|
return(filename);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if defined(INTERNAL_DOWNLOAD)
|
||||||
static char *get_destfile(const char *path, const char *filename) {
|
static char *get_destfile(const char *path, const char *filename) {
|
||||||
char *destfile;
|
char *destfile;
|
||||||
/* len = localpath len + filename len + null */
|
/* len = localpath len + filename len + null */
|
||||||
@@ -81,12 +76,11 @@ static char *get_tempfile(const char *path, const char *filename) {
|
|||||||
return(tempfile);
|
return(tempfile);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(INTERNAL_DOWNLOAD)
|
|
||||||
/* Build a 'struct url' from an url. */
|
/* Build a 'struct url' from an url. */
|
||||||
static struct url *url_for_string(const char *url)
|
static struct url *url_for_string(const char *url)
|
||||||
{
|
{
|
||||||
struct url *ret = NULL;
|
struct url *ret = NULL;
|
||||||
ret = downloadParseURL(url);
|
ret = fetchParseURL(url);
|
||||||
if(!ret) {
|
if(!ret) {
|
||||||
_alpm_log(PM_LOG_ERROR, _("url '%s' is invalid\n"), url);
|
_alpm_log(PM_LOG_ERROR, _("url '%s' is invalid\n"), url);
|
||||||
RET_ERR(PM_ERR_SERVER_BAD_URL, NULL);
|
RET_ERR(PM_ERR_SERVER_BAD_URL, NULL);
|
||||||
@@ -108,12 +102,14 @@ static struct url *url_for_string(const char *url)
|
|||||||
|
|
||||||
static int download_internal(const char *url, const char *localpath,
|
static int download_internal(const char *url, const char *localpath,
|
||||||
time_t mtimeold, time_t *mtimenew) {
|
time_t mtimeold, time_t *mtimenew) {
|
||||||
FILE *dlf, *localf = NULL;
|
fetchIO *dlf = NULL;
|
||||||
|
FILE *localf = NULL;
|
||||||
struct url_stat ust;
|
struct url_stat ust;
|
||||||
struct stat st;
|
struct stat st;
|
||||||
int chk_resume = 0, ret = 0;
|
int chk_resume = 0, ret = 0;
|
||||||
size_t dl_thisfile = 0, nread = 0;
|
size_t dl_thisfile = 0, nread = 0;
|
||||||
char *tempfile, *destfile, *filename;
|
char *tempfile, *destfile, *filename;
|
||||||
|
struct sigaction new_action, old_action;
|
||||||
struct url *fileurl = url_for_string(url);
|
struct url *fileurl = url_for_string(url);
|
||||||
char buffer[PM_DLBUF_LEN];
|
char buffer[PM_DLBUF_LEN];
|
||||||
|
|
||||||
@@ -148,23 +144,29 @@ static int download_internal(const char *url, const char *localpath,
|
|||||||
_alpm_log(PM_LOG_DEBUG, "FTP_PROXY: %s\n", getenv("FTP_PROXY"));
|
_alpm_log(PM_LOG_DEBUG, "FTP_PROXY: %s\n", getenv("FTP_PROXY"));
|
||||||
_alpm_log(PM_LOG_DEBUG, "ftp_proxy: %s\n", getenv("ftp_proxy"));
|
_alpm_log(PM_LOG_DEBUG, "ftp_proxy: %s\n", getenv("ftp_proxy"));
|
||||||
|
|
||||||
/* libdownload does not reset the error code, reset it in
|
/* libfetch does not reset the error code */
|
||||||
* the case of previous errors */
|
fetchLastErrCode = 0;
|
||||||
downloadLastErrCode = 0;
|
|
||||||
|
|
||||||
/* 10s timeout - TODO make a config option */
|
/* 10s timeout - TODO make a config option */
|
||||||
downloadTimeout = 10000;
|
fetchTimeout = 10000;
|
||||||
|
|
||||||
dlf = downloadXGet(fileurl, &ust, (handle->nopassiveftp ? "" : "p"));
|
/* ignore any SIGPIPE signals- these may occur if our FTP socket dies or
|
||||||
|
* something along those lines. Store the old signal handler first. */
|
||||||
|
new_action.sa_handler = SIG_IGN;
|
||||||
|
sigemptyset(&new_action.sa_mask);
|
||||||
|
sigaction(SIGPIPE, NULL, &old_action);
|
||||||
|
sigaction(SIGPIPE, &new_action, NULL);
|
||||||
|
|
||||||
if(downloadLastErrCode != 0 || dlf == NULL) {
|
dlf = fetchXGet(fileurl, &ust, (handle->nopassiveftp ? "" : "p"));
|
||||||
|
|
||||||
|
if(fetchLastErrCode != 0 || dlf == NULL) {
|
||||||
const char *host = _("disk");
|
const char *host = _("disk");
|
||||||
if(strcmp(SCHEME_FILE, fileurl->scheme) != 0) {
|
if(strcmp(SCHEME_FILE, fileurl->scheme) != 0) {
|
||||||
host = fileurl->host;
|
host = fileurl->host;
|
||||||
}
|
}
|
||||||
pm_errno = PM_ERR_LIBDOWNLOAD;
|
pm_errno = PM_ERR_LIBFETCH;
|
||||||
_alpm_log(PM_LOG_ERROR, _("failed retrieving file '%s' from %s : %s\n"),
|
_alpm_log(PM_LOG_ERROR, _("failed retrieving file '%s' from %s : %s\n"),
|
||||||
filename, host, downloadLastErrString);
|
filename, host, fetchLastErrString);
|
||||||
ret = -1;
|
ret = -1;
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
} else {
|
} else {
|
||||||
@@ -206,16 +208,8 @@ static int download_internal(const char *url, const char *localpath,
|
|||||||
handle->dlcb(filename, 0, ust.size);
|
handle->dlcb(filename, 0, ust.size);
|
||||||
}
|
}
|
||||||
|
|
||||||
while((nread = fread(buffer, 1, PM_DLBUF_LEN, dlf)) > 0) {
|
while((nread = fetchIO_read(dlf, buffer, PM_DLBUF_LEN)) > 0) {
|
||||||
size_t nwritten = 0;
|
size_t nwritten = 0;
|
||||||
if(ferror(dlf)) {
|
|
||||||
pm_errno = PM_ERR_LIBDOWNLOAD;
|
|
||||||
_alpm_log(PM_LOG_ERROR, _("error downloading '%s': %s\n"),
|
|
||||||
filename, downloadLastErrString);
|
|
||||||
ret = -1;
|
|
||||||
goto cleanup;
|
|
||||||
}
|
|
||||||
|
|
||||||
while(nwritten < nread) {
|
while(nwritten < nread) {
|
||||||
nwritten += fwrite(buffer, 1, (nread - nwritten), localf);
|
nwritten += fwrite(buffer, 1, (nread - nwritten), localf);
|
||||||
if(ferror(localf)) {
|
if(ferror(localf)) {
|
||||||
@@ -231,136 +225,59 @@ static int download_internal(const char *url, const char *localpath,
|
|||||||
handle->dlcb(filename, dl_thisfile, ust.size);
|
handle->dlcb(filename, dl_thisfile, ust.size);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* did the transfer complete normally? */
|
||||||
|
if (ust.size != -1 && dl_thisfile < ust.size) {
|
||||||
|
pm_errno = PM_ERR_LIBFETCH;
|
||||||
|
_alpm_log(PM_LOG_ERROR, _("%s appears to be truncated: %jd/%jd bytes\n"),
|
||||||
|
filename, (intmax_t)dl_thisfile, (intmax_t)ust.size);
|
||||||
|
ret = -1;
|
||||||
|
goto cleanup;
|
||||||
|
}
|
||||||
|
|
||||||
/* probably safer to close the file descriptors now before renaming the file,
|
/* probably safer to close the file descriptors now before renaming the file,
|
||||||
* for example to make sure the buffers are flushed.
|
* for example to make sure the buffers are flushed.
|
||||||
*/
|
*/
|
||||||
fclose(localf);
|
fclose(localf);
|
||||||
localf = NULL;
|
localf = NULL;
|
||||||
fclose(dlf);
|
fetchIO_close(dlf);
|
||||||
dlf = NULL;
|
dlf = NULL;
|
||||||
|
|
||||||
rename(tempfile, destfile);
|
rename(tempfile, destfile);
|
||||||
ret = 0;
|
ret = 0;
|
||||||
|
|
||||||
cleanup:
|
cleanup:
|
||||||
|
/* restore any existing SIGPIPE signal handler */
|
||||||
|
sigaction(SIGPIPE, &old_action, NULL);
|
||||||
|
|
||||||
FREE(tempfile);
|
FREE(tempfile);
|
||||||
FREE(destfile);
|
FREE(destfile);
|
||||||
if(localf != NULL) {
|
if(localf != NULL) {
|
||||||
fclose(localf);
|
fclose(localf);
|
||||||
}
|
}
|
||||||
if(dlf != NULL) {
|
if(dlf != NULL) {
|
||||||
fclose(dlf);
|
fetchIO_close(dlf);
|
||||||
}
|
}
|
||||||
downloadFreeURL(fileurl);
|
fetchFreeURL(fileurl);
|
||||||
return(ret);
|
return(ret);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static int download_external(const char *url, const char *localpath,
|
|
||||||
time_t mtimeold, time_t *mtimenew) {
|
|
||||||
int ret = 0;
|
|
||||||
int retval;
|
|
||||||
int usepart = 0;
|
|
||||||
char *ptr1, *ptr2;
|
|
||||||
char origCmd[PATH_MAX];
|
|
||||||
char parsedCmd[PATH_MAX] = "";
|
|
||||||
char cwd[PATH_MAX];
|
|
||||||
char *destfile, *tempfile, *filename;
|
|
||||||
|
|
||||||
if(!handle->xfercommand) {
|
|
||||||
RET_ERR(PM_ERR_EXTERNAL_DOWNLOAD, -1);
|
|
||||||
}
|
|
||||||
|
|
||||||
filename = get_filename(url);
|
|
||||||
if(!filename) {
|
|
||||||
RET_ERR(PM_ERR_EXTERNAL_DOWNLOAD, -1);
|
|
||||||
}
|
|
||||||
destfile = get_destfile(localpath, filename);
|
|
||||||
tempfile = get_tempfile(localpath, filename);
|
|
||||||
|
|
||||||
/* replace all occurrences of %o with fn.part */
|
|
||||||
strncpy(origCmd, handle->xfercommand, sizeof(origCmd));
|
|
||||||
ptr1 = origCmd;
|
|
||||||
while((ptr2 = strstr(ptr1, "%o"))) {
|
|
||||||
usepart = 1;
|
|
||||||
ptr2[0] = '\0';
|
|
||||||
strcat(parsedCmd, ptr1);
|
|
||||||
strcat(parsedCmd, tempfile);
|
|
||||||
ptr1 = ptr2 + 2;
|
|
||||||
}
|
|
||||||
strcat(parsedCmd, ptr1);
|
|
||||||
/* replace all occurrences of %u with the download URL */
|
|
||||||
strncpy(origCmd, parsedCmd, sizeof(origCmd));
|
|
||||||
parsedCmd[0] = '\0';
|
|
||||||
ptr1 = origCmd;
|
|
||||||
while((ptr2 = strstr(ptr1, "%u"))) {
|
|
||||||
ptr2[0] = '\0';
|
|
||||||
strcat(parsedCmd, ptr1);
|
|
||||||
strcat(parsedCmd, url);
|
|
||||||
ptr1 = ptr2 + 2;
|
|
||||||
}
|
|
||||||
strcat(parsedCmd, ptr1);
|
|
||||||
/* cwd to the download directory */
|
|
||||||
getcwd(cwd, PATH_MAX);
|
|
||||||
if(chdir(localpath)) {
|
|
||||||
_alpm_log(PM_LOG_WARNING, _("could not chdir to %s\n"), localpath);
|
|
||||||
pm_errno = PM_ERR_EXTERNAL_DOWNLOAD;
|
|
||||||
ret = -1;
|
|
||||||
goto cleanup;
|
|
||||||
}
|
|
||||||
/* execute the parsed command via /bin/sh -c */
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "running command: %s\n", parsedCmd);
|
|
||||||
retval = system(parsedCmd);
|
|
||||||
|
|
||||||
if(retval == -1) {
|
|
||||||
_alpm_log(PM_LOG_WARNING, _("running XferCommand: fork failed!\n"));
|
|
||||||
pm_errno = PM_ERR_EXTERNAL_DOWNLOAD;
|
|
||||||
ret = -1;
|
|
||||||
} else if(retval != 0) {
|
|
||||||
/* download failed */
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "XferCommand command returned non-zero status "
|
|
||||||
"code (%d)\n", retval);
|
|
||||||
ret = -1;
|
|
||||||
} else {
|
|
||||||
/* download was successful */
|
|
||||||
if(usepart) {
|
|
||||||
rename(tempfile, destfile);
|
|
||||||
}
|
|
||||||
ret = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
cleanup:
|
|
||||||
chdir(cwd);
|
|
||||||
if(ret == -1) {
|
|
||||||
/* hack to let an user the time to cancel a download */
|
|
||||||
sleep(2);
|
|
||||||
}
|
|
||||||
FREE(destfile);
|
|
||||||
FREE(tempfile);
|
|
||||||
|
|
||||||
return(ret);
|
|
||||||
}
|
|
||||||
|
|
||||||
static int download(const char *url, const char *localpath,
|
static int download(const char *url, const char *localpath,
|
||||||
time_t mtimeold, time_t *mtimenew) {
|
time_t mtimeold, time_t *mtimenew) {
|
||||||
int ret;
|
if(handle->fetchcb == NULL) {
|
||||||
|
|
||||||
/* We have a few things to take into account here.
|
|
||||||
* 1. If we have both internal/external available, choose based on
|
|
||||||
* whether xfercommand is populated.
|
|
||||||
* 2. If we only have external available, we should first check
|
|
||||||
* if a command was provided before we drop into download_external.
|
|
||||||
*/
|
|
||||||
if(handle->xfercommand == NULL) {
|
|
||||||
#if defined(INTERNAL_DOWNLOAD)
|
#if defined(INTERNAL_DOWNLOAD)
|
||||||
ret = download_internal(url, localpath, mtimeold, mtimenew);
|
return(download_internal(url, localpath, mtimeold, mtimenew));
|
||||||
#else
|
#else
|
||||||
RET_ERR(PM_ERR_EXTERNAL_DOWNLOAD, -1);
|
RET_ERR(PM_ERR_EXTERNAL_DOWNLOAD, -1);
|
||||||
#endif
|
#endif
|
||||||
} else {
|
} else {
|
||||||
ret = download_external(url, localpath, mtimeold, mtimenew);
|
int ret = handle->fetchcb(url, localpath, mtimeold, mtimenew);
|
||||||
|
if(ret == -1) {
|
||||||
|
RET_ERR(PM_ERR_EXTERNAL_DOWNLOAD, -1);
|
||||||
|
}
|
||||||
|
return(ret);
|
||||||
}
|
}
|
||||||
return(ret);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -382,6 +299,8 @@ int _alpm_download_single_file(const char *filename,
|
|||||||
alpm_list_t *i;
|
alpm_list_t *i;
|
||||||
int ret = -1;
|
int ret = -1;
|
||||||
|
|
||||||
|
ASSERT(servers != NULL, RET_ERR(PM_ERR_SERVER_NONE, -1));
|
||||||
|
|
||||||
for(i = servers; i; i = i->next) {
|
for(i = servers; i; i = i->next) {
|
||||||
const char *server = i->data;
|
const char *server = i->data;
|
||||||
char *fileurl = NULL;
|
char *fileurl = NULL;
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* dload.h
|
* dload.h
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2008 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@archlinux.org>
|
||||||
|
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* 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
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* error.c
|
* error.c
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2008 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@archlinux.org>
|
||||||
|
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* 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
|
* it under the terms of the GNU General Public License as published by
|
||||||
@@ -30,11 +31,8 @@
|
|||||||
#include <sys/param.h> /* MAXHOSTNAMELEN */
|
#include <sys/param.h> /* MAXHOSTNAMELEN */
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(HAVE_LIBDOWNLOAD)
|
#if defined(INTERNAL_DOWNLOAD)
|
||||||
#include <download.h> /* downloadLastErrString */
|
|
||||||
#elif defined(HAVE_LIBFETCH)
|
|
||||||
#include <fetch.h> /* fetchLastErrString */
|
#include <fetch.h> /* fetchLastErrString */
|
||||||
#define downloadLastErrString fetchLastErrString
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* libalpm */
|
/* libalpm */
|
||||||
@@ -87,6 +85,8 @@ const char SYMEXPORT *alpm_strerror(int err)
|
|||||||
/* Servers */
|
/* Servers */
|
||||||
case PM_ERR_SERVER_BAD_URL:
|
case PM_ERR_SERVER_BAD_URL:
|
||||||
return _("invalid url for server");
|
return _("invalid url for server");
|
||||||
|
case PM_ERR_SERVER_NONE:
|
||||||
|
return _("no servers configured for repository");
|
||||||
/* Transactions */
|
/* Transactions */
|
||||||
case PM_ERR_TRANS_NOT_NULL:
|
case PM_ERR_TRANS_NOT_NULL:
|
||||||
return _("transaction already initialized");
|
return _("transaction already initialized");
|
||||||
@@ -102,21 +102,17 @@ const char SYMEXPORT *alpm_strerror(int err)
|
|||||||
return _("transaction aborted");
|
return _("transaction aborted");
|
||||||
case PM_ERR_TRANS_TYPE:
|
case PM_ERR_TRANS_TYPE:
|
||||||
return _("operation not compatible with the transaction type");
|
return _("operation not compatible with the transaction type");
|
||||||
case PM_ERR_TRANS_COMMITING:
|
case PM_ERR_TRANS_NOT_LOCKED:
|
||||||
return _("could not commit transaction");
|
return _("transaction commit attempt when database is not locked");
|
||||||
case PM_ERR_TRANS_DOWNLOADING:
|
|
||||||
return _("could not download all files");
|
|
||||||
/* Packages */
|
/* Packages */
|
||||||
case PM_ERR_PKG_NOT_FOUND:
|
case PM_ERR_PKG_NOT_FOUND:
|
||||||
return _("could not find or read package");
|
return _("could not find or read package");
|
||||||
|
case PM_ERR_PKG_IGNORED:
|
||||||
|
return _("operation cancelled due to ignorepkg");
|
||||||
case PM_ERR_PKG_INVALID:
|
case PM_ERR_PKG_INVALID:
|
||||||
return _("invalid or corrupted package");
|
return _("invalid or corrupted package");
|
||||||
case PM_ERR_PKG_OPEN:
|
case PM_ERR_PKG_OPEN:
|
||||||
return _("cannot open package file");
|
return _("cannot open package file");
|
||||||
case PM_ERR_PKG_LOAD:
|
|
||||||
return _("cannot load package data");
|
|
||||||
case PM_ERR_PKG_CANT_FRESH:
|
|
||||||
return _("package not installed or lesser version");
|
|
||||||
case PM_ERR_PKG_CANT_REMOVE:
|
case PM_ERR_PKG_CANT_REMOVE:
|
||||||
return _("cannot remove all files for package");
|
return _("cannot remove all files for package");
|
||||||
case PM_ERR_PKG_INVALID_NAME:
|
case PM_ERR_PKG_INVALID_NAME:
|
||||||
@@ -128,9 +124,6 @@ const char SYMEXPORT *alpm_strerror(int err)
|
|||||||
return _("invalid or corrupted delta");
|
return _("invalid or corrupted delta");
|
||||||
case PM_ERR_DLT_PATCHFAILED:
|
case PM_ERR_DLT_PATCHFAILED:
|
||||||
return _("delta patch failed");
|
return _("delta patch failed");
|
||||||
/* Groups */
|
|
||||||
case PM_ERR_GRP_NOT_FOUND:
|
|
||||||
return _("group not found");
|
|
||||||
/* Dependencies */
|
/* Dependencies */
|
||||||
case PM_ERR_UNSATISFIED_DEPS:
|
case PM_ERR_UNSATISFIED_DEPS:
|
||||||
return _("could not satisfy dependencies");
|
return _("could not satisfy dependencies");
|
||||||
@@ -139,13 +132,8 @@ const char SYMEXPORT *alpm_strerror(int err)
|
|||||||
case PM_ERR_FILE_CONFLICTS:
|
case PM_ERR_FILE_CONFLICTS:
|
||||||
return _("conflicting files");
|
return _("conflicting files");
|
||||||
/* Miscellaenous */
|
/* Miscellaenous */
|
||||||
case PM_ERR_USER_ABORT:
|
case PM_ERR_RETRIEVE:
|
||||||
return _("user aborted the operation");
|
return _("failed to retrieve some files");
|
||||||
case PM_ERR_INTERNAL_ERROR:
|
|
||||||
return _("internal error");
|
|
||||||
case PM_ERR_PKG_HOLD:
|
|
||||||
/* TODO wow this is not descriptive at all... what does this mean? */
|
|
||||||
return _("not confirmed");
|
|
||||||
case PM_ERR_INVALID_REGEX:
|
case PM_ERR_INVALID_REGEX:
|
||||||
return _("invalid regular expression");
|
return _("invalid regular expression");
|
||||||
/* Errors from external libraries- our own wrapper error */
|
/* Errors from external libraries- our own wrapper error */
|
||||||
@@ -154,9 +142,9 @@ const char SYMEXPORT *alpm_strerror(int err)
|
|||||||
* requires the archive struct, so we can't. Just use a generic
|
* requires the archive struct, so we can't. Just use a generic
|
||||||
* error string instead. */
|
* error string instead. */
|
||||||
return _("libarchive error");
|
return _("libarchive error");
|
||||||
case PM_ERR_LIBDOWNLOAD:
|
case PM_ERR_LIBFETCH:
|
||||||
#if defined(INTERNAL_DOWNLOAD)
|
#if defined(INTERNAL_DOWNLOAD)
|
||||||
return downloadLastErrString;
|
return fetchLastErrString;
|
||||||
#else
|
#else
|
||||||
/* obviously shouldn't get here... */
|
/* obviously shouldn't get here... */
|
||||||
return _("download library error");
|
return _("download library error");
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* graph.h - helpful graph structure and setup/teardown methods
|
* graph.h - helpful graph structure and setup/teardown methods
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2008 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@archlinux.org>
|
||||||
|
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* 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
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* group.c
|
* group.c
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@archlinux.org>
|
||||||
|
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* 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
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* group.h
|
* group.h
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@archlinux.org>
|
||||||
|
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* 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
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* handle.c
|
* handle.c
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@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 Aurelien Foret <orelien@chez.com>
|
||||||
* Copyright (c) 2005, 2006 by Miklos Vajna <vmiklos@frugalware.org>
|
* Copyright (c) 2005, 2006 by Miklos Vajna <vmiklos@frugalware.org>
|
||||||
*
|
*
|
||||||
@@ -48,16 +49,7 @@ pmhandle_t *_alpm_handle_new()
|
|||||||
ALPM_LOG_FUNC;
|
ALPM_LOG_FUNC;
|
||||||
|
|
||||||
CALLOC(handle, 1, sizeof(pmhandle_t), RET_ERR(PM_ERR_MEMORY, NULL));
|
CALLOC(handle, 1, sizeof(pmhandle_t), RET_ERR(PM_ERR_MEMORY, NULL));
|
||||||
|
|
||||||
handle->lckfd = -1;
|
handle->lckfd = -1;
|
||||||
handle->logstream = NULL;
|
|
||||||
|
|
||||||
handle->root = NULL;
|
|
||||||
handle->dbpath = NULL;
|
|
||||||
handle->cachedirs = NULL;
|
|
||||||
handle->lockfile = NULL;
|
|
||||||
handle->logfile = NULL;
|
|
||||||
handle->usedelta = 0;
|
|
||||||
|
|
||||||
return(handle);
|
return(handle);
|
||||||
}
|
}
|
||||||
@@ -87,12 +79,10 @@ void _alpm_handle_free(pmhandle_t *handle)
|
|||||||
FREELIST(handle->cachedirs);
|
FREELIST(handle->cachedirs);
|
||||||
FREE(handle->logfile);
|
FREE(handle->logfile);
|
||||||
FREE(handle->lockfile);
|
FREE(handle->lockfile);
|
||||||
FREE(handle->xfercommand);
|
|
||||||
FREELIST(handle->dbs_sync);
|
FREELIST(handle->dbs_sync);
|
||||||
FREELIST(handle->noupgrade);
|
FREELIST(handle->noupgrade);
|
||||||
FREELIST(handle->noextract);
|
FREELIST(handle->noextract);
|
||||||
FREELIST(handle->ignorepkg);
|
FREELIST(handle->ignorepkg);
|
||||||
FREELIST(handle->holdpkg);
|
|
||||||
FREELIST(handle->ignoregrp);
|
FREELIST(handle->ignoregrp);
|
||||||
FREE(handle);
|
FREE(handle);
|
||||||
}
|
}
|
||||||
@@ -115,6 +105,15 @@ alpm_cb_download SYMEXPORT alpm_option_get_dlcb()
|
|||||||
return handle->dlcb;
|
return handle->dlcb;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
alpm_cb_fetch SYMEXPORT alpm_option_get_fetchcb()
|
||||||
|
{
|
||||||
|
if (handle == NULL) {
|
||||||
|
pm_errno = PM_ERR_HANDLE_NULL;
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
return handle->fetchcb;
|
||||||
|
}
|
||||||
|
|
||||||
alpm_cb_totaldl SYMEXPORT alpm_option_get_totaldlcb()
|
alpm_cb_totaldl SYMEXPORT alpm_option_get_totaldlcb()
|
||||||
{
|
{
|
||||||
if (handle == NULL) {
|
if (handle == NULL) {
|
||||||
@@ -205,15 +204,6 @@ alpm_list_t SYMEXPORT *alpm_option_get_ignorepkgs()
|
|||||||
return handle->ignorepkg;
|
return handle->ignorepkg;
|
||||||
}
|
}
|
||||||
|
|
||||||
alpm_list_t SYMEXPORT *alpm_option_get_holdpkgs()
|
|
||||||
{
|
|
||||||
if (handle == NULL) {
|
|
||||||
pm_errno = PM_ERR_HANDLE_NULL;
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
return handle->holdpkg;
|
|
||||||
}
|
|
||||||
|
|
||||||
alpm_list_t SYMEXPORT *alpm_option_get_ignoregrps()
|
alpm_list_t SYMEXPORT *alpm_option_get_ignoregrps()
|
||||||
{
|
{
|
||||||
if (handle == NULL) {
|
if (handle == NULL) {
|
||||||
@@ -223,15 +213,6 @@ alpm_list_t SYMEXPORT *alpm_option_get_ignoregrps()
|
|||||||
return handle->ignoregrp;
|
return handle->ignoregrp;
|
||||||
}
|
}
|
||||||
|
|
||||||
const char SYMEXPORT *alpm_option_get_xfercommand()
|
|
||||||
{
|
|
||||||
if (handle == NULL) {
|
|
||||||
pm_errno = PM_ERR_HANDLE_NULL;
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
return handle->xfercommand;
|
|
||||||
}
|
|
||||||
|
|
||||||
unsigned short SYMEXPORT alpm_option_get_nopassiveftp()
|
unsigned short SYMEXPORT alpm_option_get_nopassiveftp()
|
||||||
{
|
{
|
||||||
if (handle == NULL) {
|
if (handle == NULL) {
|
||||||
@@ -277,6 +258,15 @@ void SYMEXPORT alpm_option_set_dlcb(alpm_cb_download cb)
|
|||||||
handle->dlcb = cb;
|
handle->dlcb = cb;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void SYMEXPORT alpm_option_set_fetchcb(alpm_cb_fetch cb)
|
||||||
|
{
|
||||||
|
if (handle == NULL) {
|
||||||
|
pm_errno = PM_ERR_HANDLE_NULL;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
handle->fetchcb = cb;
|
||||||
|
}
|
||||||
|
|
||||||
void SYMEXPORT alpm_option_set_totaldlcb(alpm_cb_totaldl cb)
|
void SYMEXPORT alpm_option_set_totaldlcb(alpm_cb_totaldl cb)
|
||||||
{
|
{
|
||||||
if (handle == NULL) {
|
if (handle == NULL) {
|
||||||
@@ -305,6 +295,7 @@ int SYMEXPORT alpm_option_set_root(const char *root)
|
|||||||
|
|
||||||
realroot = calloc(PATH_MAX+1, sizeof(char));
|
realroot = calloc(PATH_MAX+1, sizeof(char));
|
||||||
if(!realpath(root, realroot)) {
|
if(!realpath(root, realroot)) {
|
||||||
|
FREE(realroot);
|
||||||
pm_errno = PM_ERR_NOT_A_DIR;
|
pm_errno = PM_ERR_NOT_A_DIR;
|
||||||
return(-1);
|
return(-1);
|
||||||
}
|
}
|
||||||
@@ -516,28 +507,6 @@ int SYMEXPORT alpm_option_remove_ignorepkg(const char *pkg)
|
|||||||
return(0);
|
return(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
void SYMEXPORT alpm_option_add_holdpkg(const char *pkg)
|
|
||||||
{
|
|
||||||
handle->holdpkg = alpm_list_add(handle->holdpkg, strdup(pkg));
|
|
||||||
}
|
|
||||||
|
|
||||||
void SYMEXPORT alpm_option_set_holdpkgs(alpm_list_t *holdpkgs)
|
|
||||||
{
|
|
||||||
if(handle->holdpkg) FREELIST(handle->holdpkg);
|
|
||||||
if(holdpkgs) handle->holdpkg = holdpkgs;
|
|
||||||
}
|
|
||||||
|
|
||||||
int SYMEXPORT alpm_option_remove_holdpkg(const char *pkg)
|
|
||||||
{
|
|
||||||
char *vdata = NULL;
|
|
||||||
handle->holdpkg = alpm_list_remove_str(handle->holdpkg, pkg, &vdata);
|
|
||||||
if(vdata != NULL) {
|
|
||||||
FREE(vdata);
|
|
||||||
return(1);
|
|
||||||
}
|
|
||||||
return(0);
|
|
||||||
}
|
|
||||||
|
|
||||||
void SYMEXPORT alpm_option_add_ignoregrp(const char *grp)
|
void SYMEXPORT alpm_option_add_ignoregrp(const char *grp)
|
||||||
{
|
{
|
||||||
handle->ignoregrp = alpm_list_add(handle->ignoregrp, strdup(grp));
|
handle->ignoregrp = alpm_list_add(handle->ignoregrp, strdup(grp));
|
||||||
@@ -560,12 +529,6 @@ int SYMEXPORT alpm_option_remove_ignoregrp(const char *grp)
|
|||||||
return(0);
|
return(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
void SYMEXPORT alpm_option_set_xfercommand(const char *cmd)
|
|
||||||
{
|
|
||||||
if(handle->xfercommand) FREE(handle->xfercommand);
|
|
||||||
if(cmd) handle->xfercommand = strdup(cmd);
|
|
||||||
}
|
|
||||||
|
|
||||||
void SYMEXPORT alpm_option_set_nopassiveftp(unsigned short nopasv)
|
void SYMEXPORT alpm_option_set_nopassiveftp(unsigned short nopasv)
|
||||||
{
|
{
|
||||||
handle->nopassiveftp = nopasv;
|
handle->nopassiveftp = nopasv;
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* handle.h
|
* handle.h
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@archlinux.org>
|
||||||
|
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* 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
|
* it under the terms of the GNU General Public License as published by
|
||||||
@@ -40,6 +41,7 @@ typedef struct _pmhandle_t {
|
|||||||
alpm_cb_log logcb; /* Log callback function */
|
alpm_cb_log logcb; /* Log callback function */
|
||||||
alpm_cb_download dlcb; /* Download callback function */
|
alpm_cb_download dlcb; /* Download callback function */
|
||||||
alpm_cb_totaldl totaldlcb; /* Total download callback function */
|
alpm_cb_totaldl totaldlcb; /* Total download callback function */
|
||||||
|
alpm_cb_fetch fetchcb; /* Download file callback function */
|
||||||
|
|
||||||
/* filesystem paths */
|
/* filesystem paths */
|
||||||
char *root; /* Root path, default '/' */
|
char *root; /* Root path, default '/' */
|
||||||
@@ -52,13 +54,11 @@ typedef struct _pmhandle_t {
|
|||||||
alpm_list_t *noupgrade; /* List of packages NOT to be upgraded */
|
alpm_list_t *noupgrade; /* List of packages NOT to be upgraded */
|
||||||
alpm_list_t *noextract; /* List of files NOT to extract */
|
alpm_list_t *noextract; /* List of files NOT to extract */
|
||||||
alpm_list_t *ignorepkg; /* List of packages to ignore */
|
alpm_list_t *ignorepkg; /* List of packages to ignore */
|
||||||
alpm_list_t *holdpkg; /* List of packages which 'hold' pacman */
|
|
||||||
alpm_list_t *ignoregrp; /* List of groups to ignore */
|
alpm_list_t *ignoregrp; /* List of groups to ignore */
|
||||||
|
|
||||||
/* options */
|
/* options */
|
||||||
unsigned short usesyslog; /* Use syslog instead of logfile? */ /* TODO move to frontend */
|
unsigned short usesyslog; /* Use syslog instead of logfile? */ /* TODO move to frontend */
|
||||||
unsigned short nopassiveftp; /* Don't use PASV ftp connections */
|
unsigned short nopassiveftp; /* Don't use PASV ftp connections */
|
||||||
char *xfercommand; /* External download command */
|
|
||||||
unsigned short usedelta; /* Download deltas if possible */
|
unsigned short usedelta; /* Download deltas if possible */
|
||||||
} pmhandle_t;
|
} pmhandle_t;
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* log.c
|
* log.c
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@archlinux.org>
|
||||||
|
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* 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
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* log.h
|
* log.h
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@archlinux.org>
|
||||||
|
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* 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
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
|||||||
@@ -248,7 +248,7 @@ static inline void md5_update( md5_context *ctx, unsigned char *input, int ilen
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static const unsigned char md5_padding[64] =
|
static unsigned char md5_padding[64] =
|
||||||
{
|
{
|
||||||
0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* package.c
|
* package.c
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@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 Aurelien Foret <orelien@chez.com>
|
||||||
* Copyright (c) 2005, 2006 by Christian Hamar <krics@linuxforum.hu>
|
* Copyright (c) 2005, 2006 by Christian Hamar <krics@linuxforum.hu>
|
||||||
* Copyright (c) 2005, 2006 by Miklos Vajna <vmiklos@frugalware.org>
|
* Copyright (c) 2005, 2006 by Miklos Vajna <vmiklos@frugalware.org>
|
||||||
@@ -422,6 +423,22 @@ alpm_list_t SYMEXPORT *alpm_pkg_get_backup(pmpkg_t *pkg)
|
|||||||
return pkg->backup;
|
return pkg->backup;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
alpm_list_t SYMEXPORT *alpm_pkg_get_removes(pmpkg_t *pkg)
|
||||||
|
{
|
||||||
|
ASSERT(pkg != NULL, return(NULL));
|
||||||
|
|
||||||
|
return(pkg->removes);
|
||||||
|
}
|
||||||
|
|
||||||
|
pmdb_t SYMEXPORT *alpm_pkg_get_db(pmpkg_t *pkg)
|
||||||
|
{
|
||||||
|
/* Sanity checks */
|
||||||
|
ASSERT(pkg != NULL, return(NULL));
|
||||||
|
ASSERT(pkg->origin == PKG_FROM_CACHE, return(NULL));
|
||||||
|
|
||||||
|
return(pkg->origin_data.db);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Open a package changelog for reading. Similar to fopen in functionality,
|
* Open a package changelog for reading. Similar to fopen in functionality,
|
||||||
* except that the returned 'file stream' could really be from an archive
|
* except that the returned 'file stream' could really be from an archive
|
||||||
@@ -833,6 +850,7 @@ void _alpm_pkg_free(pmpkg_t *pkg)
|
|||||||
alpm_list_free_inner(pkg->deltas, (alpm_list_fn_free)_alpm_delta_free);
|
alpm_list_free_inner(pkg->deltas, (alpm_list_fn_free)_alpm_delta_free);
|
||||||
alpm_list_free(pkg->deltas);
|
alpm_list_free(pkg->deltas);
|
||||||
alpm_list_free(pkg->delta_path);
|
alpm_list_free(pkg->delta_path);
|
||||||
|
alpm_list_free(pkg->removes);
|
||||||
|
|
||||||
if(pkg->origin == PKG_FROM_FILE) {
|
if(pkg->origin == PKG_FROM_FILE) {
|
||||||
FREE(pkg->origin_data.file);
|
FREE(pkg->origin_data.file);
|
||||||
@@ -840,6 +858,19 @@ void _alpm_pkg_free(pmpkg_t *pkg)
|
|||||||
FREE(pkg);
|
FREE(pkg);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Free transaction specific fields */
|
||||||
|
void _alpm_pkg_free_trans(pmpkg_t *pkg)
|
||||||
|
{
|
||||||
|
ALPM_LOG_FUNC;
|
||||||
|
|
||||||
|
if(pkg == NULL) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
alpm_list_free(pkg->removes);
|
||||||
|
pkg->removes = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
/* Is spkg an upgrade for locapkg? */
|
/* Is spkg an upgrade for locapkg? */
|
||||||
int _alpm_pkg_compare_versions(pmpkg_t *spkg, pmpkg_t *localpkg)
|
int _alpm_pkg_compare_versions(pmpkg_t *spkg, pmpkg_t *localpkg)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* package.h
|
* package.h
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@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 Aurelien Foret <orelien@chez.com>
|
||||||
* Copyright (c) 2006 by David Kimpe <dnaku@frugalware.org>
|
* Copyright (c) 2006 by David Kimpe <dnaku@frugalware.org>
|
||||||
* Copyright (c) 2005, 2006 by Christian Hamar <krics@linuxforum.hu>
|
* Copyright (c) 2005, 2006 by Christian Hamar <krics@linuxforum.hu>
|
||||||
@@ -62,6 +63,7 @@ struct __pmpkg_t {
|
|||||||
alpm_list_t *provides;
|
alpm_list_t *provides;
|
||||||
alpm_list_t *deltas;
|
alpm_list_t *deltas;
|
||||||
alpm_list_t *delta_path;
|
alpm_list_t *delta_path;
|
||||||
|
alpm_list_t *removes; /* in transaction targets only */
|
||||||
/* internal */
|
/* internal */
|
||||||
pmpkgfrom_t origin;
|
pmpkgfrom_t origin;
|
||||||
/* Replaced 'void *data' with this union as follows:
|
/* Replaced 'void *data' with this union as follows:
|
||||||
@@ -78,6 +80,7 @@ struct __pmpkg_t {
|
|||||||
pmpkg_t* _alpm_pkg_new(void);
|
pmpkg_t* _alpm_pkg_new(void);
|
||||||
pmpkg_t *_alpm_pkg_dup(pmpkg_t *pkg);
|
pmpkg_t *_alpm_pkg_dup(pmpkg_t *pkg);
|
||||||
void _alpm_pkg_free(pmpkg_t *pkg);
|
void _alpm_pkg_free(pmpkg_t *pkg);
|
||||||
|
void _alpm_pkg_free_trans(pmpkg_t *pkg);
|
||||||
int _alpm_pkg_cmp(const void *p1, const void *p2);
|
int _alpm_pkg_cmp(const void *p1, const void *p2);
|
||||||
int _alpm_pkg_compare_versions(pmpkg_t *local_pkg, pmpkg_t *pkg);
|
int _alpm_pkg_compare_versions(pmpkg_t *local_pkg, pmpkg_t *pkg);
|
||||||
pmpkg_t *_alpm_pkg_find(alpm_list_t *haystack, const char *needle);
|
pmpkg_t *_alpm_pkg_find(alpm_list_t *haystack, const char *needle);
|
||||||
|
|||||||
@@ -6,8 +6,10 @@ es
|
|||||||
fr
|
fr
|
||||||
hu
|
hu
|
||||||
it
|
it
|
||||||
|
kk
|
||||||
pl
|
pl
|
||||||
pt_BR
|
pt_BR
|
||||||
|
ro
|
||||||
ru
|
ru
|
||||||
tr
|
tr
|
||||||
uk
|
uk
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ XGETTEXT_OPTIONS = --no-location \
|
|||||||
# This is the copyright holder that gets inserted into the header of the
|
# 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
|
# $(DOMAIN).pot file. Set this to the copyright holder of the surrounding
|
||||||
# package.
|
# package.
|
||||||
COPYRIGHT_HOLDER = Judd Vinet <jvinet@zeroflux.org>
|
COPYRIGHT_HOLDER = Pacman Development Team <pacman-dev@archlinux.org>
|
||||||
|
|
||||||
# This is the email address or URL to which the translators shall report
|
# This is the email address or URL to which the translators shall report
|
||||||
# bugs in the untranslated strings.
|
# bugs in the untranslated strings.
|
||||||
|
|||||||
@@ -7,14 +7,14 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: cs\n"
|
"Project-Id-Version: cs\n"
|
||||||
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
||||||
"POT-Creation-Date: 2008-08-23 10:54-0500\n"
|
"POT-Creation-Date: 2009-07-27 21:15-0500\n"
|
||||||
"PO-Revision-Date: 2009-01-04 21:59+0100\n"
|
"PO-Revision-Date: 2009-07-29 14:14+0200\n"
|
||||||
"Last-Translator: Vojtěch Gondžala <vojtech.gondzala@gmail.com>\n"
|
"Last-Translator: Vojtěch Gondžala <vojtech.gondzala@gmail.com>\n"
|
||||||
"Language-Team: Čeština\n"
|
"Language-Team: Czech <kde-i18n-doc@kde.org>\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"X-Generator: KBabel 1.11.4\n"
|
"X-Generator: Lokalize 1.0\n"
|
||||||
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
|
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
@@ -49,14 +49,14 @@ msgstr ""
|
|||||||
"přístupová práva adresáře %s se neshodují\n"
|
"přístupová práva adresáře %s se neshodují\n"
|
||||||
"souborový systém: %o balíček: %o\n"
|
"souborový systém: %o balíček: %o\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "extract: symlink %s does not point to dir\n"
|
|
||||||
msgstr "rozbalení: symbolický odkaz %s neodkazuje na adresář\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "extract: not overwriting dir with file %s\n"
|
msgid "extract: not overwriting dir with file %s\n"
|
||||||
msgstr "rozbalení: adresář nebyl přepsán souborem %s\n"
|
msgstr "rozbalení: adresář nebyl přepsán souborem %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "extract: symlink %s does not point to dir\n"
|
||||||
|
msgstr "rozbalení: symbolický odkaz %s neodkazuje na adresář\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not extract %s (%s)\n"
|
msgid "could not extract %s (%s)\n"
|
||||||
msgstr "nelze rozbalit %s (%s)\n"
|
msgstr "nelze rozbalit %s (%s)\n"
|
||||||
@@ -102,8 +102,8 @@ msgid "could not add entry '%s' in cache\n"
|
|||||||
msgstr "nelze přidat položku '%s' do cache\n"
|
msgstr "nelze přidat položku '%s' do cache\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not remove database entry %s%s\n"
|
msgid "could not remove database %s\n"
|
||||||
msgstr "nelze odstranit záznam v databázi %s%s\n"
|
msgstr "nelze odstranit záznam v databázi %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid name for database entry '%s'\n"
|
msgid "invalid name for database entry '%s'\n"
|
||||||
@@ -125,6 +125,10 @@ msgstr "databáze %s je nekonzistentní: nesouhlasí jméno balíčku %s\n"
|
|||||||
msgid "%s database is inconsistent: version mismatch on package %s\n"
|
msgid "%s database is inconsistent: version mismatch on package %s\n"
|
||||||
msgstr "databáze %s je nekonzistentní: nesouhlasí verze balíčku %s\n"
|
msgstr "databáze %s je nekonzistentní: nesouhlasí verze balíčku %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create directory %s: %s\n"
|
||||||
|
msgstr "nelze změnit adresář %s: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not parse package description file in %s\n"
|
msgid "could not parse package description file in %s\n"
|
||||||
msgstr "nelze zpracovat soubor s popisem balíčku v %s\n"
|
msgstr "nelze zpracovat soubor s popisem balíčku v %s\n"
|
||||||
@@ -165,6 +169,10 @@ msgstr "%s bude odstraněn po %s, na kterém závisí\n"
|
|||||||
msgid "%s will be installed before its %s dependency\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"
|
msgstr "%s bude nainstalován před %s, na kterém závisí\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "ignoring package %s-%s\n"
|
||||||
|
msgstr "ignoruje se balíček %s-%s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "provider package was selected (%s provides %s)\n"
|
msgid "provider package was selected (%s provides %s)\n"
|
||||||
msgstr "byl vybrán nahrazující balíček (%s poskytuje %s)\n"
|
msgstr "byl vybrán nahrazující balíček (%s poskytuje %s)\n"
|
||||||
@@ -197,21 +205,13 @@ msgstr "nelze navázat stahování, začíná se znovu\n"
|
|||||||
msgid "cannot write to file '%s'\n"
|
msgid "cannot write to file '%s'\n"
|
||||||
msgstr "nelze zapisovat do souboru '%s'\n"
|
msgstr "nelze zapisovat do souboru '%s'\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "error downloading '%s': %s\n"
|
|
||||||
msgstr "chyba při stahování '%s': %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "error writing to file '%s': %s\n"
|
msgid "error writing to file '%s': %s\n"
|
||||||
msgstr "chyba při zápisu do souboru '%s': %s\n"
|
msgstr "chyba při zápisu do souboru '%s': %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not chdir to %s\n"
|
msgid "%s appears to be truncated: %jd/%jd bytes\n"
|
||||||
msgstr "nelze změnit adresář na %s\n"
|
msgstr "%s se zdá být zkrácen: %jd/%jd bytů\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "running XferCommand: fork failed!\n"
|
|
||||||
msgstr "spouští se XferCommand: větvení selhalo!\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to download %s\n"
|
msgid "failed to download %s\n"
|
||||||
@@ -285,6 +285,10 @@ msgstr "nelze odstranit záznam v databázi"
|
|||||||
msgid "invalid url for server"
|
msgid "invalid url for server"
|
||||||
msgstr "nesprávná URL pro server"
|
msgstr "nesprávná URL pro server"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "no servers configured for repository"
|
||||||
|
msgstr "pro repositář nejsou nastaveny žádné servery"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "transaction already initialized"
|
msgid "transaction already initialized"
|
||||||
msgstr "transakce inicializována"
|
msgstr "transakce inicializována"
|
||||||
@@ -310,17 +314,17 @@ msgid "operation not compatible with the transaction type"
|
|||||||
msgstr "operace není kompatibilní s typem transakce"
|
msgstr "operace není kompatibilní s typem transakce"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction"
|
msgid "transaction commit attempt when database is not locked"
|
||||||
msgstr "nelze provést transakci"
|
msgstr "pokus o uskutečnění transakce v době, kdy není uzamčena databáze"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not download all files"
|
|
||||||
msgstr "nelze stáhnout všechny soubory"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not find or read package"
|
msgid "could not find or read package"
|
||||||
msgstr "nelze nalézt nebo přečíst balíček"
|
msgstr "nelze nalézt nebo přečíst balíček"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "operation cancelled due to ignorepkg"
|
||||||
|
msgstr "operace byla zrušena kvůli ignorovanému balíčku"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid or corrupted package"
|
msgid "invalid or corrupted package"
|
||||||
msgstr "neplatný nebo poškozený balíček"
|
msgstr "neplatný nebo poškozený balíček"
|
||||||
@@ -329,14 +333,6 @@ msgstr "neplatný nebo poškozený balíček"
|
|||||||
msgid "cannot open package file"
|
msgid "cannot open package file"
|
||||||
msgstr "nelze otevřít soubor balíčku"
|
msgstr "nelze otevřít soubor balíčku"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "cannot load package data"
|
|
||||||
msgstr "nelze načíst data z balíčku"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "package not installed or lesser version"
|
|
||||||
msgstr "balíček není nainstalovaný nebo má nižší verzi"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "cannot remove all files for package"
|
msgid "cannot remove all files for package"
|
||||||
msgstr "nelze odstranit všechny soubory balíčku"
|
msgstr "nelze odstranit všechny soubory balíčku"
|
||||||
@@ -357,10 +353,6 @@ msgstr "neplatný nebo poškozený delta rozdíl"
|
|||||||
msgid "delta patch failed"
|
msgid "delta patch failed"
|
||||||
msgstr "aplikace delta rozdílu selhala"
|
msgstr "aplikace delta rozdílu selhala"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "group not found"
|
|
||||||
msgstr "skupina nebyla nalezena"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not satisfy dependencies"
|
msgid "could not satisfy dependencies"
|
||||||
msgstr "nelze vyřešit závislosti"
|
msgstr "nelze vyřešit závislosti"
|
||||||
@@ -374,16 +366,8 @@ msgid "conflicting files"
|
|||||||
msgstr "konfliktní soubory"
|
msgstr "konfliktní soubory"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "user aborted the operation"
|
msgid "failed to retrieve some files"
|
||||||
msgstr "uživatel zrušil operaci"
|
msgstr "selhalo získání některých souborů"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "internal error"
|
|
||||||
msgstr "interní chyba"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "not confirmed"
|
|
||||||
msgstr "nepotvrzeno"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid regular expression"
|
msgid "invalid regular expression"
|
||||||
@@ -422,16 +406,28 @@ msgid "could not remove entry '%s' from cache\n"
|
|||||||
msgstr "nelze odstranit položku '%s' z cache\n"
|
msgstr "nelze odstranit položku '%s' z cache\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
||||||
msgstr "%s-%s: ignoruje se aktualizace balíčku (měl být nahrazen %s-%s)\n"
|
msgstr "%s: ignoruje se aktualizace balíčku (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: ignoring package downgrade (%s => %s)\n"
|
||||||
|
msgstr "%s: ignoruje se ponížení verze balíčku (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: downgrading from version %s to version %s\n"
|
||||||
|
msgstr "%s: ponížení z verze %s na verzi %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: local (%s) is newer than %s (%s)\n"
|
msgid "%s: local (%s) is newer than %s (%s)\n"
|
||||||
msgstr "%s: lokální verze (%s) je novější než v %s (%s)\n"
|
msgstr "%s: lokální verze (%s) je novější než v %s (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
|
||||||
msgstr "%s: ignoruje se aktualizace balíčku (%s => %s)\n"
|
msgstr "ignoruje se náhrada balíčku (%s-%s => %s-%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot replace %s by %s\n"
|
||||||
|
msgstr "nelze nahradit soubor %s souborem %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "repository '%s' not found\n"
|
msgid "repository '%s' not found\n"
|
||||||
@@ -457,10 +453,6 @@ msgstr "zjištěn konflikt nerozlišitelných balíčků\n"
|
|||||||
msgid "removing '%s' from target list because it conflicts with '%s'\n"
|
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"
|
msgstr "'%s' odstraněn ze seznamu cílů, protože je konfliktní s '%s'\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "command: %s\n"
|
|
||||||
msgstr "příkaz: %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to retrieve some files from %s\n"
|
msgid "failed to retrieve some files from %s\n"
|
||||||
msgstr "selhalo získání některých souborů z %s\n"
|
msgstr "selhalo získání některých souborů z %s\n"
|
||||||
@@ -469,10 +461,18 @@ msgstr "selhalo získání některých souborů z %s\n"
|
|||||||
msgid "could not create removal transaction\n"
|
msgid "could not create removal transaction\n"
|
||||||
msgstr "nelze vytvořit transakci pro odstranění\n"
|
msgstr "nelze vytvořit transakci pro odstranění\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create transaction\n"
|
||||||
|
msgstr "nelze vytvořit transakci\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not initialize the removal transaction\n"
|
msgid "could not initialize the removal transaction\n"
|
||||||
msgstr "nelze inicializovat transakci pro odstranění\n"
|
msgstr "nelze inicializovat transakci pro odstranění\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not initialize transaction\n"
|
||||||
|
msgstr "nelze inicializovat transakci\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not prepare removal transaction\n"
|
msgid "could not prepare removal transaction\n"
|
||||||
msgstr "nelze připravit transakci pro odstranění\n"
|
msgstr "nelze připravit transakci pro odstranění\n"
|
||||||
@@ -481,18 +481,6 @@ msgstr "nelze připravit transakci pro odstranění\n"
|
|||||||
msgid "could not commit removal transaction\n"
|
msgid "could not commit removal transaction\n"
|
||||||
msgstr "nelze provést transakci pro odstranění\n"
|
msgstr "nelze provést transakci pro odstranění\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not create transaction\n"
|
|
||||||
msgstr "nelze vytvořit transakci\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not initialize transaction\n"
|
|
||||||
msgstr "nelze inicializovat transakci\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not prepare transaction\n"
|
|
||||||
msgstr "nelze připravit transakci\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction\n"
|
msgid "could not commit transaction\n"
|
||||||
msgstr "nelze provést transakci\n"
|
msgstr "nelze provést transakci\n"
|
||||||
@@ -501,10 +489,6 @@ msgstr "nelze provést transakci\n"
|
|||||||
msgid "could not remove lock file %s\n"
|
msgid "could not remove lock file %s\n"
|
||||||
msgstr "nelze odstranit zamykací soubor %s\n"
|
msgstr "nelze odstranit zamykací soubor %s\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "No /bin/sh in parent environment, aborting scriptlet\n"
|
|
||||||
msgstr "V rodičovském prostředí chybí /bin/sh, ruší se provádění skriptů\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not create temp directory\n"
|
msgid "could not create temp directory\n"
|
||||||
msgstr "nelze vytvořit dočasný adresář\n"
|
msgstr "nelze vytvořit dočasný adresář\n"
|
||||||
@@ -513,6 +497,14 @@ msgstr "nelze vytvořit dočasný adresář\n"
|
|||||||
msgid "could not copy tempfile to %s (%s)\n"
|
msgid "could not copy tempfile to %s (%s)\n"
|
||||||
msgstr "nelze zkopírovat dočasný soubor do %s (%s)\n"
|
msgstr "nelze zkopírovat dočasný soubor do %s (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove tmpdir %s\n"
|
||||||
|
msgstr "nelze odstranit dočasný adresář %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not open %s: %s\n"
|
||||||
|
msgstr "nelze otevřít %s: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not change directory to %s (%s)\n"
|
msgid "could not change directory to %s (%s)\n"
|
||||||
msgstr "nelze změnit adresář na %s (%s)\n"
|
msgstr "nelze změnit adresář na %s (%s)\n"
|
||||||
@@ -538,16 +530,8 @@ msgid "call to waitpid failed (%s)\n"
|
|||||||
msgstr "volání waitpid selhalo (%s)\n"
|
msgstr "volání waitpid selhalo (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "scriptlet failed to execute correctly\n"
|
msgid "command failed to execute correctly\n"
|
||||||
msgstr "skript se nepodařilo spustit správně\n"
|
msgstr "příkaz se nepodařilo spustit správně\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not remove tmpdir %s\n"
|
|
||||||
msgstr "nelze odstranit dočasný adresář %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not open %s: %s\n"
|
|
||||||
msgstr "nelze otevřít %s: %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "no %s cache exists, creating...\n"
|
msgid "no %s cache exists, creating...\n"
|
||||||
@@ -556,3 +540,48 @@ msgstr "neexistuje cache %s, vytváří se...\n"
|
|||||||
#, c-format
|
#, c-format
|
||||||
msgid "couldn't create package cache, using /tmp instead\n"
|
msgid "couldn't create package cache, using /tmp instead\n"
|
||||||
msgstr "nelze vytvořit cache balíčků, používá se /tmp\n"
|
msgstr "nelze vytvořit cache balíčků, používá se /tmp\n"
|
||||||
|
|
||||||
|
#~ msgid "error downloading '%s': %s\n"
|
||||||
|
#~ msgstr "chyba při stahování '%s': %s\n"
|
||||||
|
|
||||||
|
#~ msgid "could not chdir to %s\n"
|
||||||
|
#~ msgstr "nelze změnit adresář na %s\n"
|
||||||
|
|
||||||
|
#~ msgid "running XferCommand: fork failed!\n"
|
||||||
|
#~ msgstr "spouští se XferCommand: větvení selhalo!\n"
|
||||||
|
|
||||||
|
#~ msgid "could not commit transaction"
|
||||||
|
#~ msgstr "nelze provést transakci"
|
||||||
|
|
||||||
|
#~ msgid "could not download all files"
|
||||||
|
#~ msgstr "nelze stáhnout všechny soubory"
|
||||||
|
|
||||||
|
#~ msgid "cannot load package data"
|
||||||
|
#~ msgstr "nelze načíst data z balíčku"
|
||||||
|
|
||||||
|
#~ msgid "package not installed or lesser version"
|
||||||
|
#~ msgstr "balíček není nainstalovaný nebo má nižší verzi"
|
||||||
|
|
||||||
|
#~ msgid "group not found"
|
||||||
|
#~ msgstr "skupina nebyla nalezena"
|
||||||
|
|
||||||
|
#~ msgid "user aborted the operation"
|
||||||
|
#~ msgstr "uživatel zrušil operaci"
|
||||||
|
|
||||||
|
#~ msgid "internal error"
|
||||||
|
#~ msgstr "interní chyba"
|
||||||
|
|
||||||
|
#~ msgid "not confirmed"
|
||||||
|
#~ msgstr "nepotvrzeno"
|
||||||
|
|
||||||
|
#~ msgid "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
||||||
|
#~ msgstr "%s-%s: ignoruje se aktualizace balíčku (měl být nahrazen %s-%s)\n"
|
||||||
|
|
||||||
|
#~ msgid "command: %s\n"
|
||||||
|
#~ msgstr "příkaz: %s\n"
|
||||||
|
|
||||||
|
#~ msgid "could not prepare transaction\n"
|
||||||
|
#~ msgstr "nelze připravit transakci\n"
|
||||||
|
|
||||||
|
#~ msgid "No /bin/sh in parent environment, aborting scriptlet\n"
|
||||||
|
#~ msgstr "V rodičovském prostředí chybí /bin/sh, ruší se provádění skriptů\n"
|
||||||
|
|||||||
@@ -6,13 +6,13 @@
|
|||||||
# Marcus Habermehl <bmh1980@frugalware.org>, 2006.
|
# Marcus Habermehl <bmh1980@frugalware.org>, 2006.
|
||||||
# Pierre Schmitz <pierre@archlinux.de>, 2007.
|
# Pierre Schmitz <pierre@archlinux.de>, 2007.
|
||||||
# Niclas Pfeifer <macwolf@archlinux.de>, 2007.
|
# Niclas Pfeifer <macwolf@archlinux.de>, 2007.
|
||||||
# Matthias Gorissen <matthias@archlinux.de>, 2008.
|
# Matthias Gorissen <matthias@archlinux.de>, 2008-2009.
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: de\n"
|
"Project-Id-Version: de\n"
|
||||||
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
||||||
"POT-Creation-Date: 2008-08-23 10:54-0500\n"
|
"POT-Creation-Date: 2009-07-27 21:15-0500\n"
|
||||||
"PO-Revision-Date: 2009-01-03 11:58+0100\n"
|
"PO-Revision-Date: 2009-07-29 16:09+0100\n"
|
||||||
"Last-Translator: Matthias Gorissen <matthias@archlinux.de>\n"
|
"Last-Translator: Matthias Gorissen <matthias@archlinux.de>\n"
|
||||||
"Language-Team: German <archlinux.de>\n"
|
"Language-Team: German <archlinux.de>\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -55,14 +55,14 @@ msgstr ""
|
|||||||
"Verzeichnis-Berechtigungen unterscheiden sich für %s\n"
|
"Verzeichnis-Berechtigungen unterscheiden sich für %s\n"
|
||||||
"Dateisystem: %o Paket: %o\n"
|
"Dateisystem: %o Paket: %o\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "extract: symlink %s does not point to dir\n"
|
|
||||||
msgstr "Entpacken: Symlink %s zeigt nicht zum Verzeichnis\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "extract: not overwriting dir with file %s\n"
|
msgid "extract: not overwriting dir with file %s\n"
|
||||||
msgstr "Entpacken: Überschreibe Verzeichnis nicht mit Datei %s\n"
|
msgstr "Entpacken: Überschreibe Verzeichnis nicht mit Datei %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "extract: symlink %s does not point to dir\n"
|
||||||
|
msgstr "Entpacken: Symlink %s zeigt nicht zum Verzeichnis\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not extract %s (%s)\n"
|
msgid "could not extract %s (%s)\n"
|
||||||
msgstr "Konnte %s nicht entpacken (%s)\n"
|
msgstr "Konnte %s nicht entpacken (%s)\n"
|
||||||
@@ -108,8 +108,8 @@ msgid "could not add entry '%s' in cache\n"
|
|||||||
msgstr "Konnte Eintrag '%s' nicht zum Pufferspeicher hinzufügen\n"
|
msgstr "Konnte Eintrag '%s' nicht zum Pufferspeicher hinzufügen\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not remove database entry %s%s\n"
|
msgid "could not remove database %s\n"
|
||||||
msgstr "Konnte Datenbank-Eintrag %s%s nicht entfernen\n"
|
msgstr "Konnte Datenbank %s nicht entfernen\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid name for database entry '%s'\n"
|
msgid "invalid name for database entry '%s'\n"
|
||||||
@@ -135,6 +135,10 @@ msgstr ""
|
|||||||
"Die Datenbank von %s ist inkonsistent: Die Versionsnummern für das Paket %s "
|
"Die Datenbank von %s ist inkonsistent: Die Versionsnummern für das Paket %s "
|
||||||
"stimmen nicht überein\n"
|
"stimmen nicht überein\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create directory %s: %s\n"
|
||||||
|
msgstr "Konnte Verzeichnis %s nicht erstellen: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not parse package description file in %s\n"
|
msgid "could not parse package description file in %s\n"
|
||||||
msgstr "Konnte Paket-Beschreibungsdatei in %s nicht analysieren\n"
|
msgstr "Konnte Paket-Beschreibungsdatei in %s nicht analysieren\n"
|
||||||
@@ -175,6 +179,10 @@ msgstr "%s wird nach seiner Abhängigkeit %s entfernt werden\n"
|
|||||||
msgid "%s will be installed before its %s dependency\n"
|
msgid "%s will be installed before its %s dependency\n"
|
||||||
msgstr "%s wird vor seiner Abhängigkeit %s installiert werden\n"
|
msgstr "%s wird vor seiner Abhängigkeit %s installiert werden\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "ignoring package %s-%s\n"
|
||||||
|
msgstr "Ignoriere Paket %s-%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "provider package was selected (%s provides %s)\n"
|
msgid "provider package was selected (%s provides %s)\n"
|
||||||
msgstr "Bereitstellendes Paket wurde ausgewählt (%s enthält %s)\n"
|
msgstr "Bereitstellendes Paket wurde ausgewählt (%s enthält %s)\n"
|
||||||
@@ -207,21 +215,13 @@ msgstr "Kann den Download nicht wieder aufnehmen, starte neu\n"
|
|||||||
msgid "cannot write to file '%s'\n"
|
msgid "cannot write to file '%s'\n"
|
||||||
msgstr "Kann Datei '%s' nicht beschreiben\n"
|
msgstr "Kann Datei '%s' nicht beschreiben\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "error downloading '%s': %s\n"
|
|
||||||
msgstr "Fehler beim Download von '%s': %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "error writing to file '%s': %s\n"
|
msgid "error writing to file '%s': %s\n"
|
||||||
msgstr "Fehler beim Beschreiben von Datei '%s': %s\n"
|
msgstr "Fehler beim Beschreiben von Datei '%s': %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not chdir to %s\n"
|
msgid "%s appears to be truncated: %jd/%jd bytes\n"
|
||||||
msgstr "Konnte nicht zu Verzeichnis %s wechseln\n"
|
msgstr "%s scheint verstümmelt zu sein: %jd/%jd Byte\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "running XferCommand: fork failed!\n"
|
|
||||||
msgstr "Nutze XferCommand: Zweig versagte!\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to download %s\n"
|
msgid "failed to download %s\n"
|
||||||
@@ -295,6 +295,10 @@ msgstr "Konnte Datenbank-Eintrag nicht entfernen"
|
|||||||
msgid "invalid url for server"
|
msgid "invalid url for server"
|
||||||
msgstr "Ungültige URL für den Server"
|
msgstr "Ungültige URL für den Server"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "no servers configured for repository"
|
||||||
|
msgstr "Es sind keine Server für dieses Repositorium definiert"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "transaction already initialized"
|
msgid "transaction already initialized"
|
||||||
msgstr "Vorgang bereits gestartet"
|
msgstr "Vorgang bereits gestartet"
|
||||||
@@ -320,17 +324,18 @@ msgid "operation not compatible with the transaction type"
|
|||||||
msgstr "Operation nicht mit dem Vorgangs-Typ kompatibel"
|
msgstr "Operation nicht mit dem Vorgangs-Typ kompatibel"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction"
|
msgid "transaction commit attempt when database is not locked"
|
||||||
msgstr "Konnte den Vorgang nicht durchführen"
|
msgstr ""
|
||||||
|
"Vorgang sollte übertragen werden, während die Datenbank nicht geschlossen war"
|
||||||
#, c-format
|
|
||||||
msgid "could not download all files"
|
|
||||||
msgstr "Konnte nicht alle Dateien herunterladen"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not find or read package"
|
msgid "could not find or read package"
|
||||||
msgstr "Konnte Paket nicht finden oder lesen"
|
msgstr "Konnte Paket nicht finden oder lesen"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "operation cancelled due to ignorepkg"
|
||||||
|
msgstr "Vorgang abgebrochen auf Grund von IgnorePkg"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid or corrupted package"
|
msgid "invalid or corrupted package"
|
||||||
msgstr "Ungültiges oder beschädigtes Paket"
|
msgstr "Ungültiges oder beschädigtes Paket"
|
||||||
@@ -339,14 +344,6 @@ msgstr "Ungültiges oder beschädigtes Paket"
|
|||||||
msgid "cannot open package file"
|
msgid "cannot open package file"
|
||||||
msgstr "Kann Paketdatei nicht öffnen"
|
msgstr "Kann Paketdatei nicht öffnen"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "cannot load package data"
|
|
||||||
msgstr "Kann Paketdaten nicht laden"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "package not installed or lesser version"
|
|
||||||
msgstr "Paket ist nicht installiert oder ältere Version"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "cannot remove all files for package"
|
msgid "cannot remove all files for package"
|
||||||
msgstr "Konnte nicht alle Dateien des Paketes entfernen"
|
msgstr "Konnte nicht alle Dateien des Paketes entfernen"
|
||||||
@@ -367,10 +364,6 @@ msgstr "Ungültiges oder beschädigtes Delta"
|
|||||||
msgid "delta patch failed"
|
msgid "delta patch failed"
|
||||||
msgstr "Delta-Patch versagte"
|
msgstr "Delta-Patch versagte"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "group not found"
|
|
||||||
msgstr "Gruppe nicht gefunden"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not satisfy dependencies"
|
msgid "could not satisfy dependencies"
|
||||||
msgstr "Kann Abhängigkeiten nicht erfüllen"
|
msgstr "Kann Abhängigkeiten nicht erfüllen"
|
||||||
@@ -384,16 +377,8 @@ msgid "conflicting files"
|
|||||||
msgstr "In Konflikt stehende Dateien"
|
msgstr "In Konflikt stehende Dateien"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "user aborted the operation"
|
msgid "failed to retrieve some files"
|
||||||
msgstr "Benutzer brach die Aktion ab"
|
msgstr "Konnte manche Dateien nicht übertragen"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "internal error"
|
|
||||||
msgstr "Interner Fehler"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "not confirmed"
|
|
||||||
msgstr "Nicht bestätigt"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid regular expression"
|
msgid "invalid regular expression"
|
||||||
@@ -432,16 +417,28 @@ msgid "could not remove entry '%s' from cache\n"
|
|||||||
msgstr "Konnte Eintrag '%s' nicht aus dem Puffer entfernen\n"
|
msgstr "Konnte Eintrag '%s' nicht aus dem Puffer entfernen\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
||||||
msgstr "%s-%s: Ignoriere zu aktualisierendes Paket (zu ersetzen durch %s-%s)\n"
|
msgstr "%s: Ignoriere Paket-Aktualisierung (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: ignoring package downgrade (%s => %s)\n"
|
||||||
|
msgstr "%s: Ignoriere Paket-Downgrade (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: downgrading from version %s to version %s\n"
|
||||||
|
msgstr "%s: Downgrade von Version %s zu Version %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: local (%s) is newer than %s (%s)\n"
|
msgid "%s: local (%s) is newer than %s (%s)\n"
|
||||||
msgstr "%s: Lokale Version (%s) ist neuer als %s (%s)\n"
|
msgstr "%s: Lokale Version (%s) ist neuer als %s (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
|
||||||
msgstr "%s: Ignoriere Paket-Aktualisierung (%s => %s)\n"
|
msgstr "Ignoriere Paket-Ersetzung (%s-%s => %s-%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot replace %s by %s\n"
|
||||||
|
msgstr "Kann %s nicht durch %s ersetzen\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "repository '%s' not found\n"
|
msgid "repository '%s' not found\n"
|
||||||
@@ -467,10 +464,6 @@ msgstr "Nicht lösbare Paketkonflikte gefunden\n"
|
|||||||
msgid "removing '%s' from target list because it conflicts with '%s'\n"
|
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"
|
msgstr "Entferne '%s' aus der Ziel-Liste, da es mit '%s' in Konflikt steht\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "command: %s\n"
|
|
||||||
msgstr "Befehl: %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to retrieve some files from %s\n"
|
msgid "failed to retrieve some files from %s\n"
|
||||||
msgstr "Konnte manche Dateien von %s nicht übertragen\n"
|
msgstr "Konnte manche Dateien von %s nicht übertragen\n"
|
||||||
@@ -479,10 +472,18 @@ msgstr "Konnte manche Dateien von %s nicht übertragen\n"
|
|||||||
msgid "could not create removal transaction\n"
|
msgid "could not create removal transaction\n"
|
||||||
msgstr "Konnte den Lösch-Vorgang nicht erstellen\n"
|
msgstr "Konnte den Lösch-Vorgang nicht erstellen\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create transaction\n"
|
||||||
|
msgstr "Konnte den Vorgang nicht erstellen\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not initialize the removal transaction\n"
|
msgid "could not initialize the removal transaction\n"
|
||||||
msgstr "Konnte den Lösch-Vorgang nicht beginnen\n"
|
msgstr "Konnte den Lösch-Vorgang nicht beginnen\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not initialize transaction\n"
|
||||||
|
msgstr "Konnte den Vorgang nicht beginnen\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not prepare removal transaction\n"
|
msgid "could not prepare removal transaction\n"
|
||||||
msgstr "Konnte Lösch-Vorgang nicht vorbereiten\n"
|
msgstr "Konnte Lösch-Vorgang nicht vorbereiten\n"
|
||||||
@@ -491,18 +492,6 @@ msgstr "Konnte Lösch-Vorgang nicht vorbereiten\n"
|
|||||||
msgid "could not commit removal transaction\n"
|
msgid "could not commit removal transaction\n"
|
||||||
msgstr "Konnte Lösch-Vorgang nicht durchführen\n"
|
msgstr "Konnte Lösch-Vorgang nicht durchführen\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not create transaction\n"
|
|
||||||
msgstr "Konnte den Vorgang nicht erstellen\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not initialize transaction\n"
|
|
||||||
msgstr "Konnte den Vorgang nicht beginnen\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not prepare transaction\n"
|
|
||||||
msgstr "Konnte den Vorgang nicht vorbereiten\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction\n"
|
msgid "could not commit transaction\n"
|
||||||
msgstr "Konnte den Vorgang nicht durchführen\n"
|
msgstr "Konnte den Vorgang nicht durchführen\n"
|
||||||
@@ -511,10 +500,6 @@ msgstr "Konnte den Vorgang nicht durchführen\n"
|
|||||||
msgid "could not remove lock file %s\n"
|
msgid "could not remove lock file %s\n"
|
||||||
msgstr "Konnte Sperrdatei %s nicht entfernen\n"
|
msgstr "Konnte Sperrdatei %s nicht entfernen\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "No /bin/sh in parent environment, aborting scriptlet\n"
|
|
||||||
msgstr "Kein /bin/sh im übergeordneten Verzeichnis, breche Skript ab\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not create temp directory\n"
|
msgid "could not create temp directory\n"
|
||||||
msgstr "Konnte temporäres Verzeichnis nicht erstellen\n"
|
msgstr "Konnte temporäres Verzeichnis nicht erstellen\n"
|
||||||
@@ -523,6 +508,14 @@ msgstr "Konnte temporäres Verzeichnis nicht erstellen\n"
|
|||||||
msgid "could not copy tempfile to %s (%s)\n"
|
msgid "could not copy tempfile to %s (%s)\n"
|
||||||
msgstr "Konnte temporäre Datei nicht nach %s kopieren (%s)\n"
|
msgstr "Konnte temporäre Datei nicht nach %s kopieren (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove tmpdir %s\n"
|
||||||
|
msgstr "Konnte temporäres Verzeichnis %s nicht entfernen\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not open %s: %s\n"
|
||||||
|
msgstr "Konnte Datei %s nicht öffnen: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not change directory to %s (%s)\n"
|
msgid "could not change directory to %s (%s)\n"
|
||||||
msgstr "Konnte nicht zu Verzeichnis %s wechseln (%s)\n"
|
msgstr "Konnte nicht zu Verzeichnis %s wechseln (%s)\n"
|
||||||
@@ -548,16 +541,8 @@ msgid "call to waitpid failed (%s)\n"
|
|||||||
msgstr "Aufruf von 'waitpid' fehlgeschlagen (%s)\n"
|
msgstr "Aufruf von 'waitpid' fehlgeschlagen (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "scriptlet failed to execute correctly\n"
|
msgid "command failed to execute correctly\n"
|
||||||
msgstr "Skript konnte nicht korrekt ausgeführt werden\n"
|
msgstr "Befehl konnte nicht korrekt ausgeführt werden\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not remove tmpdir %s\n"
|
|
||||||
msgstr "Konnte temporäres Verzeichnis %s nicht entfernen\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not open %s: %s\n"
|
|
||||||
msgstr "Konnte Datei %s nicht öffnen: %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "no %s cache exists, creating...\n"
|
msgid "no %s cache exists, creating...\n"
|
||||||
|
|||||||
@@ -1,14 +1,14 @@
|
|||||||
# English (British) translations for Pacman package manager package.
|
# English (British) translations for Pacman package manager package.
|
||||||
# Copyright (C) 2007 Judd Vinet <jvinet@zeroflux.org>
|
# Copyright (C) 2007 Judd Vinet <jvinet@zeroflux.org>
|
||||||
# This file is distributed under the same license as the Pacman package manager package.
|
# This file is distributed under the same license as the Pacman package manager package.
|
||||||
# Jeff Bailes <thepizzaking@gmail.com>, 2007.
|
|
||||||
#
|
#
|
||||||
|
# Jeff Bailes <thepizzaking@gmail.com>, 2007, 2009.
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Pacman package manager 3.0.0\n"
|
"Project-Id-Version: Pacman package manager 3.0.0\n"
|
||||||
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
||||||
"POT-Creation-Date: 2008-08-23 10:54-0500\n"
|
"POT-Creation-Date: 2009-07-27 21:15-0500\n"
|
||||||
"PO-Revision-Date: 2008-08-23 23:38+0200\n"
|
"PO-Revision-Date: 2009-07-30 18:37+1000\n"
|
||||||
"Last-Translator: Jeff Bailes <thepizzaking@gmail.com>\n"
|
"Last-Translator: Jeff Bailes <thepizzaking@gmail.com>\n"
|
||||||
"Language-Team: English <en_gb@li.org>\n"
|
"Language-Team: English <en_gb@li.org>\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -48,14 +48,14 @@ msgstr ""
|
|||||||
"directory permissions differ on %s\n"
|
"directory permissions differ on %s\n"
|
||||||
"filesystem: %o package: %o\n"
|
"filesystem: %o package: %o\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "extract: symlink %s does not point to dir\n"
|
|
||||||
msgstr "extract: symlink %s does not point to dir\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "extract: not overwriting dir with file %s\n"
|
msgid "extract: not overwriting dir with file %s\n"
|
||||||
msgstr "extract: not overwriting dir with file %s\n"
|
msgstr "extract: not overwriting dir with file %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "extract: symlink %s does not point to dir\n"
|
||||||
|
msgstr "extract: symlink %s does not point to dir\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not extract %s (%s)\n"
|
msgid "could not extract %s (%s)\n"
|
||||||
msgstr "could not extract %s (%s)\n"
|
msgstr "could not extract %s (%s)\n"
|
||||||
@@ -101,8 +101,8 @@ msgid "could not add entry '%s' in cache\n"
|
|||||||
msgstr "could not add entry '%s' in cache\n"
|
msgstr "could not add entry '%s' in cache\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not remove database entry %s%s\n"
|
msgid "could not remove database %s\n"
|
||||||
msgstr "could not remove database entry %s%s\n"
|
msgstr "could not remove database %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid name for database entry '%s'\n"
|
msgid "invalid name for database entry '%s'\n"
|
||||||
@@ -124,6 +124,10 @@ msgstr "%s database is inconsistent: name mismatch on package %s\n"
|
|||||||
msgid "%s database is inconsistent: version mismatch on package %s\n"
|
msgid "%s database is inconsistent: version mismatch on package %s\n"
|
||||||
msgstr "%s database is inconsistent: version mismatch on package %s\n"
|
msgstr "%s database is inconsistent: version mismatch on package %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create directory %s: %s\n"
|
||||||
|
msgstr "could not create directory %s: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not parse package description file in %s\n"
|
msgid "could not parse package description file in %s\n"
|
||||||
msgstr "could not parse package description file in %s\n"
|
msgstr "could not parse package description file in %s\n"
|
||||||
@@ -164,6 +168,10 @@ msgstr "%s will be removed after its %s dependency\n"
|
|||||||
msgid "%s will be installed before its %s dependency\n"
|
msgid "%s will be installed before its %s dependency\n"
|
||||||
msgstr "%s will be installed before its %s dependency\n"
|
msgstr "%s will be installed before its %s dependency\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "ignoring package %s-%s\n"
|
||||||
|
msgstr "ignoring package %s-%s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "provider package was selected (%s provides %s)\n"
|
msgid "provider package was selected (%s provides %s)\n"
|
||||||
msgstr "provider package was selected (%s provides %s)\n"
|
msgstr "provider package was selected (%s provides %s)\n"
|
||||||
@@ -196,21 +204,13 @@ msgstr "cannot resume download, starting over\n"
|
|||||||
msgid "cannot write to file '%s'\n"
|
msgid "cannot write to file '%s'\n"
|
||||||
msgstr "cannot write to file '%s'\n"
|
msgstr "cannot write to file '%s'\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "error downloading '%s': %s\n"
|
|
||||||
msgstr "error downloading '%s': %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "error writing to file '%s': %s\n"
|
msgid "error writing to file '%s': %s\n"
|
||||||
msgstr "error writing to file '%s': %s\n"
|
msgstr "error writing to file '%s': %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not chdir to %s\n"
|
msgid "%s appears to be truncated: %jd/%jd bytes\n"
|
||||||
msgstr "could not chdir to %s\n"
|
msgstr "%s appears to be truncated: %jd/%jd bytes\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "running XferCommand: fork failed!\n"
|
|
||||||
msgstr "running XferCommand: fork failed!\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to download %s\n"
|
msgid "failed to download %s\n"
|
||||||
@@ -284,6 +284,10 @@ msgstr "could not remove database entry"
|
|||||||
msgid "invalid url for server"
|
msgid "invalid url for server"
|
||||||
msgstr "invalid url for server"
|
msgstr "invalid url for server"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "no servers configured for repository"
|
||||||
|
msgstr "no servers configured for repository"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "transaction already initialized"
|
msgid "transaction already initialized"
|
||||||
msgstr "transaction already initialised"
|
msgstr "transaction already initialised"
|
||||||
@@ -309,17 +313,17 @@ msgid "operation not compatible with the transaction type"
|
|||||||
msgstr "operation not compatible with the transaction type"
|
msgstr "operation not compatible with the transaction type"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction"
|
msgid "transaction commit attempt when database is not locked"
|
||||||
msgstr "could not commit transaction"
|
msgstr "transaction commit attempt when database is not locked"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not download all files"
|
|
||||||
msgstr "could not download all files"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not find or read package"
|
msgid "could not find or read package"
|
||||||
msgstr "could not find or read package"
|
msgstr "could not find or read package"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "operation cancelled due to ignorepkg"
|
||||||
|
msgstr "operation cancelled due to ignorepkg"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid or corrupted package"
|
msgid "invalid or corrupted package"
|
||||||
msgstr "invalid or corrupted package"
|
msgstr "invalid or corrupted package"
|
||||||
@@ -328,14 +332,6 @@ msgstr "invalid or corrupted package"
|
|||||||
msgid "cannot open package file"
|
msgid "cannot open package file"
|
||||||
msgstr "cannot open package file"
|
msgstr "cannot open package file"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "cannot load package data"
|
|
||||||
msgstr "cannot load package data"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "package not installed or lesser version"
|
|
||||||
msgstr "package not installed or lesser version"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "cannot remove all files for package"
|
msgid "cannot remove all files for package"
|
||||||
msgstr "cannot remove all files for package"
|
msgstr "cannot remove all files for package"
|
||||||
@@ -356,10 +352,6 @@ msgstr "invalid or corrupted delta"
|
|||||||
msgid "delta patch failed"
|
msgid "delta patch failed"
|
||||||
msgstr "delta patch failed"
|
msgstr "delta patch failed"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "group not found"
|
|
||||||
msgstr "group not found"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not satisfy dependencies"
|
msgid "could not satisfy dependencies"
|
||||||
msgstr "could not satisfy dependencies"
|
msgstr "could not satisfy dependencies"
|
||||||
@@ -373,16 +365,8 @@ msgid "conflicting files"
|
|||||||
msgstr "conflicting files"
|
msgstr "conflicting files"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "user aborted the operation"
|
msgid "failed to retrieve some files"
|
||||||
msgstr "user aborted the operation"
|
msgstr "failed to retrieve some files"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "internal error"
|
|
||||||
msgstr "internal error"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "not confirmed"
|
|
||||||
msgstr "not confirmed"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid regular expression"
|
msgid "invalid regular expression"
|
||||||
@@ -421,16 +405,28 @@ msgid "could not remove entry '%s' from cache\n"
|
|||||||
msgstr "could not remove entry '%s' from cache\n"
|
msgstr "could not remove entry '%s' from cache\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
||||||
msgstr "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
msgstr "%s: ignoring package upgrade (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: ignoring package downgrade (%s => %s)\n"
|
||||||
|
msgstr "%s: ignoring package downgrade (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: downgrading from version %s to version %s\n"
|
||||||
|
msgstr "%s: downgrading from version %s to version %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: local (%s) is newer than %s (%s)\n"
|
msgid "%s: local (%s) is newer than %s (%s)\n"
|
||||||
msgstr "%s: local (%s) is newer than %s (%s)\n"
|
msgstr "%s: local (%s) is newer than %s (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
|
||||||
msgstr "%s: ignoring package upgrade (%s => %s)\n"
|
msgstr "ignoring package replacement (%s-%s => %s-%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot replace %s by %s\n"
|
||||||
|
msgstr "cannot replace %s by %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "repository '%s' not found\n"
|
msgid "repository '%s' not found\n"
|
||||||
@@ -456,10 +452,6 @@ msgstr "unresolvable package conflicts detected\n"
|
|||||||
msgid "removing '%s' from target list because it conflicts with '%s'\n"
|
msgid "removing '%s' from target list because it conflicts with '%s'\n"
|
||||||
msgstr "removing '%s' from target list because it conflicts with '%s'\n"
|
msgstr "removing '%s' from target list because it conflicts with '%s'\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "command: %s\n"
|
|
||||||
msgstr "command: %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to retrieve some files from %s\n"
|
msgid "failed to retrieve some files from %s\n"
|
||||||
msgstr "failed to retrieve some files from %s\n"
|
msgstr "failed to retrieve some files from %s\n"
|
||||||
@@ -468,10 +460,18 @@ msgstr "failed to retrieve some files from %s\n"
|
|||||||
msgid "could not create removal transaction\n"
|
msgid "could not create removal transaction\n"
|
||||||
msgstr "could not create removal transaction\n"
|
msgstr "could not create removal transaction\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create transaction\n"
|
||||||
|
msgstr "could not create transaction\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not initialize the removal transaction\n"
|
msgid "could not initialize the removal transaction\n"
|
||||||
msgstr "could not initialise the removal transaction\n"
|
msgstr "could not initialise the removal transaction\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not initialize transaction\n"
|
||||||
|
msgstr "could not initialise transaction\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not prepare removal transaction\n"
|
msgid "could not prepare removal transaction\n"
|
||||||
msgstr "could not prepare removal transaction\n"
|
msgstr "could not prepare removal transaction\n"
|
||||||
@@ -480,18 +480,6 @@ msgstr "could not prepare removal transaction\n"
|
|||||||
msgid "could not commit removal transaction\n"
|
msgid "could not commit removal transaction\n"
|
||||||
msgstr "could not commit removal transaction\n"
|
msgstr "could not commit removal transaction\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not create transaction\n"
|
|
||||||
msgstr "could not create transaction\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not initialize transaction\n"
|
|
||||||
msgstr "could not initialise transaction\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not prepare transaction\n"
|
|
||||||
msgstr "could not prepare transaction\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction\n"
|
msgid "could not commit transaction\n"
|
||||||
msgstr "could not commit transaction\n"
|
msgstr "could not commit transaction\n"
|
||||||
@@ -500,10 +488,6 @@ msgstr "could not commit transaction\n"
|
|||||||
msgid "could not remove lock file %s\n"
|
msgid "could not remove lock file %s\n"
|
||||||
msgstr "could not remove lock file %s\n"
|
msgstr "could not remove lock file %s\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "No /bin/sh in parent environment, aborting scriptlet\n"
|
|
||||||
msgstr "No /bin/sh in parent environment, aborting scriptlet\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not create temp directory\n"
|
msgid "could not create temp directory\n"
|
||||||
msgstr "could not create temp directory\n"
|
msgstr "could not create temp directory\n"
|
||||||
@@ -512,6 +496,14 @@ msgstr "could not create temp directory\n"
|
|||||||
msgid "could not copy tempfile to %s (%s)\n"
|
msgid "could not copy tempfile to %s (%s)\n"
|
||||||
msgstr "could not copy tempfile to %s (%s)\n"
|
msgstr "could not copy tempfile to %s (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove tmpdir %s\n"
|
||||||
|
msgstr "could not remove tmpdir %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not open %s: %s\n"
|
||||||
|
msgstr "could not open %s: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not change directory to %s (%s)\n"
|
msgid "could not change directory to %s (%s)\n"
|
||||||
msgstr "could not change directory to %s (%s)\n"
|
msgstr "could not change directory to %s (%s)\n"
|
||||||
@@ -537,16 +529,8 @@ msgid "call to waitpid failed (%s)\n"
|
|||||||
msgstr "call to waitpid failed (%s)\n"
|
msgstr "call to waitpid failed (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "scriptlet failed to execute correctly\n"
|
msgid "command failed to execute correctly\n"
|
||||||
msgstr "scriptlet failed to execute correctly\n"
|
msgstr "command failed to execute correctly\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not remove tmpdir %s\n"
|
|
||||||
msgstr "could not remove tmpdir %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not open %s: %s\n"
|
|
||||||
msgstr "could not open %s: %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "no %s cache exists, creating...\n"
|
msgid "no %s cache exists, creating...\n"
|
||||||
@@ -556,3 +540,47 @@ msgstr "no %s cache exists, creating...\n"
|
|||||||
msgid "couldn't create package cache, using /tmp instead\n"
|
msgid "couldn't create package cache, using /tmp instead\n"
|
||||||
msgstr "couldn't create package cache, using /tmp instead\n"
|
msgstr "couldn't create package cache, using /tmp instead\n"
|
||||||
|
|
||||||
|
#~ msgid "error downloading '%s': %s\n"
|
||||||
|
#~ msgstr "error downloading '%s': %s\n"
|
||||||
|
|
||||||
|
#~ msgid "could not chdir to %s\n"
|
||||||
|
#~ msgstr "could not chdir to %s\n"
|
||||||
|
|
||||||
|
#~ msgid "running XferCommand: fork failed!\n"
|
||||||
|
#~ msgstr "running XferCommand: fork failed!\n"
|
||||||
|
|
||||||
|
#~ msgid "could not commit transaction"
|
||||||
|
#~ msgstr "could not commit transaction"
|
||||||
|
|
||||||
|
#~ msgid "could not download all files"
|
||||||
|
#~ msgstr "could not download all files"
|
||||||
|
|
||||||
|
#~ msgid "cannot load package data"
|
||||||
|
#~ msgstr "cannot load package data"
|
||||||
|
|
||||||
|
#~ msgid "package not installed or lesser version"
|
||||||
|
#~ msgstr "package not installed or lesser version"
|
||||||
|
|
||||||
|
#~ msgid "group not found"
|
||||||
|
#~ msgstr "group not found"
|
||||||
|
|
||||||
|
#~ msgid "user aborted the operation"
|
||||||
|
#~ msgstr "user aborted the operation"
|
||||||
|
|
||||||
|
#~ msgid "internal error"
|
||||||
|
#~ msgstr "internal error"
|
||||||
|
|
||||||
|
#~ msgid "not confirmed"
|
||||||
|
#~ msgstr "not confirmed"
|
||||||
|
|
||||||
|
#~ msgid "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
||||||
|
#~ msgstr "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
||||||
|
|
||||||
|
#~ msgid "command: %s\n"
|
||||||
|
#~ msgstr "command: %s\n"
|
||||||
|
|
||||||
|
#~ msgid "could not prepare transaction\n"
|
||||||
|
#~ msgstr "could not prepare transaction\n"
|
||||||
|
|
||||||
|
#~ msgid "No /bin/sh in parent environment, aborting scriptlet\n"
|
||||||
|
#~ msgstr "No /bin/sh in parent environment, aborting scriptlet\n"
|
||||||
|
|||||||
@@ -1,19 +1,21 @@
|
|||||||
# Juan Pablo González Tognarelli <jotapesan@gmail.com>, 2008, 2009.
|
# Juan Pablo González Tognarelli <jotapesan@gmail.com>, 2008, 2009.
|
||||||
|
# Juan Pablo González Tognarelli <juan.gonzalez.tognarelli@gmail.com>, 2009.
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: libalpm\n"
|
"Project-Id-Version: libalpm\n"
|
||||||
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
||||||
"POT-Creation-Date: 2008-08-23 10:54-0500\n"
|
"POT-Creation-Date: 2009-07-27 21:15-0500\n"
|
||||||
"PO-Revision-Date: 2009-01-03 03:18-0300\n"
|
"PO-Revision-Date: 2009-07-29 11:51+0200\n"
|
||||||
"Last-Translator: Juan Pablo González Tognarelli <jotapesan@gmail.com>\n"
|
"Last-Translator: Juan Pablo González Tognarelli <juan.gonzalez."
|
||||||
"Language-Team: Spanish <kde-i18n-doc@lists.kde.org>\n"
|
"tognarelli@gmail.com>\n"
|
||||||
|
"Language-Team: Spanish <kde-i18n-doc@kde.org>\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"X-Poedit-Language: Spanish\n"
|
"X-Poedit-Language: Spanish\n"
|
||||||
"X-Poedit-Country: CHILE\n"
|
"X-Poedit-Country: CHILE\n"
|
||||||
"X-Poedit-SourceCharset: utf-8\n"
|
"X-Poedit-SourceCharset: utf-8\n"
|
||||||
"X-Generator: Lokalize 0.2\n"
|
"X-Generator: Lokalize 0.3\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
@@ -51,14 +53,14 @@ msgstr ""
|
|||||||
"los permisos de directorio difieren en %s\n"
|
"los permisos de directorio difieren en %s\n"
|
||||||
"sistema de archivos: %o paquete: %o\n"
|
"sistema de archivos: %o paquete: %o\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "extract: symlink %s does not point to dir\n"
|
|
||||||
msgstr "extract: el link simbólico %s no apunta al directorio\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "extract: not overwriting dir with file %s\n"
|
msgid "extract: not overwriting dir with file %s\n"
|
||||||
msgstr "extract: no sobrescribiendo el dir. con el archivo %s\n"
|
msgstr "extract: no sobrescribiendo el dir. con el archivo %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "extract: symlink %s does not point to dir\n"
|
||||||
|
msgstr "extract: el link simbólico %s no apunta al directorio\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not extract %s (%s)\n"
|
msgid "could not extract %s (%s)\n"
|
||||||
msgstr "no se pudo extraer %s (%s)\n"
|
msgstr "no se pudo extraer %s (%s)\n"
|
||||||
@@ -104,8 +106,8 @@ msgid "could not add entry '%s' in cache\n"
|
|||||||
msgstr "no se pudo agregar '%s' en la cache\n"
|
msgstr "no se pudo agregar '%s' en la cache\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not remove database entry %s%s\n"
|
msgid "could not remove database %s\n"
|
||||||
msgstr "no se pudo quitar la entrada %s%s en la base de datos\n"
|
msgstr "no se pudo quitar la base de datos %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid name for database entry '%s'\n"
|
msgid "invalid name for database entry '%s'\n"
|
||||||
@@ -131,6 +133,10 @@ msgstr ""
|
|||||||
"la base de datos %s es inconsistente: versión mal emparejada en el paquete %"
|
"la base de datos %s es inconsistente: versión mal emparejada en el paquete %"
|
||||||
"s\n"
|
"s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create directory %s: %s\n"
|
||||||
|
msgstr "no se pudo crear el directorio %s: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not parse package description file in %s\n"
|
msgid "could not parse package description file in %s\n"
|
||||||
msgstr "no se pudo interpretar el archivo de descripción en %s\n"
|
msgstr "no se pudo interpretar el archivo de descripción en %s\n"
|
||||||
@@ -171,6 +177,10 @@ msgstr "%s será quitado luego de su dependencia %s\n"
|
|||||||
msgid "%s will be installed before its %s dependency\n"
|
msgid "%s will be installed before its %s dependency\n"
|
||||||
msgstr "%s será instalado antes de su dependencia %s\n"
|
msgstr "%s será instalado antes de su dependencia %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "ignoring package %s-%s\n"
|
||||||
|
msgstr "ignorando el paquete %s-%s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "provider package was selected (%s provides %s)\n"
|
msgid "provider package was selected (%s provides %s)\n"
|
||||||
msgstr "El paquete proveedor fue seleccionado (%s provee %s)\n"
|
msgstr "El paquete proveedor fue seleccionado (%s provee %s)\n"
|
||||||
@@ -203,21 +213,13 @@ msgstr "no se puede resumir la descarga, empezando de nuevo\n"
|
|||||||
msgid "cannot write to file '%s'\n"
|
msgid "cannot write to file '%s'\n"
|
||||||
msgstr "no se puede escribir en el archivo '%s'\n"
|
msgstr "no se puede escribir en el archivo '%s'\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "error downloading '%s': %s\n"
|
|
||||||
msgstr "error descargando '%s': %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "error writing to file '%s': %s\n"
|
msgid "error writing to file '%s': %s\n"
|
||||||
msgstr "no se pudo escribir al archivo '%s': %s\n"
|
msgstr "no se pudo escribir al archivo '%s': %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not chdir to %s\n"
|
msgid "%s appears to be truncated: %jd/%jd bytes\n"
|
||||||
msgstr "no se pudo cambiar el directorio a %s\n"
|
msgstr "%s parece estar truncado: %jd/%jd bytes\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "running XferCommand: fork failed!\n"
|
|
||||||
msgstr "ejecutando XferCommand: falló en el fork\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to download %s\n"
|
msgid "failed to download %s\n"
|
||||||
@@ -291,6 +293,10 @@ msgstr "no se pudo quitar la entrada de la base de datos"
|
|||||||
msgid "invalid url for server"
|
msgid "invalid url for server"
|
||||||
msgstr "dirección inválida para el servidor"
|
msgstr "dirección inválida para el servidor"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "no servers configured for repository"
|
||||||
|
msgstr "no hay servidores configurados para el repositorio"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "transaction already initialized"
|
msgid "transaction already initialized"
|
||||||
msgstr "la operación ya se inicializó"
|
msgstr "la operación ya se inicializó"
|
||||||
@@ -316,17 +322,18 @@ msgid "operation not compatible with the transaction type"
|
|||||||
msgstr "la operación no es compatible con el tipo de transacción"
|
msgstr "la operación no es compatible con el tipo de transacción"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction"
|
msgid "transaction commit attempt when database is not locked"
|
||||||
msgstr "no se pudo hacer la transacción"
|
msgstr ""
|
||||||
|
"intento de envío de la transación cuando la base de datos no esta bloqueada"
|
||||||
#, c-format
|
|
||||||
msgid "could not download all files"
|
|
||||||
msgstr "no se pudo descargar todos los archivos"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not find or read package"
|
msgid "could not find or read package"
|
||||||
msgstr "no se pudo encontrar o leer el paquete"
|
msgstr "no se pudo encontrar o leer el paquete"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "operation cancelled due to ignorepkg"
|
||||||
|
msgstr "operación cancelada debido a ignorepkg"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid or corrupted package"
|
msgid "invalid or corrupted package"
|
||||||
msgstr "paquete invalido o corrupto"
|
msgstr "paquete invalido o corrupto"
|
||||||
@@ -335,14 +342,6 @@ msgstr "paquete invalido o corrupto"
|
|||||||
msgid "cannot open package file"
|
msgid "cannot open package file"
|
||||||
msgstr "no se pudo abrir el archivo de paquetes"
|
msgstr "no se pudo abrir el archivo de paquetes"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "cannot load package data"
|
|
||||||
msgstr "no se pudo cargar la información del paquete"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "package not installed or lesser version"
|
|
||||||
msgstr "el paquete no está instalado o es una versión menor"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "cannot remove all files for package"
|
msgid "cannot remove all files for package"
|
||||||
msgstr "no se pudo quitar todos los archivos del paquete"
|
msgstr "no se pudo quitar todos los archivos del paquete"
|
||||||
@@ -363,10 +362,6 @@ msgstr "invalido o diferencial corrupto"
|
|||||||
msgid "delta patch failed"
|
msgid "delta patch failed"
|
||||||
msgstr "parche delta fallado"
|
msgstr "parche delta fallado"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "group not found"
|
|
||||||
msgstr "grupo no encontrado"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not satisfy dependencies"
|
msgid "could not satisfy dependencies"
|
||||||
msgstr "no se pudieron satisfacer las dependencias"
|
msgstr "no se pudieron satisfacer las dependencias"
|
||||||
@@ -380,16 +375,8 @@ msgid "conflicting files"
|
|||||||
msgstr "archivos en conflicto"
|
msgstr "archivos en conflicto"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "user aborted the operation"
|
msgid "failed to retrieve some files"
|
||||||
msgstr "el usuario abortó la operación"
|
msgstr "falló al descargar algunos archivos"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "internal error"
|
|
||||||
msgstr "error interno"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "not confirmed"
|
|
||||||
msgstr "no confirmado"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid regular expression"
|
msgid "invalid regular expression"
|
||||||
@@ -428,18 +415,28 @@ msgid "could not remove entry '%s' from cache\n"
|
|||||||
msgstr "no se pudo quitar la entrada '%s' de la cache\n"
|
msgstr "no se pudo quitar la entrada '%s' de la cache\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
||||||
msgstr ""
|
msgstr "%s: ignorando la actualización del paquete (%s => %s)\n"
|
||||||
"%s-%s: ignorando la actualización del paquete (para ser reemplazado por %s-%"
|
|
||||||
"s)\n"
|
#, c-format
|
||||||
|
msgid "%s: ignoring package downgrade (%s => %s)\n"
|
||||||
|
msgstr "%s: ignorando la degradación del paquete (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: downgrading from version %s to version %s\n"
|
||||||
|
msgstr "%s: degradando desde la versión %s a la versión %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: local (%s) is newer than %s (%s)\n"
|
msgid "%s: local (%s) is newer than %s (%s)\n"
|
||||||
msgstr "%s: local (%s) es más nuevo que %s (%s)\n"
|
msgstr "%s: local (%s) es más nuevo que %s (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
|
||||||
msgstr "%s: ignorando la actualización del paquete (%s => %s)\n"
|
msgstr "ignorando el reemplazo del paquete (%s-%s => %s-%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot replace %s by %s\n"
|
||||||
|
msgstr "no se pudo reemplazar el archivo %s por %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "repository '%s' not found\n"
|
msgid "repository '%s' not found\n"
|
||||||
@@ -467,10 +464,6 @@ msgstr ""
|
|||||||
"quitando '%s' de la lista de objetivos debido a que posee conflictos con '%"
|
"quitando '%s' de la lista de objetivos debido a que posee conflictos con '%"
|
||||||
"s'\n"
|
"s'\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "command: %s\n"
|
|
||||||
msgstr "comando: %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to retrieve some files from %s\n"
|
msgid "failed to retrieve some files from %s\n"
|
||||||
msgstr "falló al descargar algunos archivos desde %s\n"
|
msgstr "falló al descargar algunos archivos desde %s\n"
|
||||||
@@ -479,10 +472,18 @@ msgstr "falló al descargar algunos archivos desde %s\n"
|
|||||||
msgid "could not create removal transaction\n"
|
msgid "could not create removal transaction\n"
|
||||||
msgstr "no se pudo crear la operación de eliminación\n"
|
msgstr "no se pudo crear la operación de eliminación\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create transaction\n"
|
||||||
|
msgstr "no se pudo crear la operación\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not initialize the removal transaction\n"
|
msgid "could not initialize the removal transaction\n"
|
||||||
msgstr "no se pudo iniciar la operación de eliminación\n"
|
msgstr "no se pudo iniciar la operación de eliminación\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not initialize transaction\n"
|
||||||
|
msgstr "no se pudo iniciar la operación\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not prepare removal transaction\n"
|
msgid "could not prepare removal transaction\n"
|
||||||
msgstr "no se pudo preparar la operación de eliminación\n"
|
msgstr "no se pudo preparar la operación de eliminación\n"
|
||||||
@@ -491,18 +492,6 @@ msgstr "no se pudo preparar la operación de eliminación\n"
|
|||||||
msgid "could not commit removal transaction\n"
|
msgid "could not commit removal transaction\n"
|
||||||
msgstr "no se pudo enviar la operación de eliminación\n"
|
msgstr "no se pudo enviar la operación de eliminación\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not create transaction\n"
|
|
||||||
msgstr "no se pudo crear la operación\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not initialize transaction\n"
|
|
||||||
msgstr "no se pudo iniciar la operación\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not prepare transaction\n"
|
|
||||||
msgstr "no se pudo preparar la transacción\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction\n"
|
msgid "could not commit transaction\n"
|
||||||
msgstr "no se pudo asignar la transacción\n"
|
msgstr "no se pudo asignar la transacción\n"
|
||||||
@@ -511,10 +500,6 @@ msgstr "no se pudo asignar la transacción\n"
|
|||||||
msgid "could not remove lock file %s\n"
|
msgid "could not remove lock file %s\n"
|
||||||
msgstr "no se pudo eliminar el archivo de bloqueo %s\n"
|
msgstr "no se pudo eliminar el archivo de bloqueo %s\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "No /bin/sh in parent environment, aborting scriptlet\n"
|
|
||||||
msgstr "No existe /bin/sh en el ambiente padre, abortando los scripts\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not create temp directory\n"
|
msgid "could not create temp directory\n"
|
||||||
msgstr "no se puede crear el directorio temporal\n"
|
msgstr "no se puede crear el directorio temporal\n"
|
||||||
@@ -523,6 +508,14 @@ msgstr "no se puede crear el directorio temporal\n"
|
|||||||
msgid "could not copy tempfile to %s (%s)\n"
|
msgid "could not copy tempfile to %s (%s)\n"
|
||||||
msgstr "no se pudo copiar el archivo temporal a %s (%s)\n"
|
msgstr "no se pudo copiar el archivo temporal a %s (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove tmpdir %s\n"
|
||||||
|
msgstr "no se pudo eliminar el directorio temporal %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not open %s: %s\n"
|
||||||
|
msgstr "no se pudo abrir %s: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not change directory to %s (%s)\n"
|
msgid "could not change directory to %s (%s)\n"
|
||||||
msgstr "no se pudo cambiar el directorio a %s (%s)\n"
|
msgstr "no se pudo cambiar el directorio a %s (%s)\n"
|
||||||
@@ -548,16 +541,8 @@ msgid "call to waitpid failed (%s)\n"
|
|||||||
msgstr "llamada a waitpid fallida (%s)\n"
|
msgstr "llamada a waitpid fallida (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "scriptlet failed to execute correctly\n"
|
msgid "command failed to execute correctly\n"
|
||||||
msgstr "scriplet falló en ejecutarse correctamente\n"
|
msgstr "el comando falló al ejecutarse\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not remove tmpdir %s\n"
|
|
||||||
msgstr "no se pudo eliminar el directorio temporal %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not open %s: %s\n"
|
|
||||||
msgstr "no se pudo abrir %s: %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "no %s cache exists, creating...\n"
|
msgid "no %s cache exists, creating...\n"
|
||||||
@@ -566,4 +551,3 @@ msgstr "no existe la cache %s, creando...\n"
|
|||||||
#, c-format
|
#, c-format
|
||||||
msgid "couldn't create package cache, using /tmp instead\n"
|
msgid "couldn't create package cache, using /tmp instead\n"
|
||||||
msgstr "no se pudo crear la cache de paquetes, usando /tmp en su lugar\n"
|
msgstr "no se pudo crear la cache de paquetes, usando /tmp en su lugar\n"
|
||||||
|
|
||||||
|
|||||||
@@ -5,8 +5,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Pacman package manager 3.0.1\n"
|
"Project-Id-Version: Pacman package manager 3.0.1\n"
|
||||||
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
||||||
"POT-Creation-Date: 2008-08-23 10:54-0500\n"
|
"POT-Creation-Date: 2009-07-27 21:15-0500\n"
|
||||||
"PO-Revision-Date: 2008-08-23 22:51+0200\n"
|
"PO-Revision-Date: 2009-07-28 14:01+0200\n"
|
||||||
"Last-Translator: Xavier <shiningxc@gmail.com>\n"
|
"Last-Translator: Xavier <shiningxc@gmail.com>\n"
|
||||||
"Language-Team: solsTiCe d'Hiver <solstice.dhiver@laposte.net>\n"
|
"Language-Team: solsTiCe d'Hiver <solstice.dhiver@laposte.net>\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -51,14 +51,14 @@ msgstr ""
|
|||||||
"Les permissions pour le répertoire %s sont différentes\n"
|
"Les permissions pour le répertoire %s sont différentes\n"
|
||||||
"système de fichier: %o paquet : %o\n"
|
"système de fichier: %o paquet : %o\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "extract: symlink %s does not point to dir\n"
|
|
||||||
msgstr "extraction: le lien %s ne pointe pas vers un répertoire\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "extract: not overwriting dir with file %s\n"
|
msgid "extract: not overwriting dir with file %s\n"
|
||||||
msgstr "extraction: n'écrase pas le répertoire par le fichier %s\n"
|
msgstr "extraction: n'écrase pas le répertoire par le fichier %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "extract: symlink %s does not point to dir\n"
|
||||||
|
msgstr "extraction: le lien %s ne pointe pas vers un répertoire\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not extract %s (%s)\n"
|
msgid "could not extract %s (%s)\n"
|
||||||
msgstr "l'extraction de %s a échoué (%s)\n"
|
msgstr "l'extraction de %s a échoué (%s)\n"
|
||||||
@@ -105,8 +105,8 @@ msgid "could not add entry '%s' in cache\n"
|
|||||||
msgstr "l'ajout au cache de l'entrée '%s' a échoué\n"
|
msgstr "l'ajout au cache de l'entrée '%s' a échoué\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not remove database entry %s%s\n"
|
msgid "could not remove database %s\n"
|
||||||
msgstr "la suppression de l'entrée de base de données %s%s a échoué\n"
|
msgstr "la suppression de la base de données %s a échoué\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid name for database entry '%s'\n"
|
msgid "invalid name for database entry '%s'\n"
|
||||||
@@ -128,6 +128,10 @@ msgstr "Le dépôt %s est inconsistant: noms différents pour le paquet %s\n"
|
|||||||
msgid "%s database is inconsistent: version mismatch on package %s\n"
|
msgid "%s database is inconsistent: version mismatch on package %s\n"
|
||||||
msgstr "Le dépôt %s est inconsistant: versions différentes pour le paquet %s\n"
|
msgstr "Le dépôt %s est inconsistant: versions différentes pour le paquet %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create directory %s: %s\n"
|
||||||
|
msgstr "la création du répertoire %s a échoué: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not parse package description file in %s\n"
|
msgid "could not parse package description file in %s\n"
|
||||||
msgstr "l'analyse du fichier de description a échoué dans %s\n"
|
msgstr "l'analyse du fichier de description a échoué dans %s\n"
|
||||||
@@ -168,6 +172,10 @@ msgstr "%s sera supprimé après sa dépendance %s\n"
|
|||||||
msgid "%s will be installed before its %s dependency\n"
|
msgid "%s will be installed before its %s dependency\n"
|
||||||
msgstr "%s sera installé avant sa dépendance %s\n"
|
msgstr "%s sera installé avant sa dépendance %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "ignoring package %s-%s\n"
|
||||||
|
msgstr "ignore le paquet %s-%s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "provider package was selected (%s provides %s)\n"
|
msgid "provider package was selected (%s provides %s)\n"
|
||||||
msgstr "Une provision a été sélectionnée (%s fournit %s)\n"
|
msgstr "Une provision a été sélectionnée (%s fournit %s)\n"
|
||||||
@@ -200,21 +208,13 @@ msgstr "le téléchargement ne peut pas être repris, relance\n"
|
|||||||
msgid "cannot write to file '%s'\n"
|
msgid "cannot write to file '%s'\n"
|
||||||
msgstr "écriture dans le fichier '%s' impossible\n"
|
msgstr "écriture dans le fichier '%s' impossible\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "error downloading '%s': %s\n"
|
|
||||||
msgstr "erreur lors du téléchargement de '%s': %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "error writing to file '%s': %s\n"
|
msgid "error writing to file '%s': %s\n"
|
||||||
msgstr "écriture dans le fichier '%s' impossible: %s\n"
|
msgstr "écriture dans le fichier '%s' impossible: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not chdir to %s\n"
|
msgid "%s appears to be truncated: %jd/%jd bytes\n"
|
||||||
msgstr "changer de répertoire vers %s a échoué\n"
|
msgstr "%s est apparemment tronqué: %jd/%jd bytes\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "running XferCommand: fork failed!\n"
|
|
||||||
msgstr "lancement de XferCommand: le fork a échoué!\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to download %s\n"
|
msgid "failed to download %s\n"
|
||||||
@@ -288,6 +288,10 @@ msgstr "la suppression de l'entrée de base de données a échoué"
|
|||||||
msgid "invalid url for server"
|
msgid "invalid url for server"
|
||||||
msgstr "URL invalide pour le serveur"
|
msgstr "URL invalide pour le serveur"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "no servers configured for repository"
|
||||||
|
msgstr "aucun serveur configuré pour le dépôt"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "transaction already initialized"
|
msgid "transaction already initialized"
|
||||||
msgstr "transaction déjà initialisée"
|
msgstr "transaction déjà initialisée"
|
||||||
@@ -313,17 +317,19 @@ msgid "operation not compatible with the transaction type"
|
|||||||
msgstr "opération incompatible avec le type de transaction"
|
msgstr "opération incompatible avec le type de transaction"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction"
|
msgid "transaction commit attempt when database is not locked"
|
||||||
msgstr "appliquer la transaction a échoué"
|
msgstr ""
|
||||||
|
"tentative de réalisation d'une transaction alors que le dépôt n'est pas "
|
||||||
#, c-format
|
"verrouillé"
|
||||||
msgid "could not download all files"
|
|
||||||
msgstr "tous les fichiers n'ont pas pu être téléchargés"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not find or read package"
|
msgid "could not find or read package"
|
||||||
msgstr "trouver ou de lire le paquet a échoué"
|
msgstr "trouver ou de lire le paquet a échoué"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "operation cancelled due to ignorepkg"
|
||||||
|
msgstr "opération annulée à cause d'un paquet à ignorer (IgnorePkg)"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid or corrupted package"
|
msgid "invalid or corrupted package"
|
||||||
msgstr "paquet invalide ou corrompu"
|
msgstr "paquet invalide ou corrompu"
|
||||||
@@ -332,14 +338,6 @@ msgstr "paquet invalide ou corrompu"
|
|||||||
msgid "cannot open package file"
|
msgid "cannot open package file"
|
||||||
msgstr "ouverture du fichier paquet impossible"
|
msgstr "ouverture du fichier paquet impossible"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "cannot load package data"
|
|
||||||
msgstr "chargement des données du paquet impossible"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "package not installed or lesser version"
|
|
||||||
msgstr "paquet non installé ou version plus ancienne"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "cannot remove all files for package"
|
msgid "cannot remove all files for package"
|
||||||
msgstr "suppression de certains fichiers du paquet impossible"
|
msgstr "suppression de certains fichiers du paquet impossible"
|
||||||
@@ -360,10 +358,6 @@ msgstr "delta invalide ou corrompu"
|
|||||||
msgid "delta patch failed"
|
msgid "delta patch failed"
|
||||||
msgstr "l'application du delta a échoué"
|
msgstr "l'application du delta a échoué"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "group not found"
|
|
||||||
msgstr "groupe non trouvé"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not satisfy dependencies"
|
msgid "could not satisfy dependencies"
|
||||||
msgstr "la satisfaction des dépendances a échoué"
|
msgstr "la satisfaction des dépendances a échoué"
|
||||||
@@ -377,16 +371,8 @@ msgid "conflicting files"
|
|||||||
msgstr "conflit de fichiers"
|
msgstr "conflit de fichiers"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "user aborted the operation"
|
msgid "failed to retrieve some files"
|
||||||
msgstr "opération annulée par l'utilisateur"
|
msgstr "échec de récupération de certains fichiers"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "internal error"
|
|
||||||
msgstr "erreur interne"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "not confirmed"
|
|
||||||
msgstr "non confirmé"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid regular expression"
|
msgid "invalid regular expression"
|
||||||
@@ -425,16 +411,28 @@ msgid "could not remove entry '%s' from cache\n"
|
|||||||
msgstr "la suppression du cache de l'entrée '%s' a échoué\n"
|
msgstr "la suppression du cache de l'entrée '%s' a échoué\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
||||||
msgstr "%s-%s: ignore la mise à jour du paquet (à remplacer par %s-%s)\n"
|
msgstr "%s: ignore la mise à jour du paquet (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: ignoring package downgrade (%s => %s)\n"
|
||||||
|
msgstr "%s: ignore le retour à la version antérieure (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: downgrading from version %s to version %s\n"
|
||||||
|
msgstr "%s: retourne à la version antérieure (%s => %s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: local (%s) is newer than %s (%s)\n"
|
msgid "%s: local (%s) is newer than %s (%s)\n"
|
||||||
msgstr "%s: la version locale (%s) est plus récente que %s (%s)\n"
|
msgstr "%s: la version locale (%s) est plus récente que %s (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
|
||||||
msgstr "%s: ignore la mise à jour du paquet (%s => %s)\n"
|
msgstr "ignore le remplacement du paquet (%s-%s => %s-%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot replace %s by %s\n"
|
||||||
|
msgstr "le remplacement de %s par %s est impossible\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "repository '%s' not found\n"
|
msgid "repository '%s' not found\n"
|
||||||
@@ -460,10 +458,6 @@ msgstr "un conflit de paquets impossible à résoudre a été détecté\n"
|
|||||||
msgid "removing '%s' from target list because it conflicts with '%s'\n"
|
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"
|
msgstr "supprime '%s' de la liste de cible car il est en conflit avec '%s'\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "command: %s\n"
|
|
||||||
msgstr "commande: %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to retrieve some files from %s\n"
|
msgid "failed to retrieve some files from %s\n"
|
||||||
msgstr "échec de récupération de certains fichiers depuis %s\n"
|
msgstr "échec de récupération de certains fichiers depuis %s\n"
|
||||||
@@ -472,10 +466,18 @@ msgstr "échec de récupération de certains fichiers depuis %s\n"
|
|||||||
msgid "could not create removal transaction\n"
|
msgid "could not create removal transaction\n"
|
||||||
msgstr "la création de la transaction de suppression a échoué\n"
|
msgstr "la création de la transaction de suppression a échoué\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create transaction\n"
|
||||||
|
msgstr "la création de la transaction a échoué\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not initialize the removal transaction\n"
|
msgid "could not initialize the removal transaction\n"
|
||||||
msgstr "l'initialisation de la transaction de suppression a échoué\n"
|
msgstr "l'initialisation de la transaction de suppression a échoué\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not initialize transaction\n"
|
||||||
|
msgstr "l'initialisation de la transaction a échoué\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not prepare removal transaction\n"
|
msgid "could not prepare removal transaction\n"
|
||||||
msgstr "la préparation de la transaction de suppression a échoué\n"
|
msgstr "la préparation de la transaction de suppression a échoué\n"
|
||||||
@@ -484,18 +486,6 @@ msgstr "la préparation de la transaction de suppression a échoué\n"
|
|||||||
msgid "could not commit removal transaction\n"
|
msgid "could not commit removal transaction\n"
|
||||||
msgstr "appliquer la transaction de suppression a échoué\n"
|
msgstr "appliquer la transaction de suppression a échoué\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not create transaction\n"
|
|
||||||
msgstr "la création de la transaction a échoué\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not initialize transaction\n"
|
|
||||||
msgstr "l'initialisation de la transaction a échoué\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not prepare transaction\n"
|
|
||||||
msgstr "la préparation de la transaction a échoué\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction\n"
|
msgid "could not commit transaction\n"
|
||||||
msgstr "appliquer la transaction a échoué\n"
|
msgstr "appliquer la transaction a échoué\n"
|
||||||
@@ -504,11 +494,6 @@ msgstr "appliquer la transaction a échoué\n"
|
|||||||
msgid "could not remove lock file %s\n"
|
msgid "could not remove lock file %s\n"
|
||||||
msgstr "la suppression du fichier de verrouillage %s a échoué\n"
|
msgstr "la suppression du fichier de verrouillage %s a échoué\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "No /bin/sh in parent environment, aborting scriptlet\n"
|
|
||||||
msgstr ""
|
|
||||||
"Pas de /bin/sh dans l'environnement parent, interruption du scriptlet\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not create temp directory\n"
|
msgid "could not create temp directory\n"
|
||||||
msgstr "la création du répertoire temporaire a échoué\n"
|
msgstr "la création du répertoire temporaire a échoué\n"
|
||||||
@@ -517,6 +502,14 @@ msgstr "la création du répertoire temporaire a échoué\n"
|
|||||||
msgid "could not copy tempfile to %s (%s)\n"
|
msgid "could not copy tempfile to %s (%s)\n"
|
||||||
msgstr "la copie du fichier temporaire vers %s a échoué (%s)\n"
|
msgstr "la copie du fichier temporaire vers %s a échoué (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove tmpdir %s\n"
|
||||||
|
msgstr "la suppression du répertoire temporaire %s a échoué\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not open %s: %s\n"
|
||||||
|
msgstr "l'ouverture de %s: %s a échoué\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not change directory to %s (%s)\n"
|
msgid "could not change directory to %s (%s)\n"
|
||||||
msgstr "changer de répertoire vers %s a échoué (%s)\n"
|
msgstr "changer de répertoire vers %s a échoué (%s)\n"
|
||||||
@@ -535,23 +528,15 @@ msgstr "changer de répertoire vers / a échoué (%s)\n"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "call to popen failed (%s)"
|
msgid "call to popen failed (%s)"
|
||||||
msgstr "call to popen failed (%s)"
|
msgstr "l'appel de popen a échoué (%s)"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "call to waitpid failed (%s)\n"
|
msgid "call to waitpid failed (%s)\n"
|
||||||
msgstr "call to waitpid failed (%s)\n"
|
msgstr "l'appel de waitpid a échoué (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "scriptlet failed to execute correctly\n"
|
msgid "command failed to execute correctly\n"
|
||||||
msgstr "le scriptlet n'a pas pu être exécuté correctement\n"
|
msgstr "la commande n'a pas pu être exécutée correctement\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not remove tmpdir %s\n"
|
|
||||||
msgstr "la suppression du répertoire temporaire %s a échoué\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not open %s: %s\n"
|
|
||||||
msgstr "l'ouverture de %s: %s a échoué\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "no %s cache exists, creating...\n"
|
msgid "no %s cache exists, creating...\n"
|
||||||
@@ -560,4 +545,3 @@ msgstr "le cache %s n'existe pas, création...\n"
|
|||||||
#, c-format
|
#, c-format
|
||||||
msgid "couldn't create package cache, using /tmp instead\n"
|
msgid "couldn't create package cache, using /tmp instead\n"
|
||||||
msgstr "n'a pas pu créer le cache de paquets, /tmp sera utilisé à la place\n"
|
msgstr "n'a pas pu créer le cache de paquets, /tmp sera utilisé à la place\n"
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: hu\n"
|
"Project-Id-Version: hu\n"
|
||||||
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
||||||
"POT-Creation-Date: 2008-08-23 10:54-0500\n"
|
"POT-Creation-Date: 2009-07-27 21:15-0500\n"
|
||||||
"PO-Revision-Date: 2007-03-14 13:45+0100\n"
|
"PO-Revision-Date: 2007-03-14 13:45+0100\n"
|
||||||
"Last-Translator: Nagy Gabor <ngaba@bibl.u-szeged.hu>\n"
|
"Last-Translator: Nagy Gabor <ngaba@bibl.u-szeged.hu>\n"
|
||||||
"Language-Team: <hu@li.org>\n"
|
"Language-Team: <hu@li.org>\n"
|
||||||
@@ -49,14 +49,14 @@ msgstr ""
|
|||||||
"eltérő könyvtár-jogosultságok: %s\n"
|
"eltérő könyvtár-jogosultságok: %s\n"
|
||||||
"fájlrendszer: %o csomag: %o\n"
|
"fájlrendszer: %o csomag: %o\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "extract: symlink %s does not point to dir\n"
|
|
||||||
msgstr "kicsomagolás: %s szimbolikus link nem könyvtárra mutat\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "extract: not overwriting dir with file %s\n"
|
msgid "extract: not overwriting dir with file %s\n"
|
||||||
msgstr "kicsomagolás: nem írok felül könyvtárat a %s fájllal\n"
|
msgstr "kicsomagolás: nem írok felül könyvtárat a %s fájllal\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "extract: symlink %s does not point to dir\n"
|
||||||
|
msgstr "kicsomagolás: %s szimbolikus link nem könyvtárra mutat\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not extract %s (%s)\n"
|
msgid "could not extract %s (%s)\n"
|
||||||
msgstr "nem sikerült kicsomagolni: %s (%s)\n"
|
msgstr "nem sikerült kicsomagolni: %s (%s)\n"
|
||||||
@@ -102,8 +102,8 @@ msgid "could not add entry '%s' in cache\n"
|
|||||||
msgstr "sikertelen a '%s' bejegyzés hozzáadása a gyorsítótárhoz\n"
|
msgstr "sikertelen a '%s' bejegyzés hozzáadása a gyorsítótárhoz\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not remove database entry %s%s\n"
|
msgid "could not remove database %s\n"
|
||||||
msgstr "sikertelen a %s%s adatbázis-bejegyzés eltávolítása\n"
|
msgstr "sikertelen a %s adatbázis-bejegyzés eltávolítása\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid name for database entry '%s'\n"
|
msgid "invalid name for database entry '%s'\n"
|
||||||
@@ -125,6 +125,10 @@ msgstr "a(z) %s adatbázis inkonzisztens: eltérő nevek a(z) %s csomagnál\n"
|
|||||||
msgid "%s database is inconsistent: version mismatch on package %s\n"
|
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"
|
msgstr "a(z) %s adatbázis inkonzisztens: eltérő verziók a(z) %s csomagnál\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create directory %s: %s\n"
|
||||||
|
msgstr "nem sikerült létrehozni a %s könyvtárat: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not parse package description file in %s\n"
|
msgid "could not parse package description file in %s\n"
|
||||||
msgstr "nem sikerült értelmezni a(z) %s csomagleíró fájlját\n"
|
msgstr "nem sikerült értelmezni a(z) %s csomagleíró fájlját\n"
|
||||||
@@ -165,6 +169,10 @@ 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"
|
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"
|
msgstr "a(z) %s csomag saját %s függősége előtt lesz telepítve\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "ignoring package %s-%s\n"
|
||||||
|
msgstr "%s-%s csomag kihagyása\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "provider package was selected (%s provides %s)\n"
|
msgid "provider package was selected (%s provides %s)\n"
|
||||||
msgstr "közvetett csomagválasztás (%s szolgáltatja %s-t)\n"
|
msgstr "közvetett csomagválasztás (%s szolgáltatja %s-t)\n"
|
||||||
@@ -197,21 +205,13 @@ msgstr "nem tudom folytatni a letöltést, újrakezdem\n"
|
|||||||
msgid "cannot write to file '%s'\n"
|
msgid "cannot write to file '%s'\n"
|
||||||
msgstr "nem sikerült a(z) '%s' fájlba írni\n"
|
msgstr "nem sikerült a(z) '%s' fájlba írni\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "error downloading '%s': %s\n"
|
|
||||||
msgstr "hiba '%s' letöltése közben: %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "error writing to file '%s': %s\n"
|
msgid "error writing to file '%s': %s\n"
|
||||||
msgstr "hiba a(z) '%s' fájl írása során: %s\n"
|
msgstr "hiba a(z) '%s' fájl írása során: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not chdir to %s\n"
|
msgid "%s appears to be truncated: %jd/%jd bytes\n"
|
||||||
msgstr "nem sikerült a könyvtárváltás ide: %s\n"
|
msgstr "úgy tűnik, hogy %s csonka: %jd/%jd bájt\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "running XferCommand: fork failed!\n"
|
|
||||||
msgstr "XferCommand futtatása: sikertelen fork!\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to download %s\n"
|
msgid "failed to download %s\n"
|
||||||
@@ -285,6 +285,10 @@ msgstr "nem sikerült eltávolítani az adatbázis-bejegyzést"
|
|||||||
msgid "invalid url for server"
|
msgid "invalid url for server"
|
||||||
msgstr "hibás szerver-URL"
|
msgstr "hibás szerver-URL"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "no servers configured for repository"
|
||||||
|
msgstr "a repóhoz nincs szerver beállítva"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "transaction already initialized"
|
msgid "transaction already initialized"
|
||||||
msgstr "a tranzakció már inicializált"
|
msgstr "a tranzakció már inicializált"
|
||||||
@@ -310,17 +314,17 @@ msgid "operation not compatible with the transaction type"
|
|||||||
msgstr "a művelet nem egyeztethető össze a jelenlegi tranzakciótípussal"
|
msgstr "a művelet nem egyeztethető össze a jelenlegi tranzakciótípussal"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction"
|
msgid "transaction commit attempt when database is not locked"
|
||||||
msgstr "nem sikerült végrahajtani a tranzakciót"
|
msgstr "tranzakció végrehajtási kísérlet nem zárolt adatbázis mellett"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not download all files"
|
|
||||||
msgstr "nem sikerült letölteni az összes fájlt"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not find or read package"
|
msgid "could not find or read package"
|
||||||
msgstr "nem található vagy nem olvasható a csomag"
|
msgstr "nem található vagy nem olvasható a csomag"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "operation cancelled due to ignorepkg"
|
||||||
|
msgstr "művelet megszakítva ignorepkg miatt"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid or corrupted package"
|
msgid "invalid or corrupted package"
|
||||||
msgstr "hibás vagy sérült csomag"
|
msgstr "hibás vagy sérült csomag"
|
||||||
@@ -329,14 +333,6 @@ msgstr "hibás vagy sérült csomag"
|
|||||||
msgid "cannot open package file"
|
msgid "cannot open package file"
|
||||||
msgstr "nem sikerült megnyitni a csomagfájlt"
|
msgstr "nem sikerült megnyitni a csomagfájlt"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "cannot load package data"
|
|
||||||
msgstr "nem sikerült betölteni a csomagadatokat"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "package not installed or lesser version"
|
|
||||||
msgstr "a csomag nincs telepítve vagy kisebb verziójú"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "cannot remove all files for package"
|
msgid "cannot remove all files for package"
|
||||||
msgstr "nem sikerült eltávolítani a csomag összes fájlját"
|
msgstr "nem sikerült eltávolítani a csomag összes fájlját"
|
||||||
@@ -357,10 +353,6 @@ msgstr "hibás vagy sérült delta"
|
|||||||
msgid "delta patch failed"
|
msgid "delta patch failed"
|
||||||
msgstr "delta patchelés sikertelen"
|
msgstr "delta patchelés sikertelen"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "group not found"
|
|
||||||
msgstr "a csoport nem található"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not satisfy dependencies"
|
msgid "could not satisfy dependencies"
|
||||||
msgstr "nem sikerült kielégíteni a függőségeket"
|
msgstr "nem sikerült kielégíteni a függőségeket"
|
||||||
@@ -374,16 +366,8 @@ msgid "conflicting files"
|
|||||||
msgstr "ütköző fájlok"
|
msgstr "ütköző fájlok"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "user aborted the operation"
|
msgid "failed to retrieve some files"
|
||||||
msgstr "felhasználói megszakítás"
|
msgstr "nem sikerült néhány fájlt letölteni"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "internal error"
|
|
||||||
msgstr "belső hiba"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "not confirmed"
|
|
||||||
msgstr "nem megerősített"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid regular expression"
|
msgid "invalid regular expression"
|
||||||
@@ -422,16 +406,28 @@ 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"
|
msgstr "nem sikerült eltávolítani a(z) '%s' bejegyzést a gyorsítótárból\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
||||||
msgstr "%s-%s: csomagfrissítés kihagyása (a(z) %s-%s le fogja cserélni)\n"
|
msgstr "%s: csomagfrissítés kihagyása (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: ignoring package downgrade (%s => %s)\n"
|
||||||
|
msgstr "%s: csomag downgrade kihagyása (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: downgrading from version %s to version %s\n"
|
||||||
|
msgstr "%s: visszatérés a %s verióról a régebbi %s verzióhoz\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: local (%s) is newer than %s (%s)\n"
|
msgid "%s: local (%s) is newer than %s (%s)\n"
|
||||||
msgstr "%s: a helyi (%s) újabb, mint %s (%s)\n"
|
msgstr "%s: a helyi (%s) újabb, mint %s (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
|
||||||
msgstr "%s: csomagfrissítés kihagyása (%s => %s)\n"
|
msgstr "csomag-lecserélés kihagyása (%s-%s => %s-%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot replace %s by %s\n"
|
||||||
|
msgstr "nem lehet lecserélni a(z) %s csomagot a(z) %s csomaggal\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "repository '%s' not found\n"
|
msgid "repository '%s' not found\n"
|
||||||
@@ -457,10 +453,6 @@ msgstr "feloldhatatlan csomagütközéseket találtam\n"
|
|||||||
msgid "removing '%s' from target list because it conflicts with '%s'\n"
|
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"
|
msgstr "'%s' kihagyása, mert ütközik a következővel: '%s'\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "command: %s\n"
|
|
||||||
msgstr "parancs: %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to retrieve some files from %s\n"
|
msgid "failed to retrieve some files from %s\n"
|
||||||
msgstr "nem sikerült néhány fájlt letölteni innen: %s\n"
|
msgstr "nem sikerült néhány fájlt letölteni innen: %s\n"
|
||||||
@@ -469,10 +461,18 @@ msgstr "nem sikerült néhány fájlt letölteni innen: %s\n"
|
|||||||
msgid "could not create removal transaction\n"
|
msgid "could not create removal transaction\n"
|
||||||
msgstr "nem sikerült létrehozni az eltávolító tranzakciót\n"
|
msgstr "nem sikerült létrehozni az eltávolító tranzakciót\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create transaction\n"
|
||||||
|
msgstr "nem sikerült létrehozni a tranzakciót\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not initialize the removal transaction\n"
|
msgid "could not initialize the removal transaction\n"
|
||||||
msgstr "nem sikerült inicializálni az eltávolító tranzakciót\n"
|
msgstr "nem sikerült inicializálni az eltávolító tranzakciót\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not initialize transaction\n"
|
||||||
|
msgstr "nem sikerült inicializálni a tranzakciót\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not prepare removal transaction\n"
|
msgid "could not prepare removal transaction\n"
|
||||||
msgstr "nem sikerült előkészíteni az eltávolító tranzakciót\n"
|
msgstr "nem sikerült előkészíteni az eltávolító tranzakciót\n"
|
||||||
@@ -481,18 +481,6 @@ msgstr "nem sikerült előkészíteni az eltávolító tranzakciót\n"
|
|||||||
msgid "could not commit removal transaction\n"
|
msgid "could not commit removal transaction\n"
|
||||||
msgstr "nem sikerült végrehajtani az eltávolító tranzakciót\n"
|
msgstr "nem sikerült végrehajtani az eltávolító tranzakciót\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not create transaction\n"
|
|
||||||
msgstr "nem sikerült létrehozni a tranzakciót\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not initialize transaction\n"
|
|
||||||
msgstr "nem sikerült inicializálni a tranzakciót\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not prepare transaction\n"
|
|
||||||
msgstr "nem sikerült előkészíteni a tranzakciót\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction\n"
|
msgid "could not commit transaction\n"
|
||||||
msgstr "nem sikerült végrehajtani a tranzakciót\n"
|
msgstr "nem sikerült végrehajtani a tranzakciót\n"
|
||||||
@@ -501,10 +489,6 @@ msgstr "nem sikerült végrehajtani a tranzakciót\n"
|
|||||||
msgid "could not remove lock file %s\n"
|
msgid "could not remove lock file %s\n"
|
||||||
msgstr "nem sikerült a zároló fájl (%s) eltávolítása\n"
|
msgstr "nem sikerült a zároló fájl (%s) eltávolítása\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "No /bin/sh in parent environment, aborting scriptlet\n"
|
|
||||||
msgstr "Nincs /bin/sh a szülő környezetben, szkript megszakítása\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not create temp directory\n"
|
msgid "could not create temp directory\n"
|
||||||
msgstr "nem sikerült létrehozni az ideiglenes könyvtárat\n"
|
msgstr "nem sikerült létrehozni az ideiglenes könyvtárat\n"
|
||||||
@@ -513,6 +497,14 @@ msgstr "nem sikerült létrehozni az ideiglenes könyvtárat\n"
|
|||||||
msgid "could not copy tempfile to %s (%s)\n"
|
msgid "could not copy tempfile to %s (%s)\n"
|
||||||
msgstr "nem sikerült az ideiglenes fájlt ide másolni: %s (%s)\n"
|
msgstr "nem sikerült az ideiglenes fájlt ide másolni: %s (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove tmpdir %s\n"
|
||||||
|
msgstr "nem sikerült eltávolítani a %s ideiglenes könyvtárat\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not open %s: %s\n"
|
||||||
|
msgstr "nem sikerült megnyitni a %s fájlt: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not change directory to %s (%s)\n"
|
msgid "could not change directory to %s (%s)\n"
|
||||||
msgstr "nem sikerült a könyvtárváltás ide: %s (%s)\n"
|
msgstr "nem sikerült a könyvtárváltás ide: %s (%s)\n"
|
||||||
@@ -538,16 +530,8 @@ msgid "call to waitpid failed (%s)\n"
|
|||||||
msgstr "waitpid hívás sikertelen (%s)\n"
|
msgstr "waitpid hívás sikertelen (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "scriptlet failed to execute correctly\n"
|
msgid "command failed to execute correctly\n"
|
||||||
msgstr "a szkript hibásan futott\n"
|
msgstr "a parancs nem futott le sikeresen\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not remove tmpdir %s\n"
|
|
||||||
msgstr "nem sikerült eltávolítani a %s ideiglenes könyvtárat\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not open %s: %s\n"
|
|
||||||
msgstr "nem sikerült megnyitni a %s fájlt: %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "no %s cache exists, creating...\n"
|
msgid "no %s cache exists, creating...\n"
|
||||||
|
|||||||
@@ -10,8 +10,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: libalpm VERSION\n"
|
"Project-Id-Version: libalpm VERSION\n"
|
||||||
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
||||||
"POT-Creation-Date: 2008-08-23 10:54-0500\n"
|
"POT-Creation-Date: 2009-07-27 21:15-0500\n"
|
||||||
"PO-Revision-Date: 2008-08-23 19:30+0200\n"
|
"PO-Revision-Date: 2009-07-28 15:00+0200\n"
|
||||||
"Last-Translator: Giovanni Scafora <giovanni@archlinux.org>\n"
|
"Last-Translator: Giovanni Scafora <giovanni@archlinux.org>\n"
|
||||||
"Language-Team: Arch Linux Italian Team <giovanni@archlinux.org>\n"
|
"Language-Team: Arch Linux Italian Team <giovanni@archlinux.org>\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -24,7 +24,9 @@ msgstr "sostituzione in corso della vecchia versione di %s-%s con %s\n"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "skipping %s-%s because newer version %s is in the target list\n"
|
msgid "skipping %s-%s because newer version %s is in the target list\n"
|
||||||
msgstr "ignoro %s-%s perché la nuova versione %s è già presente nella lista dei pacchetti\n"
|
msgstr ""
|
||||||
|
"ignoro %s-%s perché la nuova versione %s è già presente nella lista dei "
|
||||||
|
"pacchetti\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "conflicting packages were found in the target list\n"
|
msgid "conflicting packages were found in the target list\n"
|
||||||
@@ -40,8 +42,7 @@ msgstr "la sostituzione dei pacchetti con -U non è ancora supportata\n"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "you can replace packages manually using -Rd and -U\n"
|
msgid "you can replace packages manually using -Rd and -U\n"
|
||||||
msgstr ""
|
msgstr "puoi sostituire manualmente i pacchetti, usando le opzioni -Rd e -U\n"
|
||||||
"puoi sostituire manualmente i pacchetti, usando le opzioni -Rd e -U\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid ""
|
msgid ""
|
||||||
@@ -51,14 +52,14 @@ msgstr ""
|
|||||||
"i permessi delle directory differiscono su %s\n"
|
"i permessi delle directory differiscono su %s\n"
|
||||||
"filesystem: %o pacchetto: %o\n"
|
"filesystem: %o pacchetto: %o\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "extract: symlink %s does not point to dir\n"
|
|
||||||
msgstr "estrazione: il link simbolico %s non punta alla directory\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "extract: not overwriting dir with file %s\n"
|
msgid "extract: not overwriting dir with file %s\n"
|
||||||
msgstr "estrazione: non posso sovrascrivere la directory con il file %s\n"
|
msgstr "estrazione: non posso sovrascrivere la directory con il file %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "extract: symlink %s does not point to dir\n"
|
||||||
|
msgstr "estrazione: il link simbolico %s non punta alla directory\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not extract %s (%s)\n"
|
msgid "could not extract %s (%s)\n"
|
||||||
msgstr "impossibile estrarre %s (%s)\n"
|
msgstr "impossibile estrarre %s (%s)\n"
|
||||||
@@ -104,8 +105,8 @@ msgid "could not add entry '%s' in cache\n"
|
|||||||
msgstr "impossible includere la voce '%s' nella cache\n"
|
msgstr "impossible includere la voce '%s' nella cache\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not remove database entry %s%s\n"
|
msgid "could not remove database %s\n"
|
||||||
msgstr "impossibile rimuovere la voce %s%s dal database\n"
|
msgstr "impossibile rimuovere il database %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid name for database entry '%s'\n"
|
msgid "invalid name for database entry '%s'\n"
|
||||||
@@ -121,11 +122,18 @@ msgstr "impossibile aprire il file %s: %s\n"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s database is inconsistent: name mismatch on package %s\n"
|
msgid "%s database is inconsistent: name mismatch on package %s\n"
|
||||||
msgstr "il database %s è inconsistente: il nome del pacchetto %s non corrisponde\n"
|
msgstr ""
|
||||||
|
"il database %s è inconsistente: il nome del pacchetto %s non corrisponde\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s database is inconsistent: version mismatch on package %s\n"
|
msgid "%s database is inconsistent: version mismatch on package %s\n"
|
||||||
msgstr "il database %s è inconsistente: la versione del pacchetto %s non corrisponde\n"
|
msgstr ""
|
||||||
|
"il database %s è inconsistente: la versione del pacchetto %s non "
|
||||||
|
"corrisponde\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create directory %s: %s\n"
|
||||||
|
msgstr "impossibile creare la directory %s: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not parse package description file in %s\n"
|
msgid "could not parse package description file in %s\n"
|
||||||
@@ -167,6 +175,10 @@ msgstr "%s sarà rimosso dopo la sua dipendenza %s\n"
|
|||||||
msgid "%s will be installed before its %s dependency\n"
|
msgid "%s will be installed before its %s dependency\n"
|
||||||
msgstr "%s sarà installato prima della sua dipendenza %s\n"
|
msgstr "%s sarà installato prima della sua dipendenza %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "ignoring package %s-%s\n"
|
||||||
|
msgstr "sto ignorando il pacchetto %s-%s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "provider package was selected (%s provides %s)\n"
|
msgid "provider package was selected (%s provides %s)\n"
|
||||||
msgstr "il pacchetto è già stato selezionato (%s dipende da %s)\n"
|
msgstr "il pacchetto è già stato selezionato (%s dipende da %s)\n"
|
||||||
@@ -199,21 +211,13 @@ msgstr "impossibile riprendere il download\n"
|
|||||||
msgid "cannot write to file '%s'\n"
|
msgid "cannot write to file '%s'\n"
|
||||||
msgstr "impossibile scrivere nel file '%s'\n"
|
msgstr "impossibile scrivere nel file '%s'\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "error downloading '%s': %s\n"
|
|
||||||
msgstr "si è verificato un errore durante il download di '%s': %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "error writing to file '%s': %s\n"
|
msgid "error writing to file '%s': %s\n"
|
||||||
msgstr "si è verificato un errore durante la scrittura nel file '%s': %s\n"
|
msgstr "si è verificato un errore durante la scrittura nel file '%s': %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not chdir to %s\n"
|
msgid "%s appears to be truncated: %jd/%jd bytes\n"
|
||||||
msgstr "impossibile spostarsi nella directory %s\n"
|
msgstr "%s sembra essere incompleto: %jd/%jd byte\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "running XferCommand: fork failed!\n"
|
|
||||||
msgstr "avvio di XferCommand: processo non riuscito!\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to download %s\n"
|
msgid "failed to download %s\n"
|
||||||
@@ -287,6 +291,10 @@ msgstr "impossibile rimuovere la voce dal database"
|
|||||||
msgid "invalid url for server"
|
msgid "invalid url for server"
|
||||||
msgstr "url non valido per il server"
|
msgstr "url non valido per il server"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "no servers configured for repository"
|
||||||
|
msgstr "nessun server è stato configurato per il repository"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "transaction already initialized"
|
msgid "transaction already initialized"
|
||||||
msgstr "l'operazione è già stata inizializzata"
|
msgstr "l'operazione è già stata inizializzata"
|
||||||
@@ -312,17 +320,17 @@ msgid "operation not compatible with the transaction type"
|
|||||||
msgstr "l'operazione è incompatibile con il tipo di transazione"
|
msgstr "l'operazione è incompatibile con il tipo di transazione"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction"
|
msgid "transaction commit attempt when database is not locked"
|
||||||
msgstr "impossibile eseguire l'operazione"
|
msgstr "prova il commit dell'operazione quando il database non è bloccato"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not download all files"
|
|
||||||
msgstr "impossibile scaricare tutti i file"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not find or read package"
|
msgid "could not find or read package"
|
||||||
msgstr "impossibile trovare o leggere il pacchetto"
|
msgstr "impossibile trovare o leggere il pacchetto"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "operation cancelled due to ignorepkg"
|
||||||
|
msgstr "l'operazione è stata ignorata a causa di ignorepkg"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid or corrupted package"
|
msgid "invalid or corrupted package"
|
||||||
msgstr "il pacchetto non è valido oppure è corrotto"
|
msgstr "il pacchetto non è valido oppure è corrotto"
|
||||||
@@ -331,14 +339,6 @@ msgstr "il pacchetto non è valido oppure è corrotto"
|
|||||||
msgid "cannot open package file"
|
msgid "cannot open package file"
|
||||||
msgstr "impossibile aprire il pacchetto"
|
msgstr "impossibile aprire il pacchetto"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "cannot load package data"
|
|
||||||
msgstr "impossibile caricare i dati del pacchetto"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "package not installed or lesser version"
|
|
||||||
msgstr "il pacchetto non è stato installato oppure è una versione meno recente"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "cannot remove all files for package"
|
msgid "cannot remove all files for package"
|
||||||
msgstr "impossibile rimuovere tutti i file del pacchetto"
|
msgstr "impossibile rimuovere tutti i file del pacchetto"
|
||||||
@@ -359,10 +359,6 @@ msgstr "il delta non è valido oppure è corrotto"
|
|||||||
msgid "delta patch failed"
|
msgid "delta patch failed"
|
||||||
msgstr "si sono verificati degli errori con la patch di delta"
|
msgstr "si sono verificati degli errori con la patch di delta"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "group not found"
|
|
||||||
msgstr "impossibile trovare il gruppo"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not satisfy dependencies"
|
msgid "could not satisfy dependencies"
|
||||||
msgstr "impossibile soddisfare le dipendenze"
|
msgstr "impossibile soddisfare le dipendenze"
|
||||||
@@ -376,16 +372,8 @@ msgid "conflicting files"
|
|||||||
msgstr "file in conflitto"
|
msgstr "file in conflitto"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "user aborted the operation"
|
msgid "failed to retrieve some files"
|
||||||
msgstr "l'utente ha annullato l'operazione"
|
msgstr "impossibile scaricare alcuni file"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "internal error"
|
|
||||||
msgstr "errore interno"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "not confirmed"
|
|
||||||
msgstr "non confermato"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid regular expression"
|
msgid "invalid regular expression"
|
||||||
@@ -424,19 +412,29 @@ msgid "could not remove entry '%s' from cache\n"
|
|||||||
msgstr "impossibile rimuovere la voce '%s' dalla cache\n"
|
msgstr "impossibile rimuovere la voce '%s' dalla cache\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
||||||
msgstr ""
|
msgstr "%s: l'aggiornamento del pacchetto è stato ignorato (%s => %s)\n"
|
||||||
"%s-%s: l'aggiornamento del pacchetto è stato ignorato (per essere sostituito con %s-%"
|
|
||||||
"s)\n"
|
#, c-format
|
||||||
|
msgid "%s: ignoring package downgrade (%s => %s)\n"
|
||||||
|
msgstr "%s: il downgrade del pacchetto è stato ignorato (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: downgrading from version %s to version %s\n"
|
||||||
|
msgstr "%s: downgrade in corso dalla versione %s alla versione %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: local (%s) is newer than %s (%s)\n"
|
msgid "%s: local (%s) is newer than %s (%s)\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"%s: la versione installata (%s) è più recente di quella in %s (%s)\n"
|
"%s: la versione installata (%s) è più recente di quella presente in %s (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
|
||||||
msgstr "%s: l'aggiornamento del pacchetto è stato ignorato (%s => %s)\n"
|
msgstr "sto ignorando la sostituzione del pacchetto (%s-%s => %s-%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot replace %s by %s\n"
|
||||||
|
msgstr "impossibile sostituire %s con %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "repository '%s' not found\n"
|
msgid "repository '%s' not found\n"
|
||||||
@@ -462,11 +460,8 @@ msgstr "sono stati rilevati dei conflitti irrisolvibili\n"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "removing '%s' from target list because it conflicts with '%s'\n"
|
msgid "removing '%s' from target list because it conflicts with '%s'\n"
|
||||||
msgstr "rimozione di '%s' dalla lista dei pacchetti perché va in conflitto con '%s'\n"
|
msgstr ""
|
||||||
|
"rimozione di '%s' dalla lista dei pacchetti perché va in conflitto con '%s'\n"
|
||||||
#, c-format
|
|
||||||
msgid "command: %s\n"
|
|
||||||
msgstr "comando: %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to retrieve some files from %s\n"
|
msgid "failed to retrieve some files from %s\n"
|
||||||
@@ -476,10 +471,18 @@ msgstr "impossibile scaricare alcuni file da %s\n"
|
|||||||
msgid "could not create removal transaction\n"
|
msgid "could not create removal transaction\n"
|
||||||
msgstr "impossibile avviare l'operazione di rimozione\n"
|
msgstr "impossibile avviare l'operazione di rimozione\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create transaction\n"
|
||||||
|
msgstr "impossibile avviare l'operazione\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not initialize the removal transaction\n"
|
msgid "could not initialize the removal transaction\n"
|
||||||
msgstr "impossibile inizializzare l'operazione di rimozione\n"
|
msgstr "impossibile inizializzare l'operazione di rimozione\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not initialize transaction\n"
|
||||||
|
msgstr "impossibile inizializzare l'operazione\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not prepare removal transaction\n"
|
msgid "could not prepare removal transaction\n"
|
||||||
msgstr "impossibile preparare l'operazione di rimozione\n"
|
msgstr "impossibile preparare l'operazione di rimozione\n"
|
||||||
@@ -488,18 +491,6 @@ msgstr "impossibile preparare l'operazione di rimozione\n"
|
|||||||
msgid "could not commit removal transaction\n"
|
msgid "could not commit removal transaction\n"
|
||||||
msgstr "impossibile eseguire l'operazione di rimozione\n"
|
msgstr "impossibile eseguire l'operazione di rimozione\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not create transaction\n"
|
|
||||||
msgstr "impossibile avviare l'operazione\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not initialize transaction\n"
|
|
||||||
msgstr "impossibile inizializzare l'operazione\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not prepare transaction\n"
|
|
||||||
msgstr "impossibile preparare l'operazione\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction\n"
|
msgid "could not commit transaction\n"
|
||||||
msgstr "impossibile eseguire l'operazione\n"
|
msgstr "impossibile eseguire l'operazione\n"
|
||||||
@@ -508,10 +499,6 @@ msgstr "impossibile eseguire l'operazione\n"
|
|||||||
msgid "could not remove lock file %s\n"
|
msgid "could not remove lock file %s\n"
|
||||||
msgstr "impossibile rimuovere il file di lock %s\n"
|
msgstr "impossibile rimuovere il file di lock %s\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "No /bin/sh in parent environment, aborting scriptlet\n"
|
|
||||||
msgstr "/bin/sh non è presente nell'ambiente, lo scriptlet sarà interrotto\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not create temp directory\n"
|
msgid "could not create temp directory\n"
|
||||||
msgstr "impossibile creare la directory temporanea\n"
|
msgstr "impossibile creare la directory temporanea\n"
|
||||||
@@ -520,6 +507,14 @@ msgstr "impossibile creare la directory temporanea\n"
|
|||||||
msgid "could not copy tempfile to %s (%s)\n"
|
msgid "could not copy tempfile to %s (%s)\n"
|
||||||
msgstr "impossibile copiare il file temporaneo in %s (%s)\n"
|
msgstr "impossibile copiare il file temporaneo in %s (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove tmpdir %s\n"
|
||||||
|
msgstr "impossibile rimuovere la directory temporanea %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not open %s: %s\n"
|
||||||
|
msgstr "impossibile aprire %s: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not change directory to %s (%s)\n"
|
msgid "could not change directory to %s (%s)\n"
|
||||||
msgstr "impossibile spostarsi nella directory %s (%s)\n"
|
msgstr "impossibile spostarsi nella directory %s (%s)\n"
|
||||||
@@ -545,16 +540,8 @@ msgid "call to waitpid failed (%s)\n"
|
|||||||
msgstr "chiamata a waitpid non riuscita (%s)\n"
|
msgstr "chiamata a waitpid non riuscita (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "scriptlet failed to execute correctly\n"
|
msgid "command failed to execute correctly\n"
|
||||||
msgstr "L'esecuzione dello scriptlet non è riuscita correttamente\n"
|
msgstr "l'esecuzione del comando non è riuscita correttamente\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not remove tmpdir %s\n"
|
|
||||||
msgstr "impossibile rimuovere la directory temporanea %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not open %s: %s\n"
|
|
||||||
msgstr "impossibile aprire %s: %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "no %s cache exists, creating...\n"
|
msgid "no %s cache exists, creating...\n"
|
||||||
|
|||||||
591
lib/libalpm/po/kk.po
Normal file
591
lib/libalpm/po/kk.po
Normal file
@@ -0,0 +1,591 @@
|
|||||||
|
# Kazakh translations for Pacman package manager package.
|
||||||
|
# Copyright (C) 2007 Judd Vinet <jvinet@zeroflux.org>
|
||||||
|
# This file is distributed under the same license as the Pacman package manager package.
|
||||||
|
# Baurzhan Muftakhidinov <baurthefirst@gmail.com> 2009
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: Pacman package manager 3.0.0\n"
|
||||||
|
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
||||||
|
"POT-Creation-Date: 2009-07-27 21:15-0500\n"
|
||||||
|
"PO-Revision-Date: 2009-07-28 19:05+0600\n"
|
||||||
|
"Last-Translator: Baurzhan Muftakhidinov <baurthefirst@gmail.com>\n"
|
||||||
|
"Language-Team: Kazakh\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "replacing older version %s-%s by %s in target list\n"
|
||||||
|
msgstr ""
|
||||||
|
"мақсаттар тізімінде ескірген %s-%s нұсқасы жаңа %s нұсқасымен алмастырылады\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "skipping %s-%s because newer version %s is in the target list\n"
|
||||||
|
msgstr ""
|
||||||
|
"%s-%s өткізіледі, өйткені оның жаңа %s нұсқасы мақсаттар тізімінде бар болып "
|
||||||
|
"тұр\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "conflicting packages were found in the target list\n"
|
||||||
|
msgstr "мақсаттар тізімінде ерегісетін дестелер табылды\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "you cannot install two conflicting packages at the same time\n"
|
||||||
|
msgstr "сіз екі екі ерегісетін дестені орната алмайсыз\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "replacing packages with -U is not supported yet\n"
|
||||||
|
msgstr "дестелерді -A мен -U опцияларын қолданып алмастыру әлі жасалмаған\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "you can replace packages manually using -Rd and -U\n"
|
||||||
|
msgstr ""
|
||||||
|
"сіз дестелерді қолмен алмастыра аласыз, ол үшін -Rd мен -U қолданыңыз\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"directory permissions differ on %s\n"
|
||||||
|
"filesystem: %o package: %o\n"
|
||||||
|
msgstr ""
|
||||||
|
"%s бумасының қатынау рұқсаттары әр түрлі\n"
|
||||||
|
"файлдық жүйе: %o десте: %o\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "extract: not overwriting dir with file %s\n"
|
||||||
|
msgstr "тарқату: бума %s файлымен ауыстырылмайды\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "extract: symlink %s does not point to dir\n"
|
||||||
|
msgstr "тарқату: %s символдық сілтемесі бумаға көрсетіп тұрған жоқ\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not extract %s (%s)\n"
|
||||||
|
msgstr "%s тарқату қатесі (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not rename %s to %s (%s)\n"
|
||||||
|
msgstr "%s атын жаңа %s атына ауыстыру мүмкін емес (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s saved as %s\n"
|
||||||
|
msgstr "%s қазір %s деп сақталды\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not install %s as %s (%s)\n"
|
||||||
|
msgstr "%s қазір %s ретінде орнату мүмкін емес: %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s installed as %s\n"
|
||||||
|
msgstr "%s қазір %s ретінде орнатылды\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "extracting %s as %s.pacnew\n"
|
||||||
|
msgstr "%s қазір %s.pacnew ретінде сақталды\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not get current working directory\n"
|
||||||
|
msgstr "ағымдағы жұмыс бумасын анықтау мүмкін емес\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "problem occurred while upgrading %s\n"
|
||||||
|
msgstr "%s жаңарту кезінде қате кетті\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "problem occurred while installing %s\n"
|
||||||
|
msgstr "%s орнату кезінде қате кетті\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not update database entry %s-%s\n"
|
||||||
|
msgstr "дерекқорда жазбаны жаңарту мүмкін емес %s-%s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not add entry '%s' in cache\n"
|
||||||
|
msgstr "кэш ішіне '%s' жазбасын қосу мүмкін емес\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove database %s\n"
|
||||||
|
msgstr "%s дерекқорын өшіру мүмкін емес\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "invalid name for database entry '%s'\n"
|
||||||
|
msgstr "дерекқордағы '%s' жазбасының аты қате\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "corrupted database entry '%s'\n"
|
||||||
|
msgstr "дерекқордағы '%s' жазбасы зақымдалған\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not open file %s: %s\n"
|
||||||
|
msgstr "%s файлын ашу мүмкін емес: %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s database is inconsistent: name mismatch on package %s\n"
|
||||||
|
msgstr "дерекқордағы қате ақпарат %s: %s дестесінің аты сәйкес келмейді\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s database is inconsistent: version mismatch on package %s\n"
|
||||||
|
msgstr "дерекқордағы қате ақпарат %s: %s дестесінің нұсқасы сәйкес келмейді\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create directory %s: %s\n"
|
||||||
|
msgstr "%s бумасын жасау мүмкін емес: %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not parse package description file in %s\n"
|
||||||
|
msgstr "%s ішіндегі анықтама файлын зерттеу мүмкін емес\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "missing package name in %s\n"
|
||||||
|
msgstr "%s ішінде десте аты жоқ\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "missing package version in %s\n"
|
||||||
|
msgstr "%s ішінде десте нұсқасы жоқ\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "error while reading package %s: %s\n"
|
||||||
|
msgstr "%s дестесін оқу қатесі: %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "missing package metadata in %s\n"
|
||||||
|
msgstr "%s ішінде дестенің мета мәліметтері жоқ\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "attempt to re-register the 'local' DB\n"
|
||||||
|
msgstr "дерекқорды қайта тіркеу талабы\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "database path is undefined\n"
|
||||||
|
msgstr "дерекқорға жол анықталмаған\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "dependency cycle detected:\n"
|
||||||
|
msgstr "циклдік тәуелділік табылды:\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s will be removed after its %s dependency\n"
|
||||||
|
msgstr "%s қазір тәуелділік ретінде %s кейін өшіріледі\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s will be installed before its %s dependency\n"
|
||||||
|
msgstr "%s қазір тәуелділік ретінде %s алдынан орнатылады\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "ignoring package %s-%s\n"
|
||||||
|
msgstr "дестені елемеу %s-%s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "provider package was selected (%s provides %s)\n"
|
||||||
|
msgstr "тандалған %s дестесі %s ұсынады\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
|
||||||
|
msgstr "\"%s\" шешу мүмкін емес, ол \"%s\" тәуелділігі болып тұр\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "url '%s' is invalid\n"
|
||||||
|
msgstr "'%s' сілтемесі қате\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "url scheme not specified, assuming HTTP\n"
|
||||||
|
msgstr "сілтеменің түрі анықталмады, HTTP деп саналады\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "disk"
|
||||||
|
msgstr "дискі"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "failed retrieving file '%s' from %s : %s\n"
|
||||||
|
msgstr "'%s' файлын %s адресінен алу қатемен аяқталды : %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot resume download, starting over\n"
|
||||||
|
msgstr "жүктемені жалғастыру мүмкін емес, басынан басталады\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot write to file '%s'\n"
|
||||||
|
msgstr "'%s' файлына жазу мүмкін емес\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "error writing to file '%s': %s\n"
|
||||||
|
msgstr "'%s' файлына жазу қатесі: %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s appears to be truncated: %jd/%jd bytes\n"
|
||||||
|
msgstr "%s қысқартылады: %jd/%jd байт\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "failed to download %s\n"
|
||||||
|
msgstr "%s жүктеп алу мүмкін емес\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "out of memory!"
|
||||||
|
msgstr "жады жеткіліксіз!"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "unexpected system error"
|
||||||
|
msgstr "күтпеген қате"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "insufficient privileges"
|
||||||
|
msgstr "құқықтар жеткіліксіз"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not find or read file"
|
||||||
|
msgstr "файлды табу не оқу мүмкін емес"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not find or read directory"
|
||||||
|
msgstr "буманы табу не оқу мүмкін емес"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "wrong or NULL argument passed"
|
||||||
|
msgstr "аргумент қате не нөлдік болып тұр"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "library not initialized"
|
||||||
|
msgstr "library іске қосылмады"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "library already initialized"
|
||||||
|
msgstr "library іске қосылған болып тұр"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "unable to lock database"
|
||||||
|
msgstr "дерекқорды оқшаулау мүмкін емес"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not open database"
|
||||||
|
msgstr "дерекқорды ашу мүмкін емес"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create database"
|
||||||
|
msgstr "дерекқорды құру мүмкін емес"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "database not initialized"
|
||||||
|
msgstr "дерекқор іске қосылмады"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "database already registered"
|
||||||
|
msgstr "дерекқор тіркелген болып тұр"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not find database"
|
||||||
|
msgstr "дерекқорды табу мүмкін емес"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not update database"
|
||||||
|
msgstr "дерекқорды жаңарту мүмкін емес"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove database entry"
|
||||||
|
msgstr "дерекқордан жазбаны өшіру мүмкін емес"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "invalid url for server"
|
||||||
|
msgstr "сервер адресі қате"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "no servers configured for repository"
|
||||||
|
msgstr "репозиторий үшін серверлер бапталмаған"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "transaction already initialized"
|
||||||
|
msgstr "сұраным іске қосылған болып тұр"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "transaction not initialized"
|
||||||
|
msgstr "сұраным іске қосылмады"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "duplicate target"
|
||||||
|
msgstr "мақсаттардың қайталануы"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "transaction not prepared"
|
||||||
|
msgstr "сұраным дайындалмады"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "transaction aborted"
|
||||||
|
msgstr "сұраным тоқтатылды"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "operation not compatible with the transaction type"
|
||||||
|
msgstr "әрекет сұранымның түрімен үйлеспейді"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "transaction commit attempt when database is not locked"
|
||||||
|
msgstr "оқшауланбаған дерекқорға жазу талабы"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not find or read package"
|
||||||
|
msgstr "дестені табу не оқу мүмкін емес"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "operation cancelled due to ignorepkg"
|
||||||
|
msgstr "әрекет ignorepkg салдарынан тоқтатылды"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "invalid or corrupted package"
|
||||||
|
msgstr "десте қате не зақымдалған"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot open package file"
|
||||||
|
msgstr "десте файлын ашу мүмкін емес"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot remove all files for package"
|
||||||
|
msgstr "дестенің барлық файлдарын өшіру мүмкін емес"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "package filename is not valid"
|
||||||
|
msgstr "десте файлдың аты қате"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "no such repository"
|
||||||
|
msgstr "мұндай репозиторий жоқ"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "invalid or corrupted delta"
|
||||||
|
msgstr "дельта файлы қате не зақымдалған"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "delta patch failed"
|
||||||
|
msgstr "дельта патчті қолдану қатемен аяқталды"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not satisfy dependencies"
|
||||||
|
msgstr "тәуелділіктерді шешу мүмкін емес"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "conflicting dependencies"
|
||||||
|
msgstr "ерегісетін тәуелділіктер"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "conflicting files"
|
||||||
|
msgstr "ерегісетін файлдар"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "failed to retrieve some files"
|
||||||
|
msgstr "кейбір файлдарды алу сәтсіз аяқталды"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "invalid regular expression"
|
||||||
|
msgstr "тұрақты өрнек дұрыс емес"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "libarchive error"
|
||||||
|
msgstr "libarchive қатесі орын алды"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "download library error"
|
||||||
|
msgstr "download library қатесі орын алды"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "error invoking external downloader"
|
||||||
|
msgstr "сыртқы жүктемелер менеджерін шақыру қатемен аяқталды"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "unexpected error"
|
||||||
|
msgstr "күтпеген қате кетті"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not find %s in database -- skipping\n"
|
||||||
|
msgstr "дерекқор ішінде %s табылмады -- өткізіп жібереміз\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot remove file '%s': %s\n"
|
||||||
|
msgstr " '%s' файлын өшіру мүмкін емес: %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove database entry %s-%s\n"
|
||||||
|
msgstr "дерекқордан %s-%s жазбасын өшіру мүмкін емес\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove entry '%s' from cache\n"
|
||||||
|
msgstr "кэш ішінен '%s' жазбасын өшіру мүмкін емес\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
||||||
|
msgstr "%s: дестені жаңартуды елемеу (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: ignoring package downgrade (%s => %s)\n"
|
||||||
|
msgstr "%s: десте нұсқасын төмендетуді елемеу (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: downgrading from version %s to version %s\n"
|
||||||
|
msgstr "%s: қазіргі %s нұсқасынан %s нұсқасына дейін төмендету\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: local (%s) is newer than %s (%s)\n"
|
||||||
|
msgstr "%s: орнатылған нұсқа (%s), %s (%s) ішіндегісінен жаңа болып тұр\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
|
||||||
|
msgstr "дестені алмастыруды елемеу (%s-%s => %s-%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot replace %s by %s\n"
|
||||||
|
msgstr "%s жаңа %s нұсқасымен алмастыру мүмкін емес\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "repository '%s' not found\n"
|
||||||
|
msgstr "'%s' репозиторийі табылмады\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s-%s is up to date -- skipping\n"
|
||||||
|
msgstr "%s-%s ескірмеді -- өткізіледі\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s-%s is up to date -- reinstalling\n"
|
||||||
|
msgstr "%s-%s ескірмеді -- қайта орнатылады\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "downgrading package %s (%s => %s)\n"
|
||||||
|
msgstr "дестенің нұсқасын төмендету %s (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "unresolvable package conflicts detected\n"
|
||||||
|
msgstr "шешілмейтін дестелер ерегісі табылды\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "removing '%s' from target list because it conflicts with '%s'\n"
|
||||||
|
msgstr ""
|
||||||
|
"мақсаттар тізімінен '%s' өшіріледі, өйткені ол '%s' дестесімен ерегіседі\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "failed to retrieve some files from %s\n"
|
||||||
|
msgstr "%s адресінен кейбір файлдарды алу мүмкін емес\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create removal transaction\n"
|
||||||
|
msgstr "өшіруге сұранымды құру мүмкін емес\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create transaction\n"
|
||||||
|
msgstr "сұранымды жасау мүмкін емес\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not initialize the removal transaction\n"
|
||||||
|
msgstr "өшіруге сұранымды іске қосу мүмкін емес\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not initialize transaction\n"
|
||||||
|
msgstr "сұранымды іске қосу мүмкін емес\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not prepare removal transaction\n"
|
||||||
|
msgstr "өшіруге сұранымды дайындау мүмкін емес\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not commit removal transaction\n"
|
||||||
|
msgstr "өшіруге сұранымды орындау мүмкін емес\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not commit transaction\n"
|
||||||
|
msgstr "сұранымды аяқтау мүмкін емес\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove lock file %s\n"
|
||||||
|
msgstr "%s оқшау файлын өшіру мүмкін емес\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create temp directory\n"
|
||||||
|
msgstr "уақытша буманы құру мүмкін емес\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not copy tempfile to %s (%s)\n"
|
||||||
|
msgstr "уақытша файлды %s ішіне көшіру мүмкін емес (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove tmpdir %s\n"
|
||||||
|
msgstr "tmpdir %s өшіру мүмкін емес\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not open %s: %s\n"
|
||||||
|
msgstr "%s ашу мүмкін емес: %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not change directory to %s (%s)\n"
|
||||||
|
msgstr "%s бумасына ауысу мүмкін емес (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not fork a new process (%s)\n"
|
||||||
|
msgstr "жаңа үрдісті құру мүмкін емес (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not change the root directory (%s)\n"
|
||||||
|
msgstr "түбірлік буманы ауыстыру мүмкін емес (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not change directory to / (%s)\n"
|
||||||
|
msgstr "/ бумасына ауысу мүмкін емес (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "call to popen failed (%s)"
|
||||||
|
msgstr "popen шақыру қатемен аяқталды (%s)"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "call to waitpid failed (%s)\n"
|
||||||
|
msgstr "waitpid шақыру қатемен аяқталды(%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "command failed to execute correctly\n"
|
||||||
|
msgstr "команда дұрыс орындалмады\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "no %s cache exists, creating...\n"
|
||||||
|
msgstr "%s кэші жоқ болып тұр, құрылады...\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "couldn't create package cache, using /tmp instead\n"
|
||||||
|
msgstr "дестелер кэшін құру мүмкін емес, оның орнына /tmp қолданылады\n"
|
||||||
|
|
||||||
|
#~ msgid "error downloading '%s': %s\n"
|
||||||
|
#~ msgstr "'%s' жүктеп алу қатесі: %s\n"
|
||||||
|
|
||||||
|
#~ msgid "could not chdir to %s\n"
|
||||||
|
#~ msgstr "%s бумасына ауысу мүмкін емес\n"
|
||||||
|
|
||||||
|
#~ msgid "running XferCommand: fork failed!\n"
|
||||||
|
#~ msgstr "XferCommand қосу: сәтсіз аяқталды\n"
|
||||||
|
|
||||||
|
#~ msgid "could not commit transaction"
|
||||||
|
#~ msgstr "сұранымды аяқтау мүмкін емес"
|
||||||
|
|
||||||
|
#~ msgid "could not download all files"
|
||||||
|
#~ msgstr "барлық файлдарды жүктеп алу мүмкін емес"
|
||||||
|
|
||||||
|
#~ msgid "cannot load package data"
|
||||||
|
#~ msgstr "дестенің мәліметтерін жүктеу мүмкін емес"
|
||||||
|
|
||||||
|
#~ msgid "package not installed or lesser version"
|
||||||
|
#~ msgstr "десте орнатылмаған, не оның нұсқасы ескі"
|
||||||
|
|
||||||
|
#~ msgid "group not found"
|
||||||
|
#~ msgstr "топ табылмады"
|
||||||
|
|
||||||
|
#~ msgid "user aborted the operation"
|
||||||
|
#~ msgstr "әрекетті пайдаланушы тоқтатты"
|
||||||
|
|
||||||
|
#~ msgid "internal error"
|
||||||
|
#~ msgstr "ішкі қате орын алды"
|
||||||
|
|
||||||
|
#~ msgid "not confirmed"
|
||||||
|
#~ msgstr "расталмады"
|
||||||
|
|
||||||
|
#~ msgid "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "%s-%s: дестені жаңартуды елемеу (ол %s-%s нұсқасымен ауыстырылады)\n"
|
||||||
|
|
||||||
|
#~ msgid "command: %s\n"
|
||||||
|
#~ msgstr "командасы: %s\n"
|
||||||
|
|
||||||
|
#~ msgid "could not prepare transaction\n"
|
||||||
|
#~ msgstr "сұранымды дайындау мүмкін емес\n"
|
||||||
|
|
||||||
|
#~ msgid "No /bin/sh in parent environment, aborting scriptlet\n"
|
||||||
|
#~ msgstr "Бастапқы ортада /bin/sh жоқ, скрипт орындалмайды\n"
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
# SOME DESCRIPTIVE TITLE.
|
# SOME DESCRIPTIVE TITLE.
|
||||||
# Copyright (C) YEAR Judd Vinet <jvinet@zeroflux.org>
|
# Copyright (C) YEAR Pacman Development Team <pacman-dev@archlinux.org>
|
||||||
# This file is distributed under the same license as the PACKAGE package.
|
# This file is distributed under the same license as the PACKAGE package.
|
||||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||||
#
|
#
|
||||||
@@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: PACKAGE VERSION\n"
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||||||
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
||||||
"POT-Creation-Date: 2008-08-23 10:54-0500\n"
|
"POT-Creation-Date: 2009-07-27 21:15-0500\n"
|
||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
@@ -47,11 +47,11 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "extract: symlink %s does not point to dir\n"
|
msgid "extract: not overwriting dir with file %s\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "extract: not overwriting dir with file %s\n"
|
msgid "extract: symlink %s does not point to dir\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
@@ -99,7 +99,7 @@ msgid "could not add entry '%s' in cache\n"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not remove database entry %s%s\n"
|
msgid "could not remove database %s\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
@@ -122,6 +122,10 @@ msgstr ""
|
|||||||
msgid "%s database is inconsistent: version mismatch on package %s\n"
|
msgid "%s database is inconsistent: version mismatch on package %s\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create directory %s: %s\n"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not parse package description file in %s\n"
|
msgid "could not parse package description file in %s\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -162,6 +166,10 @@ msgstr ""
|
|||||||
msgid "%s will be installed before its %s dependency\n"
|
msgid "%s will be installed before its %s dependency\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "ignoring package %s-%s\n"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "provider package was selected (%s provides %s)\n"
|
msgid "provider package was selected (%s provides %s)\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -194,20 +202,12 @@ msgstr ""
|
|||||||
msgid "cannot write to file '%s'\n"
|
msgid "cannot write to file '%s'\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "error downloading '%s': %s\n"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "error writing to file '%s': %s\n"
|
msgid "error writing to file '%s': %s\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not chdir to %s\n"
|
msgid "%s appears to be truncated: %jd/%jd bytes\n"
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "running XferCommand: fork failed!\n"
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
@@ -282,6 +282,10 @@ msgstr ""
|
|||||||
msgid "invalid url for server"
|
msgid "invalid url for server"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "no servers configured for repository"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "transaction already initialized"
|
msgid "transaction already initialized"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -307,17 +311,17 @@ msgid "operation not compatible with the transaction type"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction"
|
msgid "transaction commit attempt when database is not locked"
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not download all files"
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not find or read package"
|
msgid "could not find or read package"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "operation cancelled due to ignorepkg"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid or corrupted package"
|
msgid "invalid or corrupted package"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -326,14 +330,6 @@ msgstr ""
|
|||||||
msgid "cannot open package file"
|
msgid "cannot open package file"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "cannot load package data"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "package not installed or lesser version"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "cannot remove all files for package"
|
msgid "cannot remove all files for package"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -354,10 +350,6 @@ msgstr ""
|
|||||||
msgid "delta patch failed"
|
msgid "delta patch failed"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "group not found"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not satisfy dependencies"
|
msgid "could not satisfy dependencies"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -371,15 +363,7 @@ msgid "conflicting files"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "user aborted the operation"
|
msgid "failed to retrieve some files"
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "internal error"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "not confirmed"
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
@@ -419,7 +403,15 @@ msgid "could not remove entry '%s' from cache\n"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: ignoring package downgrade (%s => %s)\n"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: downgrading from version %s to version %s\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
@@ -427,7 +419,11 @@ msgid "%s: local (%s) is newer than %s (%s)\n"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot replace %s by %s\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
@@ -454,10 +450,6 @@ msgstr ""
|
|||||||
msgid "removing '%s' from target list because it conflicts with '%s'\n"
|
msgid "removing '%s' from target list because it conflicts with '%s'\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "command: %s\n"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to retrieve some files from %s\n"
|
msgid "failed to retrieve some files from %s\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -466,10 +458,18 @@ msgstr ""
|
|||||||
msgid "could not create removal transaction\n"
|
msgid "could not create removal transaction\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create transaction\n"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not initialize the removal transaction\n"
|
msgid "could not initialize the removal transaction\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not initialize transaction\n"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not prepare removal transaction\n"
|
msgid "could not prepare removal transaction\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -478,18 +478,6 @@ msgstr ""
|
|||||||
msgid "could not commit removal transaction\n"
|
msgid "could not commit removal transaction\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not create transaction\n"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not initialize transaction\n"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not prepare transaction\n"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction\n"
|
msgid "could not commit transaction\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -498,10 +486,6 @@ msgstr ""
|
|||||||
msgid "could not remove lock file %s\n"
|
msgid "could not remove lock file %s\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "No /bin/sh in parent environment, aborting scriptlet\n"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not create temp directory\n"
|
msgid "could not create temp directory\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -510,6 +494,14 @@ msgstr ""
|
|||||||
msgid "could not copy tempfile to %s (%s)\n"
|
msgid "could not copy tempfile to %s (%s)\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove tmpdir %s\n"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not open %s: %s\n"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not change directory to %s (%s)\n"
|
msgid "could not change directory to %s (%s)\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -535,15 +527,7 @@ msgid "call to waitpid failed (%s)\n"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "scriptlet failed to execute correctly\n"
|
msgid "command failed to execute correctly\n"
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not remove tmpdir %s\n"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not open %s: %s\n"
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
|
|||||||
@@ -3,14 +3,14 @@
|
|||||||
# Copyright (C) 2007 Judd Vinet <jvinet@zeroflux.org>
|
# Copyright (C) 2007 Judd Vinet <jvinet@zeroflux.org>
|
||||||
# This file is distributed under the same license as the Pacman package manager package.
|
# This file is distributed under the same license as the Pacman package manager package.
|
||||||
# Mateusz Jędrasik <m.jedrasik@gmail.com>, 2007.
|
# Mateusz Jędrasik <m.jedrasik@gmail.com>, 2007.
|
||||||
# Mateusz Herych <heniekk@gmail.com>, 2008.
|
# Mateusz Herych <heniekk@gmail.com>, 2008-2009.
|
||||||
# #
|
# #
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Pacman package manager 3.0.1\n"
|
"Project-Id-Version: Pacman package manager 3.0.1\n"
|
||||||
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
||||||
"POT-Creation-Date: 2008-08-23 10:54-0500\n"
|
"POT-Creation-Date: 2009-07-27 21:15-0500\n"
|
||||||
"PO-Revision-Date: 2009-01-03 16:50+0100\n"
|
"PO-Revision-Date: 2009-07-29 10:39+0100\n"
|
||||||
"Last-Translator: Mateusz Herych <heniekk@gmail.com>\n"
|
"Last-Translator: Mateusz Herych <heniekk@gmail.com>\n"
|
||||||
"Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
|
"Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -55,14 +55,14 @@ msgstr ""
|
|||||||
"Różne prawa dla %s\n"
|
"Różne prawa dla %s\n"
|
||||||
"system plików: %o pakiet: %o\n"
|
"system plików: %o pakiet: %o\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "extract: symlink %s does not point to dir\n"
|
|
||||||
msgstr "rozpakowywanie: dowiązanie symboliczne %s nie kieruje do katalogu\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "extract: not overwriting dir with file %s\n"
|
msgid "extract: not overwriting dir with file %s\n"
|
||||||
msgstr "rozpakowywanie: nie nadpisuję katalogu plikiem %s\n"
|
msgstr "rozpakowywanie: nie nadpisuję katalogu plikiem %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "extract: symlink %s does not point to dir\n"
|
||||||
|
msgstr "rozpakowywanie: dowiązanie symboliczne %s nie kieruje do katalogu\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not extract %s (%s)\n"
|
msgid "could not extract %s (%s)\n"
|
||||||
msgstr "nie udało się rozpakować %s (%s)\n"
|
msgstr "nie udało się rozpakować %s (%s)\n"
|
||||||
@@ -108,8 +108,8 @@ msgid "could not add entry '%s' in cache\n"
|
|||||||
msgstr "nie udało się dodać pozycji '%s' w pliku podręcznym\n"
|
msgstr "nie udało się dodać pozycji '%s' w pliku podręcznym\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not remove database entry %s%s\n"
|
msgid "could not remove database %s\n"
|
||||||
msgstr "nie udało się usunąć wpisu %s%s z bazy danych\n"
|
msgstr "nie można usunąć bazy danych %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid name for database entry '%s'\n"
|
msgid "invalid name for database entry '%s'\n"
|
||||||
@@ -131,6 +131,10 @@ msgstr "baza danych %s jest sprzeczna: niedopasowana nazwa w pakiecie %s\n"
|
|||||||
msgid "%s database is inconsistent: version mismatch on package %s\n"
|
msgid "%s database is inconsistent: version mismatch on package %s\n"
|
||||||
msgstr "baza danych %s jest sprzeczna: niedopasowana wersja w pakiecie %s\n"
|
msgstr "baza danych %s jest sprzeczna: niedopasowana wersja w pakiecie %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create directory %s: %s\n"
|
||||||
|
msgstr "nie można stworzyć katalogu %s: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not parse package description file in %s\n"
|
msgid "could not parse package description file in %s\n"
|
||||||
msgstr "nie udało się przeczytać opisu pliku w %s\n"
|
msgstr "nie udało się przeczytać opisu pliku w %s\n"
|
||||||
@@ -171,6 +175,10 @@ msgstr "%s zostanie usunięta po zależniościach %s\n"
|
|||||||
msgid "%s will be installed before its %s dependency\n"
|
msgid "%s will be installed before its %s dependency\n"
|
||||||
msgstr "%s zostanie zainstalowane przed zależnościami %s\n"
|
msgstr "%s zostanie zainstalowane przed zależnościami %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "ignoring package %s-%s\n"
|
||||||
|
msgstr "ignorowanie pakietu %s-%s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "provider package was selected (%s provides %s)\n"
|
msgid "provider package was selected (%s provides %s)\n"
|
||||||
msgstr "dostawca pakietu został wybrany (%s dostarcza %s)\n"
|
msgstr "dostawca pakietu został wybrany (%s dostarcza %s)\n"
|
||||||
@@ -203,21 +211,13 @@ msgstr "nie można kontynuować pobieranie, zaczynanie od początku\n"
|
|||||||
msgid "cannot write to file '%s'\n"
|
msgid "cannot write to file '%s'\n"
|
||||||
msgstr "nie można zapisywać do pliku '%s'\n"
|
msgstr "nie można zapisywać do pliku '%s'\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "error downloading '%s': %s\n"
|
|
||||||
msgstr "błąd podczas pobierania '%s': %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "error writing to file '%s': %s\n"
|
msgid "error writing to file '%s': %s\n"
|
||||||
msgstr "Błąd podczas zapisywania do pliku '%s': %s\n"
|
msgstr "Błąd podczas zapisywania do pliku '%s': %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not chdir to %s\n"
|
msgid "%s appears to be truncated: %jd/%jd bytes\n"
|
||||||
msgstr "nie udało się zmienić katalogu na / %s\n"
|
msgstr "%s wygląda, jakby został obcięty %jd/%jd bajtów\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "running XferCommand: fork failed!\n"
|
|
||||||
msgstr "uruchamianie XferCommand: klonowanie nieudane!\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to download %s\n"
|
msgid "failed to download %s\n"
|
||||||
@@ -291,6 +291,10 @@ msgstr "nie udało się usunąć wpisu do bazy danych"
|
|||||||
msgid "invalid url for server"
|
msgid "invalid url for server"
|
||||||
msgstr "nieprawidłowy url dla serwera"
|
msgstr "nieprawidłowy url dla serwera"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "no servers configured for repository"
|
||||||
|
msgstr "brak serwerów skonfigurowanych dla repozytorium"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "transaction already initialized"
|
msgid "transaction already initialized"
|
||||||
msgstr "tranzakcja została już zainicjowana"
|
msgstr "tranzakcja została już zainicjowana"
|
||||||
@@ -316,17 +320,17 @@ msgid "operation not compatible with the transaction type"
|
|||||||
msgstr "operacja niekompatybilna z typem tranzakcji"
|
msgstr "operacja niekompatybilna z typem tranzakcji"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction"
|
msgid "transaction commit attempt when database is not locked"
|
||||||
msgstr "nie udało się wykonać tranzakcji"
|
msgstr "zmiana tranzakcji następuje, kiedy baza danych nie jest zablokowana"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not download all files"
|
|
||||||
msgstr "nie udało się pobrać wszystkich plików"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not find or read package"
|
msgid "could not find or read package"
|
||||||
msgstr "nie udało się znaleźć bądź odczytać pakietu"
|
msgstr "nie udało się znaleźć bądź odczytać pakietu"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "operation cancelled due to ignorepkg"
|
||||||
|
msgstr "operacja anulowana przez ignorepkg"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid or corrupted package"
|
msgid "invalid or corrupted package"
|
||||||
msgstr "nieprawidłowy bądź uszkodzony pakiet"
|
msgstr "nieprawidłowy bądź uszkodzony pakiet"
|
||||||
@@ -335,14 +339,6 @@ msgstr "nieprawidłowy bądź uszkodzony pakiet"
|
|||||||
msgid "cannot open package file"
|
msgid "cannot open package file"
|
||||||
msgstr "nie udało się otworzyć pliku pakietu"
|
msgstr "nie udało się otworzyć pliku pakietu"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "cannot load package data"
|
|
||||||
msgstr "nie udało się załadować danych pakietu"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "package not installed or lesser version"
|
|
||||||
msgstr "pakiet nie zainstalowany lub zainstalowany w niższej wersji"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "cannot remove all files for package"
|
msgid "cannot remove all files for package"
|
||||||
msgstr "nie udało się usunąć wszystkich plików pakietu"
|
msgstr "nie udało się usunąć wszystkich plików pakietu"
|
||||||
@@ -363,10 +359,6 @@ msgstr "nieprawidłowy bądź uszkodzony pakiet przyrostowy"
|
|||||||
msgid "delta patch failed"
|
msgid "delta patch failed"
|
||||||
msgstr "Łatanie pakietem przyrostowym nie powiodło się"
|
msgstr "Łatanie pakietem przyrostowym nie powiodło się"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "group not found"
|
|
||||||
msgstr "grupa nie została odnaleziona"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not satisfy dependencies"
|
msgid "could not satisfy dependencies"
|
||||||
msgstr "nie udało się usatysfakcjonować zależności"
|
msgstr "nie udało się usatysfakcjonować zależności"
|
||||||
@@ -380,16 +372,8 @@ msgid "conflicting files"
|
|||||||
msgstr "konfliktujące pliki"
|
msgstr "konfliktujące pliki"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "user aborted the operation"
|
msgid "failed to retrieve some files"
|
||||||
msgstr "użytkownik zaniechał operacji"
|
msgstr "nie udało się odzyskać niektórych plików"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "internal error"
|
|
||||||
msgstr "błąd wewnętrzny"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "not confirmed"
|
|
||||||
msgstr "nie potwierdzono"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid regular expression"
|
msgid "invalid regular expression"
|
||||||
@@ -429,17 +413,28 @@ msgid "could not remove entry '%s' from cache\n"
|
|||||||
msgstr "nie udało się usunąć wpisu '%s' z pamięci podręcznej\n"
|
msgstr "nie udało się usunąć wpisu '%s' z pamięci podręcznej\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
||||||
msgstr ""
|
msgstr "%s: ignorowanie aktualizacji pakietu (%s => %s)\n"
|
||||||
"%s-%s: ignorowanie aktualizowania pakietu (do zastąpienia przez %s-%s)\n"
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: ignoring package downgrade (%s => %s)\n"
|
||||||
|
msgstr "%s: ignorowanie dezaktualizacji pakietu (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: downgrading from version %s to version %s\n"
|
||||||
|
msgstr "%s: dezaktualizowanie z wersji %s do wersji %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: local (%s) is newer than %s (%s)\n"
|
msgid "%s: local (%s) is newer than %s (%s)\n"
|
||||||
msgstr "%s: local (%s) jest nowsze niż %s (%s)\n"
|
msgstr "%s: local (%s) jest nowsze niż %s (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
|
||||||
msgstr "%s: ignorowanie aktualizacji pakietu (%s => %s)\n"
|
msgstr "ignorowanie zastępowania pakietu (%s-%s => %s-%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot replace %s by %s\n"
|
||||||
|
msgstr "nie udało się zastąpić %s przez %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "repository '%s' not found\n"
|
msgid "repository '%s' not found\n"
|
||||||
@@ -465,10 +460,6 @@ msgstr "odkryto nierozwiązywalne konflikty pakietów\n"
|
|||||||
msgid "removing '%s' from target list because it conflicts with '%s'\n"
|
msgid "removing '%s' from target list because it conflicts with '%s'\n"
|
||||||
msgstr "usuwanie '%s' z listy celów ponieważ konfliktuje z '%s'\n"
|
msgstr "usuwanie '%s' z listy celów ponieważ konfliktuje z '%s'\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "command: %s\n"
|
|
||||||
msgstr "komenda: %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to retrieve some files from %s\n"
|
msgid "failed to retrieve some files from %s\n"
|
||||||
msgstr "nie udało się pobrać niektórych plików z %s\n"
|
msgstr "nie udało się pobrać niektórych plików z %s\n"
|
||||||
@@ -477,10 +468,18 @@ msgstr "nie udało się pobrać niektórych plików z %s\n"
|
|||||||
msgid "could not create removal transaction\n"
|
msgid "could not create removal transaction\n"
|
||||||
msgstr "nie udało się utworzyć tranzakcji usuwania\n"
|
msgstr "nie udało się utworzyć tranzakcji usuwania\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create transaction\n"
|
||||||
|
msgstr "nie udało się stworzyć tranzakcji\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not initialize the removal transaction\n"
|
msgid "could not initialize the removal transaction\n"
|
||||||
msgstr "nie udało się zainicjować tranzakcji usuwania\n"
|
msgstr "nie udało się zainicjować tranzakcji usuwania\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not initialize transaction\n"
|
||||||
|
msgstr "nie udało się zainicjować tranzakcji\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not prepare removal transaction\n"
|
msgid "could not prepare removal transaction\n"
|
||||||
msgstr "nie udało się przygotować tranzakcji usuwania\n"
|
msgstr "nie udało się przygotować tranzakcji usuwania\n"
|
||||||
@@ -489,18 +488,6 @@ msgstr "nie udało się przygotować tranzakcji usuwania\n"
|
|||||||
msgid "could not commit removal transaction\n"
|
msgid "could not commit removal transaction\n"
|
||||||
msgstr "nie udało się wykonać tranzakcji usuwania\n"
|
msgstr "nie udało się wykonać tranzakcji usuwania\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not create transaction\n"
|
|
||||||
msgstr "nie udało się stworzyć tranzakcji\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not initialize transaction\n"
|
|
||||||
msgstr "nie udało się zainicjować tranzakcji\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not prepare transaction\n"
|
|
||||||
msgstr "nie udało się przygotować tranzakcji\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction\n"
|
msgid "could not commit transaction\n"
|
||||||
msgstr "nie udało się wykonać tranzakcji\n"
|
msgstr "nie udało się wykonać tranzakcji\n"
|
||||||
@@ -509,10 +496,6 @@ msgstr "nie udało się wykonać tranzakcji\n"
|
|||||||
msgid "could not remove lock file %s\n"
|
msgid "could not remove lock file %s\n"
|
||||||
msgstr "nie udało się usunąć pliku blokującego %s\n"
|
msgstr "nie udało się usunąć pliku blokującego %s\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "No /bin/sh in parent environment, aborting scriptlet\n"
|
|
||||||
msgstr "Brak /bin/sh w środowisku, przerywanie wykonywania skryptu\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not create temp directory\n"
|
msgid "could not create temp directory\n"
|
||||||
msgstr "nie udało się stworzyć katalogu tymczasowego\n"
|
msgstr "nie udało się stworzyć katalogu tymczasowego\n"
|
||||||
@@ -521,6 +504,14 @@ msgstr "nie udało się stworzyć katalogu tymczasowego\n"
|
|||||||
msgid "could not copy tempfile to %s (%s)\n"
|
msgid "could not copy tempfile to %s (%s)\n"
|
||||||
msgstr "nie udało się skopiować pliku tymczasowego do %s (%s)\n"
|
msgstr "nie udało się skopiować pliku tymczasowego do %s (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove tmpdir %s\n"
|
||||||
|
msgstr "nie udało się usunąć katalogu tymczasowego %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not open %s: %s\n"
|
||||||
|
msgstr "nie udało się otworzyć %s: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not change directory to %s (%s)\n"
|
msgid "could not change directory to %s (%s)\n"
|
||||||
msgstr "nie udało się zmienić katalogu na %s (%s)\n"
|
msgstr "nie udało się zmienić katalogu na %s (%s)\n"
|
||||||
@@ -546,16 +537,8 @@ msgid "call to waitpid failed (%s)\n"
|
|||||||
msgstr "zawołanie do waitpid nieudane (%s)\n"
|
msgstr "zawołanie do waitpid nieudane (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "scriptlet failed to execute correctly\n"
|
msgid "command failed to execute correctly\n"
|
||||||
msgstr "skrypt nie mógł zostać poprawnie wykonany\n"
|
msgstr "komenda nie wykonała się poprawnie\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not remove tmpdir %s\n"
|
|
||||||
msgstr "nie udało się usunąć katalogu tymczasowego %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not open %s: %s\n"
|
|
||||||
msgstr "nie udało się otworzyć %s: %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "no %s cache exists, creating...\n"
|
msgid "no %s cache exists, creating...\n"
|
||||||
@@ -565,3 +548,49 @@ msgstr "brak pamięci podręcznej dla %s, tworzenie...\n"
|
|||||||
msgid "couldn't create package cache, using /tmp instead\n"
|
msgid "couldn't create package cache, using /tmp instead\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"nie udało się stworzyć pamięci podręcznej pakietu, używanie /tmp w zamian\n"
|
"nie udało się stworzyć pamięci podręcznej pakietu, używanie /tmp w zamian\n"
|
||||||
|
|
||||||
|
#~ msgid "error downloading '%s': %s\n"
|
||||||
|
#~ msgstr "błąd podczas pobierania '%s': %s\n"
|
||||||
|
|
||||||
|
#~ msgid "could not chdir to %s\n"
|
||||||
|
#~ msgstr "nie udało się zmienić katalogu na / %s\n"
|
||||||
|
|
||||||
|
#~ msgid "running XferCommand: fork failed!\n"
|
||||||
|
#~ msgstr "uruchamianie XferCommand: klonowanie nieudane!\n"
|
||||||
|
|
||||||
|
#~ msgid "could not commit transaction"
|
||||||
|
#~ msgstr "nie udało się wykonać tranzakcji"
|
||||||
|
|
||||||
|
#~ msgid "could not download all files"
|
||||||
|
#~ msgstr "nie udało się pobrać wszystkich plików"
|
||||||
|
|
||||||
|
#~ msgid "cannot load package data"
|
||||||
|
#~ msgstr "nie udało się załadować danych pakietu"
|
||||||
|
|
||||||
|
#~ msgid "package not installed or lesser version"
|
||||||
|
#~ msgstr "pakiet nie zainstalowany lub zainstalowany w niższej wersji"
|
||||||
|
|
||||||
|
#~ msgid "group not found"
|
||||||
|
#~ msgstr "grupa nie została odnaleziona"
|
||||||
|
|
||||||
|
#~ msgid "user aborted the operation"
|
||||||
|
#~ msgstr "użytkownik zaniechał operacji"
|
||||||
|
|
||||||
|
#~ msgid "internal error"
|
||||||
|
#~ msgstr "błąd wewnętrzny"
|
||||||
|
|
||||||
|
#~ msgid "not confirmed"
|
||||||
|
#~ msgstr "nie potwierdzono"
|
||||||
|
|
||||||
|
#~ msgid "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "%s-%s: ignorowanie aktualizowania pakietu (do zastąpienia przez %s-%s)\n"
|
||||||
|
|
||||||
|
#~ msgid "command: %s\n"
|
||||||
|
#~ msgstr "komenda: %s\n"
|
||||||
|
|
||||||
|
#~ msgid "could not prepare transaction\n"
|
||||||
|
#~ msgstr "nie udało się przygotować tranzakcji\n"
|
||||||
|
|
||||||
|
#~ msgid "No /bin/sh in parent environment, aborting scriptlet\n"
|
||||||
|
#~ msgstr "Brak /bin/sh w środowisku, przerywanie wykonywania skryptu\n"
|
||||||
|
|||||||
@@ -12,9 +12,9 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: pt_BR\n"
|
"Project-Id-Version: pt_BR\n"
|
||||||
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
||||||
"POT-Creation-Date: 2008-08-23 10:54-0500\n"
|
"POT-Creation-Date: 2009-07-27 21:15-0500\n"
|
||||||
"PO-Revision-Date: 2008-08-24 11:24-0300\n"
|
"PO-Revision-Date: 2009-07-28 23:17-0300\n"
|
||||||
"Last-Translator: Hugo Doria <hugo@archlinux.org>\n"
|
"Last-Translator: Armando M. Baratti <ambaratti.listas@gmail.com.br>\n"
|
||||||
"Language-Team: Português do Brasil <www.archlinux-br.org>\n"
|
"Language-Team: Português do Brasil <www.archlinux-br.org>\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -59,14 +59,14 @@ msgstr ""
|
|||||||
"permissões de diretório diferem em %s\n"
|
"permissões de diretório diferem em %s\n"
|
||||||
"sistema de arquivos: %o pacote: %o\n"
|
"sistema de arquivos: %o pacote: %o\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "extract: symlink %s does not point to dir\n"
|
|
||||||
msgstr "extração: symlink %s não aponta para diretório\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "extract: not overwriting dir with file %s\n"
|
msgid "extract: not overwriting dir with file %s\n"
|
||||||
msgstr "extração: não sobrescrevendo diretório com arquivo %s\n"
|
msgstr "extração: não sobrescrevendo diretório com arquivo %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "extract: symlink %s does not point to dir\n"
|
||||||
|
msgstr "extração: symlink %s não aponta para diretório\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not extract %s (%s)\n"
|
msgid "could not extract %s (%s)\n"
|
||||||
msgstr "não foi possível extrair %s (%s)\n"
|
msgstr "não foi possível extrair %s (%s)\n"
|
||||||
@@ -112,8 +112,8 @@ msgid "could not add entry '%s' in cache\n"
|
|||||||
msgstr "não foi possível adicionar a entrada '%s' ao cache\n"
|
msgstr "não foi possível adicionar a entrada '%s' ao cache\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not remove database entry %s%s\n"
|
msgid "could not remove database %s\n"
|
||||||
msgstr "não foi possível remover a entrada da base de dados %s%s\n"
|
msgstr "não foi possível remover a base de dados %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid name for database entry '%s'\n"
|
msgid "invalid name for database entry '%s'\n"
|
||||||
@@ -121,7 +121,7 @@ msgstr "nome inválido para a entrada na base de dados '%s'\n"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "corrupted database entry '%s'\n"
|
msgid "corrupted database entry '%s'\n"
|
||||||
msgstr "entrada corrompida na base de dados '%s'\n"
|
msgstr "entrada corrompida da base de dados '%s'\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not open file %s: %s\n"
|
msgid "could not open file %s: %s\n"
|
||||||
@@ -136,6 +136,10 @@ msgid "%s database is inconsistent: version mismatch on package %s\n"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"%s base de dados está inconsistente: versão no pacote %s não coincide\n"
|
"%s base de dados está inconsistente: versão no pacote %s não coincide\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create directory %s: %s\n"
|
||||||
|
msgstr "não foi possível criar diretório %s: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not parse package description file in %s\n"
|
msgid "could not parse package description file in %s\n"
|
||||||
msgstr "não foi possível interpretar o arquivo de descrição do pacote em %s\n"
|
msgstr "não foi possível interpretar o arquivo de descrição do pacote em %s\n"
|
||||||
@@ -154,7 +158,7 @@ msgstr "erro ao ler o pacote %s: %s\n"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "missing package metadata in %s\n"
|
msgid "missing package metadata in %s\n"
|
||||||
msgstr "faltando metadata do pacote em %s\n"
|
msgstr "faltando metadados do pacote em %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "attempt to re-register the 'local' DB\n"
|
msgid "attempt to re-register the 'local' DB\n"
|
||||||
@@ -176,6 +180,10 @@ msgstr "%s será removido após sua dependência %s\n"
|
|||||||
msgid "%s will be installed before its %s dependency\n"
|
msgid "%s will be installed before its %s dependency\n"
|
||||||
msgstr "%s será instalado antes de sua dependência %s\n"
|
msgstr "%s será instalado antes de sua dependência %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "ignoring package %s-%s\n"
|
||||||
|
msgstr "ignorando pacote %s-%s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "provider package was selected (%s provides %s)\n"
|
msgid "provider package was selected (%s provides %s)\n"
|
||||||
msgstr "pacote provedor foi selecionado (%s provê %s)\n"
|
msgstr "pacote provedor foi selecionado (%s provê %s)\n"
|
||||||
@@ -202,27 +210,19 @@ msgstr "falha ao obter arquivo '%s' de %s : %s\n"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "cannot resume download, starting over\n"
|
msgid "cannot resume download, starting over\n"
|
||||||
msgstr "não foi possível resumir o download, reiniciando\n"
|
msgstr "não foi possível retomar o download, reiniciando\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "cannot write to file '%s'\n"
|
msgid "cannot write to file '%s'\n"
|
||||||
msgstr "não foi possível escrever no arquivo '%s'\n"
|
msgstr "não foi possível escrever no arquivo '%s'\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "error downloading '%s': %s\n"
|
|
||||||
msgstr "erro no download de '%s': %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "error writing to file '%s': %s\n"
|
msgid "error writing to file '%s': %s\n"
|
||||||
msgstr "erro ao escrever no arquivo '%s': %s\n"
|
msgstr "erro ao escrever no arquivo '%s': %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not chdir to %s\n"
|
msgid "%s appears to be truncated: %jd/%jd bytes\n"
|
||||||
msgstr "não foi possível mudar para o diretório %s\n"
|
msgstr "%s parece estar truncado: %jd/%jd bytes\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "running XferCommand: fork failed!\n"
|
|
||||||
msgstr "rodando XferCommand: fork falhou!\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to download %s\n"
|
msgid "failed to download %s\n"
|
||||||
@@ -250,7 +250,7 @@ msgstr "não foi possível encontrar ou ler o diretório"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "wrong or NULL argument passed"
|
msgid "wrong or NULL argument passed"
|
||||||
msgstr "argumento passo está errado ou NULO"
|
msgstr "argumento passado está errado ou NULO"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "library not initialized"
|
msgid "library not initialized"
|
||||||
@@ -296,6 +296,10 @@ msgstr "não foi possível remover a entrada da base de dados"
|
|||||||
msgid "invalid url for server"
|
msgid "invalid url for server"
|
||||||
msgstr "url inválida para servidor"
|
msgstr "url inválida para servidor"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "no servers configured for repository"
|
||||||
|
msgstr "nenhum servidor configurado para o repositório"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "transaction already initialized"
|
msgid "transaction already initialized"
|
||||||
msgstr "transação já inicializada"
|
msgstr "transação já inicializada"
|
||||||
@@ -321,17 +325,17 @@ msgid "operation not compatible with the transaction type"
|
|||||||
msgstr "operação não compatível com tipo de transação"
|
msgstr "operação não compatível com tipo de transação"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction"
|
msgid "transaction commit attempt when database is not locked"
|
||||||
msgstr "não foi possível realizar transação"
|
msgstr "tentativa de aceitação de transação com a base de dados não travada"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not download all files"
|
|
||||||
msgstr "não foi possível fazer o download de todos os arquivos"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not find or read package"
|
msgid "could not find or read package"
|
||||||
msgstr "não foi possível ler ou escrever o pacote"
|
msgstr "não foi possível ler ou escrever o pacote"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "operation cancelled due to ignorepkg"
|
||||||
|
msgstr "operação cancelada devido a ignorepkg"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid or corrupted package"
|
msgid "invalid or corrupted package"
|
||||||
msgstr "pacote inválido ou corrompido"
|
msgstr "pacote inválido ou corrompido"
|
||||||
@@ -340,14 +344,6 @@ msgstr "pacote inválido ou corrompido"
|
|||||||
msgid "cannot open package file"
|
msgid "cannot open package file"
|
||||||
msgstr "não foi possível abrir arquivo do pacote"
|
msgstr "não foi possível abrir arquivo do pacote"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "cannot load package data"
|
|
||||||
msgstr "não foi possível carregar dados do pacote"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "package not installed or lesser version"
|
|
||||||
msgstr "pacote não instalado ou versão inferior"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "cannot remove all files for package"
|
msgid "cannot remove all files for package"
|
||||||
msgstr "não foi possível remover todos os arquivos para o pacote"
|
msgstr "não foi possível remover todos os arquivos para o pacote"
|
||||||
@@ -368,10 +364,6 @@ msgstr "delta inválido ou corrompido"
|
|||||||
msgid "delta patch failed"
|
msgid "delta patch failed"
|
||||||
msgstr "patch do delta falhou"
|
msgstr "patch do delta falhou"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "group not found"
|
|
||||||
msgstr "grupo não encontrado"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not satisfy dependencies"
|
msgid "could not satisfy dependencies"
|
||||||
msgstr "não foi possível satisfazer as dependências"
|
msgstr "não foi possível satisfazer as dependências"
|
||||||
@@ -385,16 +377,8 @@ msgid "conflicting files"
|
|||||||
msgstr "arquivos conflitantes"
|
msgstr "arquivos conflitantes"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "user aborted the operation"
|
msgid "failed to retrieve some files"
|
||||||
msgstr "usuário abortou a operação"
|
msgstr "falha ao obter alguns arquivos"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "internal error"
|
|
||||||
msgstr "erro interno"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "not confirmed"
|
|
||||||
msgstr "não confirmado"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid regular expression"
|
msgid "invalid regular expression"
|
||||||
@@ -430,19 +414,31 @@ msgstr "não foi possível remover a entrada da base de dados %s-%s\n"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not remove entry '%s' from cache\n"
|
msgid "could not remove entry '%s' from cache\n"
|
||||||
msgstr "não foi possível remover a entrada '%s' da cache\n"
|
msgstr "não foi possível remover a entrada '%s' do cache\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
||||||
msgstr "%s-%s: ignorando atualização do pacote (a ser substituido por %s-%s)\n"
|
msgstr "%s: ignorando atualização do pacote (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: ignoring package downgrade (%s => %s)\n"
|
||||||
|
msgstr "%s: ignorando retorno de versão do pacote (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: downgrading from version %s to version %s\n"
|
||||||
|
msgstr "%s: voltando da versão %s para a versão %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: local (%s) is newer than %s (%s)\n"
|
msgid "%s: local (%s) is newer than %s (%s)\n"
|
||||||
msgstr "%s: local (%s) é mais novo que %s (%s)\n"
|
msgstr "%s: local (%s) é mais novo que %s (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
|
||||||
msgstr "%s: ignorando atualização do pacote (%s => %s)\n"
|
msgstr "ignorando substituição do pacote (%s-%s => %s-%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot replace %s by %s\n"
|
||||||
|
msgstr "não foi possível substituir %s por %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "repository '%s' not found\n"
|
msgid "repository '%s' not found\n"
|
||||||
@@ -468,10 +464,6 @@ msgstr "conflito de pacotes não solucionável detectado\n"
|
|||||||
msgid "removing '%s' from target list because it conflicts with '%s'\n"
|
msgid "removing '%s' from target list because it conflicts with '%s'\n"
|
||||||
msgstr "removendo '%s' da lista de pacotes porque ele conflita com '%s'\n"
|
msgstr "removendo '%s' da lista de pacotes porque ele conflita com '%s'\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "command: %s\n"
|
|
||||||
msgstr "comando: %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to retrieve some files from %s\n"
|
msgid "failed to retrieve some files from %s\n"
|
||||||
msgstr "falha ao obter alguns arquivos de %s\n"
|
msgstr "falha ao obter alguns arquivos de %s\n"
|
||||||
@@ -480,10 +472,18 @@ msgstr "falha ao obter alguns arquivos de %s\n"
|
|||||||
msgid "could not create removal transaction\n"
|
msgid "could not create removal transaction\n"
|
||||||
msgstr "não foi possível criar transação de remoção\n"
|
msgstr "não foi possível criar transação de remoção\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create transaction\n"
|
||||||
|
msgstr "não foi possível criar a transação\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not initialize the removal transaction\n"
|
msgid "could not initialize the removal transaction\n"
|
||||||
msgstr "não foi possível inicializar a transação de remoção\n"
|
msgstr "não foi possível inicializar a transação de remoção\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not initialize transaction\n"
|
||||||
|
msgstr "não foi possível inicializar a transação\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not prepare removal transaction\n"
|
msgid "could not prepare removal transaction\n"
|
||||||
msgstr "não foi possível preparar a transação de remoção\n"
|
msgstr "não foi possível preparar a transação de remoção\n"
|
||||||
@@ -492,18 +492,6 @@ msgstr "não foi possível preparar a transação de remoção\n"
|
|||||||
msgid "could not commit removal transaction\n"
|
msgid "could not commit removal transaction\n"
|
||||||
msgstr "não foi possível efetuar a transação de remoção\n"
|
msgstr "não foi possível efetuar a transação de remoção\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not create transaction\n"
|
|
||||||
msgstr "não foi possível criar a transação\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not initialize transaction\n"
|
|
||||||
msgstr "não foi possível inicializar a transação\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not prepare transaction\n"
|
|
||||||
msgstr "não foi possível preparar a transação\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction\n"
|
msgid "could not commit transaction\n"
|
||||||
msgstr "não foi possível efetuar a transação\n"
|
msgstr "não foi possível efetuar a transação\n"
|
||||||
@@ -512,10 +500,6 @@ msgstr "não foi possível efetuar a transação\n"
|
|||||||
msgid "could not remove lock file %s\n"
|
msgid "could not remove lock file %s\n"
|
||||||
msgstr "não foi possível remover o arquivo de trava %s\n"
|
msgstr "não foi possível remover o arquivo de trava %s\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "No /bin/sh in parent environment, aborting scriptlet\n"
|
|
||||||
msgstr "/bin/sh não encontrado no diretório pai, abortando scriptlet\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not create temp directory\n"
|
msgid "could not create temp directory\n"
|
||||||
msgstr "não foi possível criar diretório temporário\n"
|
msgstr "não foi possível criar diretório temporário\n"
|
||||||
@@ -524,6 +508,14 @@ msgstr "não foi possível criar diretório temporário\n"
|
|||||||
msgid "could not copy tempfile to %s (%s)\n"
|
msgid "could not copy tempfile to %s (%s)\n"
|
||||||
msgstr "não foi possível copiar arquivo temporário para %s (%s)\n"
|
msgstr "não foi possível copiar arquivo temporário para %s (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove tmpdir %s\n"
|
||||||
|
msgstr "não foi possível remover o diretório temporário %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not open %s: %s\n"
|
||||||
|
msgstr "não foi possível abrir %s : %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not change directory to %s (%s)\n"
|
msgid "could not change directory to %s (%s)\n"
|
||||||
msgstr "não foi possível mudar diretório para %s (%s)\n"
|
msgstr "não foi possível mudar diretório para %s (%s)\n"
|
||||||
@@ -549,16 +541,8 @@ msgid "call to waitpid failed (%s)\n"
|
|||||||
msgstr "chamada para waitpid falhou (%s)\n"
|
msgstr "chamada para waitpid falhou (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "scriptlet failed to execute correctly\n"
|
msgid "command failed to execute correctly\n"
|
||||||
msgstr "scriptlet falhou em executar corretamente\n"
|
msgstr "o comando falhou em executar corretamente\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not remove tmpdir %s\n"
|
|
||||||
msgstr "não foi possível remover o diretório temporário %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not open %s: %s\n"
|
|
||||||
msgstr "não foi possível abrir %s : %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "no %s cache exists, creating...\n"
|
msgid "no %s cache exists, creating...\n"
|
||||||
@@ -566,5 +550,50 @@ msgstr "cache %s não existe, criando...\n"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "couldn't create package cache, using /tmp instead\n"
|
msgid "couldn't create package cache, using /tmp instead\n"
|
||||||
msgstr "não foi possível criar cache de pacotes, usando /tmp\n"
|
msgstr "não foi possível criar cache de pacotes, usando /tmp em seu lugar\n"
|
||||||
|
|
||||||
|
#~ msgid "error downloading '%s': %s\n"
|
||||||
|
#~ msgstr "erro no download de '%s': %s\n"
|
||||||
|
|
||||||
|
#~ msgid "could not chdir to %s\n"
|
||||||
|
#~ msgstr "não foi possível mudar para o diretório %s\n"
|
||||||
|
|
||||||
|
#~ msgid "running XferCommand: fork failed!\n"
|
||||||
|
#~ msgstr "rodando XferCommand: fork falhou!\n"
|
||||||
|
|
||||||
|
#~ msgid "could not commit transaction"
|
||||||
|
#~ msgstr "não foi possível realizar transação"
|
||||||
|
|
||||||
|
#~ msgid "could not download all files"
|
||||||
|
#~ msgstr "não foi possível fazer o download de todos os arquivos"
|
||||||
|
|
||||||
|
#~ msgid "cannot load package data"
|
||||||
|
#~ msgstr "não foi possível carregar dados do pacote"
|
||||||
|
|
||||||
|
#~ msgid "package not installed or lesser version"
|
||||||
|
#~ msgstr "pacote não instalado ou versão inferior"
|
||||||
|
|
||||||
|
#~ msgid "group not found"
|
||||||
|
#~ msgstr "grupo não encontrado"
|
||||||
|
|
||||||
|
#~ msgid "user aborted the operation"
|
||||||
|
#~ msgstr "usuário abortou a operação"
|
||||||
|
|
||||||
|
#~ msgid "internal error"
|
||||||
|
#~ msgstr "erro interno"
|
||||||
|
|
||||||
|
#~ msgid "not confirmed"
|
||||||
|
#~ msgstr "não confirmado"
|
||||||
|
|
||||||
|
#~ msgid "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "%s-%s: ignorando atualização do pacote (a ser substituido por %s-%s)\n"
|
||||||
|
|
||||||
|
#~ msgid "command: %s\n"
|
||||||
|
#~ msgstr "comando: %s\n"
|
||||||
|
|
||||||
|
#~ msgid "could not prepare transaction\n"
|
||||||
|
#~ msgstr "não foi possível preparar a transação\n"
|
||||||
|
|
||||||
|
#~ msgid "No /bin/sh in parent environment, aborting scriptlet\n"
|
||||||
|
#~ msgstr "/bin/sh não encontrado no diretório pai, abortando scriptlet\n"
|
||||||
|
|||||||
545
lib/libalpm/po/ro.po
Normal file
545
lib/libalpm/po/ro.po
Normal file
@@ -0,0 +1,545 @@
|
|||||||
|
# libalpm Romanian translation.
|
||||||
|
# Copyright (C) 2009 Judd Vinet <jvinet@zeroflux.org>
|
||||||
|
# This file is distributed under the same license as the PACKAGE package.
|
||||||
|
# Volodia Macovei <blog@volodia.ro>, 2009.
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: Pacman package manager 3.0.0\n"
|
||||||
|
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
||||||
|
"POT-Creation-Date: 2009-07-27 21:15-0500\n"
|
||||||
|
"PO-Revision-Date: 2009-06-28 14:30+0700\n"
|
||||||
|
"Last-Translator: volodia macovei <blog@volodia.ro>\n"
|
||||||
|
"Language-Team: Romanian SbLUG for Arch <blog@volodia.ro>\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "replacing older version %s-%s by %s in target list\n"
|
||||||
|
msgstr "se înlocuieşte versiunea veche %s-%s cu %s în lista ţintă\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "skipping %s-%s because newer version %s is in the target list\n"
|
||||||
|
msgstr ""
|
||||||
|
"se trece peste %s-%s deoarece o versiune mai nouă %s există în lista ţintă\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "conflicting packages were found in the target list\n"
|
||||||
|
msgstr "s-au găsit pachete în conflict în lista ţintă\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "you cannot install two conflicting packages at the same time\n"
|
||||||
|
msgstr "nu puteţi instala două pachete aflate în conflict în acelaşi timp\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "replacing packages with -U is not supported yet\n"
|
||||||
|
msgstr "înlocuirea pachetelor cu -U nu este suportată încă\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "you can replace packages manually using -Rd and -U\n"
|
||||||
|
msgstr "puteţi înlocui manual pachetele folosind -Rd şi -U\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid ""
|
||||||
|
"directory permissions differ on %s\n"
|
||||||
|
"filesystem: %o package: %o\n"
|
||||||
|
msgstr ""
|
||||||
|
"permisiile directorului diferă la %s\n"
|
||||||
|
"filesystem: %o package: %o\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "extract: not overwriting dir with file %s\n"
|
||||||
|
msgstr "extragere: nu se suprascrie dir cu fişierul %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "extract: symlink %s does not point to dir\n"
|
||||||
|
msgstr "extragere: symlink %s nu punctează la dir\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not extract %s (%s)\n"
|
||||||
|
msgstr "nu se poate extrage %s (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not rename %s to %s (%s)\n"
|
||||||
|
msgstr "nu se poate redenumi %s în %s (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s saved as %s\n"
|
||||||
|
msgstr "%s salvat ca %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not install %s as %s (%s)\n"
|
||||||
|
msgstr "nu se poate instala %s ca %s (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s installed as %s\n"
|
||||||
|
msgstr "%s instalat ca %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "extracting %s as %s.pacnew\n"
|
||||||
|
msgstr "se extrage %s ca %s.pacnew\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not get current working directory\n"
|
||||||
|
msgstr "nu poate fi dat directorul de lucru curent\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "problem occurred while upgrading %s\n"
|
||||||
|
msgstr "problemă apărută la actualizarea %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "problem occurred while installing %s\n"
|
||||||
|
msgstr "problemă apărută la instalarea %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not update database entry %s-%s\n"
|
||||||
|
msgstr "nu se poate actualiza intrarea în baza de date %s-%s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not add entry '%s' in cache\n"
|
||||||
|
msgstr "nu se poate adăuga intrarea '%s' în cache\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove database %s\n"
|
||||||
|
msgstr "nu poate fi eliminată baza de date %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "invalid name for database entry '%s'\n"
|
||||||
|
msgstr "nume pentru intrarea în baza de date nevalid '%s'\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "corrupted database entry '%s'\n"
|
||||||
|
msgstr "intrare în baza de date coruptă '%s'\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not open file %s: %s\n"
|
||||||
|
msgstr "nu poate fi deschis fişierul %s: %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s database is inconsistent: name mismatch on package %s\n"
|
||||||
|
msgstr ""
|
||||||
|
"baza de date %s este inconsistentă: numele nu se potriveşte cu pachetul %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s database is inconsistent: version mismatch on package %s\n"
|
||||||
|
msgstr ""
|
||||||
|
"baza de date %s este inconsistentă: versiunea nu se potriveşte cu pachetul %"
|
||||||
|
"s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create directory %s: %s\n"
|
||||||
|
msgstr "nu poate fi creat director %s: %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not parse package description file in %s\n"
|
||||||
|
msgstr "nu a putut fi analizat fişierul de descriere a pachetului în %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "missing package name in %s\n"
|
||||||
|
msgstr "nume pachet lipsă în %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "missing package version in %s\n"
|
||||||
|
msgstr "versiune pachet lipsă în %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "error while reading package %s: %s\n"
|
||||||
|
msgstr "eroare la citirea pachetului %s: %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "missing package metadata in %s\n"
|
||||||
|
msgstr "lipsă metadata pentru pachet în %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "attempt to re-register the 'local' DB\n"
|
||||||
|
msgstr "încercare de a reînregistra 'local' DB\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "database path is undefined\n"
|
||||||
|
msgstr "calea bazei de date este nedefinită\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "dependency cycle detected:\n"
|
||||||
|
msgstr "a fost detectat ciclul de dependenţă:\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s will be removed after its %s dependency\n"
|
||||||
|
msgstr "%s va fi eliminat înaintea dependenţei sale %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s will be installed before its %s dependency\n"
|
||||||
|
msgstr "%s va fi instalat înaintea dependenţei sale %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "ignoring package %s-%s\n"
|
||||||
|
msgstr "se ignoră pachetul %s-%s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "provider package was selected (%s provides %s)\n"
|
||||||
|
msgstr "pachetul furnizor a fost selectat (%s furnizează %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
|
||||||
|
msgstr "nu se poate rezolva \"%s\", o dependenţă a \"%s\"\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "url '%s' is invalid\n"
|
||||||
|
msgstr "URL '%s' este nevalid\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "url scheme not specified, assuming HTTP\n"
|
||||||
|
msgstr "schemă URL nespecificată, se presupune HTTP\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "disk"
|
||||||
|
msgstr "disk"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "failed retrieving file '%s' from %s : %s\n"
|
||||||
|
msgstr "eşec la regăsirea fişierului '%s' din %s : %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot resume download, starting over\n"
|
||||||
|
msgstr "nu se poate relua descărcare, se începe peste\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot write to file '%s'\n"
|
||||||
|
msgstr "nu se poate scrie în fişierul '%s'\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "error writing to file '%s': %s\n"
|
||||||
|
msgstr "eroare la scriere în fişierul '%s': %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s appears to be truncated: %jd/%jd bytes\n"
|
||||||
|
msgstr "%s apare a fi trunchiat: %jd/%jd bytes\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "failed to download %s\n"
|
||||||
|
msgstr "eşec la descărcarea %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "out of memory!"
|
||||||
|
msgstr "depăşire de memorie!"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "unexpected system error"
|
||||||
|
msgstr "eroare de sistem neaşteptată"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "insufficient privileges"
|
||||||
|
msgstr "privilegii insuficiente"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not find or read file"
|
||||||
|
msgstr " nu poate fi găsit sau citit fişierul"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not find or read directory"
|
||||||
|
msgstr "nu poate fi găsit sau citit directorul"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "wrong or NULL argument passed"
|
||||||
|
msgstr "argument greşit sau NULL trecut"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "library not initialized"
|
||||||
|
msgstr "bibliotecă neiniţializată"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "library already initialized"
|
||||||
|
msgstr "bibliotecă deja iniţializată"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "unable to lock database"
|
||||||
|
msgstr "imposibilitate de a bloca baza de date"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not open database"
|
||||||
|
msgstr "nu poate fi deschisă baza de date"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create database"
|
||||||
|
msgstr "nu poate fi creată baza de date"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "database not initialized"
|
||||||
|
msgstr "bază de date neiniţializată"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "database already registered"
|
||||||
|
msgstr "bază de date deja înregistrată"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not find database"
|
||||||
|
msgstr "nu poate fi găsită baza de date"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not update database"
|
||||||
|
msgstr "nu poate fi actualizată baza de date"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove database entry"
|
||||||
|
msgstr "nu poate fi eliminată intrarea în baza de date"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "invalid url for server"
|
||||||
|
msgstr "URL nevalid pentru server"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "no servers configured for repository"
|
||||||
|
msgstr "nu sunt servere confugurate pentru depozit"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "transaction already initialized"
|
||||||
|
msgstr "tranzacţie deja iniţializată"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "transaction not initialized"
|
||||||
|
msgstr "tranzacţie neiniţializată"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "duplicate target"
|
||||||
|
msgstr "dublează ţinta"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "transaction not prepared"
|
||||||
|
msgstr "tranzacţie nepregătită"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "transaction aborted"
|
||||||
|
msgstr "tranzacţie abandonată"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "operation not compatible with the transaction type"
|
||||||
|
msgstr "operaţiune incompatibilă cu tipul tranzacţiei"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "transaction commit attempt when database is not locked"
|
||||||
|
msgstr "efectuarea tranzacției așteaptă până baza de date nu va fi blocată"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not find or read package"
|
||||||
|
msgstr "pachetul nu poate fi găsit sau citit"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "operation cancelled due to ignorepkg"
|
||||||
|
msgstr "operație abandonată datorită ignorepkg"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "invalid or corrupted package"
|
||||||
|
msgstr "pachet nevalid sau corupt"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot open package file"
|
||||||
|
msgstr "nu poate fi deschis fişierul pachet"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot remove all files for package"
|
||||||
|
msgstr "nu pot fi eliminate toate fişierele din pachet"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "package filename is not valid"
|
||||||
|
msgstr "numele de fişier pachet este nevalid"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "no such repository"
|
||||||
|
msgstr "nu există astfel de depozit"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "invalid or corrupted delta"
|
||||||
|
msgstr "delta invalid sau corupt"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "delta patch failed"
|
||||||
|
msgstr "patch delta eşuat"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not satisfy dependencies"
|
||||||
|
msgstr "nu pot fi satisfăcute dependenţele"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "conflicting dependencies"
|
||||||
|
msgstr "dependenţe în conflict"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "conflicting files"
|
||||||
|
msgstr "fişiere în conflict"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "failed to retrieve some files"
|
||||||
|
msgstr "eşec în refacerea unor fişiere"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "invalid regular expression"
|
||||||
|
msgstr "expresie regulară invalidă"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "libarchive error"
|
||||||
|
msgstr "eroare libarchive"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "download library error"
|
||||||
|
msgstr "eroare în biblioteca de descărcare"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "error invoking external downloader"
|
||||||
|
msgstr "eroare la invocarea descărcătorului extern"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "unexpected error"
|
||||||
|
msgstr "eroare neaşteptată"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not find %s in database -- skipping\n"
|
||||||
|
msgstr "nu poate fi găsit %s în baza de date -- se trece peste\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot remove file '%s': %s\n"
|
||||||
|
msgstr "nu poate fi eliminat fişierul '%s': %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove database entry %s-%s\n"
|
||||||
|
msgstr "nu se poate elimina intrarea în baza de date %s-%s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove entry '%s' from cache\n"
|
||||||
|
msgstr "nu se poate elimina intrarea '%s' din cache\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
||||||
|
msgstr "%s: se ignoră actualizarea pachetului (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: ignoring package downgrade (%s => %s)\n"
|
||||||
|
msgstr "%s: se ignoră declasificarea pachetului (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: downgrading from version %s to version %s\n"
|
||||||
|
msgstr "%s: declasare de la versiunea %s la versiunea %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: local (%s) is newer than %s (%s)\n"
|
||||||
|
msgstr "%s: (%s) local este mai nou decât %s (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
|
||||||
|
msgstr "se ignoră înlocuirea pachetului (%s-%s => %s-%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot replace %s by %s\n"
|
||||||
|
msgstr "nu poate fi înlocuit %s de %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "repository '%s' not found\n"
|
||||||
|
msgstr "depozit '%s' negăsit\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s-%s is up to date -- skipping\n"
|
||||||
|
msgstr "%s-%s este actualizat -- se trece peste\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s-%s is up to date -- reinstalling\n"
|
||||||
|
msgstr "%s-%s este actualizat -- se reinstalează\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "downgrading package %s (%s => %s)\n"
|
||||||
|
msgstr "se declasează pachetul %s (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "unresolvable package conflicts detected\n"
|
||||||
|
msgstr "au fost detectate conflicte nerezolvabile în pachet\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "removing '%s' from target list because it conflicts with '%s'\n"
|
||||||
|
msgstr "se elimină '%s' din lista ţintă deoarece este în conflict cu '%s'\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "failed to retrieve some files from %s\n"
|
||||||
|
msgstr "eşec în refacerea unor fişiere din %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create removal transaction\n"
|
||||||
|
msgstr "nu poate fi creată tranzacţia de eliminare\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create transaction\n"
|
||||||
|
msgstr "nu poate fi creată tranzacţia\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not initialize the removal transaction\n"
|
||||||
|
msgstr "nu poate fi iniţializată tranzacţia de eliminare\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not initialize transaction\n"
|
||||||
|
msgstr "nu poate fi iniţializată tranzacţia\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not prepare removal transaction\n"
|
||||||
|
msgstr "nu poate fi pregătită tranzacţia de eliminare\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not commit removal transaction\n"
|
||||||
|
msgstr "nu poate fi efectuată tranzacţia de eliminare\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not commit transaction\n"
|
||||||
|
msgstr "nu poate fi efectuată tranzacţia\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove lock file %s\n"
|
||||||
|
msgstr "nu poate fi eliminat fişierul blocat %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create temp directory\n"
|
||||||
|
msgstr "nu poate fi creat directorul temp\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not copy tempfile to %s (%s)\n"
|
||||||
|
msgstr "nu se poate copia tempfile la %s (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove tmpdir %s\n"
|
||||||
|
msgstr "nu poate fi eliminat tmpdir %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not open %s: %s\n"
|
||||||
|
msgstr "nu se poate deschide %s: %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not change directory to %s (%s)\n"
|
||||||
|
msgstr "nu poate fi schimbat directorul la %s (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not fork a new process (%s)\n"
|
||||||
|
msgstr "nu se poate diviza un nou proces (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not change the root directory (%s)\n"
|
||||||
|
msgstr "nu poate fi schimbat directorul root (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not change directory to / (%s)\n"
|
||||||
|
msgstr "nu poate fi schimbat directorul la / (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "call to popen failed (%s)"
|
||||||
|
msgstr "cererea către popen a eşuat (%s)"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "call to waitpid failed (%s)\n"
|
||||||
|
msgstr "cererea către waitpid a eşuat (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "command failed to execute correctly\n"
|
||||||
|
msgstr "executarea corectă a comenzii a eşuat\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "no %s cache exists, creating...\n"
|
||||||
|
msgstr "nu există %s cache, se crează...\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "couldn't create package cache, using /tmp instead\n"
|
||||||
|
msgstr "nu se poate crea cache pachet, se foloseşte mai degrabă /tmp\n"
|
||||||
@@ -7,8 +7,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Pacman package manager 3.0.0\n"
|
"Project-Id-Version: Pacman package manager 3.0.0\n"
|
||||||
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
||||||
"POT-Creation-Date: 2008-08-23 10:54-0500\n"
|
"POT-Creation-Date: 2009-07-27 21:15-0500\n"
|
||||||
"PO-Revision-Date: 2009-01-03 15:55+0300\n"
|
"PO-Revision-Date: 2009-07-29 20:29+0300\n"
|
||||||
"Last-Translator: Sergey Tereschenko <serg.partizan@gmail.com>\n"
|
"Last-Translator: Sergey Tereschenko <serg.partizan@gmail.com>\n"
|
||||||
"Language-Team: Russian\n"
|
"Language-Team: Russian\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -31,11 +31,13 @@ msgstr "в списке целей найдены конфликтующие п
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "you cannot install two conflicting packages at the same time\n"
|
msgid "you cannot install two conflicting packages at the same time\n"
|
||||||
msgstr "вы не можете установить два конфликтующих пакета одновременно\n"
|
msgstr ""
|
||||||
|
"вы не можете одновременно установить конфликтующие между собой пакеты\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "replacing packages with -U is not supported yet\n"
|
msgid "replacing packages with -U is not supported yet\n"
|
||||||
msgstr "замещение пакетов с использованием опций -A и -U еще не реализовано\n"
|
msgstr ""
|
||||||
|
"замещение пакетов с использованием параметров -A и -U еще не реализовано\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "you can replace packages manually using -Rd and -U\n"
|
msgid "you can replace packages manually using -Rd and -U\n"
|
||||||
@@ -46,32 +48,32 @@ msgid ""
|
|||||||
"directory permissions differ on %s\n"
|
"directory permissions differ on %s\n"
|
||||||
"filesystem: %o package: %o\n"
|
"filesystem: %o package: %o\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"права доступа различаются у директории %s\n"
|
"права доступа различаются у каталога %s\n"
|
||||||
"файловая система: %o пакет: %o\n"
|
"файловая система: %o пакет: %o\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "extract: symlink %s does not point to dir\n"
|
msgid "extract: not overwriting dir with file %s\n"
|
||||||
msgstr "извлечение: символическая ссылка %s не указывает на директорию\n"
|
msgstr "извлечение: не перезаписывается каталог файлом %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "extract: not overwriting dir with file %s\n"
|
msgid "extract: symlink %s does not point to dir\n"
|
||||||
msgstr "извлечение: не перезаписываю директорию файлом %s\n"
|
msgstr "извлечение: символическая ссылка %s не указывает на каталог\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not extract %s (%s)\n"
|
msgid "could not extract %s (%s)\n"
|
||||||
msgstr "не могу извлечь %s (%s)\n"
|
msgstr "не удалось извлечь %s (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not rename %s to %s (%s)\n"
|
msgid "could not rename %s to %s (%s)\n"
|
||||||
msgstr "не могу переименовать %s в %s (%s)\n"
|
msgstr "не удалось переименовать %s в %s (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s saved as %s\n"
|
msgid "%s saved as %s\n"
|
||||||
msgstr "%s сохранен как %s\n"
|
msgstr "%s сохранён как %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not install %s as %s (%s)\n"
|
msgid "could not install %s as %s (%s)\n"
|
||||||
msgstr "не могу установить %s как %s: %s\n"
|
msgstr "не удалось установить %s как %s: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s installed as %s\n"
|
msgid "%s installed as %s\n"
|
||||||
@@ -79,11 +81,11 @@ msgstr "%s установлен как %s\n"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "extracting %s as %s.pacnew\n"
|
msgid "extracting %s as %s.pacnew\n"
|
||||||
msgstr "извлекаю %s как %s.pacnew\n"
|
msgstr "%s извлекается как %s.pacnew\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not get current working directory\n"
|
msgid "could not get current working directory\n"
|
||||||
msgstr "не могу определить текущую рабочую директорию\n"
|
msgstr "не удалось определить текущий рабочий каталог\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "problem occurred while upgrading %s\n"
|
msgid "problem occurred while upgrading %s\n"
|
||||||
@@ -95,19 +97,19 @@ msgstr "обнаружена проблема во время установки
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not update database entry %s-%s\n"
|
msgid "could not update database entry %s-%s\n"
|
||||||
msgstr "не могу обновить в базе данных запись %s-%s\n"
|
msgstr "не удалось обновить в базе данных запись %s-%s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not add entry '%s' in cache\n"
|
msgid "could not add entry '%s' in cache\n"
|
||||||
msgstr "не могу добавить запись '%s' в кэш\n"
|
msgstr "не удалось добавить запись '%s' в кэш\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not remove database entry %s%s\n"
|
msgid "could not remove database %s\n"
|
||||||
msgstr "не могу удалить из базы данных запись %s%s\n"
|
msgstr "не удалось удалить базу данных %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid name for database entry '%s'\n"
|
msgid "invalid name for database entry '%s'\n"
|
||||||
msgstr "неправильное имя для записи базы данных '%s'\n"
|
msgstr "неправильное имя для записи в базе данных '%s'\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "corrupted database entry '%s'\n"
|
msgid "corrupted database entry '%s'\n"
|
||||||
@@ -115,7 +117,7 @@ msgstr "повреждённая запись в базе данных '%s'\n"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not open file %s: %s\n"
|
msgid "could not open file %s: %s\n"
|
||||||
msgstr "не могу открыть файл %s: %s\n"
|
msgstr "не удалось открыть файл %s: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s database is inconsistent: name mismatch on package %s\n"
|
msgid "%s database is inconsistent: name mismatch on package %s\n"
|
||||||
@@ -127,9 +129,13 @@ msgid "%s database is inconsistent: version mismatch on package %s\n"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"противоречивая информация в базе данных %s: не совпадает версия пакета %s\n"
|
"противоречивая информация в базе данных %s: не совпадает версия пакета %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create directory %s: %s\n"
|
||||||
|
msgstr "не удалось создать каталог %s: (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not parse package description file in %s\n"
|
msgid "could not parse package description file in %s\n"
|
||||||
msgstr "не могу проанализировать файл с описанием пакета в %s\n"
|
msgstr "не удалось проанализировать файл с описанием пакета в %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "missing package name in %s\n"
|
msgid "missing package name in %s\n"
|
||||||
@@ -149,7 +155,7 @@ msgstr "отсутствуют метаданные пакета в %s\n"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "attempt to re-register the 'local' DB\n"
|
msgid "attempt to re-register the 'local' DB\n"
|
||||||
msgstr "попытка перерегистрировать локальную базу данных\n"
|
msgstr "попытка перерегистрировать локальную БД\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "database path is undefined\n"
|
msgid "database path is undefined\n"
|
||||||
@@ -161,23 +167,27 @@ msgstr "обнаружена циклическая зависимость:\n"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s will be removed after its %s dependency\n"
|
msgid "%s will be removed after its %s dependency\n"
|
||||||
msgstr "%s будет удалён после %s, как зависимость\n"
|
msgstr "%s будет удалён после его зависимости %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s will be installed before its %s dependency\n"
|
msgid "%s will be installed before its %s dependency\n"
|
||||||
msgstr "%s будет установлен перед %s, как зависимость\n"
|
msgstr "%s будет установлен перед %s, как зависимость\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "ignoring package %s-%s\n"
|
||||||
|
msgstr "пропуск пакета %s-%s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "provider package was selected (%s provides %s)\n"
|
msgid "provider package was selected (%s provides %s)\n"
|
||||||
msgstr "выбран пакет %s, предоставляющий %s\n"
|
msgstr "выбран пакет %s, предоставляющий %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
|
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
|
||||||
msgstr "не удается разрешить \"%s\", зависимость \"%s\"\n"
|
msgstr "не удалось разрешить \"%s\", зависимость \"%s\"\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "url '%s' is invalid\n"
|
msgid "url '%s' is invalid\n"
|
||||||
msgstr "ссылка '%s' недействительна\n"
|
msgstr "ссылка '%s' некорректна\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "url scheme not specified, assuming HTTP\n"
|
msgid "url scheme not specified, assuming HTTP\n"
|
||||||
@@ -197,27 +207,19 @@ msgstr "не удалось продолжить закачку, начинаю
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "cannot write to file '%s'\n"
|
msgid "cannot write to file '%s'\n"
|
||||||
msgstr "не могу записать в файл '%s'\n"
|
msgstr "не удалось записать в файл '%s'\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "error downloading '%s': %s\n"
|
|
||||||
msgstr "ошибка загрузки '%s': %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "error writing to file '%s': %s\n"
|
msgid "error writing to file '%s': %s\n"
|
||||||
msgstr "не могу записать в файл '%s': %s\n"
|
msgstr "ошибка записи в файл '%s': %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not chdir to %s\n"
|
msgid "%s appears to be truncated: %jd/%jd bytes\n"
|
||||||
msgstr "не могу изменить директорию на %s\n"
|
msgstr "%s, видимо, обрезан: %jd/%jd байт\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "running XferCommand: fork failed!\n"
|
|
||||||
msgstr "запуск XferCommand: неудача\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to download %s\n"
|
msgid "failed to download %s\n"
|
||||||
msgstr "не могу загрузить %s\n"
|
msgstr "не удалось загрузить %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "out of memory!"
|
msgid "out of memory!"
|
||||||
@@ -225,7 +227,7 @@ msgstr "недостаточно памяти!"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "unexpected system error"
|
msgid "unexpected system error"
|
||||||
msgstr "неожиданная ошибка"
|
msgstr "неожиданная системная ошибка"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "insufficient privileges"
|
msgid "insufficient privileges"
|
||||||
@@ -233,15 +235,15 @@ msgstr "недостаточно привилегий"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not find or read file"
|
msgid "could not find or read file"
|
||||||
msgstr "не могу найти или прочитать файл"
|
msgstr "не удалось найти или прочитать файл"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not find or read directory"
|
msgid "could not find or read directory"
|
||||||
msgstr "не удается найти или прочитать директорию"
|
msgstr "не удалось найти или прочитать каталог"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "wrong or NULL argument passed"
|
msgid "wrong or NULL argument passed"
|
||||||
msgstr "неправильный или нулевой аргумент"
|
msgstr "неправильный или пустой аргумент"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "library not initialized"
|
msgid "library not initialized"
|
||||||
@@ -253,15 +255,15 @@ msgstr "библиотека уже инициализирована"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "unable to lock database"
|
msgid "unable to lock database"
|
||||||
msgstr "не удается заблокировать базу данных"
|
msgstr "не удалось заблокировать базу данных"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not open database"
|
msgid "could not open database"
|
||||||
msgstr "не удается открыть базу данных"
|
msgstr "не удалось открыть базу данных"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not create database"
|
msgid "could not create database"
|
||||||
msgstr "не удается создать базу данных"
|
msgstr "не удалось создать базу данных"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "database not initialized"
|
msgid "database not initialized"
|
||||||
@@ -273,20 +275,24 @@ msgstr "база данных уже зарегистрирована"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not find database"
|
msgid "could not find database"
|
||||||
msgstr "не удается найти базу данных"
|
msgstr "не удалось найти базу данных"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not update database"
|
msgid "could not update database"
|
||||||
msgstr "не удается обновить базу данных"
|
msgstr "не удалось обновить базу данных"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not remove database entry"
|
msgid "could not remove database entry"
|
||||||
msgstr "не удается удалить запись в базе данных"
|
msgstr "не удалось удалить запись в базе данных"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid url for server"
|
msgid "invalid url for server"
|
||||||
msgstr "неверный url"
|
msgstr "неверный url"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "no servers configured for repository"
|
||||||
|
msgstr "не настроены сервера для репозитория"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "transaction already initialized"
|
msgid "transaction already initialized"
|
||||||
msgstr "запрос уже инициализирован"
|
msgstr "запрос уже инициализирован"
|
||||||
@@ -305,43 +311,35 @@ msgstr "запрос не подготовлен"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "transaction aborted"
|
msgid "transaction aborted"
|
||||||
msgstr "запрос отменён"
|
msgstr "запрос прерван"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "operation not compatible with the transaction type"
|
msgid "operation not compatible with the transaction type"
|
||||||
msgstr "операция не совместима с типом запроса"
|
msgstr "операция не совместима с типом запроса"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction"
|
msgid "transaction commit attempt when database is not locked"
|
||||||
msgstr "не могу совершить запрос"
|
msgstr "попытка завершить запрос без блокировки базы данных"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not download all files"
|
|
||||||
msgstr "не могу загрузить все файлы"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not find or read package"
|
msgid "could not find or read package"
|
||||||
msgstr "не удается найти или прочитать пакет"
|
msgstr "не удалось найти или прочитать пакет"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "operation cancelled due to ignorepkg"
|
||||||
|
msgstr "операция прервана из-за ignorepkg"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid or corrupted package"
|
msgid "invalid or corrupted package"
|
||||||
msgstr "пакет неправильный или поврежден"
|
msgstr "ошибка или повреждение в пакете"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "cannot open package file"
|
msgid "cannot open package file"
|
||||||
msgstr "не удается открыть файл пакета"
|
msgstr "не удалось открыть файл пакета"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "cannot load package data"
|
|
||||||
msgstr "не удается загрузить данные пакета"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "package not installed or lesser version"
|
|
||||||
msgstr "пакет не установлен или ранней версии"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "cannot remove all files for package"
|
msgid "cannot remove all files for package"
|
||||||
msgstr "не могу удалить все файлы пакета"
|
msgstr "не удалось удалить все файлы пакета"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "package filename is not valid"
|
msgid "package filename is not valid"
|
||||||
@@ -353,19 +351,15 @@ msgstr "нет такого репозитория"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid or corrupted delta"
|
msgid "invalid or corrupted delta"
|
||||||
msgstr "ошибка или повреждение в дельта-файле"
|
msgstr "ошибка или повреждение в дельте"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "delta patch failed"
|
msgid "delta patch failed"
|
||||||
msgstr "не удалось применить дельта-патч"
|
msgstr "не удалось применить дельту"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "group not found"
|
|
||||||
msgstr "группа не найдена"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not satisfy dependencies"
|
msgid "could not satisfy dependencies"
|
||||||
msgstr "не удается удовлетворить зависимости"
|
msgstr "не удалось удовлетворить зависимости"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "conflicting dependencies"
|
msgid "conflicting dependencies"
|
||||||
@@ -376,16 +370,8 @@ msgid "conflicting files"
|
|||||||
msgstr "конфликтующие файлы"
|
msgstr "конфликтующие файлы"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "user aborted the operation"
|
msgid "failed to retrieve some files"
|
||||||
msgstr "пользователь прервал операцию"
|
msgstr "не удалось получить некоторые файлы"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "internal error"
|
|
||||||
msgstr "внутренняя ошибка"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "not confirmed"
|
|
||||||
msgstr "не подтверждено"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid regular expression"
|
msgid "invalid regular expression"
|
||||||
@@ -397,7 +383,7 @@ msgstr "ошибка в libarchive"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "download library error"
|
msgid "download library error"
|
||||||
msgstr "ошибка в download library"
|
msgstr "ошибка в библиотеке загрузки"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "error invoking external downloader"
|
msgid "error invoking external downloader"
|
||||||
@@ -409,31 +395,43 @@ msgstr "непредвиденная ошибка"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not find %s in database -- skipping\n"
|
msgid "could not find %s in database -- skipping\n"
|
||||||
msgstr "не могу найти %s в базе данных -- пропускаю\n"
|
msgstr "не удалось найти %s в базе данных -- пропускается\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "cannot remove file '%s': %s\n"
|
msgid "cannot remove file '%s': %s\n"
|
||||||
msgstr "не могу удалить файл '%s': %s\n"
|
msgstr "не удалось удалить файл '%s': %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not remove database entry %s-%s\n"
|
msgid "could not remove database entry %s-%s\n"
|
||||||
msgstr "не могу удалить из базы данных запись %s-%s\n"
|
msgstr "не удалось удалить из базы данных запись %s-%s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not remove entry '%s' from cache\n"
|
msgid "could not remove entry '%s' from cache\n"
|
||||||
msgstr "не могу удалить запись '%s' из кэша\n"
|
msgstr "не удалось удалить запись '%s' из кэша\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
||||||
msgstr "%s-%s: игнорирую обновление пакета (он будет заменен на %s-%s)\n"
|
msgstr "%s: пропуск обновления пакета (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: ignoring package downgrade (%s => %s)\n"
|
||||||
|
msgstr "%s: пропускается откат пакета (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: downgrading from version %s to version %s\n"
|
||||||
|
msgstr "%s: откат версии, от %s до %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: local (%s) is newer than %s (%s)\n"
|
msgid "%s: local (%s) is newer than %s (%s)\n"
|
||||||
msgstr "%s: установленная версия (%s) новее, чем в %s (%s)\n"
|
msgstr "%s: установленная версия (%s) новее, чем в %s (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
|
||||||
msgstr "%s: игнорирую обновление пакета (%s => %s)\n"
|
msgstr "пропускается замена пакета (%s-%s => %s-%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot replace %s by %s\n"
|
||||||
|
msgstr "не удалось заменить %s на %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "repository '%s' not found\n"
|
msgid "repository '%s' not found\n"
|
||||||
@@ -441,11 +439,11 @@ msgstr "репозиторий '%s' не найден\n"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s-%s is up to date -- skipping\n"
|
msgid "%s-%s is up to date -- skipping\n"
|
||||||
msgstr "%s-%s не устарел -- пропускаю\n"
|
msgstr "%s-%s не устарел -- пропускается\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s-%s is up to date -- reinstalling\n"
|
msgid "%s-%s is up to date -- reinstalling\n"
|
||||||
msgstr "%s-%s не устарел -- переустанавливаю\n"
|
msgstr "%s-%s не устарел -- переустанавливается\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "downgrading package %s (%s => %s)\n"
|
msgid "downgrading package %s (%s => %s)\n"
|
||||||
@@ -457,11 +455,7 @@ msgstr "обнаружен неразрешимый конфликт пакет
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "removing '%s' from target list because it conflicts with '%s'\n"
|
msgid "removing '%s' from target list because it conflicts with '%s'\n"
|
||||||
msgstr "удаляю '%s' из списка целей, поскольку он конфликтует с '%s'\n"
|
msgstr "удаление '%s' из списка целей, поскольку он конфликтует с '%s'\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "command: %s\n"
|
|
||||||
msgstr "команда: %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to retrieve some files from %s\n"
|
msgid "failed to retrieve some files from %s\n"
|
||||||
@@ -471,10 +465,18 @@ msgstr "не удалось получить некоторые файлы с %s
|
|||||||
msgid "could not create removal transaction\n"
|
msgid "could not create removal transaction\n"
|
||||||
msgstr "не удалось создать запрос на удаление\n"
|
msgstr "не удалось создать запрос на удаление\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create transaction\n"
|
||||||
|
msgstr "не удалось создать запрос\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not initialize the removal transaction\n"
|
msgid "could not initialize the removal transaction\n"
|
||||||
msgstr "не удалось инициализировать запрос на удаление\n"
|
msgstr "не удалось инициализировать запрос на удаление\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not initialize transaction\n"
|
||||||
|
msgstr "не удалось инициализировать запрос\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not prepare removal transaction\n"
|
msgid "could not prepare removal transaction\n"
|
||||||
msgstr "не удалось подготовить запрос на удаление\n"
|
msgstr "не удалось подготовить запрос на удаление\n"
|
||||||
@@ -483,53 +485,45 @@ msgstr "не удалось подготовить запрос на удале
|
|||||||
msgid "could not commit removal transaction\n"
|
msgid "could not commit removal transaction\n"
|
||||||
msgstr "не удалось совершить запрос на удаление\n"
|
msgstr "не удалось совершить запрос на удаление\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not create transaction\n"
|
|
||||||
msgstr "не удалось создать запрос\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not initialize transaction\n"
|
|
||||||
msgstr "не удалось инициализировать запрос\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not prepare transaction\n"
|
|
||||||
msgstr "не удалось подготовить запрос\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction\n"
|
msgid "could not commit transaction\n"
|
||||||
msgstr "не удалось совершить запрос\n"
|
msgstr "не удалось совершить запрос\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not remove lock file %s\n"
|
msgid "could not remove lock file %s\n"
|
||||||
msgstr "не могу удалить lock-файл %s\n"
|
msgstr "не удалось удалить блокировочный файл %s\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "No /bin/sh in parent environment, aborting scriptlet\n"
|
|
||||||
msgstr "Нету /bin/sh в родительском окружении, отмена скрипта\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not create temp directory\n"
|
msgid "could not create temp directory\n"
|
||||||
msgstr "не удалось создать временную директорию\n"
|
msgstr "не удалось создать временный каталог\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not copy tempfile to %s (%s)\n"
|
msgid "could not copy tempfile to %s (%s)\n"
|
||||||
msgstr "не могу скопировать временный файл в %s (%s)\n"
|
msgstr "не удалось скопировать временный файл в %s (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove tmpdir %s\n"
|
||||||
|
msgstr "не удалось удалить временный каталог %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not open %s: %s\n"
|
||||||
|
msgstr "не удалось открыть %s: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not change directory to %s (%s)\n"
|
msgid "could not change directory to %s (%s)\n"
|
||||||
msgstr "не удалось изменить директорию на %s (%s)\n"
|
msgstr "не удалось изменить каталог на %s (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not fork a new process (%s)\n"
|
msgid "could not fork a new process (%s)\n"
|
||||||
msgstr "не не удалось создать новый процесс (%s)\n"
|
msgstr "не удалось создать новый процесс (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not change the root directory (%s)\n"
|
msgid "could not change the root directory (%s)\n"
|
||||||
msgstr "не удалось изменить корневую директорию (%s)\n"
|
msgstr "не удалось изменить корневой каталог (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not change directory to / (%s)\n"
|
msgid "could not change directory to / (%s)\n"
|
||||||
msgstr "не удалось изменить директорию на / (%s)\n"
|
msgstr "не удалось изменить каталог на / (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "call to popen failed (%s)"
|
msgid "call to popen failed (%s)"
|
||||||
@@ -540,24 +534,58 @@ msgid "call to waitpid failed (%s)\n"
|
|||||||
msgstr "вызов waitpid не удался (%s)\n"
|
msgstr "вызов waitpid не удался (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "scriptlet failed to execute correctly\n"
|
msgid "command failed to execute correctly\n"
|
||||||
msgstr "не удалось корректно выполнить скрипт\n"
|
msgstr "не удалось корректно выполнить команду\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not remove tmpdir %s\n"
|
|
||||||
msgstr "не могу удалить tmpdir %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not open %s: %s\n"
|
|
||||||
msgstr "не удалось откруть %s: %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "no %s cache exists, creating...\n"
|
msgid "no %s cache exists, creating...\n"
|
||||||
msgstr "кэш %s не существует, создаю...\n"
|
msgstr "кэш %s не существует, создается...\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "couldn't create package cache, using /tmp instead\n"
|
msgid "couldn't create package cache, using /tmp instead\n"
|
||||||
msgstr "не могу создать кэш пакетов, будет использован /tmp\n"
|
msgstr "не удалось создать кэш пакетов, будет использован /tmp\n"
|
||||||
|
|
||||||
#~ msgid "could not create directory %s: %s\n"
|
#~ msgid "error downloading '%s': %s\n"
|
||||||
#~ msgstr "не удалось создать директорию %s: (%s)\n"
|
#~ msgstr "ошибка загрузки '%s': %s\n"
|
||||||
|
|
||||||
|
#~ msgid "could not chdir to %s\n"
|
||||||
|
#~ msgstr "не удалось изменить каталог на %s\n"
|
||||||
|
|
||||||
|
#~ msgid "running XferCommand: fork failed!\n"
|
||||||
|
#~ msgstr "запуск XferCommand: неудача\n"
|
||||||
|
|
||||||
|
#~ msgid "could not commit transaction"
|
||||||
|
#~ msgstr "не удалось совершить запрос"
|
||||||
|
|
||||||
|
#~ msgid "could not download all files"
|
||||||
|
#~ msgstr "не удалось загрузить все файлы"
|
||||||
|
|
||||||
|
#~ msgid "cannot load package data"
|
||||||
|
#~ msgstr "не удалось загрузить данные пакета"
|
||||||
|
|
||||||
|
#~ msgid "package not installed or lesser version"
|
||||||
|
#~ msgstr "пакет не установлен или ранней версии"
|
||||||
|
|
||||||
|
#~ msgid "group not found"
|
||||||
|
#~ msgstr "группа не найдена"
|
||||||
|
|
||||||
|
#~ msgid "user aborted the operation"
|
||||||
|
#~ msgstr "пользователь прервал операцию"
|
||||||
|
|
||||||
|
#~ msgid "internal error"
|
||||||
|
#~ msgstr "внутренняя ошибка"
|
||||||
|
|
||||||
|
#~ msgid "not confirmed"
|
||||||
|
#~ msgstr "не подтверждено"
|
||||||
|
|
||||||
|
#~ msgid "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
||||||
|
#~ msgstr "%s-%s: игнорирую обновление пакета (он будет заменен на %s-%s)\n"
|
||||||
|
|
||||||
|
#~ msgid "command: %s\n"
|
||||||
|
#~ msgstr "команда: %s\n"
|
||||||
|
|
||||||
|
#~ msgid "could not prepare transaction\n"
|
||||||
|
#~ msgstr "не удалось подготовить запрос\n"
|
||||||
|
|
||||||
|
#~ msgid "No /bin/sh in parent environment, aborting scriptlet\n"
|
||||||
|
#~ msgstr "Нету /bin/sh в родительском окружении, отмена скрипта\n"
|
||||||
|
|||||||
@@ -7,8 +7,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: 3.1.4-1\n"
|
"Project-Id-Version: 3.1.4-1\n"
|
||||||
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
||||||
"POT-Creation-Date: 2008-08-23 10:54-0500\n"
|
"POT-Creation-Date: 2009-07-27 21:15-0500\n"
|
||||||
"PO-Revision-Date: 2009-01-03 16:20+0200\n"
|
"PO-Revision-Date: 2009-07-29 03:26+0200\n"
|
||||||
"Last-Translator: Samed Beyribey <ras0ir@eventualis.org>\n"
|
"Last-Translator: Samed Beyribey <ras0ir@eventualis.org>\n"
|
||||||
"Language-Team: Turkish Arch Linux Users <tr@archlinuxtr.org>\n"
|
"Language-Team: Turkish Arch Linux Users <tr@archlinuxtr.org>\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@@ -33,7 +33,7 @@ msgstr "çakışan iki paketi aynı anda kuramazsınız\n"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "replacing packages with -U is not supported yet\n"
|
msgid "replacing packages with -U is not supported yet\n"
|
||||||
msgstr "-A ve -U kullanarak paket değiştirme henüz desteklenmemektedir\n"
|
msgstr "-U kullanarak paket değiştirme henüz desteklenmemektedir\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "you can replace packages manually using -Rd and -U\n"
|
msgid "you can replace packages manually using -Rd and -U\n"
|
||||||
@@ -48,12 +48,12 @@ msgstr ""
|
|||||||
"dosya sistemi: %o paket: %o\n"
|
"dosya sistemi: %o paket: %o\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "extract: symlink %s does not point to dir\n"
|
msgid "extract: not overwriting dir with file %s\n"
|
||||||
msgstr "aç: %s sembolik bağı dizine yöneltilmemiş\n"
|
msgstr "aç: %s dosyası dizinin üzerine yazılmıyor\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "extract: not overwriting dir with file %s\n"
|
msgid "extract: symlink %s does not point to dir\n"
|
||||||
msgstr "aç: dizin %s dosyası ile baştan yazılmıyor\n"
|
msgstr "aç: %s sembolik bağı dizine yöneltilmemiş\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not extract %s (%s)\n"
|
msgid "could not extract %s (%s)\n"
|
||||||
@@ -100,12 +100,12 @@ msgid "could not add entry '%s' in cache\n"
|
|||||||
msgstr "'%s' kaydı tampona eklenemedi\n"
|
msgstr "'%s' kaydı tampona eklenemedi\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not remove database entry %s%s\n"
|
msgid "could not remove database %s\n"
|
||||||
msgstr "%s%s veritabanı kaydı kaldırılamıyor\n"
|
msgstr "veritabanı kaldırılamıyor %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid name for database entry '%s'\n"
|
msgid "invalid name for database entry '%s'\n"
|
||||||
msgstr "veritabanı kaydı için geçersiz isim '%s'\n"
|
msgstr "geçersiz bir veritabanı kaydı '%s'\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "corrupted database entry '%s'\n"
|
msgid "corrupted database entry '%s'\n"
|
||||||
@@ -123,6 +123,10 @@ msgstr "%s veritabanı tutarsız: %s paketinde isim uyuşmazlığı\n"
|
|||||||
msgid "%s database is inconsistent: version mismatch on package %s\n"
|
msgid "%s database is inconsistent: version mismatch on package %s\n"
|
||||||
msgstr "%s veritabanı tutarsız: %s paketinde sürüm uyuşmazlığı\n"
|
msgstr "%s veritabanı tutarsız: %s paketinde sürüm uyuşmazlığı\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create directory %s: %s\n"
|
||||||
|
msgstr "dizin oluşturulamadı %s: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not parse package description file in %s\n"
|
msgid "could not parse package description file in %s\n"
|
||||||
msgstr "%s içerisindeki paket açıklama dosyası ayrıştırılamadı\n"
|
msgstr "%s içerisindeki paket açıklama dosyası ayrıştırılamadı\n"
|
||||||
@@ -163,9 +167,13 @@ msgstr "%s paketi %s bağımlılığından sonra kaldırılacak\n"
|
|||||||
msgid "%s will be installed before its %s dependency\n"
|
msgid "%s will be installed before its %s dependency\n"
|
||||||
msgstr "%s paketi %s bağımlılığından önce kurulacak\n"
|
msgstr "%s paketi %s bağımlılığından önce kurulacak\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "ignoring package %s-%s\n"
|
||||||
|
msgstr "paket gözardı ediliyor %s-%s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "provider package was selected (%s provides %s)\n"
|
msgid "provider package was selected (%s provides %s)\n"
|
||||||
msgstr "sağlayan paket seçildi ( %s %s'i sağlıyor)\n"
|
msgstr "sağlayan paket seçildi ( %s %s paketini sağlıyor)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
|
msgid "cannot resolve \"%s\", a dependency of \"%s\"\n"
|
||||||
@@ -177,7 +185,7 @@ msgstr "'%s' adresi geçersiz\n"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "url scheme not specified, assuming HTTP\n"
|
msgid "url scheme not specified, assuming HTTP\n"
|
||||||
msgstr "adres şeması belirtilmemiş, http kullanılacak\n"
|
msgstr "adres şeması belirtilmemiş, HTTP kullanılacak\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "disk"
|
msgid "disk"
|
||||||
@@ -189,27 +197,19 @@ msgstr "%3$s hatası nedeniyle '%1$s' dosyası %2$s adresinden alınamadı\n"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "cannot resume download, starting over\n"
|
msgid "cannot resume download, starting over\n"
|
||||||
msgstr "indirmeye devam edilemiyor, baştan başlanıyor\n"
|
msgstr "indirme işlemine devam edilemiyor, baştan başlanıyor\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "cannot write to file '%s'\n"
|
msgid "cannot write to file '%s'\n"
|
||||||
msgstr "'%s' dosyasına yazılamıyor\n"
|
msgstr "'%s' dosyasına yazılamıyor\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "error downloading '%s': %s\n"
|
|
||||||
msgstr "'%s' indirilirken hata oluştu: %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "error writing to file '%s': %s\n"
|
msgid "error writing to file '%s': %s\n"
|
||||||
msgstr "'%s' dosyasına yazılamıyor: %s\n"
|
msgstr "'%s' dosyasına yazılamıyor: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not chdir to %s\n"
|
msgid "%s appears to be truncated: %jd/%jd bytes\n"
|
||||||
msgstr "%s dizinine geçilemiyor\n"
|
msgstr "%s eksik görünüyor: %jd/%jd bayt\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "running XferCommand: fork failed!\n"
|
|
||||||
msgstr "XferCommand çalıştırılıyor: çatallanma başarısız!\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to download %s\n"
|
msgid "failed to download %s\n"
|
||||||
@@ -233,11 +233,11 @@ msgstr "dosya bulunamadı veya okunamadı"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not find or read directory"
|
msgid "could not find or read directory"
|
||||||
msgstr "klasör bulunamadı veya okunamadı"
|
msgstr "dizin bulunamadı veya okunamadı"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "wrong or NULL argument passed"
|
msgid "wrong or NULL argument passed"
|
||||||
msgstr "eksik ya da geçersiz parametre geçilmiş"
|
msgstr "hatalı ya da BOŞ parametre geçilmiş"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "library not initialized"
|
msgid "library not initialized"
|
||||||
@@ -245,7 +245,7 @@ msgstr "kütüphane başlatılamadı"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "library already initialized"
|
msgid "library already initialized"
|
||||||
msgstr "kütüphane zaten başlatıldı"
|
msgstr "kütüphane zaten başlatılmış"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "unable to lock database"
|
msgid "unable to lock database"
|
||||||
@@ -281,7 +281,11 @@ msgstr "veritabanı kaydı kaldırılamadı"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid url for server"
|
msgid "invalid url for server"
|
||||||
msgstr "hatalı sunucu adresi"
|
msgstr "sunucu için geçersiz adres"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "no servers configured for repository"
|
||||||
|
msgstr "depo için sunucu ayarlanmamış"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "transaction already initialized"
|
msgid "transaction already initialized"
|
||||||
@@ -289,7 +293,7 @@ msgstr "işlem zaten başlatılmış"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "transaction not initialized"
|
msgid "transaction not initialized"
|
||||||
msgstr "işlem başlatılmamış"
|
msgstr "işlem başlatılmadı"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "duplicate target"
|
msgid "duplicate target"
|
||||||
@@ -297,7 +301,7 @@ msgstr "birden fazla hedef"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "transaction not prepared"
|
msgid "transaction not prepared"
|
||||||
msgstr "işlem hazırlanamadı"
|
msgstr "işlem hazırlanmadı"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "transaction aborted"
|
msgid "transaction aborted"
|
||||||
@@ -305,20 +309,20 @@ msgstr "işlem iptal edildi"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "operation not compatible with the transaction type"
|
msgid "operation not compatible with the transaction type"
|
||||||
msgstr "operasyon, işlem tipiyle uyumlu değil"
|
msgstr "operasyon, işlem türüyle uyumlu değil"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction"
|
msgid "transaction commit attempt when database is not locked"
|
||||||
msgstr "işlem teslim edilemiyor"
|
msgstr "veritabanı kilitli değil iken işlem girişimi"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not download all files"
|
|
||||||
msgstr "tüm dosyalar indirilemedi"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not find or read package"
|
msgid "could not find or read package"
|
||||||
msgstr "paket bulunamadı veya okunamadı"
|
msgstr "paket bulunamadı veya okunamadı"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "operation cancelled due to ignorepkg"
|
||||||
|
msgstr "ignorepkg nedeniyle işlem iptal edildi"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid or corrupted package"
|
msgid "invalid or corrupted package"
|
||||||
msgstr "geçersiz veya bozuk paket"
|
msgstr "geçersiz veya bozuk paket"
|
||||||
@@ -327,14 +331,6 @@ msgstr "geçersiz veya bozuk paket"
|
|||||||
msgid "cannot open package file"
|
msgid "cannot open package file"
|
||||||
msgstr "paket dosyası açılamıyor"
|
msgstr "paket dosyası açılamıyor"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "cannot load package data"
|
|
||||||
msgstr "paket verisi yüklenemiyor"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "package not installed or lesser version"
|
|
||||||
msgstr "paket kurulamadı ya da önceki sürümü kurulu"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "cannot remove all files for package"
|
msgid "cannot remove all files for package"
|
||||||
msgstr "paketle alakalı tüm dosyalar kaldırılamadı"
|
msgstr "paketle alakalı tüm dosyalar kaldırılamadı"
|
||||||
@@ -355,33 +351,21 @@ msgstr "geçersiz ya da bozuk veri"
|
|||||||
msgid "delta patch failed"
|
msgid "delta patch failed"
|
||||||
msgstr "fark yaması başarısız oldu"
|
msgstr "fark yaması başarısız oldu"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "group not found"
|
|
||||||
msgstr "grup bulunamadı"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not satisfy dependencies"
|
msgid "could not satisfy dependencies"
|
||||||
msgstr "bağımlılıklar sağlanamadı"
|
msgstr "bağımlılıklar sağlanamadı"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "conflicting dependencies"
|
msgid "conflicting dependencies"
|
||||||
msgstr "çelişen bağımlılıklar"
|
msgstr "çakışan bağımlılıklar"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "conflicting files"
|
msgid "conflicting files"
|
||||||
msgstr "çelişen dosyalar"
|
msgstr "çakışan dosyalar"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "user aborted the operation"
|
msgid "failed to retrieve some files"
|
||||||
msgstr "işlem kullanıcı tarafından durduruldu"
|
msgstr "bazı dosyalar alınamadı"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "internal error"
|
|
||||||
msgstr "dahili hata"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "not confirmed"
|
|
||||||
msgstr "onaylanmadı"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid regular expression"
|
msgid "invalid regular expression"
|
||||||
@@ -393,7 +377,7 @@ msgstr "libarchive hatası"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "download library error"
|
msgid "download library error"
|
||||||
msgstr "kütüphane indirilirken hata oluştu"
|
msgstr "indirme kütüphanesi hatası"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "error invoking external downloader"
|
msgid "error invoking external downloader"
|
||||||
@@ -420,16 +404,29 @@ msgid "could not remove entry '%s' from cache\n"
|
|||||||
msgstr "'%s' kaydı tampondan silinemedi\n"
|
msgstr "'%s' kaydı tampondan silinemedi\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
||||||
msgstr "%s-%s: paket güncellemesi göz ardı ediliyor (%s-%s ile değiştirilecek)\n"
|
msgstr "%s: paket güncellemesi göz ardı ediliyor (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: ignoring package downgrade (%s => %s)\n"
|
||||||
|
msgstr "%s: paket sürümü geri alma işlemi göz ardı ediliyor (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: downgrading from version %s to version %s\n"
|
||||||
|
msgstr "%s: %s sürümünden %s sürümüne çevriliyor.\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: local (%s) is newer than %s (%s)\n"
|
msgid "%s: local (%s) is newer than %s (%s)\n"
|
||||||
msgstr "%s: yereldeki paket (%s) %s (%s) paketinden daha güncel\n"
|
msgstr ""
|
||||||
|
"%s: yerel depodaki paket (%s) %s deposundaki paketten (%s) daha güncel\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
|
||||||
msgstr "%s: paket güncellemesi göz ardı ediliyor (%s => %s)\n"
|
msgstr "paket değiştirme işlemi göz ardı ediliyor (%s-%s => %s-%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot replace %s by %s\n"
|
||||||
|
msgstr "%s ile %s değiştirilemiyor\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "repository '%s' not found\n"
|
msgid "repository '%s' not found\n"
|
||||||
@@ -453,11 +450,7 @@ msgstr "çözülemeyen paket çakışmaları bulundu\n"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "removing '%s' from target list because it conflicts with '%s'\n"
|
msgid "removing '%s' from target list because it conflicts with '%s'\n"
|
||||||
msgstr "'%s' hedef listesinden '%s' ile çeliştiği için kaldırıldı\n"
|
msgstr "'%s' hedef listesindeki '%s' ile çakıştığı için kaldırıldı\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "command: %s\n"
|
|
||||||
msgstr "komut: %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to retrieve some files from %s\n"
|
msgid "failed to retrieve some files from %s\n"
|
||||||
@@ -465,12 +458,20 @@ msgstr "%s deposundan bazı dosyalar alınamadı\n"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not create removal transaction\n"
|
msgid "could not create removal transaction\n"
|
||||||
msgstr "kaldırma işlemi oluşturulamıyor\n"
|
msgstr "kaldırma işlemi oluşturulamadı\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create transaction\n"
|
||||||
|
msgstr "işlem oluşturulamadı\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not initialize the removal transaction\n"
|
msgid "could not initialize the removal transaction\n"
|
||||||
msgstr "kaldırma işlemi başlatılamadı\n"
|
msgstr "kaldırma işlemi başlatılamadı\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not initialize transaction\n"
|
||||||
|
msgstr "işlem başlatılamadı\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not prepare removal transaction\n"
|
msgid "could not prepare removal transaction\n"
|
||||||
msgstr "kaldırma işlemi hazırlanamadı\n"
|
msgstr "kaldırma işlemi hazırlanamadı\n"
|
||||||
@@ -479,18 +480,6 @@ msgstr "kaldırma işlemi hazırlanamadı\n"
|
|||||||
msgid "could not commit removal transaction\n"
|
msgid "could not commit removal transaction\n"
|
||||||
msgstr "kaldırma işlemi teslim edilemedi\n"
|
msgstr "kaldırma işlemi teslim edilemedi\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not create transaction\n"
|
|
||||||
msgstr "işlem oluşturulamadı\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not initialize transaction\n"
|
|
||||||
msgstr "işlem başlatılamadı\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not prepare transaction\n"
|
|
||||||
msgstr "işlem hazırlanamadı\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction\n"
|
msgid "could not commit transaction\n"
|
||||||
msgstr "işlem teslim edilemedi\n"
|
msgstr "işlem teslim edilemedi\n"
|
||||||
@@ -499,10 +488,6 @@ msgstr "işlem teslim edilemedi\n"
|
|||||||
msgid "could not remove lock file %s\n"
|
msgid "could not remove lock file %s\n"
|
||||||
msgstr "kilit dosyası %s silinemedi\n"
|
msgstr "kilit dosyası %s silinemedi\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "No /bin/sh in parent environment, aborting scriptlet\n"
|
|
||||||
msgstr "Bir üst ortamda /bin/sh bulunamadı, betik iptal ediliyor\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not create temp directory\n"
|
msgid "could not create temp directory\n"
|
||||||
msgstr "geçici dizin oluşturulamadı\n"
|
msgstr "geçici dizin oluşturulamadı\n"
|
||||||
@@ -511,6 +496,14 @@ msgstr "geçici dizin oluşturulamadı\n"
|
|||||||
msgid "could not copy tempfile to %s (%s)\n"
|
msgid "could not copy tempfile to %s (%s)\n"
|
||||||
msgstr "geçici dosya %s üzerine kopyalanamadı (%s)\n"
|
msgstr "geçici dosya %s üzerine kopyalanamadı (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove tmpdir %s\n"
|
||||||
|
msgstr "geçici dizin %s kaldırılamadı\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not open %s: %s\n"
|
||||||
|
msgstr "%s açılamadı: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not change directory to %s (%s)\n"
|
msgid "could not change directory to %s (%s)\n"
|
||||||
msgstr "%s dizinine geçilemedi (%s)\n"
|
msgstr "%s dizinine geçilemedi (%s)\n"
|
||||||
@@ -525,7 +518,7 @@ msgstr "kök dizini değiştirilemedi (%s)\n"
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not change directory to / (%s)\n"
|
msgid "could not change directory to / (%s)\n"
|
||||||
msgstr "/ dizinine gidilemedi (%s)\n"
|
msgstr "/ dizinine geçilemedi (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "call to popen failed (%s)"
|
msgid "call to popen failed (%s)"
|
||||||
@@ -536,22 +529,59 @@ msgid "call to waitpid failed (%s)\n"
|
|||||||
msgstr "waitpid çağrısı başarısız (%s)\n"
|
msgstr "waitpid çağrısı başarısız (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "scriptlet failed to execute correctly\n"
|
msgid "command failed to execute correctly\n"
|
||||||
msgstr "betik düzgün çalıştırılamadı\n"
|
msgstr "komut düzgün çalıştırılamadı\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not remove tmpdir %s\n"
|
|
||||||
msgstr "geçici dizin %s kaldırılamadı\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not open %s: %s\n"
|
|
||||||
msgstr "%s açılamadı: %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "no %s cache exists, creating...\n"
|
msgid "no %s cache exists, creating...\n"
|
||||||
msgstr "%s tamponu bulunmuyor, oluşturuluyor...\n"
|
msgstr "%s önbelleği yok, oluşturuluyor...\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "couldn't create package cache, using /tmp instead\n"
|
msgid "couldn't create package cache, using /tmp instead\n"
|
||||||
msgstr "paket tamponu oluşturulamadı, /tmp kullanılacak\n"
|
msgstr "paket önbelleği oluşturulamadı, /tmp kullanılacak\n"
|
||||||
|
|
||||||
|
#~ msgid "error downloading '%s': %s\n"
|
||||||
|
#~ msgstr "'%s' indirilirken hata oluştu: %s\n"
|
||||||
|
|
||||||
|
#~ msgid "could not chdir to %s\n"
|
||||||
|
#~ msgstr "%s dizinine geçilemiyor\n"
|
||||||
|
|
||||||
|
#~ msgid "running XferCommand: fork failed!\n"
|
||||||
|
#~ msgstr "XferCommand çalıştırılıyor: çatallanma başarısız!\n"
|
||||||
|
|
||||||
|
#~ msgid "could not commit transaction"
|
||||||
|
#~ msgstr "işlem teslim edilemiyor"
|
||||||
|
|
||||||
|
#~ msgid "could not download all files"
|
||||||
|
#~ msgstr "tüm dosyalar indirilemedi"
|
||||||
|
|
||||||
|
#~ msgid "cannot load package data"
|
||||||
|
#~ msgstr "paket verisi yüklenemiyor"
|
||||||
|
|
||||||
|
#~ msgid "package not installed or lesser version"
|
||||||
|
#~ msgstr "paket kurulamadı ya da önceki sürümü kurulu"
|
||||||
|
|
||||||
|
#~ msgid "group not found"
|
||||||
|
#~ msgstr "grup bulunamadı"
|
||||||
|
|
||||||
|
#~ msgid "user aborted the operation"
|
||||||
|
#~ msgstr "işlem kullanıcı tarafından durduruldu"
|
||||||
|
|
||||||
|
#~ msgid "internal error"
|
||||||
|
#~ msgstr "dahili hata"
|
||||||
|
|
||||||
|
#~ msgid "not confirmed"
|
||||||
|
#~ msgstr "onaylanmadı"
|
||||||
|
|
||||||
|
#~ msgid "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "%s-%s: paket güncellemesi göz ardı ediliyor (%s-%s ile değiştirilecek)\n"
|
||||||
|
|
||||||
|
#~ msgid "command: %s\n"
|
||||||
|
#~ msgstr "komut: %s\n"
|
||||||
|
|
||||||
|
#~ msgid "could not prepare transaction\n"
|
||||||
|
#~ msgstr "işlem hazırlanamadı\n"
|
||||||
|
|
||||||
|
#~ msgid "No /bin/sh in parent environment, aborting scriptlet\n"
|
||||||
|
#~ msgstr "Bir üst ortamda /bin/sh bulunamadı, betik iptal ediliyor\n"
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: libalpm 3.2.2\n"
|
"Project-Id-Version: libalpm 3.2.2\n"
|
||||||
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
||||||
"POT-Creation-Date: 2008-08-23 10:54-0500\n"
|
"POT-Creation-Date: 2009-07-27 21:15-0500\n"
|
||||||
"PO-Revision-Date: \n"
|
"PO-Revision-Date: \n"
|
||||||
"Last-Translator: Roman Kyrylych <roman@archlinux.org>\n"
|
"Last-Translator: Roman Kyrylych <roman@archlinux.org>\n"
|
||||||
"Language-Team: http://archlinux.org.ua\n"
|
"Language-Team: http://archlinux.org.ua\n"
|
||||||
@@ -50,14 +50,14 @@ msgstr ""
|
|||||||
"права каталога відрізняються на\n"
|
"права каталога відрізняються на\n"
|
||||||
"файловій системі %s: %o пакунок: %o\n"
|
"файловій системі %s: %o пакунок: %o\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "extract: symlink %s does not point to dir\n"
|
|
||||||
msgstr "розпакування: символьне посилання %s не вказує на каталог\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "extract: not overwriting dir with file %s\n"
|
msgid "extract: not overwriting dir with file %s\n"
|
||||||
msgstr "розпакування: каталог не було перезаписано файлом %s\n"
|
msgstr "розпакування: каталог не було перезаписано файлом %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "extract: symlink %s does not point to dir\n"
|
||||||
|
msgstr "розпакування: символьне посилання %s не вказує на каталог\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not extract %s (%s)\n"
|
msgid "could not extract %s (%s)\n"
|
||||||
msgstr "неможливо розпакувати %s (%s)\n"
|
msgstr "неможливо розпакувати %s (%s)\n"
|
||||||
@@ -103,8 +103,8 @@ msgid "could not add entry '%s' in cache\n"
|
|||||||
msgstr "неможливо додати запис '%s' у кеш\n"
|
msgstr "неможливо додати запис '%s' у кеш\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not remove database entry %s%s\n"
|
msgid "could not remove database %s\n"
|
||||||
msgstr "неможливо видалити запис бази даних %s%s\n"
|
msgstr "неможливо видалити базу даних %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid name for database entry '%s'\n"
|
msgid "invalid name for database entry '%s'\n"
|
||||||
@@ -126,6 +126,10 @@ msgstr "база даних %s неоднорідна: неспівпадінн
|
|||||||
msgid "%s database is inconsistent: version mismatch on package %s\n"
|
msgid "%s database is inconsistent: version mismatch on package %s\n"
|
||||||
msgstr "база даних %s неоднорідна: неспівпадіння версій для пакунка %s\n"
|
msgstr "база даних %s неоднорідна: неспівпадіння версій для пакунка %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create directory %s: %s\n"
|
||||||
|
msgstr "неможливо створити каталог %s: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not parse package description file in %s\n"
|
msgid "could not parse package description file in %s\n"
|
||||||
msgstr "неможливо розібрати файл опису пакунка %s\n"
|
msgstr "неможливо розібрати файл опису пакунка %s\n"
|
||||||
@@ -166,6 +170,10 @@ msgstr "%s буде видалено після його залежності %s
|
|||||||
msgid "%s will be installed before its %s dependency\n"
|
msgid "%s will be installed before its %s dependency\n"
|
||||||
msgstr "%s буде встановлено перед його %s залежністю\n"
|
msgstr "%s буде встановлено перед його %s залежністю\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "ignoring package %s-%s\n"
|
||||||
|
msgstr "ігнорування пакунка %s-%s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "provider package was selected (%s provides %s)\n"
|
msgid "provider package was selected (%s provides %s)\n"
|
||||||
msgstr "був вибраний пакунок %s, що забезпечує %s\n"
|
msgstr "був вибраний пакунок %s, що забезпечує %s\n"
|
||||||
@@ -198,21 +206,13 @@ msgstr "неможливо продовжити завантаження, поч
|
|||||||
msgid "cannot write to file '%s'\n"
|
msgid "cannot write to file '%s'\n"
|
||||||
msgstr "неможливо писати у файл '%s'\n"
|
msgstr "неможливо писати у файл '%s'\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "error downloading '%s': %s\n"
|
|
||||||
msgstr "помилка при завантаженні '%s': %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "error writing to file '%s': %s\n"
|
msgid "error writing to file '%s': %s\n"
|
||||||
msgstr "помилка при запису до файлу '%s': %s\n"
|
msgstr "помилка при запису до файлу '%s': %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not chdir to %s\n"
|
msgid "%s appears to be truncated: %jd/%jd bytes\n"
|
||||||
msgstr "неможливо змінити каталог на %s\n"
|
msgstr "здається %s обрізаний: %jd/%jd байтів\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "running XferCommand: fork failed!\n"
|
|
||||||
msgstr "виконання XferCommand: старт процесу невдалий!\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to download %s\n"
|
msgid "failed to download %s\n"
|
||||||
@@ -286,6 +286,10 @@ msgstr "неможливо видалити запис з бази даних"
|
|||||||
msgid "invalid url for server"
|
msgid "invalid url for server"
|
||||||
msgstr "невірне посилання чи сервер"
|
msgstr "невірне посилання чи сервер"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "no servers configured for repository"
|
||||||
|
msgstr "для репозиторія не налаштовано жодного сервера"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "transaction already initialized"
|
msgid "transaction already initialized"
|
||||||
msgstr "транзакція вже ініціалізована"
|
msgstr "транзакція вже ініціалізована"
|
||||||
@@ -311,17 +315,17 @@ msgid "operation not compatible with the transaction type"
|
|||||||
msgstr "операція несумісна з типом транзакції"
|
msgstr "операція несумісна з типом транзакції"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction"
|
msgid "transaction commit attempt when database is not locked"
|
||||||
msgstr "неможливо здійснити транзакцію"
|
msgstr "спроба здійснити транзакцію в той час як база даних не є замкненою"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not download all files"
|
|
||||||
msgstr "неможиво завантажити усі файли"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not find or read package"
|
msgid "could not find or read package"
|
||||||
msgstr "неможливо знайти чи прочитати пакунок"
|
msgstr "неможливо знайти чи прочитати пакунок"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "operation cancelled due to ignorepkg"
|
||||||
|
msgstr "операцію відмінено через ignorepkg"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid or corrupted package"
|
msgid "invalid or corrupted package"
|
||||||
msgstr "невірний чи пошкоджений пакунок"
|
msgstr "невірний чи пошкоджений пакунок"
|
||||||
@@ -330,14 +334,6 @@ msgstr "невірний чи пошкоджений пакунок"
|
|||||||
msgid "cannot open package file"
|
msgid "cannot open package file"
|
||||||
msgstr "неможливо відкрити файл пакунку"
|
msgstr "неможливо відкрити файл пакунку"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "cannot load package data"
|
|
||||||
msgstr "неможливо завантажити дані пакунку"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "package not installed or lesser version"
|
|
||||||
msgstr "пакунок не встановлено, або існує старіша версія"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "cannot remove all files for package"
|
msgid "cannot remove all files for package"
|
||||||
msgstr "неможливо видалити всі файли для пакунку"
|
msgstr "неможливо видалити всі файли для пакунку"
|
||||||
@@ -358,10 +354,6 @@ msgstr "невірний чи пошкоджений дельта-патч"
|
|||||||
msgid "delta patch failed"
|
msgid "delta patch failed"
|
||||||
msgstr "накладення дельта-патчу невдале"
|
msgstr "накладення дельта-патчу невдале"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "group not found"
|
|
||||||
msgstr "група не знадена"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not satisfy dependencies"
|
msgid "could not satisfy dependencies"
|
||||||
msgstr "неможливо забезпечити залежності"
|
msgstr "неможливо забезпечити залежності"
|
||||||
@@ -375,16 +367,8 @@ msgid "conflicting files"
|
|||||||
msgstr "конфліктуючі файли"
|
msgstr "конфліктуючі файли"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "user aborted the operation"
|
msgid "failed to retrieve some files"
|
||||||
msgstr "користувач перервав операцію"
|
msgstr "не вдалося отримати деякі файли"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "internal error"
|
|
||||||
msgstr "внутрішня помилка"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "not confirmed"
|
|
||||||
msgstr "не підтверджено"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid regular expression"
|
msgid "invalid regular expression"
|
||||||
@@ -423,16 +407,28 @@ msgid "could not remove entry '%s' from cache\n"
|
|||||||
msgstr "неможливо видалити запис '%s' з кешу\n"
|
msgstr "неможливо видалити запис '%s' з кешу\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
||||||
msgstr "%s-%s: ігнорування поновлення пакунку (буде замінено на %s-%s)\n"
|
msgstr "%s: ігнорування поновлення пакунку (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: ignoring package downgrade (%s => %s)\n"
|
||||||
|
msgstr "%s: ігнорування пониження версії пакунка (%s => %s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: downgrading from version %s to version %s\n"
|
||||||
|
msgstr "%s: пониження версії з %s до %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: local (%s) is newer than %s (%s)\n"
|
msgid "%s: local (%s) is newer than %s (%s)\n"
|
||||||
msgstr "%s: локальна версія (%s) новіша за %s (%s)\n"
|
msgstr "%s: локальна версія (%s) новіша за %s (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
|
||||||
msgstr "%s: ігнорування поновлення пакунку (%s => %s)\n"
|
msgstr "ігнорування заміни пакунка (%s-%s => %s-%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot replace %s by %s\n"
|
||||||
|
msgstr "неможливо замінити %s на %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "repository '%s' not found\n"
|
msgid "repository '%s' not found\n"
|
||||||
@@ -458,10 +454,6 @@ msgstr "виявлені нерозв'язні конфлікти пакункі
|
|||||||
msgid "removing '%s' from target list because it conflicts with '%s'\n"
|
msgid "removing '%s' from target list because it conflicts with '%s'\n"
|
||||||
msgstr "видалення '%s' з списку пакунків, бо він конфліктує з '%s'\n"
|
msgstr "видалення '%s' з списку пакунків, бо він конфліктує з '%s'\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "command: %s\n"
|
|
||||||
msgstr "команда: %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to retrieve some files from %s\n"
|
msgid "failed to retrieve some files from %s\n"
|
||||||
msgstr "не вдалося отримати деякі файли з %s\n"
|
msgstr "не вдалося отримати деякі файли з %s\n"
|
||||||
@@ -470,10 +462,18 @@ msgstr "не вдалося отримати деякі файли з %s\n"
|
|||||||
msgid "could not create removal transaction\n"
|
msgid "could not create removal transaction\n"
|
||||||
msgstr "неможливо створити транзакцію видалення\n"
|
msgstr "неможливо створити транзакцію видалення\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create transaction\n"
|
||||||
|
msgstr "неможливо створити транзакцію\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not initialize the removal transaction\n"
|
msgid "could not initialize the removal transaction\n"
|
||||||
msgstr "неможливо почати транзакцію видалення\n"
|
msgstr "неможливо почати транзакцію видалення\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not initialize transaction\n"
|
||||||
|
msgstr "неможливо почати транзакцію\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not prepare removal transaction\n"
|
msgid "could not prepare removal transaction\n"
|
||||||
msgstr "неможливо підготувати транзакцію видалення\n"
|
msgstr "неможливо підготувати транзакцію видалення\n"
|
||||||
@@ -482,18 +482,6 @@ msgstr "неможливо підготувати транзакцію вида
|
|||||||
msgid "could not commit removal transaction\n"
|
msgid "could not commit removal transaction\n"
|
||||||
msgstr "неможливо здійснити транзакцію видалення\n"
|
msgstr "неможливо здійснити транзакцію видалення\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not create transaction\n"
|
|
||||||
msgstr "неможливо створити транзакцію\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not initialize transaction\n"
|
|
||||||
msgstr "неможливо почати транзакцію\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not prepare transaction\n"
|
|
||||||
msgstr "неможливо підготувати транзакцію\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction\n"
|
msgid "could not commit transaction\n"
|
||||||
msgstr "неможливо здійснити транзакцію\n"
|
msgstr "неможливо здійснити транзакцію\n"
|
||||||
@@ -502,11 +490,6 @@ msgstr "неможливо здійснити транзакцію\n"
|
|||||||
msgid "could not remove lock file %s\n"
|
msgid "could not remove lock file %s\n"
|
||||||
msgstr "неможливо видалити файл блокування %s\n"
|
msgstr "неможливо видалити файл блокування %s\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "No /bin/sh in parent environment, aborting scriptlet\n"
|
|
||||||
msgstr ""
|
|
||||||
"В батьківському середовищі немає /bin/sh, переривання скрипту виконання\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not create temp directory\n"
|
msgid "could not create temp directory\n"
|
||||||
msgstr "неиожливо створити тимчасовий каталог\n"
|
msgstr "неиожливо створити тимчасовий каталог\n"
|
||||||
@@ -515,6 +498,14 @@ msgstr "неиожливо створити тимчасовий каталог\
|
|||||||
msgid "could not copy tempfile to %s (%s)\n"
|
msgid "could not copy tempfile to %s (%s)\n"
|
||||||
msgstr "неможливо скопіювати тимчасовий файл до %s (%s)\n"
|
msgstr "неможливо скопіювати тимчасовий файл до %s (%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove tmpdir %s\n"
|
||||||
|
msgstr "неможливо видалити тимчасовий каталог %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not open %s: %s\n"
|
||||||
|
msgstr "неможливо відкрити %s: %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not change directory to %s (%s)\n"
|
msgid "could not change directory to %s (%s)\n"
|
||||||
msgstr "неможливо змінити каталог на %s (%s)\n"
|
msgstr "неможливо змінити каталог на %s (%s)\n"
|
||||||
@@ -540,16 +531,8 @@ msgid "call to waitpid failed (%s)\n"
|
|||||||
msgstr "виклик waitpid невдалий (%s)\n"
|
msgstr "виклик waitpid невдалий (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "scriptlet failed to execute correctly\n"
|
msgid "command failed to execute correctly\n"
|
||||||
msgstr "скрипт встановлення не зміг виконатися коректно\n"
|
msgstr "команда не змогла виконатися коректно\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not remove tmpdir %s\n"
|
|
||||||
msgstr "неможливо видалити тимчасовий каталог %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not open %s: %s\n"
|
|
||||||
msgstr "неможливо відкрити %s: %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "no %s cache exists, creating...\n"
|
msgid "no %s cache exists, creating...\n"
|
||||||
@@ -558,3 +541,49 @@ msgstr "кеш %s не існує, створюється...\n"
|
|||||||
#, c-format
|
#, c-format
|
||||||
msgid "couldn't create package cache, using /tmp instead\n"
|
msgid "couldn't create package cache, using /tmp instead\n"
|
||||||
msgstr "неможливо створити кеш пакунку, використовуватиметься /tmp\n"
|
msgstr "неможливо створити кеш пакунку, використовуватиметься /tmp\n"
|
||||||
|
|
||||||
|
#~ msgid "error downloading '%s': %s\n"
|
||||||
|
#~ msgstr "помилка при завантаженні '%s': %s\n"
|
||||||
|
|
||||||
|
#~ msgid "could not chdir to %s\n"
|
||||||
|
#~ msgstr "неможливо змінити каталог на %s\n"
|
||||||
|
|
||||||
|
#~ msgid "running XferCommand: fork failed!\n"
|
||||||
|
#~ msgstr "виконання XferCommand: старт процесу невдалий!\n"
|
||||||
|
|
||||||
|
#~ msgid "could not commit transaction"
|
||||||
|
#~ msgstr "неможливо здійснити транзакцію"
|
||||||
|
|
||||||
|
#~ msgid "could not download all files"
|
||||||
|
#~ msgstr "неможиво завантажити усі файли"
|
||||||
|
|
||||||
|
#~ msgid "cannot load package data"
|
||||||
|
#~ msgstr "неможливо завантажити дані пакунку"
|
||||||
|
|
||||||
|
#~ msgid "package not installed or lesser version"
|
||||||
|
#~ msgstr "пакунок не встановлено, або існує старіша версія"
|
||||||
|
|
||||||
|
#~ msgid "group not found"
|
||||||
|
#~ msgstr "група не знадена"
|
||||||
|
|
||||||
|
#~ msgid "user aborted the operation"
|
||||||
|
#~ msgstr "користувач перервав операцію"
|
||||||
|
|
||||||
|
#~ msgid "internal error"
|
||||||
|
#~ msgstr "внутрішня помилка"
|
||||||
|
|
||||||
|
#~ msgid "not confirmed"
|
||||||
|
#~ msgstr "не підтверджено"
|
||||||
|
|
||||||
|
#~ msgid "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
||||||
|
#~ msgstr "%s-%s: ігнорування поновлення пакунку (буде замінено на %s-%s)\n"
|
||||||
|
|
||||||
|
#~ msgid "command: %s\n"
|
||||||
|
#~ msgstr "команда: %s\n"
|
||||||
|
|
||||||
|
#~ msgid "could not prepare transaction\n"
|
||||||
|
#~ msgstr "неможливо підготувати транзакцію\n"
|
||||||
|
|
||||||
|
#~ msgid "No /bin/sh in parent environment, aborting scriptlet\n"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "В батьківському середовищі немає /bin/sh, переривання скрипту виконання\n"
|
||||||
|
|||||||
@@ -9,9 +9,9 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Pacman package manager 3.2.1\n"
|
"Project-Id-Version: Pacman package manager 3.2.1\n"
|
||||||
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
"Report-Msgid-Bugs-To: pacman-dev@archlinux.org\n"
|
||||||
"POT-Creation-Date: 2008-08-23 10:54-0500\n"
|
"POT-Creation-Date: 2009-07-27 21:15-0500\n"
|
||||||
"PO-Revision-Date: 2008-10-28 16:20+0900\n"
|
"PO-Revision-Date: 2009-07-30 20:39+0700\n"
|
||||||
"Last-Translator: Lyman Li <lymanrb@gmail.com>\n"
|
"Last-Translator: 甘露(Gan Lu) <rhythm.gan@gmail.com>\n"
|
||||||
"Language-Team: Chinese/Simplified <i18n-translation@lists.linux.net.cn>\n"
|
"Language-Team: Chinese/Simplified <i18n-translation@lists.linux.net.cn>\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@@ -49,14 +49,14 @@ msgstr ""
|
|||||||
"目录权限不一致 %1$s\n"
|
"目录权限不一致 %1$s\n"
|
||||||
"文件系统:%2$o 软件包:%3$o\n"
|
"文件系统:%2$o 软件包:%3$o\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "extract: symlink %s does not point to dir\n"
|
|
||||||
msgstr "解压缩:符号链接 %s 没有指向目录\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "extract: not overwriting dir with file %s\n"
|
msgid "extract: not overwriting dir with file %s\n"
|
||||||
msgstr "解压缩:没有用文件 %s 覆盖目录\n"
|
msgstr "解压缩:没有用文件 %s 覆盖目录\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "extract: symlink %s does not point to dir\n"
|
||||||
|
msgstr "解压缩:符号链接 %s 没有指向目录\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not extract %s (%s)\n"
|
msgid "could not extract %s (%s)\n"
|
||||||
msgstr "无法解压缩 %1$s (%2$s)\n"
|
msgstr "无法解压缩 %1$s (%2$s)\n"
|
||||||
@@ -102,8 +102,8 @@ msgid "could not add entry '%s' in cache\n"
|
|||||||
msgstr "无法在缓存中添加记录 '%s' \n"
|
msgstr "无法在缓存中添加记录 '%s' \n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not remove database entry %s%s\n"
|
msgid "could not remove database %s\n"
|
||||||
msgstr "无法删除数据库记录 %1$s%2$s\n"
|
msgstr "无法删除数据库 %s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid name for database entry '%s'\n"
|
msgid "invalid name for database entry '%s'\n"
|
||||||
@@ -125,6 +125,10 @@ msgstr "%1$s 数据库不一致:名字和软件包中的 %2$s 不一致\n"
|
|||||||
msgid "%s database is inconsistent: version mismatch on package %s\n"
|
msgid "%s database is inconsistent: version mismatch on package %s\n"
|
||||||
msgstr "%1$s 数据库不一致:版本和软件包中的 %2$s 不一致\n"
|
msgstr "%1$s 数据库不一致:版本和软件包中的 %2$s 不一致\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create directory %s: %s\n"
|
||||||
|
msgstr "无法更改目录到 %1$s:%2$s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not parse package description file in %s\n"
|
msgid "could not parse package description file in %s\n"
|
||||||
msgstr "无法解析 %s 中的软件包描述文件\n"
|
msgstr "无法解析 %s 中的软件包描述文件\n"
|
||||||
@@ -165,6 +169,10 @@ msgstr "%1$s 将在它 %2$s 的依赖关系之后被删除\n"
|
|||||||
msgid "%s will be installed before its %s dependency\n"
|
msgid "%s will be installed before its %s dependency\n"
|
||||||
msgstr "%1$s 将在它 %2$s 的依赖关系之前被安装\n"
|
msgstr "%1$s 将在它 %2$s 的依赖关系之前被安装\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "ignoring package %s-%s\n"
|
||||||
|
msgstr "正在忽略软件包更新 %s-%s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "provider package was selected (%s provides %s)\n"
|
msgid "provider package was selected (%s provides %s)\n"
|
||||||
msgstr "已选定提供软件包 (%1$s 提供 %2$s)\n"
|
msgstr "已选定提供软件包 (%1$s 提供 %2$s)\n"
|
||||||
@@ -197,21 +205,13 @@ msgstr "无法恢复下载,重新开始\n"
|
|||||||
msgid "cannot write to file '%s'\n"
|
msgid "cannot write to file '%s'\n"
|
||||||
msgstr "无法写入文件 '%s'\n"
|
msgstr "无法写入文件 '%s'\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "error downloading '%s': %s\n"
|
|
||||||
msgstr "下载 '%1$s' 时出错: %2$s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "error writing to file '%s': %s\n"
|
msgid "error writing to file '%s': %s\n"
|
||||||
msgstr "写入文件 '%1$s' 时出错: %2$s\n"
|
msgstr "写入文件 '%1$s' 时出错: %2$s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not chdir to %s\n"
|
msgid "%s appears to be truncated: %jd/%jd bytes\n"
|
||||||
msgstr "无法切换目录到 %s\n"
|
msgstr "%s 可缩小:%jd/%jd bytes\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "running XferCommand: fork failed!\n"
|
|
||||||
msgstr "正在运行 XferCommand:fork 失败!\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to download %s\n"
|
msgid "failed to download %s\n"
|
||||||
@@ -285,6 +285,10 @@ msgstr "无法删除数据库记录"
|
|||||||
msgid "invalid url for server"
|
msgid "invalid url for server"
|
||||||
msgstr "无效的服务器 url"
|
msgstr "无效的服务器 url"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "no servers configured for repository"
|
||||||
|
msgstr "软件仓库没有配置服务器信息"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "transaction already initialized"
|
msgid "transaction already initialized"
|
||||||
msgstr "处理已初始化"
|
msgstr "处理已初始化"
|
||||||
@@ -310,17 +314,17 @@ msgid "operation not compatible with the transaction type"
|
|||||||
msgstr "操作与处理类型不兼容"
|
msgstr "操作与处理类型不兼容"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction"
|
msgid "transaction commit attempt when database is not locked"
|
||||||
msgstr "无法交付处理"
|
msgstr "未锁定数据库即提交了事务处理尝试"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not download all files"
|
|
||||||
msgstr "无法下载全部文件"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not find or read package"
|
msgid "could not find or read package"
|
||||||
msgstr "无法找到或读取软件包"
|
msgstr "无法找到或读取软件包"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "operation cancelled due to ignorepkg"
|
||||||
|
msgstr "由于 ignorepkg 指定,操作已取消"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid or corrupted package"
|
msgid "invalid or corrupted package"
|
||||||
msgstr "无效的或已损坏的软件包"
|
msgstr "无效的或已损坏的软件包"
|
||||||
@@ -329,14 +333,6 @@ msgstr "无效的或已损坏的软件包"
|
|||||||
msgid "cannot open package file"
|
msgid "cannot open package file"
|
||||||
msgstr "无法打开软件包文件"
|
msgstr "无法打开软件包文件"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "cannot load package data"
|
|
||||||
msgstr "无法加载软件包数据"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "package not installed or lesser version"
|
|
||||||
msgstr "软件包没有安装或版本较低"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "cannot remove all files for package"
|
msgid "cannot remove all files for package"
|
||||||
msgstr "无法为软件包删除全部文件"
|
msgstr "无法为软件包删除全部文件"
|
||||||
@@ -357,10 +353,6 @@ msgstr "无效的或已损坏的 delta"
|
|||||||
msgid "delta patch failed"
|
msgid "delta patch failed"
|
||||||
msgstr "delta 补丁失败"
|
msgstr "delta 补丁失败"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "group not found"
|
|
||||||
msgstr "没有找到软件包组"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not satisfy dependencies"
|
msgid "could not satisfy dependencies"
|
||||||
msgstr "无法满足依赖关系"
|
msgstr "无法满足依赖关系"
|
||||||
@@ -374,16 +366,8 @@ msgid "conflicting files"
|
|||||||
msgstr "有冲突的文件"
|
msgstr "有冲突的文件"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "user aborted the operation"
|
msgid "failed to retrieve some files"
|
||||||
msgstr "用户中断了操作"
|
msgstr "无法获取某些文件"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "internal error"
|
|
||||||
msgstr "内部错误"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "not confirmed"
|
|
||||||
msgstr "未确认"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "invalid regular expression"
|
msgid "invalid regular expression"
|
||||||
@@ -422,16 +406,28 @@ msgid "could not remove entry '%s' from cache\n"
|
|||||||
msgstr "无法从缓存中删除记录 '%s'\n"
|
msgstr "无法从缓存中删除记录 '%s'\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
||||||
msgstr "%1$s-%2$s:忽略软件包更新(由 %3$s-%4$s 替代)\n"
|
msgstr "%1$s:忽略软件包更新(%2$s => %3$s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: ignoring package downgrade (%s => %s)\n"
|
||||||
|
msgstr "%1$s:正在忽略软件包经济(%2$s => %3$s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "%s: downgrading from version %s to version %s\n"
|
||||||
|
msgstr "%s:正在从版本 %s 降级为 %s \n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: local (%s) is newer than %s (%s)\n"
|
msgid "%s: local (%s) is newer than %s (%s)\n"
|
||||||
msgstr "%1$s:本地(%2$s)比 %3$s 的版本更新 (%4$s)\n"
|
msgstr "%1$s:本地(%2$s)比 %3$s 的版本更新 (%4$s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%s: ignoring package upgrade (%s => %s)\n"
|
msgid "ignoring package replacement (%s-%s => %s-%s)\n"
|
||||||
msgstr "%1$s:忽略软件包更新(%2$s => %3$s)\n"
|
msgstr "正在忽略软件包更新 (%s-%s => %s-%s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "cannot replace %s by %s\n"
|
||||||
|
msgstr "无法用文件 '%2$s' 替代 %1$s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "repository '%s' not found\n"
|
msgid "repository '%s' not found\n"
|
||||||
@@ -457,10 +453,6 @@ msgstr "检测到未解决的软件包冲突\n"
|
|||||||
msgid "removing '%s' from target list because it conflicts with '%s'\n"
|
msgid "removing '%s' from target list because it conflicts with '%s'\n"
|
||||||
msgstr "正在从目标清单中删除 '%1$s' ,因为它和 '%2$s' 冲突\n"
|
msgstr "正在从目标清单中删除 '%1$s' ,因为它和 '%2$s' 冲突\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "command: %s\n"
|
|
||||||
msgstr "命令:%s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "failed to retrieve some files from %s\n"
|
msgid "failed to retrieve some files from %s\n"
|
||||||
msgstr "无法从 %s 获取某些文件\n"
|
msgstr "无法从 %s 获取某些文件\n"
|
||||||
@@ -469,10 +461,18 @@ msgstr "无法从 %s 获取某些文件\n"
|
|||||||
msgid "could not create removal transaction\n"
|
msgid "could not create removal transaction\n"
|
||||||
msgstr "无法生成可撤销处理\n"
|
msgstr "无法生成可撤销处理\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not create transaction\n"
|
||||||
|
msgstr "无法创建处理\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not initialize the removal transaction\n"
|
msgid "could not initialize the removal transaction\n"
|
||||||
msgstr "无法初始化可撤销处理\n"
|
msgstr "无法初始化可撤销处理\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not initialize transaction\n"
|
||||||
|
msgstr "无法初始化处理\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not prepare removal transaction\n"
|
msgid "could not prepare removal transaction\n"
|
||||||
msgstr "无法准备可撤销处理\n"
|
msgstr "无法准备可撤销处理\n"
|
||||||
@@ -481,18 +481,6 @@ msgstr "无法准备可撤销处理\n"
|
|||||||
msgid "could not commit removal transaction\n"
|
msgid "could not commit removal transaction\n"
|
||||||
msgstr "无法交付可撤销处理\n"
|
msgstr "无法交付可撤销处理\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not create transaction\n"
|
|
||||||
msgstr "无法创建处理\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not initialize transaction\n"
|
|
||||||
msgstr "无法初始化处理\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not prepare transaction\n"
|
|
||||||
msgstr "无法准备处理\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not commit transaction\n"
|
msgid "could not commit transaction\n"
|
||||||
msgstr "无法交付处理\n"
|
msgstr "无法交付处理\n"
|
||||||
@@ -501,10 +489,6 @@ msgstr "无法交付处理\n"
|
|||||||
msgid "could not remove lock file %s\n"
|
msgid "could not remove lock file %s\n"
|
||||||
msgstr "无法删除锁定文件 %s\n"
|
msgstr "无法删除锁定文件 %s\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "No /bin/sh in parent environment, aborting scriptlet\n"
|
|
||||||
msgstr "父环境中没有 /bin/sh,正在中断小脚本\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not create temp directory\n"
|
msgid "could not create temp directory\n"
|
||||||
msgstr "无法创建临时目录\n"
|
msgstr "无法创建临时目录\n"
|
||||||
@@ -513,6 +497,14 @@ msgstr "无法创建临时目录\n"
|
|||||||
msgid "could not copy tempfile to %s (%s)\n"
|
msgid "could not copy tempfile to %s (%s)\n"
|
||||||
msgstr "无法复制临时文件到 %1$s (%2$s)\n"
|
msgstr "无法复制临时文件到 %1$s (%2$s)\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not remove tmpdir %s\n"
|
||||||
|
msgstr "无法删除临时目录 %s\n"
|
||||||
|
|
||||||
|
#, c-format
|
||||||
|
msgid "could not open %s: %s\n"
|
||||||
|
msgstr "无法打开 %1$s: %2$s\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "could not change directory to %s (%s)\n"
|
msgid "could not change directory to %s (%s)\n"
|
||||||
msgstr "无法更改目录到 %1$s (%2$s)\n"
|
msgstr "无法更改目录到 %1$s (%2$s)\n"
|
||||||
@@ -538,16 +530,8 @@ msgid "call to waitpid failed (%s)\n"
|
|||||||
msgstr "调用 waitpid 失败 (%s)\n"
|
msgstr "调用 waitpid 失败 (%s)\n"
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "scriptlet failed to execute correctly\n"
|
msgid "command failed to execute correctly\n"
|
||||||
msgstr "小脚本未能被正确执行\n"
|
msgstr "命令未能被正确执行\n"
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not remove tmpdir %s\n"
|
|
||||||
msgstr "无法删除临时目录 %s\n"
|
|
||||||
|
|
||||||
#, c-format
|
|
||||||
msgid "could not open %s: %s\n"
|
|
||||||
msgstr "无法打开 %1$s: %2$s\n"
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "no %s cache exists, creating...\n"
|
msgid "no %s cache exists, creating...\n"
|
||||||
@@ -556,3 +540,48 @@ msgstr "没有 %s 缓存存在,正在创建...\n"
|
|||||||
#, c-format
|
#, c-format
|
||||||
msgid "couldn't create package cache, using /tmp instead\n"
|
msgid "couldn't create package cache, using /tmp instead\n"
|
||||||
msgstr "无法创建软件包缓存,正在使用 /tmp 代替\n"
|
msgstr "无法创建软件包缓存,正在使用 /tmp 代替\n"
|
||||||
|
|
||||||
|
#~ msgid "error downloading '%s': %s\n"
|
||||||
|
#~ msgstr "下载 '%1$s' 时出错: %2$s\n"
|
||||||
|
|
||||||
|
#~ msgid "could not chdir to %s\n"
|
||||||
|
#~ msgstr "无法切换目录到 %s\n"
|
||||||
|
|
||||||
|
#~ msgid "running XferCommand: fork failed!\n"
|
||||||
|
#~ msgstr "正在运行 XferCommand:fork 失败!\n"
|
||||||
|
|
||||||
|
#~ msgid "could not commit transaction"
|
||||||
|
#~ msgstr "无法交付处理"
|
||||||
|
|
||||||
|
#~ msgid "could not download all files"
|
||||||
|
#~ msgstr "无法下载全部文件"
|
||||||
|
|
||||||
|
#~ msgid "cannot load package data"
|
||||||
|
#~ msgstr "无法加载软件包数据"
|
||||||
|
|
||||||
|
#~ msgid "package not installed or lesser version"
|
||||||
|
#~ msgstr "软件包没有安装或版本较低"
|
||||||
|
|
||||||
|
#~ msgid "group not found"
|
||||||
|
#~ msgstr "没有找到软件包组"
|
||||||
|
|
||||||
|
#~ msgid "user aborted the operation"
|
||||||
|
#~ msgstr "用户中断了操作"
|
||||||
|
|
||||||
|
#~ msgid "internal error"
|
||||||
|
#~ msgstr "内部错误"
|
||||||
|
|
||||||
|
#~ msgid "not confirmed"
|
||||||
|
#~ msgstr "未确认"
|
||||||
|
|
||||||
|
#~ msgid "%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"
|
||||||
|
#~ msgstr "%1$s-%2$s:忽略软件包更新(由 %3$s-%4$s 替代)\n"
|
||||||
|
|
||||||
|
#~ msgid "command: %s\n"
|
||||||
|
#~ msgstr "命令:%s\n"
|
||||||
|
|
||||||
|
#~ msgid "could not prepare transaction\n"
|
||||||
|
#~ msgstr "无法准备处理\n"
|
||||||
|
|
||||||
|
#~ msgid "No /bin/sh in parent environment, aborting scriptlet\n"
|
||||||
|
#~ msgstr "父环境中没有 /bin/sh,正在中断小脚本\n"
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* remove.c
|
* remove.c
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@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 Aurelien Foret <orelien@chez.com>
|
||||||
* Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
|
* Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
|
||||||
* Copyright (c) 2006 by David Kimpe <dnaku@frugalware.org>
|
* Copyright (c) 2006 by David Kimpe <dnaku@frugalware.org>
|
||||||
@@ -49,6 +50,7 @@
|
|||||||
int _alpm_remove_loadtarget(pmtrans_t *trans, pmdb_t *db, char *name)
|
int _alpm_remove_loadtarget(pmtrans_t *trans, pmdb_t *db, char *name)
|
||||||
{
|
{
|
||||||
pmpkg_t *info;
|
pmpkg_t *info;
|
||||||
|
const char *targ;
|
||||||
|
|
||||||
ALPM_LOG_FUNC;
|
ALPM_LOG_FUNC;
|
||||||
|
|
||||||
@@ -56,25 +58,22 @@ int _alpm_remove_loadtarget(pmtrans_t *trans, pmdb_t *db, char *name)
|
|||||||
ASSERT(trans != NULL, RET_ERR(PM_ERR_TRANS_NULL, -1));
|
ASSERT(trans != NULL, RET_ERR(PM_ERR_TRANS_NULL, -1));
|
||||||
ASSERT(name != NULL, RET_ERR(PM_ERR_WRONG_ARGS, -1));
|
ASSERT(name != NULL, RET_ERR(PM_ERR_WRONG_ARGS, -1));
|
||||||
|
|
||||||
if(_alpm_pkg_find(trans->packages, name)) {
|
targ = strchr(name, '/');
|
||||||
|
if(targ && strncmp(name, "local", 5) == 0) {
|
||||||
|
targ++;
|
||||||
|
} else {
|
||||||
|
targ = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(_alpm_pkg_find(trans->packages, targ)) {
|
||||||
RET_ERR(PM_ERR_TRANS_DUP_TARGET, -1);
|
RET_ERR(PM_ERR_TRANS_DUP_TARGET, -1);
|
||||||
}
|
}
|
||||||
|
|
||||||
if((info = _alpm_db_get_pkgfromcache(db, name)) == NULL) {
|
if((info = _alpm_db_get_pkgfromcache(db, targ)) == NULL) {
|
||||||
_alpm_log(PM_LOG_DEBUG, "could not find %s in database\n", name);
|
_alpm_log(PM_LOG_DEBUG, "could not find %s in database\n", targ);
|
||||||
RET_ERR(PM_ERR_PKG_NOT_FOUND, -1);
|
RET_ERR(PM_ERR_PKG_NOT_FOUND, -1);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ignore holdpkgs on upgrade */
|
|
||||||
if((trans == handle->trans)
|
|
||||||
&& alpm_list_find_str(handle->holdpkg, info->name)) {
|
|
||||||
int resp = 0;
|
|
||||||
QUESTION(trans, PM_TRANS_CONV_REMOVE_HOLDPKG, info, NULL, NULL, &resp);
|
|
||||||
if(!resp) {
|
|
||||||
RET_ERR(PM_ERR_PKG_HOLD, -1);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "adding %s in the targets list\n", info->name);
|
_alpm_log(PM_LOG_DEBUG, "adding %s in the targets list\n", info->name);
|
||||||
trans->packages = alpm_list_add(trans->packages, _alpm_pkg_dup(info));
|
trans->packages = alpm_list_add(trans->packages, _alpm_pkg_dup(info));
|
||||||
|
|
||||||
@@ -104,7 +103,7 @@ static void remove_prepare_cascade(pmtrans_t *trans, pmdb_t *db,
|
|||||||
}
|
}
|
||||||
alpm_list_free_inner(lp, (alpm_list_fn_free)_alpm_depmiss_free);
|
alpm_list_free_inner(lp, (alpm_list_fn_free)_alpm_depmiss_free);
|
||||||
alpm_list_free(lp);
|
alpm_list_free(lp);
|
||||||
lp = alpm_checkdeps(db, 1, trans->packages, NULL);
|
lp = alpm_checkdeps(_alpm_db_get_pkgcache(db), 1, trans->packages, NULL);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -134,7 +133,7 @@ static void remove_prepare_keep_needed(pmtrans_t *trans, pmdb_t *db,
|
|||||||
}
|
}
|
||||||
alpm_list_free_inner(lp, (alpm_list_fn_free)_alpm_depmiss_free);
|
alpm_list_free_inner(lp, (alpm_list_fn_free)_alpm_depmiss_free);
|
||||||
alpm_list_free(lp);
|
alpm_list_free(lp);
|
||||||
lp = alpm_checkdeps(db, 1, trans->packages, NULL);
|
lp = alpm_checkdeps(_alpm_db_get_pkgcache(db), 1, trans->packages, NULL);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -161,7 +160,7 @@ int _alpm_remove_prepare(pmtrans_t *trans, pmdb_t *db, alpm_list_t **data)
|
|||||||
EVENT(trans, PM_TRANS_EVT_CHECKDEPS_START, NULL, NULL);
|
EVENT(trans, PM_TRANS_EVT_CHECKDEPS_START, NULL, NULL);
|
||||||
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "looking for unsatisfied dependencies\n");
|
_alpm_log(PM_LOG_DEBUG, "looking for unsatisfied dependencies\n");
|
||||||
lp = alpm_checkdeps(db, 1, trans->packages, NULL);
|
lp = alpm_checkdeps(_alpm_db_get_pkgcache(db), 1, trans->packages, NULL);
|
||||||
if(lp != NULL) {
|
if(lp != NULL) {
|
||||||
|
|
||||||
if(trans->flags & PM_TRANS_FLAG_CASCADE) {
|
if(trans->flags & PM_TRANS_FLAG_CASCADE) {
|
||||||
@@ -229,25 +228,18 @@ static int can_remove_file(pmtrans_t *trans, const char *path)
|
|||||||
|
|
||||||
/* Helper function for iterating through a package's file and deleting them
|
/* Helper function for iterating through a package's file and deleting them
|
||||||
* Used by _alpm_remove_commit. */
|
* Used by _alpm_remove_commit. */
|
||||||
static void unlink_file(pmpkg_t *info, alpm_list_t *lp, pmtrans_t *trans)
|
static void unlink_file(pmpkg_t *info, char *filename, pmtrans_t *trans)
|
||||||
{
|
{
|
||||||
struct stat buf;
|
struct stat buf;
|
||||||
int needbackup = 0;
|
|
||||||
char file[PATH_MAX+1];
|
char file[PATH_MAX+1];
|
||||||
|
|
||||||
ALPM_LOG_FUNC;
|
ALPM_LOG_FUNC;
|
||||||
|
|
||||||
char *hash = _alpm_needbackup(lp->data, alpm_pkg_get_backup(info));
|
snprintf(file, PATH_MAX, "%s%s", handle->root, filename);
|
||||||
if(hash) {
|
|
||||||
needbackup = 1;
|
|
||||||
FREE(hash);
|
|
||||||
}
|
|
||||||
|
|
||||||
snprintf(file, PATH_MAX, "%s%s", handle->root, (char *)lp->data);
|
|
||||||
|
|
||||||
if(trans->type == PM_TRANS_TYPE_REMOVEUPGRADE) {
|
if(trans->type == PM_TRANS_TYPE_REMOVEUPGRADE) {
|
||||||
/* check noupgrade */
|
/* check noupgrade */
|
||||||
if(alpm_list_find_str(handle->noupgrade, lp->data)) {
|
if(alpm_list_find_str(handle->noupgrade, filename)) {
|
||||||
_alpm_log(PM_LOG_DEBUG, "Skipping removal of '%s' due to NoUpgrade\n",
|
_alpm_log(PM_LOG_DEBUG, "Skipping removal of '%s' due to NoUpgrade\n",
|
||||||
file);
|
file);
|
||||||
return;
|
return;
|
||||||
@@ -278,24 +270,35 @@ static void unlink_file(pmpkg_t *info, alpm_list_t *lp, pmtrans_t *trans)
|
|||||||
_alpm_log(PM_LOG_DEBUG, "%s is in trans->skip_remove, skipping removal\n",
|
_alpm_log(PM_LOG_DEBUG, "%s is in trans->skip_remove, skipping removal\n",
|
||||||
file);
|
file);
|
||||||
return;
|
return;
|
||||||
} else if(needbackup) {
|
}
|
||||||
/* if the file is flagged, back it up to .pacsave */
|
|
||||||
if(!(trans->flags & PM_TRANS_FLAG_NOSAVE)) {
|
/* if the file needs backup and has been modified, back it up to .pacsave */
|
||||||
char newpath[PATH_MAX];
|
char *pkghash = _alpm_needbackup(filename, alpm_pkg_get_backup(info));
|
||||||
snprintf(newpath, PATH_MAX, "%s.pacsave", file);
|
if(pkghash) {
|
||||||
rename(file, newpath);
|
if(trans->flags & PM_TRANS_FLAG_NOSAVE) {
|
||||||
_alpm_log(PM_LOG_WARNING, _("%s saved as %s\n"), file, newpath);
|
|
||||||
alpm_logaction("warning: %s saved as %s\n", file, newpath);
|
|
||||||
return;
|
|
||||||
} else {
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "transaction is set to NOSAVE, not backing up '%s'\n", file);
|
_alpm_log(PM_LOG_DEBUG, "transaction is set to NOSAVE, not backing up '%s'\n", file);
|
||||||
|
FREE(pkghash);
|
||||||
|
} else {
|
||||||
|
char *filehash = alpm_compute_md5sum(file);
|
||||||
|
int cmp = strcmp(filehash,pkghash);
|
||||||
|
FREE(filehash);
|
||||||
|
FREE(pkghash);
|
||||||
|
if(cmp != 0) {
|
||||||
|
char newpath[PATH_MAX];
|
||||||
|
snprintf(newpath, PATH_MAX, "%s.pacsave", file);
|
||||||
|
rename(file, newpath);
|
||||||
|
_alpm_log(PM_LOG_WARNING, _("%s saved as %s\n"), file, newpath);
|
||||||
|
alpm_logaction("warning: %s saved as %s\n", file, newpath);
|
||||||
|
return;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "unlinking %s\n", file);
|
_alpm_log(PM_LOG_DEBUG, "unlinking %s\n", file);
|
||||||
|
|
||||||
if(unlink(file) == -1) {
|
if(unlink(file) == -1) {
|
||||||
_alpm_log(PM_LOG_ERROR, _("cannot remove file '%s': %s\n"),
|
_alpm_log(PM_LOG_ERROR, _("cannot remove file '%s': %s\n"),
|
||||||
(char *)lp->data, strerror(errno));
|
filename, strerror(errno));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -360,7 +363,7 @@ int _alpm_remove_commit(pmtrans_t *trans, pmdb_t *db)
|
|||||||
/* iterate through the list backwards, unlinking files */
|
/* iterate through the list backwards, unlinking files */
|
||||||
newfiles = alpm_list_reverse(files);
|
newfiles = alpm_list_reverse(files);
|
||||||
for(lp = newfiles; lp; lp = alpm_list_next(lp)) {
|
for(lp = newfiles; lp; lp = alpm_list_next(lp)) {
|
||||||
unlink_file(info, lp, trans);
|
unlink_file(info, lp->data, trans);
|
||||||
|
|
||||||
/* update progress bar after each file */
|
/* update progress bar after each file */
|
||||||
percent = (double)position / (double)filenum;
|
percent = (double)position / (double)filenum;
|
||||||
@@ -405,7 +408,6 @@ int _alpm_remove_commit(pmtrans_t *trans, pmdb_t *db)
|
|||||||
|
|
||||||
/* run ldconfig if it exists */
|
/* run ldconfig if it exists */
|
||||||
if(trans->type != PM_TRANS_TYPE_REMOVEUPGRADE) {
|
if(trans->type != PM_TRANS_TYPE_REMOVEUPGRADE) {
|
||||||
_alpm_log(PM_LOG_DEBUG, "running \"ldconfig -r %s\"\n", handle->root);
|
|
||||||
_alpm_ldconfig(handle->root);
|
_alpm_ldconfig(handle->root);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* remove.h
|
* remove.h
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@archlinux.org>
|
||||||
|
* Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* 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
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* sync.h
|
* sync.h
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@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 Aurelien Foret <orelien@chez.com>
|
||||||
* Copyright (c) 2005, 2006 by Miklos Vajna <vmiklos@frugalware.org>
|
* Copyright (c) 2005, 2006 by Miklos Vajna <vmiklos@frugalware.org>
|
||||||
*
|
*
|
||||||
@@ -23,26 +24,12 @@
|
|||||||
|
|
||||||
#include "alpm.h"
|
#include "alpm.h"
|
||||||
|
|
||||||
/* Sync package */
|
int _alpm_sync_sysupgrade(pmtrans_t *trans, pmdb_t *db_local, alpm_list_t *dbs_sync, int enable_downgrade);
|
||||||
struct __pmsyncpkg_t {
|
|
||||||
pmpkgreason_t newreason;
|
|
||||||
pmpkg_t *pkg;
|
|
||||||
alpm_list_t *removes;
|
|
||||||
};
|
|
||||||
|
|
||||||
pmsyncpkg_t *_alpm_sync_new(pmpkgreason_t newreason, pmpkg_t *spkg, alpm_list_t *removes);
|
|
||||||
void _alpm_sync_free(pmsyncpkg_t *data);
|
|
||||||
|
|
||||||
int _alpm_sync_sysupgrade(pmtrans_t *trans,
|
|
||||||
pmdb_t *db_local, alpm_list_t *dbs_sync, alpm_list_t **syncpkgs);
|
|
||||||
|
|
||||||
int _alpm_sync_addtarget(pmtrans_t *trans, pmdb_t *db_local, alpm_list_t *dbs_sync, char *name);
|
int _alpm_sync_addtarget(pmtrans_t *trans, pmdb_t *db_local, alpm_list_t *dbs_sync, char *name);
|
||||||
int _alpm_sync_prepare(pmtrans_t *trans, pmdb_t *db_local, alpm_list_t *dbs_sync, alpm_list_t **data);
|
int _alpm_sync_prepare(pmtrans_t *trans, pmdb_t *db_local, alpm_list_t *dbs_sync, alpm_list_t **data);
|
||||||
int _alpm_sync_commit(pmtrans_t *trans, pmdb_t *db_local, alpm_list_t **data);
|
int _alpm_sync_commit(pmtrans_t *trans, pmdb_t *db_local, alpm_list_t **data);
|
||||||
|
|
||||||
/* typically trans->packages */
|
|
||||||
pmsyncpkg_t *_alpm_sync_find(alpm_list_t *syncpkgs, const char* pkgname);
|
|
||||||
|
|
||||||
#endif /* _ALPM_SYNC_H */
|
#endif /* _ALPM_SYNC_H */
|
||||||
|
|
||||||
/* vim: set ts=2 sw=2 noet: */
|
/* vim: set ts=2 sw=2 noet: */
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* trans.c
|
* trans.c
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@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 Aurelien Foret <orelien@chez.com>
|
||||||
* Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
|
* Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
|
||||||
* Copyright (c) 2005, 2006 by Miklos Vajna <vmiklos@frugalware.org>
|
* Copyright (c) 2005, 2006 by Miklos Vajna <vmiklos@frugalware.org>
|
||||||
@@ -26,7 +27,6 @@
|
|||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <sys/wait.h>
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <sys/stat.h>
|
#include <sys/stat.h>
|
||||||
#include <sys/statvfs.h>
|
#include <sys/statvfs.h>
|
||||||
@@ -71,9 +71,11 @@ int SYMEXPORT alpm_trans_init(pmtranstype_t type, pmtransflag_t flags,
|
|||||||
ASSERT(handle->trans == NULL, RET_ERR(PM_ERR_TRANS_NOT_NULL, -1));
|
ASSERT(handle->trans == NULL, RET_ERR(PM_ERR_TRANS_NOT_NULL, -1));
|
||||||
|
|
||||||
/* lock db */
|
/* lock db */
|
||||||
handle->lckfd = _alpm_lckmk();
|
if(!(flags & PM_TRANS_FLAG_NOLOCK)) {
|
||||||
if(handle->lckfd == -1) {
|
handle->lckfd = _alpm_lckmk();
|
||||||
RET_ERR(PM_ERR_HANDLE_LOCK, -1);
|
if(handle->lckfd == -1) {
|
||||||
|
RET_ERR(PM_ERR_HANDLE_LOCK, -1);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
handle->trans = _alpm_trans_new();
|
handle->trans = _alpm_trans_new();
|
||||||
@@ -87,7 +89,7 @@ int SYMEXPORT alpm_trans_init(pmtranstype_t type, pmtransflag_t flags,
|
|||||||
/** Search for packages to upgrade and add them to the transaction.
|
/** Search for packages to upgrade and add them to the transaction.
|
||||||
* @return 0 on success, -1 on error (pm_errno is set accordingly)
|
* @return 0 on success, -1 on error (pm_errno is set accordingly)
|
||||||
*/
|
*/
|
||||||
int SYMEXPORT alpm_trans_sysupgrade()
|
int SYMEXPORT alpm_trans_sysupgrade(int enable_downgrade)
|
||||||
{
|
{
|
||||||
pmtrans_t *trans;
|
pmtrans_t *trans;
|
||||||
|
|
||||||
@@ -100,7 +102,7 @@ int SYMEXPORT alpm_trans_sysupgrade()
|
|||||||
ASSERT(trans->state == STATE_INITIALIZED, RET_ERR(PM_ERR_TRANS_NOT_INITIALIZED, -1));
|
ASSERT(trans->state == STATE_INITIALIZED, RET_ERR(PM_ERR_TRANS_NOT_INITIALIZED, -1));
|
||||||
ASSERT(trans->type == PM_TRANS_TYPE_SYNC, RET_ERR(PM_ERR_TRANS_TYPE, -1));
|
ASSERT(trans->type == PM_TRANS_TYPE_SYNC, RET_ERR(PM_ERR_TRANS_TYPE, -1));
|
||||||
|
|
||||||
return(_alpm_trans_sysupgrade(trans));
|
return(_alpm_sync_sysupgrade(trans, handle->db_local, handle->dbs_sync, enable_downgrade));
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Add a target to the transaction.
|
/** Add a target to the transaction.
|
||||||
@@ -158,6 +160,8 @@ int SYMEXPORT alpm_trans_commit(alpm_list_t **data)
|
|||||||
ASSERT(handle->trans != NULL, RET_ERR(PM_ERR_TRANS_NULL, -1));
|
ASSERT(handle->trans != NULL, RET_ERR(PM_ERR_TRANS_NULL, -1));
|
||||||
ASSERT(handle->trans->state == STATE_PREPARED, RET_ERR(PM_ERR_TRANS_NOT_PREPARED, -1));
|
ASSERT(handle->trans->state == STATE_PREPARED, RET_ERR(PM_ERR_TRANS_NOT_PREPARED, -1));
|
||||||
|
|
||||||
|
ASSERT(!(handle->trans->flags & PM_TRANS_FLAG_NOLOCK), RET_ERR(PM_ERR_TRANS_NOT_LOCKED, -1));
|
||||||
|
|
||||||
return(_alpm_trans_commit(handle->trans, data));
|
return(_alpm_trans_commit(handle->trans, data));
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -199,19 +203,23 @@ int SYMEXPORT alpm_trans_release()
|
|||||||
ASSERT(trans != NULL, RET_ERR(PM_ERR_TRANS_NULL, -1));
|
ASSERT(trans != NULL, RET_ERR(PM_ERR_TRANS_NULL, -1));
|
||||||
ASSERT(trans->state != STATE_IDLE, RET_ERR(PM_ERR_TRANS_NULL, -1));
|
ASSERT(trans->state != STATE_IDLE, RET_ERR(PM_ERR_TRANS_NULL, -1));
|
||||||
|
|
||||||
|
unsigned int nolock_flag = trans->flags & PM_TRANS_FLAG_NOLOCK;
|
||||||
|
|
||||||
_alpm_trans_free(trans);
|
_alpm_trans_free(trans);
|
||||||
handle->trans = NULL;
|
handle->trans = NULL;
|
||||||
|
|
||||||
/* unlock db */
|
/* unlock db */
|
||||||
if(handle->lckfd != -1) {
|
if(!nolock_flag) {
|
||||||
while(close(handle->lckfd) == -1 && errno == EINTR);
|
if(handle->lckfd != -1) {
|
||||||
handle->lckfd = -1;
|
while(close(handle->lckfd) == -1 && errno == EINTR);
|
||||||
}
|
handle->lckfd = -1;
|
||||||
if(_alpm_lckrm()) {
|
}
|
||||||
_alpm_log(PM_LOG_WARNING, _("could not remove lock file %s\n"),
|
if(_alpm_lckrm()) {
|
||||||
alpm_option_get_lockfile());
|
_alpm_log(PM_LOG_WARNING, _("could not remove lock file %s\n"),
|
||||||
alpm_logaction("warning: could not remove lock file %s\n",
|
alpm_option_get_lockfile());
|
||||||
alpm_option_get_lockfile());
|
alpm_logaction("warning: could not remove lock file %s\n",
|
||||||
|
alpm_option_get_lockfile());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return(0);
|
return(0);
|
||||||
@@ -226,15 +234,6 @@ pmtrans_t *_alpm_trans_new()
|
|||||||
ALPM_LOG_FUNC;
|
ALPM_LOG_FUNC;
|
||||||
|
|
||||||
CALLOC(trans, 1, sizeof(pmtrans_t), RET_ERR(PM_ERR_MEMORY, NULL));
|
CALLOC(trans, 1, sizeof(pmtrans_t), RET_ERR(PM_ERR_MEMORY, NULL));
|
||||||
|
|
||||||
trans->packages = NULL;
|
|
||||||
trans->skip_add = NULL;
|
|
||||||
trans->skip_remove = NULL;
|
|
||||||
trans->type = 0;
|
|
||||||
trans->flags = 0;
|
|
||||||
trans->cb_event = NULL;
|
|
||||||
trans->cb_conv = NULL;
|
|
||||||
trans->cb_progress = NULL;
|
|
||||||
trans->state = STATE_IDLE;
|
trans->state = STATE_IDLE;
|
||||||
|
|
||||||
return(trans);
|
return(trans);
|
||||||
@@ -249,7 +248,7 @@ void _alpm_trans_free(pmtrans_t *trans)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if(trans->type == PM_TRANS_TYPE_SYNC) {
|
if(trans->type == PM_TRANS_TYPE_SYNC) {
|
||||||
alpm_list_free_inner(trans->packages, (alpm_list_fn_free)_alpm_sync_free);
|
alpm_list_free_inner(trans->packages, (alpm_list_fn_free)_alpm_pkg_free_trans);
|
||||||
} else {
|
} else {
|
||||||
alpm_list_free_inner(trans->packages, (alpm_list_fn_free)_alpm_pkg_free);
|
alpm_list_free_inner(trans->packages, (alpm_list_fn_free)_alpm_pkg_free);
|
||||||
}
|
}
|
||||||
@@ -280,17 +279,6 @@ int _alpm_trans_init(pmtrans_t *trans, pmtranstype_t type, pmtransflag_t flags,
|
|||||||
return(0);
|
return(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
int _alpm_trans_sysupgrade(pmtrans_t *trans)
|
|
||||||
{
|
|
||||||
ALPM_LOG_FUNC;
|
|
||||||
|
|
||||||
/* Sanity checks */
|
|
||||||
ASSERT(trans != NULL, RET_ERR(PM_ERR_TRANS_NULL, -1));
|
|
||||||
|
|
||||||
return(_alpm_sync_sysupgrade(trans, handle->db_local, handle->dbs_sync,
|
|
||||||
&(trans->packages)));
|
|
||||||
}
|
|
||||||
|
|
||||||
/** Add a target to the transaction.
|
/** Add a target to the transaction.
|
||||||
* @param trans the current transaction
|
* @param trans the current transaction
|
||||||
* @param target the name of the target to add
|
* @param target the name of the target to add
|
||||||
@@ -448,11 +436,8 @@ int _alpm_runscriptlet(const char *root, const char *installfn,
|
|||||||
char scriptfn[PATH_MAX];
|
char scriptfn[PATH_MAX];
|
||||||
char cmdline[PATH_MAX];
|
char cmdline[PATH_MAX];
|
||||||
char tmpdir[PATH_MAX];
|
char tmpdir[PATH_MAX];
|
||||||
char cwd[PATH_MAX];
|
|
||||||
char *scriptpath;
|
char *scriptpath;
|
||||||
pid_t pid;
|
|
||||||
int clean_tmpdir = 0;
|
int clean_tmpdir = 0;
|
||||||
int restore_cwd = 0;
|
|
||||||
int retval = 0;
|
int retval = 0;
|
||||||
|
|
||||||
ALPM_LOG_FUNC;
|
ALPM_LOG_FUNC;
|
||||||
@@ -463,13 +448,6 @@ int _alpm_runscriptlet(const char *root, const char *installfn,
|
|||||||
return(0);
|
return(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* NOTE: popen will use the PARENT's /bin/sh, not the chroot's */
|
|
||||||
if(access("/bin/sh", X_OK)) {
|
|
||||||
/* not found */
|
|
||||||
_alpm_log(PM_LOG_ERROR, _("No /bin/sh in parent environment, aborting scriptlet\n"));
|
|
||||||
return(0);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* creates a directory in $root/tmp/ for copying/extracting the scriptlet */
|
/* creates a directory in $root/tmp/ for copying/extracting the scriptlet */
|
||||||
snprintf(tmpdir, PATH_MAX, "%stmp/", root);
|
snprintf(tmpdir, PATH_MAX, "%stmp/", root);
|
||||||
if(access(tmpdir, F_OK) != 0) {
|
if(access(tmpdir, F_OK) != 0) {
|
||||||
@@ -507,21 +485,6 @@ int _alpm_runscriptlet(const char *root, const char *installfn,
|
|||||||
goto cleanup;
|
goto cleanup;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* save the cwd so we can restore it later */
|
|
||||||
if(getcwd(cwd, PATH_MAX) == NULL) {
|
|
||||||
_alpm_log(PM_LOG_ERROR, _("could not get current working directory\n"));
|
|
||||||
} else {
|
|
||||||
restore_cwd = 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* just in case our cwd was removed in the upgrade operation */
|
|
||||||
if(chdir(root) != 0) {
|
|
||||||
_alpm_log(PM_LOG_ERROR, _("could not change directory to %s (%s)\n"), root, strerror(errno));
|
|
||||||
goto cleanup;
|
|
||||||
}
|
|
||||||
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "executing %s script...\n", script);
|
|
||||||
|
|
||||||
if(oldver) {
|
if(oldver) {
|
||||||
snprintf(cmdline, PATH_MAX, ". %s; %s %s %s",
|
snprintf(cmdline, PATH_MAX, ". %s; %s %s %s",
|
||||||
scriptpath, script, ver, oldver);
|
scriptpath, script, ver, oldver);
|
||||||
@@ -529,77 +492,13 @@ int _alpm_runscriptlet(const char *root, const char *installfn,
|
|||||||
snprintf(cmdline, PATH_MAX, ". %s; %s %s",
|
snprintf(cmdline, PATH_MAX, ". %s; %s %s",
|
||||||
scriptpath, script, ver);
|
scriptpath, script, ver);
|
||||||
}
|
}
|
||||||
_alpm_log(PM_LOG_DEBUG, "%s\n", cmdline);
|
|
||||||
|
|
||||||
/* fork- parent and child each have seperate code blocks below */
|
retval = _alpm_run_chroot(root, cmdline);
|
||||||
pid = fork();
|
|
||||||
if(pid == -1) {
|
|
||||||
_alpm_log(PM_LOG_ERROR, _("could not fork a new process (%s)\n"), strerror(errno));
|
|
||||||
retval = 1;
|
|
||||||
goto cleanup;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(pid == 0) {
|
|
||||||
FILE *pipe;
|
|
||||||
/* this code runs for the child only (the actual chroot/exec) */
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "chrooting in %s\n", root);
|
|
||||||
if(chroot(root) != 0) {
|
|
||||||
_alpm_log(PM_LOG_ERROR, _("could not change the root directory (%s)\n"),
|
|
||||||
strerror(errno));
|
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
if(chdir("/") != 0) {
|
|
||||||
_alpm_log(PM_LOG_ERROR, _("could not change directory to / (%s)\n"),
|
|
||||||
strerror(errno));
|
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
umask(0022);
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "executing \"%s\"\n", cmdline);
|
|
||||||
/* execl("/bin/sh", "sh", "-c", cmdline, (char *)NULL); */
|
|
||||||
pipe = popen(cmdline, "r");
|
|
||||||
if(!pipe) {
|
|
||||||
_alpm_log(PM_LOG_ERROR, _("call to popen failed (%s)"),
|
|
||||||
strerror(errno));
|
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
while(!feof(pipe)) {
|
|
||||||
char line[PATH_MAX];
|
|
||||||
if(fgets(line, PATH_MAX, pipe) == NULL)
|
|
||||||
break;
|
|
||||||
alpm_logaction("%s", line);
|
|
||||||
EVENT(trans, PM_TRANS_EVT_SCRIPTLET_INFO, line, NULL);
|
|
||||||
}
|
|
||||||
retval = pclose(pipe);
|
|
||||||
exit(WEXITSTATUS(retval));
|
|
||||||
} else {
|
|
||||||
/* this code runs for the parent only (wait on the child) */
|
|
||||||
pid_t retpid;
|
|
||||||
int status;
|
|
||||||
while((retpid = waitpid(pid, &status, 0)) == -1 && errno == EINTR);
|
|
||||||
if(retpid == -1) {
|
|
||||||
_alpm_log(PM_LOG_ERROR, _("call to waitpid failed (%s)\n"),
|
|
||||||
strerror(errno));
|
|
||||||
retval = 1;
|
|
||||||
goto cleanup;
|
|
||||||
} else {
|
|
||||||
/* check the return status, make sure it is 0 (success) */
|
|
||||||
if(WIFEXITED(status)) {
|
|
||||||
_alpm_log(PM_LOG_DEBUG, "call to waitpid succeeded\n");
|
|
||||||
if(WEXITSTATUS(status) != 0) {
|
|
||||||
_alpm_log(PM_LOG_ERROR, _("scriptlet failed to execute correctly\n"));
|
|
||||||
retval = 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
cleanup:
|
cleanup:
|
||||||
if(clean_tmpdir && _alpm_rmrf(tmpdir)) {
|
if(clean_tmpdir && _alpm_rmrf(tmpdir)) {
|
||||||
_alpm_log(PM_LOG_WARNING, _("could not remove tmpdir %s\n"), tmpdir);
|
_alpm_log(PM_LOG_WARNING, _("could not remove tmpdir %s\n"), tmpdir);
|
||||||
}
|
}
|
||||||
if(restore_cwd) {
|
|
||||||
chdir(cwd);
|
|
||||||
}
|
|
||||||
|
|
||||||
return(retval);
|
return(retval);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* trans.h
|
* trans.h
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@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 Aurelien Foret <orelien@chez.com>
|
||||||
* Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
|
* Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
|
||||||
* Copyright (c) 2006 by Miklos Vajna <vmiklos@frugalware.org>
|
* Copyright (c) 2006 by Miklos Vajna <vmiklos@frugalware.org>
|
||||||
@@ -39,7 +40,7 @@ struct __pmtrans_t {
|
|||||||
pmtranstype_t type;
|
pmtranstype_t type;
|
||||||
pmtransflag_t flags;
|
pmtransflag_t flags;
|
||||||
pmtransstate_t state;
|
pmtransstate_t state;
|
||||||
alpm_list_t *packages; /* list of (pmpkg_t *) or (pmsyncpkg_t *) */
|
alpm_list_t *packages; /* list of (pmpkg_t *) */
|
||||||
alpm_list_t *skip_add; /* list of (char *) */
|
alpm_list_t *skip_add; /* list of (char *) */
|
||||||
alpm_list_t *skip_remove; /* list of (char *) */
|
alpm_list_t *skip_remove; /* list of (char *) */
|
||||||
alpm_trans_cb_event cb_event;
|
alpm_trans_cb_event cb_event;
|
||||||
@@ -71,7 +72,6 @@ void _alpm_trans_free(pmtrans_t *trans);
|
|||||||
int _alpm_trans_init(pmtrans_t *trans, pmtranstype_t type, pmtransflag_t flags,
|
int _alpm_trans_init(pmtrans_t *trans, pmtranstype_t type, pmtransflag_t flags,
|
||||||
alpm_trans_cb_event event, alpm_trans_cb_conv conv,
|
alpm_trans_cb_event event, alpm_trans_cb_conv conv,
|
||||||
alpm_trans_cb_progress progress);
|
alpm_trans_cb_progress progress);
|
||||||
int _alpm_trans_sysupgrade(pmtrans_t *trans);
|
|
||||||
int _alpm_trans_addtarget(pmtrans_t *trans, char *target);
|
int _alpm_trans_addtarget(pmtrans_t *trans, char *target);
|
||||||
int _alpm_trans_prepare(pmtrans_t *trans, alpm_list_t **data);
|
int _alpm_trans_prepare(pmtrans_t *trans, alpm_list_t **data);
|
||||||
int _alpm_trans_commit(pmtrans_t *trans, alpm_list_t **data);
|
int _alpm_trans_commit(pmtrans_t *trans, alpm_list_t **data);
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* util.c
|
* util.c
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@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 Aurelien Foret <orelien@chez.com>
|
||||||
* Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
|
* Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
|
||||||
* Copyright (c) 2006 by David Kimpe <dnaku@frugalware.org>
|
* Copyright (c) 2006 by David Kimpe <dnaku@frugalware.org>
|
||||||
@@ -36,6 +37,7 @@
|
|||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <sys/stat.h>
|
#include <sys/stat.h>
|
||||||
|
#include <sys/wait.h>
|
||||||
|
|
||||||
/* libarchive */
|
/* libarchive */
|
||||||
#include <archive.h>
|
#include <archive.h>
|
||||||
@@ -48,6 +50,7 @@
|
|||||||
#include "alpm.h"
|
#include "alpm.h"
|
||||||
#include "alpm_list.h"
|
#include "alpm_list.h"
|
||||||
#include "md5.h"
|
#include "md5.h"
|
||||||
|
#include "handle.h"
|
||||||
|
|
||||||
#ifndef HAVE_STRSEP
|
#ifndef HAVE_STRSEP
|
||||||
/* This is a replacement for strsep which is not portable (missing on Solaris).
|
/* This is a replacement for strsep which is not portable (missing on Solaris).
|
||||||
@@ -242,7 +245,8 @@ char *_alpm_strreplace(const char *str, const char *needle, const char *replace)
|
|||||||
int _alpm_lckmk()
|
int _alpm_lckmk()
|
||||||
{
|
{
|
||||||
int fd;
|
int fd;
|
||||||
char *dir, *ptr;
|
pid_t pid;
|
||||||
|
char *dir, *ptr, *spid = NULL;
|
||||||
const char *file = alpm_option_get_lockfile();
|
const char *file = alpm_option_get_lockfile();
|
||||||
|
|
||||||
/* create the dir of the lockfile first */
|
/* create the dir of the lockfile first */
|
||||||
@@ -256,7 +260,17 @@ int _alpm_lckmk()
|
|||||||
|
|
||||||
while((fd = open(file, O_WRONLY | O_CREAT | O_EXCL, 0000)) == -1
|
while((fd = open(file, O_WRONLY | O_CREAT | O_EXCL, 0000)) == -1
|
||||||
&& errno == EINTR);
|
&& errno == EINTR);
|
||||||
return(fd > 0 ? fd : -1);
|
if(fd > 0) {
|
||||||
|
pid = getpid();
|
||||||
|
size_t len = snprintf(spid, 0, "%ld\n", (long)pid) + 1;
|
||||||
|
spid = malloc(len);
|
||||||
|
snprintf(spid, len, "%ld\n", (long)pid);
|
||||||
|
while(write(fd, (void *)spid, len) == -1 && errno == EINTR);
|
||||||
|
fsync(fd);
|
||||||
|
free(spid);
|
||||||
|
return(fd);
|
||||||
|
}
|
||||||
|
return(-1);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Remove a lock file */
|
/* Remove a lock file */
|
||||||
@@ -277,19 +291,21 @@ int _alpm_lckrm()
|
|||||||
* @param archive the archive to unpack
|
* @param archive the archive to unpack
|
||||||
* @param prefix where to extract the files
|
* @param prefix where to extract the files
|
||||||
* @param fn a file within the archive to unpack or NULL for all
|
* @param fn a file within the archive to unpack or NULL for all
|
||||||
|
* @return 0 on success, 1 on failure
|
||||||
*/
|
*/
|
||||||
int _alpm_unpack(const char *archive, const char *prefix, const char *fn)
|
int _alpm_unpack(const char *archive, const char *prefix, const char *fn)
|
||||||
{
|
{
|
||||||
int ret = 1;
|
int ret = 0;
|
||||||
mode_t oldmask;
|
mode_t oldmask;
|
||||||
struct archive *_archive;
|
struct archive *_archive;
|
||||||
struct archive_entry *entry;
|
struct archive_entry *entry;
|
||||||
char expath[PATH_MAX];
|
char cwd[PATH_MAX];
|
||||||
|
int restore_cwd = 0;
|
||||||
|
|
||||||
ALPM_LOG_FUNC;
|
ALPM_LOG_FUNC;
|
||||||
|
|
||||||
if((_archive = archive_read_new()) == NULL)
|
if((_archive = archive_read_new()) == NULL)
|
||||||
RET_ERR(PM_ERR_LIBARCHIVE, -1);
|
RET_ERR(PM_ERR_LIBARCHIVE, 1);
|
||||||
|
|
||||||
archive_read_support_compression_all(_archive);
|
archive_read_support_compression_all(_archive);
|
||||||
archive_read_support_format_all(_archive);
|
archive_read_support_format_all(_archive);
|
||||||
@@ -298,10 +314,25 @@ int _alpm_unpack(const char *archive, const char *prefix, const char *fn)
|
|||||||
ARCHIVE_DEFAULT_BYTES_PER_BLOCK) != ARCHIVE_OK) {
|
ARCHIVE_DEFAULT_BYTES_PER_BLOCK) != ARCHIVE_OK) {
|
||||||
_alpm_log(PM_LOG_ERROR, _("could not open %s: %s\n"), archive,
|
_alpm_log(PM_LOG_ERROR, _("could not open %s: %s\n"), archive,
|
||||||
archive_error_string(_archive));
|
archive_error_string(_archive));
|
||||||
RET_ERR(PM_ERR_PKG_OPEN, -1);
|
RET_ERR(PM_ERR_PKG_OPEN, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
oldmask = umask(0022);
|
oldmask = umask(0022);
|
||||||
|
|
||||||
|
/* save the cwd so we can restore it later */
|
||||||
|
if(getcwd(cwd, PATH_MAX) == NULL) {
|
||||||
|
_alpm_log(PM_LOG_ERROR, _("could not get current working directory\n"));
|
||||||
|
} else {
|
||||||
|
restore_cwd = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* just in case our cwd was removed in the upgrade operation */
|
||||||
|
if(chdir(prefix) != 0) {
|
||||||
|
_alpm_log(PM_LOG_ERROR, _("could not change directory to %s (%s)\n"), prefix, strerror(errno));
|
||||||
|
ret = 1;
|
||||||
|
goto cleanup;
|
||||||
|
}
|
||||||
|
|
||||||
while(archive_read_next_header(_archive, &entry) == ARCHIVE_OK) {
|
while(archive_read_next_header(_archive, &entry) == ARCHIVE_OK) {
|
||||||
const struct stat *st;
|
const struct stat *st;
|
||||||
const char *entryname; /* the name of the file in the archive */
|
const char *entryname; /* the name of the file in the archive */
|
||||||
@@ -310,9 +341,9 @@ int _alpm_unpack(const char *archive, const char *prefix, const char *fn)
|
|||||||
entryname = archive_entry_pathname(entry);
|
entryname = archive_entry_pathname(entry);
|
||||||
|
|
||||||
if(S_ISREG(st->st_mode)) {
|
if(S_ISREG(st->st_mode)) {
|
||||||
archive_entry_set_mode(entry, 0644);
|
archive_entry_set_perm(entry, 0644);
|
||||||
} else if(S_ISDIR(st->st_mode)) {
|
} else if(S_ISDIR(st->st_mode)) {
|
||||||
archive_entry_set_mode(entry, 0755);
|
archive_entry_set_perm(entry, 0755);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* If a specific file was requested skip entries that don't match. */
|
/* If a specific file was requested skip entries that don't match. */
|
||||||
@@ -326,10 +357,6 @@ int _alpm_unpack(const char *archive, const char *prefix, const char *fn)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Extract the archive entry. */
|
/* Extract the archive entry. */
|
||||||
ret = 0;
|
|
||||||
snprintf(expath, PATH_MAX, "%s/%s", prefix, entryname);
|
|
||||||
archive_entry_set_pathname(entry, expath);
|
|
||||||
|
|
||||||
int readret = archive_read_extract(_archive, entry, 0);
|
int readret = archive_read_extract(_archive, entry, 0);
|
||||||
if(readret == ARCHIVE_WARN) {
|
if(readret == ARCHIVE_WARN) {
|
||||||
/* operation succeeded but a non-critical error was encountered */
|
/* operation succeeded but a non-critical error was encountered */
|
||||||
@@ -350,6 +377,9 @@ int _alpm_unpack(const char *archive, const char *prefix, const char *fn)
|
|||||||
cleanup:
|
cleanup:
|
||||||
umask(oldmask);
|
umask(oldmask);
|
||||||
archive_read_finish(_archive);
|
archive_read_finish(_archive);
|
||||||
|
if(restore_cwd) {
|
||||||
|
chdir(cwd);
|
||||||
|
}
|
||||||
return(ret);
|
return(ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -427,17 +457,112 @@ int _alpm_logaction(unsigned short usesyslog, FILE *f,
|
|||||||
return(ret);
|
return(ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int _alpm_run_chroot(const char *root, const char *cmd)
|
||||||
|
{
|
||||||
|
char cwd[PATH_MAX];
|
||||||
|
pid_t pid;
|
||||||
|
int restore_cwd = 0;
|
||||||
|
int retval = 0;
|
||||||
|
|
||||||
|
ALPM_LOG_FUNC;
|
||||||
|
|
||||||
|
/* save the cwd so we can restore it later */
|
||||||
|
if(getcwd(cwd, PATH_MAX) == NULL) {
|
||||||
|
_alpm_log(PM_LOG_ERROR, _("could not get current working directory\n"));
|
||||||
|
} else {
|
||||||
|
restore_cwd = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* just in case our cwd was removed in the upgrade operation */
|
||||||
|
if(chdir(root) != 0) {
|
||||||
|
_alpm_log(PM_LOG_ERROR, _("could not change directory to %s (%s)\n"), root, strerror(errno));
|
||||||
|
goto cleanup;
|
||||||
|
}
|
||||||
|
|
||||||
|
_alpm_log(PM_LOG_DEBUG, "executing \"%s\" under chroot \"%s\"\n", cmd, root);
|
||||||
|
|
||||||
|
/* Flush open fds before fork() to avoid cloning buffers */
|
||||||
|
fflush(NULL);
|
||||||
|
|
||||||
|
/* fork- parent and child each have seperate code blocks below */
|
||||||
|
pid = fork();
|
||||||
|
if(pid == -1) {
|
||||||
|
_alpm_log(PM_LOG_ERROR, _("could not fork a new process (%s)\n"), strerror(errno));
|
||||||
|
retval = 1;
|
||||||
|
goto cleanup;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(pid == 0) {
|
||||||
|
FILE *pipe;
|
||||||
|
/* this code runs for the child only (the actual chroot/exec) */
|
||||||
|
_alpm_log(PM_LOG_DEBUG, "chrooting in %s\n", root);
|
||||||
|
if(chroot(root) != 0) {
|
||||||
|
_alpm_log(PM_LOG_ERROR, _("could not change the root directory (%s)\n"),
|
||||||
|
strerror(errno));
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
|
if(chdir("/") != 0) {
|
||||||
|
_alpm_log(PM_LOG_ERROR, _("could not change directory to / (%s)\n"),
|
||||||
|
strerror(errno));
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
|
umask(0022);
|
||||||
|
pipe = popen(cmd, "r");
|
||||||
|
if(!pipe) {
|
||||||
|
_alpm_log(PM_LOG_ERROR, _("call to popen failed (%s)"),
|
||||||
|
strerror(errno));
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
|
while(!feof(pipe)) {
|
||||||
|
char line[PATH_MAX];
|
||||||
|
if(fgets(line, PATH_MAX, pipe) == NULL)
|
||||||
|
break;
|
||||||
|
alpm_logaction("%s", line);
|
||||||
|
EVENT(handle->trans, PM_TRANS_EVT_SCRIPTLET_INFO, line, NULL);
|
||||||
|
}
|
||||||
|
retval = pclose(pipe);
|
||||||
|
exit(WEXITSTATUS(retval));
|
||||||
|
} else {
|
||||||
|
/* this code runs for the parent only (wait on the child) */
|
||||||
|
pid_t retpid;
|
||||||
|
int status;
|
||||||
|
while((retpid = waitpid(pid, &status, 0)) == -1 && errno == EINTR);
|
||||||
|
if(retpid == -1) {
|
||||||
|
_alpm_log(PM_LOG_ERROR, _("call to waitpid failed (%s)\n"),
|
||||||
|
strerror(errno));
|
||||||
|
retval = 1;
|
||||||
|
goto cleanup;
|
||||||
|
} else {
|
||||||
|
/* check the return status, make sure it is 0 (success) */
|
||||||
|
if(WIFEXITED(status)) {
|
||||||
|
_alpm_log(PM_LOG_DEBUG, "call to waitpid succeeded\n");
|
||||||
|
if(WEXITSTATUS(status) != 0) {
|
||||||
|
_alpm_log(PM_LOG_ERROR, _("command failed to execute correctly\n"));
|
||||||
|
retval = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
cleanup:
|
||||||
|
if(restore_cwd) {
|
||||||
|
chdir(cwd);
|
||||||
|
}
|
||||||
|
|
||||||
|
return(retval);
|
||||||
|
}
|
||||||
|
|
||||||
int _alpm_ldconfig(const char *root)
|
int _alpm_ldconfig(const char *root)
|
||||||
{
|
{
|
||||||
char line[PATH_MAX];
|
char line[PATH_MAX];
|
||||||
|
|
||||||
|
_alpm_log(PM_LOG_DEBUG, "running ldconfig\n");
|
||||||
|
|
||||||
snprintf(line, PATH_MAX, "%setc/ld.so.conf", root);
|
snprintf(line, PATH_MAX, "%setc/ld.so.conf", root);
|
||||||
if(access(line, F_OK) == 0) {
|
if(access(line, F_OK) == 0) {
|
||||||
snprintf(line, PATH_MAX, "%ssbin/ldconfig", root);
|
snprintf(line, PATH_MAX, "%ssbin/ldconfig", root);
|
||||||
if(access(line, X_OK) == 0) {
|
if(access(line, X_OK) == 0) {
|
||||||
char cmd[PATH_MAX];
|
_alpm_run_chroot(root, "ldconfig");
|
||||||
snprintf(cmd, PATH_MAX, "%s -r %s", line, root);
|
|
||||||
system(cmd);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -539,7 +664,7 @@ int _alpm_lstat(const char *path, struct stat *buf)
|
|||||||
* @return the checksum on success, NULL on error
|
* @return the checksum on success, NULL on error
|
||||||
* @addtogroup alpm_misc
|
* @addtogroup alpm_misc
|
||||||
*/
|
*/
|
||||||
char SYMEXPORT *alpm_get_md5sum(const char *filename)
|
char SYMEXPORT *alpm_compute_md5sum(const char *filename)
|
||||||
{
|
{
|
||||||
unsigned char output[16];
|
unsigned char output[16];
|
||||||
char *md5sum;
|
char *md5sum;
|
||||||
@@ -573,7 +698,7 @@ int _alpm_test_md5sum(const char *filepath, const char *md5sum)
|
|||||||
char *md5sum2;
|
char *md5sum2;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
md5sum2 = alpm_get_md5sum(filepath);
|
md5sum2 = alpm_compute_md5sum(filepath);
|
||||||
|
|
||||||
if(md5sum == NULL || md5sum2 == NULL) {
|
if(md5sum == NULL || md5sum2 == NULL) {
|
||||||
ret = -1;
|
ret = -1;
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* util.h
|
* util.h
|
||||||
*
|
*
|
||||||
* Copyright (c) 2002-2007 by Judd Vinet <jvinet@zeroflux.org>
|
* Copyright (c) 2006-2009 Pacman Development Team <pacman-dev@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 Aurelien Foret <orelien@chez.com>
|
||||||
* Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
|
* Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
|
||||||
* Copyright (c) 2006 by David Kimpe <dnaku@frugalware.org>
|
* Copyright (c) 2006 by David Kimpe <dnaku@frugalware.org>
|
||||||
@@ -65,6 +66,7 @@ int _alpm_lckrm();
|
|||||||
int _alpm_unpack(const char *archive, const char *prefix, const char *fn);
|
int _alpm_unpack(const char *archive, const char *prefix, const char *fn);
|
||||||
int _alpm_rmrf(const char *path);
|
int _alpm_rmrf(const char *path);
|
||||||
int _alpm_logaction(unsigned short usesyslog, FILE *f, const char *fmt, va_list args);
|
int _alpm_logaction(unsigned short usesyslog, FILE *f, const char *fmt, va_list args);
|
||||||
|
int _alpm_run_chroot(const char *root, const char *cmd);
|
||||||
int _alpm_ldconfig(const char *root);
|
int _alpm_ldconfig(const char *root);
|
||||||
int _alpm_str_cmp(const void *s1, const void *s2);
|
int _alpm_str_cmp(const void *s1, const void *s2);
|
||||||
char *_alpm_filecache_find(const char *filename);
|
char *_alpm_filecache_find(const char *filename);
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
SUBDIRS = tests
|
||||||
|
|
||||||
check_SCRIPTS = \
|
check_SCRIPTS = \
|
||||||
pactest.py \
|
pactest.py \
|
||||||
pmdb.py \
|
pmdb.py \
|
||||||
@@ -7,7 +9,6 @@ check_SCRIPTS = \
|
|||||||
pmrule.py \
|
pmrule.py \
|
||||||
pmtest.py \
|
pmtest.py \
|
||||||
util.py \
|
util.py \
|
||||||
$(wildcard tests/*.py) \
|
|
||||||
vercmptest.sh
|
vercmptest.sh
|
||||||
|
|
||||||
noinst_SCRIPTS = $(check_SCRIPTS)
|
noinst_SCRIPTS = $(check_SCRIPTS)
|
||||||
|
|||||||
@@ -70,12 +70,12 @@ Usage
|
|||||||
pactest will run the suite of tests defined by the "--test" parameter.
|
pactest will run the suite of tests defined by the "--test" parameter.
|
||||||
|
|
||||||
Example:
|
Example:
|
||||||
./pactest.py --test=test/*
|
./pactest.py --test tests/*.py
|
||||||
|
|
||||||
This example will run tests from the "test" directory.
|
This example will run all tests from the "tests" directory.
|
||||||
Note: several "--test" options can be passed to pactest.
|
Note: several "--test" options can be passed to pactest.
|
||||||
|
|
||||||
Use the ""help" option to get the full list of parameters:
|
Use the "help" option to get the full list of parameters:
|
||||||
./pactest.py --help
|
./pactest.py --help
|
||||||
|
|
||||||
|
|
||||||
@@ -103,15 +103,22 @@ Example:
|
|||||||
------
|
------
|
||||||
|
|
||||||
A dictionary that holds the data used in the pacman configuration file.
|
A dictionary that holds the data used in the pacman configuration file.
|
||||||
It has 3 keys, each one of them pointing at a list of strings:
|
The following options are known to be useful in pactest tests; this list
|
||||||
- noupgrade
|
is not necessarily complete:
|
||||||
- noextract
|
- HoldPkg
|
||||||
- ignorepkg
|
- IgnorePkg
|
||||||
|
- IgnoreGroup
|
||||||
|
- SyncFirst
|
||||||
|
- NoExtract
|
||||||
|
- NoUpgrade
|
||||||
|
- XferCommand
|
||||||
|
|
||||||
|
For documentation on these options, see the pacman.conf documentation.
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
self.option["noupgrade"] = ["etc/X11/xorg.conf",
|
self.option["NoUpgrade"] = ["etc/X11/xorg.conf",
|
||||||
"etc/pacman.conf"]
|
"etc/pacman.conf"]
|
||||||
self.option["noextract"] = ["etc/lilo.conf"]
|
self.option["NoExtract"] = ["etc/lilo.conf"]
|
||||||
|
|
||||||
filesystem
|
filesystem
|
||||||
----------
|
----------
|
||||||
|
|||||||
@@ -71,9 +71,11 @@ class pmenv:
|
|||||||
t.generate()
|
t.generate()
|
||||||
# Hack for mtimes consistency
|
# Hack for mtimes consistency
|
||||||
for i in t.rules:
|
for i in t.rules:
|
||||||
if i.rule.find("MODIFIED") != -1:
|
if i.rule.find("FILE_MODIFIED") != -1:
|
||||||
time.sleep(1.5)
|
[test, arg] = i.rule.split("=")
|
||||||
break
|
for f in t.files:
|
||||||
|
if f.name == arg:
|
||||||
|
f.resettimes()
|
||||||
|
|
||||||
t.run(self.pacman)
|
t.run(self.pacman)
|
||||||
|
|
||||||
|
|||||||
@@ -56,6 +56,14 @@ class pmfile:
|
|||||||
|
|
||||||
return retval
|
return retval
|
||||||
|
|
||||||
|
def resettimes(self):
|
||||||
|
"""
|
||||||
|
"""
|
||||||
|
|
||||||
|
filename = os.path.join(self.root, self.name)
|
||||||
|
os.utime(filename, (355, 355))
|
||||||
|
self.mtime = getmtime(filename)
|
||||||
|
vprint("\tmtime reset (%s)" % self.name)
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
f = pmfile("/tmp", "foobar")
|
f = pmfile("/tmp", "foobar")
|
||||||
|
|||||||
@@ -116,9 +116,12 @@ class pmrule:
|
|||||||
if not f.ismodified():
|
if not f.ismodified():
|
||||||
success = 0
|
success = 0
|
||||||
elif case == "MODE":
|
elif case == "MODE":
|
||||||
mode = os.lstat(filename)[ST_MODE]
|
if not os.path.isfile(filename):
|
||||||
if int(value,8) != S_IMODE(mode):
|
|
||||||
success = 0
|
success = 0
|
||||||
|
else:
|
||||||
|
mode = os.lstat(filename)[ST_MODE]
|
||||||
|
if int(value,8) != S_IMODE(mode):
|
||||||
|
success = 0
|
||||||
elif case == "TYPE":
|
elif case == "TYPE":
|
||||||
if value == "dir":
|
if value == "dir":
|
||||||
if not os.path.isdir(filename):
|
if not os.path.isdir(filename):
|
||||||
|
|||||||
1
pactest/tests/.gitignore
vendored
Normal file
1
pactest/tests/.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
sync200.py
|
||||||
27
pactest/tests/Makefile.am
Normal file
27
pactest/tests/Makefile.am
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
CONFTESTS = $(patsubst %py.in,%py,$(wildcard *.py.in))
|
||||||
|
|
||||||
|
check_SCRIPTS = \
|
||||||
|
$(wildcard *.py) \
|
||||||
|
$(CONFTESTS)
|
||||||
|
|
||||||
|
noinst_SCRIPTS = $(check_SCRIPTS)
|
||||||
|
|
||||||
|
EXTRA_DIST = $(check_SCRIPTS)
|
||||||
|
|
||||||
|
CLEANFILES = $(CONFTESTS)
|
||||||
|
|
||||||
|
#### Taken from the autoconf scripts Makefile.am ####
|
||||||
|
edit = sed \
|
||||||
|
-e 's|@LIBS[@]|$(LIBS)|g' \
|
||||||
|
-e 's|@configure_input[@]|Generated from $@.in; do not edit by hand.|g'
|
||||||
|
|
||||||
|
|
||||||
|
$(CONFTESTS): Makefile
|
||||||
|
@echo ' ' GEN $@;
|
||||||
|
@rm -f $@ $@.tmp
|
||||||
|
@test -f $(srcdir)/$@.in && $(edit) $(srcdir)/$@.in >$@.tmp || true
|
||||||
|
@test -f $@.tmp || false
|
||||||
|
@chmod a-w $@.tmp
|
||||||
|
@mv $@.tmp $@
|
||||||
|
|
||||||
|
# vim:set ts=2 sw=2 noet:
|
||||||
@@ -17,5 +17,3 @@ self.addrule("PACMAN_RETCODE=0")
|
|||||||
self.addrule("PKG_EXIST=pkg1")
|
self.addrule("PKG_EXIST=pkg1")
|
||||||
self.addrule("PKG_VERSION=pkg1|2.0-1")
|
self.addrule("PKG_VERSION=pkg1|2.0-1")
|
||||||
self.addrule("FILE_TYPE=test|link")
|
self.addrule("FILE_TYPE=test|link")
|
||||||
|
|
||||||
self.expectfailure = True
|
|
||||||
|
|||||||
@@ -20,4 +20,3 @@ self.args = "-S pkg1"
|
|||||||
self.addrule("PACMAN_RETCODE=1")
|
self.addrule("PACMAN_RETCODE=1")
|
||||||
self.addrule("PKG_EXIST=pkg1")
|
self.addrule("PKG_EXIST=pkg1")
|
||||||
self.addrule("PKG_VERSION=pkg1|1.0-1")
|
self.addrule("PKG_VERSION=pkg1|1.0-1")
|
||||||
|
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user