From f8003209448b79992d49f8b4b6ba11231f15decb Mon Sep 17 00:00:00 2001 From: Wichert Akkerman Date: Mon, 27 Sep 1999 00:39:08 +0000 Subject: [PATCH] Updating to dpkg 1.4.1.7 --- ChangeLog | 29 ++++ configure.in | 2 +- debian/changelog | 29 ++++ debian/postinst | 5 + debian/prerm | 9 + debian/rules | 20 ++- doc/Makefile.am | 6 +- doc/manuals-version | 4 +- dpkg-deb/dpkg-deb.1 | 2 +- dselect/methkeys.cc | 44 ++--- dselect/pkginfo.cc | 8 +- dselect/pkgkeys.cc | 76 ++++----- include/dpkg-db.h | 3 +- lib/dbmodify.c | 1 + lib/showcright.c | 2 +- lib/varbuf.c | 1 + main/archives.c | 65 ++++++++ main/enquiry.c | 56 +++---- main/filesdb.c | 36 ++-- main/help.c | 57 +++++-- main/main.c | 8 +- main/main.h | 2 + main/processarc.c | 36 +--- md5sum/md5sum.1 | 13 +- po/en.po | 304 +++++++++++++++++----------------- po/fr.po | 309 +++++++++++++++++------------------ scripts/dpkg-scanpackages.pl | 1 + 27 files changed, 627 insertions(+), 501 deletions(-) diff --git a/ChangeLog b/ChangeLog index 35c2db91..fa7b4899 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,32 @@ +dpkg (1.4.1.7) unstable; urgency=low + + * Non-maintainer release. + * Use /usr/share/doc + * Merge changes from dpkg-iwj tree: + + change section in dpkg-deb.1 to 1 + + Use COPYINGFILE instead of hardcoded GPL-location in showcopyright() + + varbufprintf (used for some error messages) vsnprintf return value + assumption changed to correspond to reality rather than glibc-doc. + + Don't read available-info when not needed (slightly improved from + dpkg-iwj: don't read for listfiles either :) + + Cleanup --assert-* code + + Assume largemem on systems without sysinfo(2). + + modify preexec-script for easier script execution + + Do not chmod(".../path/to/symlink",0600) causing many bad perms. + + Sanity-check numbers for parameters + + Move some logic from process_archive into wantinstall + + Print '0' in dpkg-scanpackages if no packages found. + + -- Wichert Akkerman Fri, 10 Sep 1999 04:06:32 +0200 + +dpkg (1.4.1.6) unstable; urgency=low + + * Non-maintainer release. + * scripts/dpkg-architecture.pl: Update to latest version. + * scripts/dpkg-architecture.1: Likewise. + + -- Marcus Brinkmann Sat, 24 Jul 1999 18:24:21 +0200 + dpkg (1.4.1.5) unstable; urgency=low * Non-maintainer release. diff --git a/configure.in b/configure.in index ea9dae8b..309da589 100644 --- a/configure.in +++ b/configure.in @@ -121,7 +121,7 @@ AC_C_BIGENDIAN AC_CHECK_SIZEOF(unsigned long) AC_CHECK_SIZEOF(unsigned int) AC_CHECK_FUNCS(unsetenv alphasort scandir strerror strsignal strtoul vsnprintf lchown) -AC_CHECK_HEADERS(sys/cdefs.h) +AC_CHECK_HEADERS(sys/cdefs.h sys/sysinfo.h) AC_CHECK_FUNC(sysinfo, AC_DEFINE(HAVE_SYSINFO), diff --git a/debian/changelog b/debian/changelog index 35c2db91..fa7b4899 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,32 @@ +dpkg (1.4.1.7) unstable; urgency=low + + * Non-maintainer release. + * Use /usr/share/doc + * Merge changes from dpkg-iwj tree: + + change section in dpkg-deb.1 to 1 + + Use COPYINGFILE instead of hardcoded GPL-location in showcopyright() + + varbufprintf (used for some error messages) vsnprintf return value + assumption changed to correspond to reality rather than glibc-doc. + + Don't read available-info when not needed (slightly improved from + dpkg-iwj: don't read for listfiles either :) + + Cleanup --assert-* code + + Assume largemem on systems without sysinfo(2). + + modify preexec-script for easier script execution + + Do not chmod(".../path/to/symlink",0600) causing many bad perms. + + Sanity-check numbers for parameters + + Move some logic from process_archive into wantinstall + + Print '0' in dpkg-scanpackages if no packages found. + + -- Wichert Akkerman Fri, 10 Sep 1999 04:06:32 +0200 + +dpkg (1.4.1.6) unstable; urgency=low + + * Non-maintainer release. + * scripts/dpkg-architecture.pl: Update to latest version. + * scripts/dpkg-architecture.1: Likewise. + + -- Marcus Brinkmann Sat, 24 Jul 1999 18:24:21 +0200 + dpkg (1.4.1.5) unstable; urgency=low * Non-maintainer release. diff --git a/debian/postinst b/debian/postinst index 9aeb9b48..3c1ce48c 100755 --- a/debian/postinst +++ b/debian/postinst @@ -19,6 +19,10 @@ END } if [ "x$1" = xconfigure ]; then + if [ -d /usr/doc -a ! -e /usr/doc/dpkg -a -d /usr/share/doc/dpkg ] ; then + ln -s ../share/doc/dpkg /usr/doc/dpkg + fi + case "$2" in 0.* | 1.0.* | 1.1.0 | 1.1.0[^0-9]* | '' ) for f in 0 1 2 3 4 5 6 @@ -227,3 +231,4 @@ then fi mv $newdb/status.new $newdb/status + diff --git a/debian/prerm b/debian/prerm index 0da7a2d1..81a2e139 100755 --- a/debian/prerm +++ b/debian/prerm @@ -2,6 +2,10 @@ set -e +if [ ! \( "$1" = "upgrade" -o "$1" = "remove" \) ]; then + exit 0 +fi + cd /usr/bin install-info --quiet --remove /usr/info/Guidelines @@ -9,3 +13,8 @@ install-info --quiet --remove /usr/info/debian-guidelines install-info --quiet --remove /usr/info/guidelines install-info --quiet --remove /usr/info/debian-guidelines.info.gz install-info --quiet --remove /usr/info/guidelines.info.gz + +if [ -L /usr/doc/dpkg ]; then + rm -f /usr/doc/dpkg +fi + diff --git a/debian/rules b/debian/rules index 379020a0..a0622c49 100755 --- a/debian/rules +++ b/debian/rules @@ -28,7 +28,8 @@ $(BUILD)/config.status: install -d debian/build cd $(BUILD) && ../../configure \ --enable-shared \ - --prefix=/usr \ + --prefix=/usr/share \ + --exec-prefix=/usr \ --datadir=/usr/share \ --mandir=/usr/share/man \ --sysconfdir=/etc \ @@ -53,8 +54,8 @@ binary: binary-arch binary-indep binary-trees: build $(checkdir) -$(RM) -r debian/tmp-{main,dev} - install -d debian/tmp-{main,dev}/{DEBIAN,etc/dpkg,usr/doc/dpkg} - install -d debian/tmp-dev/usr/{lib/dpkg,doc/dpkg-dev,share/man/man1,share/man/man8,sbin,bin} + install -d debian/tmp-{main,dev}/{DEBIAN,etc/dpkg,usr/share/doc/dpkg} + install -d debian/tmp-dev/usr/{lib/dpkg,share/doc/dpkg-dev,share/man/man1,share/man/man8,sbin,bin} install -d debian/tmp-dev/usr/share/emacs/site-lisp/dpkg-dev install -d debian/tmp-main/sbin set -e; if [ $(arch) = i386 ]; then \ @@ -70,7 +71,8 @@ binary-trees: build cp debian/{prerm,postinst} $(mcidir)/. $(MAKE) -C $(BUILD) top_distdir=. dist $(MAKE) -C $(BUILD) \ - prefix=$(DIR)/debian/tmp-main/usr \ + prefix=$(DIR)/debian/tmp-main/usr/share \ + exec_prefix=$(DIR)/debian/tmp-main/usr \ sysconfdir=$(DIR)/debian/tmp-main/etc \ datadir=$(DIR)/debian/tmp-main/usr/share \ mandir=$(DIR)/debian/tmp-main/usr/share/man \ @@ -97,12 +99,12 @@ binary-trees: build ln -s dpkg-source.1.gz debian/tmp-main/usr/share/man/man1/$$f.1.gz ; \ done ln -s ../man7/undocumented.7.gz debian/tmp-main/usr/share/man/man1/dpkg-divert.1.gz - gzip -9vf debian/tmp-main/usr/doc/dpkg/changelog* - cp debian/copyright debian/tmp-main/usr/doc/dpkg/copyright - cp debian/copyright debian/tmp-dev/usr/doc/dpkg-dev/copyright - cp debian/dev-README debian/tmp-dev/usr/doc/dpkg-dev/README + gzip -9vf debian/tmp-main/usr/share/doc/dpkg/changelog* + cp debian/copyright debian/tmp-main/usr/share/doc/dpkg/copyright + cp debian/copyright debian/tmp-dev/usr/share/doc/dpkg-dev/copyright + cp debian/dev-README debian/tmp-dev/usr/share/doc/dpkg-dev/README set -e; for f in \ - usr/doc/dpkg/{internals.html,changelog.manuals.gz} \ + usr/share/doc/dpkg/{internals.html,changelog.manuals.gz} \ usr/bin/dpkg-{source,genchanges,gencontrol,shlibdeps,buildpackage,parsechangelog} \ usr/bin/{dpkg-distaddfile,822-date,dpkg-scanpackages,dpkg-name,dpkg-architecture} \ usr/share/man/man1/dpkg-{source,genchanges,gencontrol,shlibdeps,buildpackage,architecture}.1.gz \ diff --git a/doc/Makefile.am b/doc/Makefile.am index 8c035025..759a0b0e 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -54,7 +54,11 @@ internals.dvi: internals.texi texi2dvi $^ internals.info: internals.texi - makeinfo $^ + # WTA: We force makeinfo and ignore errors, since we use a broken method + # to generate the texi-file anyway. Since we are supposed to switch to the + # dpkg-iwj branch soon anyway fixing this correctly is more trouble then + # it's worth + -makeinfo --force $^ internals.html-stamp: internals.texi -$(RM) -r $*.html* diff --git a/doc/manuals-version b/doc/manuals-version index be925a5b..eb483313 100644 --- a/doc/manuals-version +++ b/doc/manuals-version @@ -1,2 +1,2 @@ - - + + diff --git a/dpkg-deb/dpkg-deb.1 b/dpkg-deb/dpkg-deb.1 index 1d9d0d18..c1ee6dab 100644 --- a/dpkg-deb/dpkg-deb.1 +++ b/dpkg-deb/dpkg-deb.1 @@ -1,6 +1,6 @@ .\" Hey, Emacs! This is an -*- nroff -*- source file. .\" Authors: Ian Jackson -.TH DPKG\-DEB 8 "1st June 1996" "Debian Project" "Debian Linux manual" +.TH DPKG\-DEB 1 "1st June 1996" "Debian Project" "Debian Linux manual" .SH NAME dpkg\-deb \- Debian package archive (.deb) manipulation tool .SH SYNOPSIS diff --git a/dselect/methkeys.cc b/dselect/methkeys.cc index a0587fea..58b10df2 100644 --- a/dselect/methkeys.cc +++ b/dselect/methkeys.cc @@ -34,28 +34,28 @@ extern "C" { #include "bindings.h" const keybindings::interpretation methodlist_kinterps[] = { - { "up", methodlist::kd_up, 0, qa_noquit }, - { "down", methodlist::kd_down, 0, qa_noquit }, - { "top", methodlist::kd_top, 0, qa_noquit }, - { "bottom", methodlist::kd_bottom, 0, qa_noquit }, - { "scrollon", methodlist::kd_scrollon, 0, qa_noquit }, - { "scrollback", methodlist::kd_scrollback, 0, qa_noquit }, - { "iscrollon", methodlist::kd_iscrollon, 0, qa_noquit }, - { "iscrollback", methodlist::kd_iscrollback, 0, qa_noquit }, - { "scrollon1", methodlist::kd_scrollon1, 0, qa_noquit }, - { "scrollback1", methodlist::kd_scrollback1, 0, qa_noquit }, - { "iscrollon1", methodlist::kd_iscrollon1, 0, qa_noquit }, - { "iscrollback1", methodlist::kd_iscrollback1, 0, qa_noquit }, - { "panon", methodlist::kd_panon, 0, qa_noquit }, - { "panback", methodlist::kd_panback, 0, qa_noquit }, - { "panon1", methodlist::kd_panon1, 0, qa_noquit }, - { "panback1", methodlist::kd_panback1, 0, qa_noquit }, - { "help", methodlist::kd_help, 0, qa_noquit }, - { "search", methodlist::kd_search, 0, qa_noquit }, - { "searchagain", methodlist::kd_searchagain, 0, qa_noquit }, - { "redraw", methodlist::kd_redraw, 0, qa_noquit }, - { "select-and-quit", methodlist::kd_quit, 0, qa_quitchecksave }, - { "abort", methodlist::kd_abort, 0, qa_quitnochecksave }, + { "up", &methodlist::kd_up, 0, qa_noquit }, + { "down", &methodlist::kd_down, 0, qa_noquit }, + { "top", &methodlist::kd_top, 0, qa_noquit }, + { "bottom", &methodlist::kd_bottom, 0, qa_noquit }, + { "scrollon", &methodlist::kd_scrollon, 0, qa_noquit }, + { "scrollback", &methodlist::kd_scrollback, 0, qa_noquit }, + { "iscrollon", &methodlist::kd_iscrollon, 0, qa_noquit }, + { "iscrollback", &methodlist::kd_iscrollback, 0, qa_noquit }, + { "scrollon1", &methodlist::kd_scrollon1, 0, qa_noquit }, + { "scrollback1", &methodlist::kd_scrollback1, 0, qa_noquit }, + { "iscrollon1", &methodlist::kd_iscrollon1, 0, qa_noquit }, + { "iscrollback1", &methodlist::kd_iscrollback1, 0, qa_noquit }, + { "panon", &methodlist::kd_panon, 0, qa_noquit }, + { "panback", &methodlist::kd_panback, 0, qa_noquit }, + { "panon1", &methodlist::kd_panon1, 0, qa_noquit }, + { "panback1", &methodlist::kd_panback1, 0, qa_noquit }, + { "help", &methodlist::kd_help, 0, qa_noquit }, + { "search", &methodlist::kd_search, 0, qa_noquit }, + { "searchagain", &methodlist::kd_searchagain, 0, qa_noquit }, + { "redraw", &methodlist::kd_redraw, 0, qa_noquit }, + { "select-and-quit", &methodlist::kd_quit, 0, qa_quitchecksave }, + { "abort", &methodlist::kd_abort, 0, qa_quitnochecksave }, { 0, 0, 0, qa_noquit } }; diff --git a/dselect/pkginfo.cc b/dselect/pkginfo.cc index 3ed65365..1428c580 100644 --- a/dselect/pkginfo.cc +++ b/dselect/pkginfo.cc @@ -66,10 +66,10 @@ const struct helpmenuentry *packagelist::helpmenulist() { int packagelist::itr_recursive() { return recursive; } const packagelist::infotype packagelist::infoinfos[]= { - { itr_recursive, itd_relations }, - { 0, itd_description }, - { 0, itd_statuscontrol }, - { 0, itd_availablecontrol }, + { &packagelist::itr_recursive, &packagelist::itd_relations }, + { 0, &packagelist::itd_description }, + { 0, &packagelist::itd_statuscontrol }, + { 0, &packagelist::itd_availablecontrol }, { 0, 0 } }; diff --git a/dselect/pkgkeys.cc b/dselect/pkgkeys.cc index 35c9dd61..088206d3 100644 --- a/dselect/pkgkeys.cc +++ b/dselect/pkgkeys.cc @@ -34,44 +34,44 @@ extern "C" { #include "bindings.h" const keybindings::interpretation packagelist_kinterps[] = { - { "up", 0, packagelist::kd_up, qa_noquit }, - { "down", 0, packagelist::kd_down, qa_noquit }, - { "top", 0, packagelist::kd_top, qa_noquit }, - { "bottom", 0, packagelist::kd_bottom, qa_noquit }, - { "scrollon", 0, packagelist::kd_scrollon, qa_noquit }, - { "scrollback", 0, packagelist::kd_scrollback, qa_noquit }, - { "iscrollon", 0, packagelist::kd_iscrollon, qa_noquit }, - { "iscrollback", 0, packagelist::kd_iscrollback, qa_noquit }, - { "scrollon1", 0, packagelist::kd_scrollon1, qa_noquit }, - { "scrollback1", 0, packagelist::kd_scrollback1, qa_noquit }, - { "iscrollon1", 0, packagelist::kd_iscrollon1, qa_noquit }, - { "iscrollback1", 0, packagelist::kd_iscrollback1, qa_noquit }, - { "panon", 0, packagelist::kd_panon, qa_noquit }, - { "panback", 0, packagelist::kd_panback, qa_noquit }, - { "panon1", 0, packagelist::kd_panon1, qa_noquit }, - { "panback1", 0, packagelist::kd_panback1, qa_noquit }, - { "install", 0, packagelist::kd_select, qa_noquit }, - { "remove", 0, packagelist::kd_deselect, qa_noquit }, - { "purge", 0, packagelist::kd_purge, qa_noquit }, - { "hold", 0, packagelist::kd_hold, qa_noquit }, - { "unhold", 0, packagelist::kd_unhold, qa_noquit }, - { "info", 0, packagelist::kd_info, qa_noquit }, - { "toggleinfo", 0, packagelist::kd_toggleinfo, qa_noquit }, - { "verbose", 0, packagelist::kd_verbose, qa_noquit }, - { "versiondisplay", 0, packagelist::kd_versiondisplay, qa_noquit }, - { "help", 0, packagelist::kd_help, qa_noquit }, - { "search", 0, packagelist::kd_search, qa_noquit }, - { "searchagain", 0, packagelist::kd_searchagain, qa_noquit }, - { "swaporder", 0, packagelist::kd_swaporder, qa_noquit }, - { "swapstatorder", 0, packagelist::kd_swapstatorder, qa_noquit }, - { "redraw", 0, packagelist::kd_redraw, qa_noquit }, - { "quitcheck", 0, packagelist::kd_quit_noop, qa_quitchecksave }, - { "quitrejectsug", 0, packagelist::kd_revertdirect, qa_quitnochecksave }, - { "quitnocheck", 0, packagelist::kd_quit_noop, qa_quitnochecksave }, - { "abortnocheck", 0, packagelist::kd_revert_abort, qa_quitnochecksave }, - { "revert", 0, packagelist::kd_revert_abort, qa_noquit }, - { "revertsuggest", 0, packagelist::kd_revertsuggest, qa_noquit }, - { "revertdirect", 0, packagelist::kd_revertdirect, qa_noquit }, + { "up", 0, &packagelist::kd_up, qa_noquit }, + { "down", 0, &packagelist::kd_down, qa_noquit }, + { "top", 0, &packagelist::kd_top, qa_noquit }, + { "bottom", 0, &packagelist::kd_bottom, qa_noquit }, + { "scrollon", 0, &packagelist::kd_scrollon, qa_noquit }, + { "scrollback", 0, &packagelist::kd_scrollback, qa_noquit }, + { "iscrollon", 0, &packagelist::kd_iscrollon, qa_noquit }, + { "iscrollback", 0, &packagelist::kd_iscrollback, qa_noquit }, + { "scrollon1", 0, &packagelist::kd_scrollon1, qa_noquit }, + { "scrollback1", 0, &packagelist::kd_scrollback1, qa_noquit }, + { "iscrollon1", 0, &packagelist::kd_iscrollon1, qa_noquit }, + { "iscrollback1", 0, &packagelist::kd_iscrollback1, qa_noquit }, + { "panon", 0, &packagelist::kd_panon, qa_noquit }, + { "panback", 0, &packagelist::kd_panback, qa_noquit }, + { "panon1", 0, &packagelist::kd_panon1, qa_noquit }, + { "panback1", 0, &packagelist::kd_panback1, qa_noquit }, + { "install", 0, &packagelist::kd_select, qa_noquit }, + { "remove", 0, &packagelist::kd_deselect, qa_noquit }, + { "purge", 0, &packagelist::kd_purge, qa_noquit }, + { "hold", 0, &packagelist::kd_hold, qa_noquit }, + { "unhold", 0, &packagelist::kd_unhold, qa_noquit }, + { "info", 0, &packagelist::kd_info, qa_noquit }, + { "toggleinfo", 0, &packagelist::kd_toggleinfo, qa_noquit }, + { "verbose", 0, &packagelist::kd_verbose, qa_noquit }, + { "versiondisplay", 0, &packagelist::kd_versiondisplay, qa_noquit }, + { "help", 0, &packagelist::kd_help, qa_noquit }, + { "search", 0, &packagelist::kd_search, qa_noquit }, + { "searchagain", 0, &packagelist::kd_searchagain, qa_noquit }, + { "swaporder", 0, &packagelist::kd_swaporder, qa_noquit }, + { "swapstatorder", 0, &packagelist::kd_swapstatorder, qa_noquit }, + { "redraw", 0, &packagelist::kd_redraw, qa_noquit }, + { "quitcheck", 0, &packagelist::kd_quit_noop, qa_quitchecksave }, + { "quitrejectsug", 0, &packagelist::kd_revertdirect, qa_quitnochecksave }, + { "quitnocheck", 0, &packagelist::kd_quit_noop, qa_quitnochecksave }, + { "abortnocheck", 0, &packagelist::kd_revert_abort, qa_quitnochecksave }, + { "revert", 0, &packagelist::kd_revert_abort, qa_noquit }, + { "revertsuggest", 0, &packagelist::kd_revertsuggest, qa_noquit }, + { "revertdirect", 0, &packagelist::kd_revertdirect, qa_noquit }, { 0, 0, 0, qa_noquit } }; diff --git a/include/dpkg-db.h b/include/dpkg-db.h index 0a58faa9..eca6ed57 100644 --- a/include/dpkg-db.h +++ b/include/dpkg-db.h @@ -152,7 +152,8 @@ enum modstatdb_rw { msdbrw_write/*s*/, msdbrw_needsuperuser, /* Now some optional flags: */ msdbrw_flagsmask= ~077, - /* ... of which there are currently none, but they'd start at 0100 */ + /* flags start at 0100 */ + msdbrw_noavail= 0100, }; enum modstatdb_rw modstatdb_init(const char *admindir, enum modstatdb_rw reqrwflags); diff --git a/lib/dbmodify.c b/lib/dbmodify.c index c21c3b53..eb34c0c4 100644 --- a/lib/dbmodify.c +++ b/lib/dbmodify.c @@ -169,6 +169,7 @@ enum modstatdb_rw modstatdb_init(const char *adir, enum modstatdb_rw readwritere if (cstatus != msdbrw_needsuperuserlockonly) { cleanupdates(); + if(!(cflags & msdbrw_noavail)) parsedb(availablefile, pdb_recordavailable|pdb_rejectstatus, 0,0,0); diff --git a/lib/showcright.c b/lib/showcright.c index 6abfa50f..c327076b 100644 --- a/lib/showcright.c +++ b/lib/showcright.c @@ -28,7 +28,7 @@ void showcopyright(const struct cmdinfo *c, const char *v) { int fd; fd= open(COPYINGFILE,O_RDONLY); - if (fd < 0) ohshite(_("cannot open GPL file /usr/doc/dpkg/copyright")); + if (fd < 0) ohshite(_("cannot open GPL file " COPYINGFILE)); m_dup2(fd,0); execlp(CAT,CAT,"-",(char*)0); ohshite(_("unable to exec cat for displaying GPL file")); diff --git a/lib/varbuf.c b/lib/varbuf.c index 60c19abd..a8d6c87a 100644 --- a/lib/varbuf.c +++ b/lib/varbuf.c @@ -44,6 +44,7 @@ void varbufprintf(struct varbuf *v, const char *fmt, ...) { va_start(al,fmt); r= vsnprintf(v->buf+ou,v->size-ou,fmt,al); va_end(al); + if (r < 0) r= (v->size-ou+1) * 2; v->used= ou+r; } while (r >= v->size-ou-1); } diff --git a/main/archives.c b/main/archives.c index 057b6d32..49ba456e 100644 --- a/main/archives.c +++ b/main/archives.c @@ -816,3 +816,68 @@ void archivefiles(const char *const *argv) { modstatdb_shutdown(); } + +int wanttoinstall(struct pkginfo *pkg, const struct versionrevision *ver, int saywhy) { + /* Decide whether we want to install a new version of the package. + * ver is the version we might want to install. If saywhy is 1 then + * if we skip the package we say what we are doing (and, if we are + * selecting a previously deselected package, say so and actually do + * the select). want_install returns 0 if the package should be + * skipped and 1 if it should be installed. + * + * ver may be 0, in which case saywhy must be 0 and want_install may + * also return -1 to mean it doesn't know because it would depend on + * the version number. + */ + enum versiondisplayepochwhen needepochs; + int r; + + if (pkg->want != want_install) { + if (f_alsoselect) { + if (saywhy) { + printf("Selecting previously deselected package %s.\n",pkg->name); + pkg->want= want_install; + } + return 1; + } else { + if (saywhy) printf("Skipping deselected package %s.\n",pkg->name); + return 0; + } + } + + if (pkg->status != stat_installed) return 1; + if (!ver) return -1; + + r= versioncompare(ver,&pkg->installed.version); + if (r > 0) { + return 1; + } else if (r == 0) { + if (f_skipsame && /* same version fully installed ? */ + pkg->status == stat_installed && !(pkg->eflag &= eflagf_reinstreq)) { + if (saywhy) fprintf(stderr, "Version %.250s of %.250s already installed, " + "skipping.\n", + versiondescribe(&pkg->installed.version,vdew_never), + pkg->name); + return 0; + } else { + return 1; + } + } else { + needepochs= epochsdiffer(&pkg->available.version,&pkg->installed.version) ? + vdew_always : vdew_never; + if (fc_downgrade) { + if (saywhy) fprintf(stderr, DPKG " - warning: downgrading %.250s " + "from %.250s to %.250s.\n", pkg->name, + versiondescribe(&pkg->installed.version,needepochs), + versiondescribe(&pkg->available.version,needepochs)); + return 1; + } else { + if (saywhy) fprintf(stderr, "Will not downgrade %.250s from version %.250s " + "to %.250s, skipping.\n", pkg->name, + versiondescribe(&pkg->installed.version,needepochs), + versiondescribe(&pkg->available.version,needepochs)); + return 0; + } + } +} + diff --git a/main/enquiry.c b/main/enquiry.c index 36bd031f..b28b6010 100644 --- a/main/enquiry.c +++ b/main/enquiry.c @@ -236,7 +236,7 @@ void unpackchk(const char *const *argv) { if (*argv) badusage(_("--yet-to-unpack does not take any arguments")); - modstatdb_init(admindir,msdbrw_readonly); + modstatdb_init(admindir,msdbrw_readonly|msdbrw_noavail); totalcount= 0; sectionentries= 0; @@ -344,7 +344,7 @@ void searchfiles(const char *const *argv) { if (!*argv) badusage(_("--search needs at least one file name pattern argument")); - modstatdb_init(admindir,msdbrw_readonly); + modstatdb_init(admindir,msdbrw_readonly|msdbrw_noavail); ensure_allinstfiles_available_quiet(); ensure_diversions(); @@ -389,6 +389,9 @@ void enqperpackage(const char *const *argv) { badusage(_("--%s needs at least one package name argument"), cipaction->olong); failures= 0; + if (cipaction->arg==act_listfiles) + modstatdb_init(admindir,msdbrw_readonly|msdbrw_noavail); + else modstatdb_init(admindir,msdbrw_readonly); while ((thisarg= *argv++) != 0) { @@ -464,24 +467,25 @@ void enqperpackage(const char *const *argv) { } } -void assertepoch(const char *const *argv) { - static struct versionrevision epochversion = {~0UL,0,0}; +void assertversion(const char *const *argv, + struct versionrevision *verrev_buf, + const char *reqversion) { struct pkginfo *pkg; - if (*argv) badusage("--assert-working-epoch does not take any arguments"); + if (*argv) badusage("--assert-* does not take any arguments"); - modstatdb_init(admindir,msdbrw_readonly); - pkg= findpackage("dpkg"); - if (epochversion.epoch == ~0UL) { - epochversion.epoch= 0; - epochversion.version= nfstrsave("1.4.0.7"); - epochversion.revision= 0; + modstatdb_init(admindir,msdbrw_readonly|msdbrw_noavail); + if (verrev_buf->epoch == ~0UL) { + verrev_buf->epoch= 0; + verrev_buf->version= nfstrsave(reqversion); + verrev_buf->revision= 0; } + pkg= findpackage("dpkg"); switch (pkg->status) { case stat_installed: break; case stat_unpacked: case stat_halfconfigured: case stat_halfinstalled: - if (versionsatisfied3(&pkg->configversion,&epochversion,dvr_laterequal)) + if (versionsatisfied3(&pkg->configversion,verrev_buf,dvr_laterequal)) break; printf("Version of dpkg with working epoch support not yet configured.\n" " Please use `dpkg --configure dpkg', and then try again.\n"); @@ -494,30 +498,12 @@ void assertepoch(const char *const *argv) { void assertpredep(const char *const *argv) { static struct versionrevision predepversion = {~0UL,0,0}; - struct pkginfo *pkg; - - if (*argv) badusage(_("--assert-support-predepends does not take any arguments")); - - modstatdb_init(admindir,msdbrw_readonly); - pkg= findpackage("dpkg"); - if (predepversion.epoch == ~0UL) { - predepversion.epoch= 0; - predepversion.version= nfstrsave("1.1.0"); - predepversion.revision= 0; - } - switch (pkg->status) { - case stat_installed: - break; - case stat_unpacked: case stat_halfconfigured: case stat_halfinstalled: - if (versionsatisfied3(&pkg->configversion,&predepversion,dvr_laterequal)) - break; - printf(_("Version of dpkg with Pre-Depends support not yet configured.\n" - " Please use `dpkg --configure dpkg', and then try again.\n")); - exit(1); - default: - printf(_("dpkg not recorded as installed, cannot check for Pre-Depends support !\n")); - exit(1); + assertversion(argv,&predepversion,"1.1.0"); } + +void assertepoch(const char *const *argv) { + static struct versionrevision epochversion = {~0UL,0,0}; + assertversion(argv,&epochversion,"1.4.0.7"); } void predeppackage(const char *const *argv) { diff --git a/main/filesdb.c b/main/filesdb.c index ab18f7f5..bc4e1b1f 100644 --- a/main/filesdb.c +++ b/main/filesdb.c @@ -32,6 +32,10 @@ #include "filesdb.h" #include "main.h" +#ifdef HAVE_SYS_SYSINFO_H +#include +#endif + /*** Generic data structures and routines ***/ static int allpackagesdone= 0; @@ -355,9 +359,10 @@ void ensure_diversions(void) { oialtname->camefrom= findnamenode(linebuf); oialtname->useinstead= 0; - if (!fgets(linebuf,sizeof(linebuf),file)) + if (!fgets(linebuf,sizeof(linebuf),file)) { if (ferror(file)) ohshite(_("read error in diversions [ii]")); else ohshit(_("unexpected EOF in diversions [ii]")); + } l= strlen(linebuf); if (l == 0) ohshit(_("fgets gave an empty string from diversions [ii]")); if (linebuf[--l] != '\n') ohshit(_("diversions file has too-long line or EOF [ii]")); @@ -365,9 +370,10 @@ void ensure_diversions(void) { oicontest->useinstead= findnamenode(linebuf); oicontest->camefrom= 0; - if (!fgets(linebuf,sizeof(linebuf),file)) + if (!fgets(linebuf,sizeof(linebuf),file)) { if (ferror(file)) ohshite(_("read error in diversions [iii]")); else ohshit(_("unexpected EOF in diversions [iii]")); + } l= strlen(linebuf); if (l == 0) ohshit(_("fgets gave an empty string from diversions [iii]")); if (linebuf[--l] != '\n') ohshit(_("diversions file has too-long line or EOF [ii]")); @@ -485,25 +491,23 @@ void iterfileend(struct fileiterator *i) { free(i); } -void filesdbinit(void) { - struct filenamenode *fnn; +static int autodetect_largemem(void) { #ifdef HAVE_SYSINFO struct sysinfo info; + if (sysinfo(&info)) return 0; + if (info.freeram + (info.sharedram>>2) + (info.bufferram>>2) < 16384*1024 && + info.totalram < 16384*1024) + return 0; #endif + return 1; +} + +void filesdbinit(void) { + struct filenamenode *fnn; int i; -#ifdef HAVE_SYSINFO - if (!f_largemem) { - f_largemem= -1; - if (!sysinfo(&info)) { - if (info.freeram + (info.sharedram>>2) + (info.bufferram>>2) >= 4096*1024 || - info.totalram >= 6144) - f_largemem= 1; - } - } -#else - f_largemem= 1; -#endif + if (!f_largemem) + f_largemem= autodetect_largemem() ? 1 : -1; switch (f_largemem) { case 1: diff --git a/main/help.c b/main/help.c index 5c1a68c6..1ee9114b 100644 --- a/main/help.c +++ b/main/help.c @@ -161,16 +161,25 @@ const char *pkgadminfile(struct pkginfo *pkg, const char *whichfile) { return vb.buf; } -static void preexecscript(const char *path, char *const *argv) { +static const char* preexecscript(const char *path, char *const *argv) { + /* returns the path to the script inside the chroot + * none of the stuff here will work if admindir isn't inside instdir + * as expected. - fixme + */ + int instdirl; + if (*instdir) { - /* fixme: won't work right when instdir != admindir */ - if (chdir(instdir) || chroot(instdir)) ohshite("failed to chroot to `%.250s'",instdir); + if (chroot(instdir)) ohshite("failed to chroot to `%.250s'",instdir); } if (f_debug & dbg_scripts) { fprintf(stderr,"D0%05o: fork/exec %s (",dbg_scripts,path); while (*argv) fprintf(stderr," %s",*argv++); fputs(" )\n",stderr); } + instdirl= strlen(instdir); + if (!instdirl) return path; + assert (strlen(path)>=instdirl); + return path+instdirl; } static char *const *vbuildarglist(const char *scriptname, va_list ap) { @@ -240,7 +249,7 @@ static void setexecute(const char *path, struct stat *stab) { int maintainer_script_installed(struct pkginfo *pkg, const char *scriptname, const char *description, ...) { /* all ...'s are const char*'s */ - const char *scriptpath; + const char *scriptpath, *scriptexec; char *const *arglist; struct stat stab; va_list ap; @@ -263,8 +272,8 @@ int maintainer_script_installed(struct pkginfo *pkg, const char *scriptname, setexecute(scriptpath,&stab); c1= m_fork(); if (!c1) { - preexecscript(scriptpath,arglist); - execv(scriptpath+strlen(instdir),arglist); + scriptexec= preexecscript(scriptpath,arglist); + execv(scriptexec,arglist); ohshite(_("unable to execute %s"),buf); } script_catchsignals(); /* This does a push_cleanup() */ @@ -278,6 +287,7 @@ int maintainer_script_installed(struct pkginfo *pkg, const char *scriptname, int maintainer_script_new(const char *scriptname, const char *description, const char *cidir, char *cidirrest, ...) { char *const *arglist; + const char *scriptexec; struct stat stab; va_list ap; char buf[100]; @@ -299,8 +309,8 @@ int maintainer_script_new(const char *scriptname, const char *description, setexecute(cidir,&stab); c1= m_fork(); if (!c1) { - preexecscript(cidir,arglist); - execv(cidir+strlen(instdir),arglist); + scriptexec= preexecscript(cidir,arglist); + execv(scriptexec,arglist); ohshite(_("unable to execute new %s"),buf); } script_catchsignals(); /* This does a push_cleanup() */ @@ -315,7 +325,7 @@ int maintainer_script_alternative(struct pkginfo *pkg, const char *scriptname, const char *description, const char *cidir, char *cidirrest, const char *ifok, const char *iffallback) { - const char *oldscriptpath; + const char *oldscriptpath, *scriptexec; char *const *arglist; struct stat stab; int c1, n, status; @@ -341,8 +351,8 @@ int maintainer_script_alternative(struct pkginfo *pkg, setexecute(oldscriptpath,&stab); c1= m_fork(); if (!c1) { - preexecscript(oldscriptpath,arglist); - execv(oldscriptpath+strlen(instdir),arglist); + scriptexec= preexecscript(oldscriptpath,arglist); + execv(scriptexec, arglist); ohshite(_("unable to execute %s"),buf); } script_catchsignals(); /* This does a push_cleanup() */ @@ -370,18 +380,19 @@ int maintainer_script_alternative(struct pkginfo *pkg, strcpy(cidirrest,scriptname); sprintf(buf,_("new %s script"),description); - if (stat(cidir,&stab)) + if (stat(cidir,&stab)) { if (errno == ENOENT) ohshit(_("there is no script in the new version of the package - giving up")); else ohshite(_("unable to stat %s `%.250s'"),buf,cidir); + } setexecute(cidir,&stab); c1= m_fork(); if (!c1) { - preexecscript(cidir,arglist); - execv(cidir+strlen(instdir),arglist); + scriptexec= preexecscript(cidir,arglist); + execv(scriptexec, arglist); ohshite(_("unable to execute %s"),buf); } script_catchsignals(); /* This does a push_cleanup() */ @@ -448,6 +459,22 @@ void oldconffsetflags(struct conffile *searchconff) { } } +int chmodsafe_unlink(const char *pathname) { + struct stat stab; + + if (lstat(pathname,&stab)) return -1; + if (S_ISREG(stab.st_mode) ? (stab.st_mode | 07000) : + !(S_ISLNK(stab.st_mode) || S_ISDIR(stab.st_mode) || + S_ISFIFO(stab.st_mode) || S_ISSOCK(stab.st_mode))) { + /* We chmod it if it is 1. a sticky or set-id file, or 2. an unrecognised + * object (ie, not a file, link, directory, fifo or socket + */ + if (chmod(pathname,0600)) return -1; + } + if (unlink(pathname)) return -1; + return 0; +} + void ensure_pathname_nonexisting(const char *pathname) { int c1; const char *u; @@ -462,7 +489,7 @@ void ensure_pathname_nonexisting(const char *pathname) { /* Either it's a file, or one of the path components is. If one * of the path components is this will fail again ... */ - if (!unlink(pathname)) return; /* OK, it was */ + if (!chmodsafe_unlink(pathname)) return; /* OK, it was */ if (errno == ENOTDIR) return; } if (errno != ENOTEMPTY) /* Huh ? */ diff --git a/main/main.c b/main/main.c index 79d5526e..24356d87 100644 --- a/main/main.c +++ b/main/main.c @@ -239,7 +239,13 @@ static void ignoredepends(const struct cmdinfo *cip, const char *value) { } static void setinteger(const struct cmdinfo *cip, const char *value) { - *cip->iassignto=atoi(value); + unsigned long v; + char *ep; + + v= strtoul(value,&ep,0); + if (*ep || v > INT_MAX) + badusage("invalid integer for --%s: `%.250s'",cip->olong,value); + *cip->iassignto= v; } static void setforce(const struct cmdinfo *cip, const char *value) { diff --git a/main/main.h b/main/main.h index 00c88868..23d2f0f5 100644 --- a/main/main.h +++ b/main/main.h @@ -99,6 +99,7 @@ void filesdbinit(void); void archivefiles(const char *const *argv); void process_archive(const char *filename); +int wanttoinstall(struct pkginfo *pkg, const struct versionrevision *ver, int saywhy); /* from update.c */ @@ -169,6 +170,7 @@ void ensure_package_clientdata(struct pkginfo *pkg); const char *pkgadminfile(struct pkginfo *pkg, const char *whichfile); void oldconffsetflags(struct conffile *searchconff); void ensure_pathname_nonexisting(const char *pathname); +int chmodsafe_unlink(const char *pathname); /* chmod 600, then unlink */ void checkpath(void); struct filenamenode *namenodetouse(struct filenamenode*, struct pkginfo*); diff --git a/main/processarc.c b/main/processarc.c index bf5f9d3f..2122a620 100644 --- a/main/processarc.c +++ b/main/processarc.c @@ -201,43 +201,9 @@ void process_archive(const char *filename) { deconfigure= 0; clear_istobes(); - if (pkg->want != want_install) { - if (f_alsoselect) { - printf(_("Selecting previously deselected package %s.\n"),pkg->name); - pkg->want= want_install; - } else { - printf(_("Skipping deselected package %s.\n"),pkg->name); - return; - } - } - - if (pkg->status == stat_installed) { - r= versioncompare(&pkg->available.version,&pkg->installed.version); - if (r < 0) { - needepochs= epochsdiffer(&pkg->available.version,&pkg->installed.version) ? - vdew_always : vdew_never; - if (fc_downgrade) { - fprintf(stderr, _("dpkg - warning: downgrading %.250s from %.250s to %.250s.\n"), - pkg->name, - versiondescribe(&pkg->installed.version,needepochs), - versiondescribe(&pkg->available.version,needepochs)); - } else { - fprintf(stderr, _("Will not downgrade" - " %.250s from version %.250s to %.250s, skipping.\n"), - pkg->name, - versiondescribe(&pkg->installed.version,needepochs), - versiondescribe(&pkg->available.version,needepochs)); - pop_cleanup(ehflag_normaltidy); - return; - } - } else if (r == 0 && f_skipsame && /* same version fully installed ? */ - pkg->status == stat_installed && !(pkg->eflag &= eflagf_reinstreq)) { - fprintf(stderr, _("Version %.250s of %.250s already installed, skipping.\n"), - versiondescribe(&pkg->installed.version,vdew_never), - pkg->name); + if (!wanttoinstall(pkg,&pkg->available.version,1)) { pop_cleanup(ehflag_normaltidy); return; - } } pkg->clientdata->istobe= itb_installnew; diff --git a/md5sum/md5sum.1 b/md5sum/md5sum.1 index c5d5943c..aa8cb7a4 100644 --- a/md5sum/md5sum.1 +++ b/md5sum/md5sum.1 @@ -42,11 +42,16 @@ That is, each line in the file describes a file. A line looks like: .B -So, for example, a file containing checksum for this manpage would look -like(don't worry, if the checkusum doesn't match, there is a minor -problem in keeping it up to date): +So, for example, if a file was created and its message digest calculated +like so: + +.B echo foo > md5-test-file; md5sum md5-test-file + +.B md5sum +would report: + +.B d3b07384d113edec49eaa6238ad5ff00\ md5-test-file -.B c6514f34ffe6e1ce146e1f17db2c0f90 md5sum.1 .TP .B -v Be more verbose. Print filenames when checking (with -c). diff --git a/po/en.po b/po/en.po index d652532c..896ce782 100644 --- a/po/en.po +++ b/po/en.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" -"POT-Creation-Date: 1999-07-06 16:05-0700\n" +"POT-Creation-Date: 1999-09-10 03:34+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -118,37 +118,37 @@ msgstr "unable to access dpkg status area" msgid "operation requires read/write access to dpkg status area" msgstr "operation requires read/write access to dpkg status area" -#: lib/dbmodify.c:197 +#: lib/dbmodify.c:198 #, c-format msgid "failed to remove my own update file %.255s" msgstr "failed to remove my own update file %.255s" -#: lib/dbmodify.c:229 +#: lib/dbmodify.c:230 #, c-format msgid "unable to write updated status of `%.250s'" msgstr "unable to write updated status of `%.250s'" -#: lib/dbmodify.c:231 +#: lib/dbmodify.c:232 #, c-format msgid "unable to flush updated status of `%.250s'" msgstr "unable to flush updated status of `%.250s'" -#: lib/dbmodify.c:233 +#: lib/dbmodify.c:234 #, c-format msgid "unable to truncate for updated status of `%.250s'" msgstr "unable to truncate for updated status of `%.250s'" -#: lib/dbmodify.c:235 +#: lib/dbmodify.c:236 #, c-format msgid "unable to fsync updated status of `%.250s'" msgstr "unable to fsync updated status of `%.250s'" -#: lib/dbmodify.c:237 +#: lib/dbmodify.c:238 #, c-format msgid "unable to close updated status of `%.250s'" msgstr "unable to close updated status of `%.250s'" -#: lib/dbmodify.c:240 +#: lib/dbmodify.c:241 #, c-format msgid "unable to install updated status of `%.250s'" msgstr "unable to install updated status of `%.250s'" @@ -435,7 +435,7 @@ msgstr "subprocess %s killed by signal (%s)%s" msgid "subprocess %s failed with wait status code %d" msgstr "subprocess %s failed with wait status code %d" -#: lib/mlib.c:122 main/help.c:350 +#: lib/mlib.c:122 main/help.c:360 #, c-format msgid "wait for %s failed" msgstr "wait for %s failed" @@ -619,14 +619,15 @@ msgid "empty value for %s" msgstr "empty value for %s" #: lib/showcright.c:31 -msgid "cannot open GPL file /usr/doc/dpkg/copyright" -msgstr "cannot open GPL file /usr/doc/dpkg/copyright" +#, fuzzy +msgid "cannot open GPL file " +msgstr "cannot remove old files list" #: lib/showcright.c:34 msgid "unable to exec cat for displaying GPL file" msgstr "unable to exec cat for displaying GPL file" -#: lib/varbuf.c:76 +#: lib/varbuf.c:77 msgid "failed to realloc for variable buffer" msgstr "failed to realloc for variable buffer" @@ -1477,29 +1478,11 @@ msgstr "" "Use dpkg --info (= dpkg-deb --info) to examine archive files,\n" "and dpkg --contents (= dpkg-deb --contents) to list their contents." -#: main/enquiry.c:499 -msgid "--assert-support-predepends does not take any arguments" -msgstr "--assert-support-predepends does not take any arguments" - -#: main/enquiry.c:514 -msgid "" -"Version of dpkg with Pre-Depends support not yet configured.\n" -" Please use `dpkg --configure dpkg', and then try again.\n" -msgstr "" -"Version of dpkg with Pre-Depends support not yet configured.\n" -" Please use `dpkg --configure dpkg', and then try again.\n" - -#: main/enquiry.c:518 -msgid "" -"dpkg not recorded as installed, cannot check for Pre-Depends support !\n" -msgstr "" -"dpkg not recorded as installed, cannot check for Pre-Depends support !\n" - -#: main/enquiry.c:541 +#: main/enquiry.c:524 msgid "--predep-package does not take any argument" msgstr "--predep-package does not take any argument" -#: main/enquiry.c:593 +#: main/enquiry.c:576 #, c-format msgid "" "dpkg: cannot see how to satisfy pre-dependency:\n" @@ -1508,12 +1491,12 @@ msgstr "" "dpkg: cannot see how to satisfy pre-dependency:\n" " %s\n" -#: main/enquiry.c:594 +#: main/enquiry.c:577 #, c-format msgid "cannot satisfy pre-dependencies for %.250s (wanted due to %.250s)" msgstr "cannot satisfy pre-dependencies for %.250s (wanted due to %.250s)" -#: main/enquiry.c:614 +#: main/enquiry.c:597 #, c-format msgid "" "dpkg: unexpected output from `%s --print-libgcc-file-name':\n" @@ -1522,67 +1505,67 @@ msgstr "" "dpkg: unexpected output from `%s --print-libgcc-file-name':\n" " `%s'\n" -#: main/enquiry.c:617 +#: main/enquiry.c:600 #, c-format msgid "compiler libgcc filename not understood: %.250s" msgstr "compiler libgcc filename not understood: %.250s" -#: main/enquiry.c:621 +#: main/enquiry.c:604 msgid "--print-installation-architecture does not take any argument" msgstr "--print-installation-architecture does not take any argument" -#: main/enquiry.c:641 +#: main/enquiry.c:624 msgid "--print-architecture does not take any argument" msgstr "--print-architecture does not take any argument" -#: main/enquiry.c:647 +#: main/enquiry.c:630 msgid "failed to fdopen CC pipe" msgstr "failed to fdopen CC pipe" -#: main/enquiry.c:651 +#: main/enquiry.c:634 #, c-format msgid "failed to exec C compiler `%.250s'" msgstr "failed to exec C compiler `%.250s'" -#: main/enquiry.c:655 +#: main/enquiry.c:638 msgid "error reading from CC pipe" msgstr "error reading from CC pipe" -#: main/enquiry.c:657 +#: main/enquiry.c:640 msgid "empty output" msgstr "empty output" -#: main/enquiry.c:659 +#: main/enquiry.c:642 msgid "no newline" msgstr "no newline" -#: main/enquiry.c:662 +#: main/enquiry.c:645 msgid "no gcc-lib component" msgstr "no gcc-lib component" -#: main/enquiry.c:664 +#: main/enquiry.c:647 msgid "no hyphen after gcc-lib" msgstr "no hyphen after gcc-lib" -#: main/enquiry.c:676 +#: main/enquiry.c:659 #, c-format msgid "dpkg: warning, architecture `%s' not in remapping table\n" msgstr "dpkg: warning, architecture `%s' not in remapping table\n" -#: main/enquiry.c:718 +#: main/enquiry.c:701 msgid "--cmpversions takes three arguments: " msgstr "--cmpversions takes three arguments: " -#: main/enquiry.c:723 +#: main/enquiry.c:706 msgid "--cmpversions bad relation" msgstr "--cmpversions bad relation" -#: main/enquiry.c:728 +#: main/enquiry.c:711 #, c-format msgid "version a has bad syntax: %s\n" msgstr "version a has bad syntax: %s\n" -#: main/enquiry.c:738 +#: main/enquiry.c:721 #, c-format msgid "version b has bad syntax: %s\n" msgstr "version b has bad syntax: %s\n" @@ -1618,12 +1601,12 @@ msgstr "" "dpkg - warning, overriding problem because --force enabled:\n" " " -#: main/filesdb.c:116 +#: main/filesdb.c:120 #, c-format msgid "unable to open files list file for package `%.250s'" msgstr "unable to open files list file for package `%.250s'" -#: main/filesdb.c:121 +#: main/filesdb.c:125 #, c-format msgid "" "dpkg: serious warning: files list file for package `%.250s' missing, " @@ -1632,133 +1615,133 @@ msgstr "" "dpkg: serious warning: files list file for package `%.250s' missing, " "assuming package has no files currently installed.\n" -#: main/filesdb.c:132 +#: main/filesdb.c:136 #, c-format msgid "unable to set buffering on `%.250s'" msgstr "unable to set buffering on `%.250s'" -#: main/filesdb.c:142 +#: main/filesdb.c:146 #, c-format msgid "fgets gave an empty null-terminated string from `%.250s'" msgstr "fgets gave an empty null-terminated string from `%.250s'" -#: main/filesdb.c:160 +#: main/filesdb.c:164 #, c-format msgid "files list file for package `%.250s' contains empty filename" msgstr "files list file for package `%.250s' contains empty filename" -#: main/filesdb.c:168 +#: main/filesdb.c:172 #, c-format msgid "error reading files list file for package `%.250s'" msgstr "error reading files list file for package `%.250s'" -#: main/filesdb.c:171 +#: main/filesdb.c:175 #, c-format msgid "error closing files list file for package `%.250s'" msgstr "error closing files list file for package `%.250s'" -#: main/filesdb.c:173 +#: main/filesdb.c:177 #, c-format msgid "files list file for package `%.250s' is truncated" msgstr "files list file for package `%.250s' is truncated" -#: main/filesdb.c:204 +#: main/filesdb.c:208 msgid "(Reading database ... " msgstr "(Reading database ... " -#: main/filesdb.c:204 +#: main/filesdb.c:208 msgid "(Scanning database ... " msgstr "(Scanning database ... " -#: main/filesdb.c:212 +#: main/filesdb.c:216 #, c-format msgid "%d files and directories currently installed.)\n" msgstr "%d files and directories currently installed.)\n" -#: main/filesdb.c:243 +#: main/filesdb.c:247 #, c-format msgid "unable to create updated files list file for package %s" msgstr "unable to create updated files list file for package %s" -#: main/filesdb.c:253 +#: main/filesdb.c:257 #, c-format msgid "failed to write to updated files list file for package %s" msgstr "failed to write to updated files list file for package %s" -#: main/filesdb.c:255 +#: main/filesdb.c:259 #, c-format msgid "failed to flush updated files list file for package %s" msgstr "failed to flush updated files list file for package %s" -#: main/filesdb.c:257 +#: main/filesdb.c:261 #, c-format msgid "failed to sync updated files list file for package %s" msgstr "failed to sync updated files list file for package %s" -#: main/filesdb.c:260 +#: main/filesdb.c:264 #, c-format msgid "failed to close updated files list file for package %s" msgstr "failed to close updated files list file for package %s" -#: main/filesdb.c:262 +#: main/filesdb.c:266 #, c-format msgid "failed to install updated files list file for package %s" msgstr "failed to install updated files list file for package %s" -#: main/filesdb.c:326 +#: main/filesdb.c:330 msgid "failed to open diversions file" msgstr "failed to open diversions file" -#: main/filesdb.c:330 +#: main/filesdb.c:334 msgid "failed to fstat previous diversions file" msgstr "failed to fstat previous diversions file" -#: main/filesdb.c:332 +#: main/filesdb.c:336 msgid "failed to fstat diversions file" msgstr "failed to fstat diversions file" -#: main/filesdb.c:352 +#: main/filesdb.c:356 msgid "fgets gave an empty string from diversions [i]" msgstr "fgets gave an empty string from diversions [i]" -#: main/filesdb.c:353 +#: main/filesdb.c:357 msgid "diversions file has too-long line or EOF [i]" msgstr "diversions file has too-long line or EOF [i]" -#: main/filesdb.c:359 +#: main/filesdb.c:363 msgid "read error in diversions [ii]" msgstr "read error in diversions [ii]" -#: main/filesdb.c:360 +#: main/filesdb.c:364 msgid "unexpected EOF in diversions [ii]" msgstr "unexpected EOF in diversions [ii]" -#: main/filesdb.c:362 +#: main/filesdb.c:367 msgid "fgets gave an empty string from diversions [ii]" msgstr "fgets gave an empty string from diversions [ii]" -#: main/filesdb.c:363 main/filesdb.c:373 +#: main/filesdb.c:368 main/filesdb.c:379 msgid "diversions file has too-long line or EOF [ii]" msgstr "diversions file has too-long line or EOF [ii]" -#: main/filesdb.c:369 +#: main/filesdb.c:374 msgid "read error in diversions [iii]" msgstr "read error in diversions [iii]" -#: main/filesdb.c:370 +#: main/filesdb.c:375 msgid "unexpected EOF in diversions [iii]" msgstr "unexpected EOF in diversions [iii]" -#: main/filesdb.c:372 +#: main/filesdb.c:378 msgid "fgets gave an empty string from diversions [iii]" msgstr "fgets gave an empty string from diversions [iii]" -#: main/filesdb.c:380 +#: main/filesdb.c:386 #, c-format msgid "conflicting diversions involving `%.250s' or `%.250s'" msgstr "conflicting diversions involving `%.250s' or `%.250s'" -#: main/filesdb.c:389 +#: main/filesdb.c:395 msgid "read error in diversions [i]" msgstr "read error in diversions [i]" @@ -1804,90 +1787,90 @@ msgstr "" "%d expected program(s) not found on PATH.\n" "NB: root's PATH should usually contain /usr/local/sbin, /usr/sbin and /sbin." -#: main/help.c:210 +#: main/help.c:219 #, c-format msgid "error un-catching signal %s: %s\n" msgstr "error un-catching signal %s: %s\n" -#: main/help.c:228 +#: main/help.c:237 #, c-format msgid "unable to ignore signal %s before running script" msgstr "unable to ignore signal %s before running script" -#: main/help.c:237 +#: main/help.c:246 #, c-format msgid "unable to set execute permissions on `%.250s'" msgstr "unable to set execute permissions on `%.250s'" -#: main/help.c:261 +#: main/help.c:270 #, c-format msgid "unable to stat installed %s script `%.250s'" msgstr "unable to stat installed %s script `%.250s'" -#: main/help.c:268 main/help.c:346 main/help.c:385 +#: main/help.c:277 main/help.c:356 main/help.c:396 #, c-format msgid "unable to execute %s" msgstr "unable to execute %s" -#: main/help.c:297 +#: main/help.c:307 #, c-format msgid "unable to stat new %s script `%.250s'" msgstr "unable to stat new %s script `%.250s'" -#: main/help.c:304 +#: main/help.c:314 #, c-format msgid "unable to execute new %s" msgstr "unable to execute new %s" -#: main/help.c:338 +#: main/help.c:348 #, c-format msgid "dpkg: warning - unable to stat %s `%.250s': %s\n" msgstr "dpkg: warning - unable to stat %s `%.250s': %s\n" -#: main/help.c:354 +#: main/help.c:364 #, c-format msgid "dpkg: warning - %s returned error exit status %d\n" msgstr "dpkg: warning - %s returned error exit status %d\n" -#: main/help.c:357 +#: main/help.c:367 #, c-format msgid "dpkg: warning - %s killed by signal (%s)%s\n" msgstr "dpkg: warning - %s killed by signal (%s)%s\n" -#: main/help.c:360 +#: main/help.c:370 #, c-format msgid "%s failed with unknown wait status code %d" msgstr "%s failed with unknown wait status code %d" -#: main/help.c:364 +#: main/help.c:374 msgid "dpkg - trying script from the new package instead ...\n" msgstr "dpkg - trying script from the new package instead ...\n" -#: main/help.c:371 +#: main/help.c:381 #, c-format msgid "new %s script" msgstr "new %s script" -#: main/help.c:375 +#: main/help.c:385 msgid "there is no script in the new version of the package - giving up" msgstr "there is no script in the new version of the package - giving up" -#: main/help.c:377 +#: main/help.c:387 #, c-format msgid "unable to stat %s `%.250s'" msgstr "unable to stat %s `%.250s'" -#: main/help.c:390 +#: main/help.c:401 msgid "dpkg: ... it looks like that went OK.\n" msgstr "dpkg: ... it looks like that went OK.\n" #. Huh ? -#: main/help.c:469 +#: main/help.c:496 #, c-format msgid "failed to rmdir/unlink `%.255s'" msgstr "failed to rmdir/unlink `%.255s'" -#: dpkg-deb/info.c:52 main/help.c:473 +#: dpkg-deb/info.c:52 main/help.c:500 msgid "failed to exec rm for cleanup" msgstr "failed to exec rm for cleanup" @@ -2011,7 +1994,7 @@ msgstr "null package name in --ignore-depends comma-separated list `%.250s'" msgid "--ignore-depends requires a legal package name. `%.250s' is not; %s" msgstr "--ignore-depends requires a legal package name. `%.250s' is not; %s" -#: main/main.c:251 +#: main/main.c:257 #, fuzzy msgid "" "dpkg forcing options - control behaviour when problems found:\n" @@ -2066,16 +2049,16 @@ msgstr "" "WARNING - use of options marked [!] can seriously damage your installation.\n" "Forcing options marked [*] are enabled by default.\n" -#: main/main.c:283 +#: main/main.c:289 #, c-format msgid "unknown force/refuse option `%.*s'" msgstr "unknown force/refuse option `%.*s'" -#: main/main.c:360 +#: main/main.c:366 msgid "failed to exec dpkg-deb" msgstr "failed to exec dpkg-deb" -#: dpkg-deb/main.c:150 main/main.c:396 split/main.c:163 +#: dpkg-deb/main.c:150 main/main.c:402 split/main.c:163 msgid "need an action option" msgstr "need an action option" @@ -2181,32 +2164,7 @@ msgstr "Recorded info about %s from %s.\n" msgid "package architecture (%s) does not match system (%s)" msgstr "package architecture (%s) does not match system (%s)" -#: main/processarc.c:206 -#, c-format -msgid "Selecting previously deselected package %s.\n" -msgstr "Selecting previously deselected package %s.\n" - -#: main/processarc.c:209 -#, c-format -msgid "Skipping deselected package %s.\n" -msgstr "Skipping deselected package %s.\n" - -#: main/processarc.c:220 -#, c-format -msgid "dpkg - warning: downgrading %.250s from %.250s to %.250s.\n" -msgstr "dpkg - warning: downgrading %.250s from %.250s to %.250s.\n" - -#: main/processarc.c:225 -#, c-format -msgid "Will not downgrade %.250s from version %.250s to %.250s, skipping.\n" -msgstr "Will not downgrade %.250s from version %.250s to %.250s, skipping.\n" - -#: main/processarc.c:235 -#, c-format -msgid "Version %.250s of %.250s already installed, skipping.\n" -msgstr "Version %.250s of %.250s already installed, skipping.\n" - -#: main/processarc.c:268 +#: main/processarc.c:234 #, c-format msgid "" "dpkg: regarding %s containing %s, pre-dependency problem:\n" @@ -2215,136 +2173,136 @@ msgstr "" "dpkg: regarding %s containing %s, pre-dependency problem:\n" "%s" -#: main/processarc.c:271 +#: main/processarc.c:237 #, c-format msgid "pre-dependency problem - not installing %.250s" msgstr "pre-dependency problem - not installing %.250s" -#: main/processarc.c:272 +#: main/processarc.c:238 msgid "dpkg: warning - ignoring pre-dependency problem !\n" msgstr "dpkg: warning - ignoring pre-dependency problem !\n" -#: main/processarc.c:286 +#: main/processarc.c:252 #, c-format msgid "Preparing to replace %s %s (using %s) ...\n" msgstr "Preparing to replace %s %s (using %s) ...\n" -#: main/processarc.c:291 +#: main/processarc.c:257 #, c-format msgid "Unpacking %s (from %s) ...\n" msgstr "Unpacking %s (from %s) ...\n" -#: main/processarc.c:311 +#: main/processarc.c:277 #, c-format msgid "name of conffile (starting `%.250s') is too long (>%d characters)" msgstr "name of conffile (starting `%.250s') is too long (>%d characters)" -#: main/processarc.c:365 +#: main/processarc.c:331 #, c-format msgid "read error in %.250s" msgstr "read error in %.250s" #. conff= fopen() -#: main/processarc.c:367 +#: main/processarc.c:333 #, c-format msgid "error closing %.250s" msgstr "error closing %.250s" -#: main/processarc.c:369 +#: main/processarc.c:335 #, c-format msgid "error trying to open %.250s" msgstr "error trying to open %.250s" -#: main/processarc.c:401 +#: main/processarc.c:367 #, c-format msgid "De-configuring %s, so that we can remove %s ...\n" msgstr "De-configuring %s, so that we can remove %s ...\n" -#: main/processarc.c:458 +#: main/processarc.c:424 #, c-format msgid "Unpacking replacement %.250s ...\n" msgstr "Unpacking replacement %.250s ...\n" -#: main/processarc.c:534 +#: main/processarc.c:500 msgid "unable to exec dpkg-deb to get filesystem archive" msgstr "unable to exec dpkg-deb to get filesystem archive" -#: main/processarc.c:542 +#: main/processarc.c:508 msgid "unable to fdopen dpkg-deb extract pipe" msgstr "unable to fdopen dpkg-deb extract pipe" -#: main/processarc.c:548 +#: main/processarc.c:514 msgid "error reading dpkg-deb tar output" msgstr "error reading dpkg-deb tar output" -#: main/processarc.c:551 +#: main/processarc.c:517 msgid "unexpected EOF in filesystem tarfile - corrupted package archive" msgstr "unexpected EOF in filesystem tarfile - corrupted package archive" -#: main/processarc.c:553 +#: main/processarc.c:519 msgid "corrupted filesystem tarfile - corrupted package archive" msgstr "corrupted filesystem tarfile - corrupted package archive" -#: main/processarc.c:610 +#: main/processarc.c:576 #, c-format msgid "dpkg: warning - unable to delete old file `%.250s': %s\n" msgstr "dpkg: warning - unable to delete old file `%.250s': %s\n" -#: main/processarc.c:632 main/processarc.c:867 main/remove.c:287 +#: main/processarc.c:598 main/processarc.c:833 main/remove.c:287 msgid "cannot read info directory" msgstr "cannot read info directory" -#: main/processarc.c:645 +#: main/processarc.c:611 #, c-format msgid "old version of package has overly-long info file name starting `%.250s'" msgstr "" "old version of package has overly-long info file name starting `%.250s'" -#: main/processarc.c:657 +#: main/processarc.c:623 #, c-format msgid "unable to remove obsolete info file `%.250s'" msgstr "unable to remove obsolete info file `%.250s'" -#: main/processarc.c:660 +#: main/processarc.c:626 #, c-format msgid "unable to install (supposed) new info file `%.250s'" msgstr "unable to install (supposed) new info file `%.250s'" -#: main/processarc.c:667 +#: main/processarc.c:633 msgid "unable to open temp control directory" msgstr "unable to open temp control directory" -#: main/processarc.c:676 +#: main/processarc.c:642 #, c-format msgid "package contains overly-long control info file name (starting `%.50s')" msgstr "package contains overly-long control info file name (starting `%.50s')" -#: main/processarc.c:681 +#: main/processarc.c:647 #, c-format msgid "package control info contained directory `%.250s'" msgstr "package control info contained directory `%.250s'" -#: main/processarc.c:683 +#: main/processarc.c:649 #, c-format msgid "package control info rmdir of `%.250s' didn't say not a dir" msgstr "package control info rmdir of `%.250s' didn't say not a dir" -#: main/processarc.c:689 +#: main/processarc.c:655 #, c-format msgid "dpkg: warning - package %s contained list as info file" msgstr "dpkg: warning - package %s contained list as info file" -#: main/processarc.c:696 +#: main/processarc.c:662 #, c-format msgid "unable to install new info file `%.250s' as `%.250s'" msgstr "unable to install new info file `%.250s' as `%.250s'" -#: main/processarc.c:847 +#: main/processarc.c:813 #, c-format msgid "(Noting disappearance of %s, which has been completely replaced.)\n" msgstr "(Noting disappearance of %s, which has been completely replaced.)\n" -#: main/processarc.c:883 +#: main/processarc.c:849 #, c-format msgid "unable to delete disappearing control info file `%.250s'" msgstr "unable to delete disappearing control info file `%.250s'" @@ -3503,6 +3461,40 @@ msgstr "%s: %d of %d file(s) failed MD5 check\n" msgid "%s: no files checked\n" msgstr "%s: no files checked\n" +#~ msgid "cannot open GPL file /usr/doc/dpkg/copyright" +#~ msgstr "cannot open GPL file /usr/doc/dpkg/copyright" + +#~ msgid "--assert-support-predepends does not take any arguments" +#~ msgstr "--assert-support-predepends does not take any arguments" + +#~ msgid "" +#~ "Version of dpkg with Pre-Depends support not yet configured.\n" +#~ " Please use `dpkg --configure dpkg', and then try again.\n" +#~ msgstr "" +#~ "Version of dpkg with Pre-Depends support not yet configured.\n" +#~ " Please use `dpkg --configure dpkg', and then try again.\n" + +#~ msgid "" +#~ "dpkg not recorded as installed, cannot check for Pre-Depends support !\n" +#~ msgstr "" +#~ "dpkg not recorded as installed, cannot check for Pre-Depends support !\n" + +#~ msgid "Selecting previously deselected package %s.\n" +#~ msgstr "Selecting previously deselected package %s.\n" + +#~ msgid "Skipping deselected package %s.\n" +#~ msgstr "Skipping deselected package %s.\n" + +#~ msgid "dpkg - warning: downgrading %.250s from %.250s to %.250s.\n" +#~ msgstr "dpkg - warning: downgrading %.250s from %.250s to %.250s.\n" + +#~ msgid "Will not downgrade %.250s from version %.250s to %.250s, skipping.\n" +#~ msgstr "" +#~ "Will not downgrade %.250s from version %.250s to %.250s, skipping.\n" + +#~ msgid "Version %.250s of %.250s already installed, skipping.\n" +#~ msgstr "Version %.250s of %.250s already installed, skipping.\n" + #, fuzzy #~ msgid "" #~ "Usage: \n" diff --git a/po/fr.po b/po/fr.po index 20fc5fdb..0116c968 100644 --- a/po/fr.po +++ b/po/fr.po @@ -17,7 +17,7 @@ msgid "" msgstr "" "Project-Id-Version: Debian dpkg 1.4.0.14\n" -"POT-Creation-Date: 1999-07-06 16:05-0700\n" +"POT-Creation-Date: 1999-09-10 03:34+0200\n" "PO-Revision-Date: 1997-05-13 22:07 EDT\n" "Last-Translator: Christophe Le Bars \n" "Language-Team: French\n" @@ -173,37 +173,37 @@ msgid "operation requires read/write access to dpkg status area" msgstr "" "opération demandant un accès en lecture-écriture dans la zone d'états de dpkg" -#: lib/dbmodify.c:197 +#: lib/dbmodify.c:198 #, c-format msgid "failed to remove my own update file %.255s" msgstr "échec pour retirer mon propre fichier de mise à jour %.255s" -#: lib/dbmodify.c:229 +#: lib/dbmodify.c:230 #, c-format msgid "unable to write updated status of `%.250s'" msgstr "impossible d'écrire l'état modifié de `%.250s'" -#: lib/dbmodify.c:231 +#: lib/dbmodify.c:232 #, c-format msgid "unable to flush updated status of `%.250s'" msgstr "impossible de vider l'état modifié de `%.250s'" -#: lib/dbmodify.c:233 +#: lib/dbmodify.c:234 #, c-format msgid "unable to truncate for updated status of `%.250s'" msgstr "impossible de troncaténer pour l'état modifié de `%.250s'" -#: lib/dbmodify.c:235 +#: lib/dbmodify.c:236 #, c-format msgid "unable to fsync updated status of `%.250s'" msgstr "impossible de \"fsync\" l'état modifié de `%.250s'" -#: lib/dbmodify.c:237 +#: lib/dbmodify.c:238 #, c-format msgid "unable to close updated status of `%.250s'" msgstr "impossible de fermer l'état modifié de `%.250s'" -#: lib/dbmodify.c:240 +#: lib/dbmodify.c:241 #, c-format msgid "unable to install updated status of `%.250s'" msgstr "impossible d'installer l'état modifié de `%.250s'" @@ -503,7 +503,7 @@ msgstr "sous-processus %s tu msgid "subprocess %s failed with wait status code %d" msgstr "sous-processus %s a échoué avec le code d'état d'attente %d" -#: lib/mlib.c:122 main/help.c:350 +#: lib/mlib.c:122 main/help.c:360 #, c-format msgid "wait for %s failed" msgstr "attente de l'échec de %s" @@ -693,14 +693,15 @@ msgid "empty value for %s" msgstr "valeur nulle pour %s" #: lib/showcright.c:31 -msgid "cannot open GPL file /usr/doc/dpkg/copyright" -msgstr "ne peut pas ouvrir le fichier GPL /usr/doc/dpkg/copyright" +#, fuzzy +msgid "cannot open GPL file " +msgstr "ne peut pas supprimer la liste des anciens fichiers" #: lib/showcright.c:34 msgid "unable to exec cat for displaying GPL file" msgstr "impossible d'exécuter \"cat\" pour afficher le fichier GPL" -#: lib/varbuf.c:76 +#: lib/varbuf.c:77 msgid "failed to realloc for variable buffer" msgstr "échec pour réallouer les variables \"buffer\"" @@ -1590,30 +1591,11 @@ msgstr "" "archives,\n" "et dpkg --contents (= dpkg-deb --contents) pour afficher leurs contenus." -#: main/enquiry.c:499 -msgid "--assert-support-predepends does not take any arguments" -msgstr "--assert-support-predepends ne prend aucun argument" - -#: main/enquiry.c:514 -msgid "" -"Version of dpkg with Pre-Depends support not yet configured.\n" -" Please use `dpkg --configure dpkg', and then try again.\n" -msgstr "" -"Version de dpkg avec support des pré-dépendances non encore configurée.\n" -" Utilisez s'il vous plaît `dpkg --configure dpkg' et essayez à nouveau.\n" - -#: main/enquiry.c:518 -msgid "" -"dpkg not recorded as installed, cannot check for Pre-Depends support !\n" -msgstr "" -"dpkg non enregistré comme installé, vérification du support des " -"pré-dépendances impossible !\n" - -#: main/enquiry.c:541 +#: main/enquiry.c:524 msgid "--predep-package does not take any argument" msgstr "--predep-package ne prend aucun argument" -#: main/enquiry.c:593 +#: main/enquiry.c:576 #, c-format msgid "" "dpkg: cannot see how to satisfy pre-dependency:\n" @@ -1622,13 +1604,13 @@ msgstr "" "dpkg: ne peut pas voir comment satisfaire les pré-dépendances:\n" " %s\n" -#: main/enquiry.c:594 +#: main/enquiry.c:577 #, c-format msgid "cannot satisfy pre-dependencies for %.250s (wanted due to %.250s)" msgstr "" "ne peut satisfaire les pré-dépendances pour %.250s (réclamé par %.250s)" -#: main/enquiry.c:614 +#: main/enquiry.c:597 #, c-format msgid "" "dpkg: unexpected output from `%s --print-libgcc-file-name':\n" @@ -1637,69 +1619,69 @@ msgstr "" "dpkg: sortie inattendu de `%s --print-libgcc-file-name':\n" " `%s'\n" -#: main/enquiry.c:617 +#: main/enquiry.c:600 #, c-format msgid "compiler libgcc filename not understood: %.250s" msgstr "fichier libgcc du compilateur non compris: %.250s" -#: main/enquiry.c:621 +#: main/enquiry.c:604 msgid "--print-installation-architecture does not take any argument" msgstr "--print-installation-architecture ne prend aucun argument" -#: main/enquiry.c:641 +#: main/enquiry.c:624 msgid "--print-architecture does not take any argument" msgstr "--print-architecture ne prend aucun argument" -#: main/enquiry.c:647 +#: main/enquiry.c:630 msgid "failed to fdopen CC pipe" msgstr "échec pour \"fdopen\" le tube de CC" -#: main/enquiry.c:651 +#: main/enquiry.c:634 #, c-format msgid "failed to exec C compiler `%.250s'" msgstr "échec pour exécuter le compilateur C `%.250s'" -#: main/enquiry.c:655 +#: main/enquiry.c:638 msgid "error reading from CC pipe" msgstr "erreur en lisant le tube de CC" -#: main/enquiry.c:657 +#: main/enquiry.c:640 msgid "empty output" msgstr "sortie vide" -#: main/enquiry.c:659 +#: main/enquiry.c:642 msgid "no newline" msgstr "pas de saut de ligne" -#: main/enquiry.c:662 +#: main/enquiry.c:645 msgid "no gcc-lib component" msgstr "pas de composant gcc-lib" -#: main/enquiry.c:664 +#: main/enquiry.c:647 msgid "no hyphen after gcc-lib" msgstr "pas de trait d'union pas gcc-lib" -#: main/enquiry.c:676 +#: main/enquiry.c:659 #, c-format msgid "dpkg: warning, architecture `%s' not in remapping table\n" msgstr "" "dpkg: avertissement, architecture `%s' inexistante dans la tale des " "correspondances\n" -#: main/enquiry.c:718 +#: main/enquiry.c:701 msgid "--cmpversions takes three arguments: " msgstr "--cmpversions prend trois arguments: " -#: main/enquiry.c:723 +#: main/enquiry.c:706 msgid "--cmpversions bad relation" msgstr "--cmpversions mauvaise relation" -#: main/enquiry.c:728 +#: main/enquiry.c:711 #, c-format msgid "version a has bad syntax: %s\n" msgstr "mauvaise syntaxe de la version a: %s\n" -#: main/enquiry.c:738 +#: main/enquiry.c:721 #, c-format msgid "version b has bad syntax: %s\n" msgstr "mauvaise syntaxe de la version b: %s\n" @@ -1736,14 +1718,14 @@ msgstr "" "dpkg - avertissement, problème de recouvrement à cause de --force:\n" " " -#: main/filesdb.c:116 +#: main/filesdb.c:120 #, c-format msgid "unable to open files list file for package `%.250s'" msgstr "" "impossible d'ouvrir le fichier comprenant la liste des fichiers du paquet " "`%.250s'" -#: main/filesdb.c:121 +#: main/filesdb.c:125 #, c-format msgid "" "dpkg: serious warning: files list file for package `%.250s' missing, " @@ -1753,151 +1735,151 @@ msgstr "" "du paquet `%.250s' étant manquant, il est considéré que le paquet n'a aucun " "fichier actuellement installé.\n" -#: main/filesdb.c:132 +#: main/filesdb.c:136 #, c-format msgid "unable to set buffering on `%.250s'" msgstr "impossible de paramétrer le \"buffering\" sur `%.250s'" -#: main/filesdb.c:142 +#: main/filesdb.c:146 #, c-format msgid "fgets gave an empty null-terminated string from `%.250s'" msgstr "\"fgets\" a donné une chaine vide de `%.250s'" -#: main/filesdb.c:160 +#: main/filesdb.c:164 #, c-format msgid "files list file for package `%.250s' contains empty filename" msgstr "" "la liste des fichiers pour le paquet `%.250s' contient un nom de fichier vide" -#: main/filesdb.c:168 +#: main/filesdb.c:172 #, c-format msgid "error reading files list file for package `%.250s'" msgstr "" "erreur de lecture du fichier contenant la liste des fichiers du paquet " "`%.250s'" -#: main/filesdb.c:171 +#: main/filesdb.c:175 #, c-format msgid "error closing files list file for package `%.250s'" msgstr "" "erreur de fermeture du fichier contenant la liste des fichiers du paquet " "`%.250s'" -#: main/filesdb.c:173 +#: main/filesdb.c:177 #, c-format msgid "files list file for package `%.250s' is truncated" msgstr "" "le fichier contenant la liste des fichiers du paquet `%.250s' est coupé" -#: main/filesdb.c:204 +#: main/filesdb.c:208 msgid "(Reading database ... " msgstr "(Lecture de la base de données ... " -#: main/filesdb.c:204 +#: main/filesdb.c:208 msgid "(Scanning database ... " msgstr "(Recherche dans la base de données ... " -#: main/filesdb.c:212 +#: main/filesdb.c:216 #, c-format msgid "%d files and directories currently installed.)\n" msgstr "%d fichiers et répertoires déjà installés.)\n" -#: main/filesdb.c:243 +#: main/filesdb.c:247 #, c-format msgid "unable to create updated files list file for package %s" msgstr "" "impossible de créer le fichier contenant la liste mise à jour des fichiers " "du paquet %s" -#: main/filesdb.c:253 +#: main/filesdb.c:257 #, c-format msgid "failed to write to updated files list file for package %s" msgstr "" "échec pour écrire le fichier contenant la liste mise à jour des fichiers du " "paquet %s" -#: main/filesdb.c:255 +#: main/filesdb.c:259 #, c-format msgid "failed to flush updated files list file for package %s" msgstr "" "échec pour vider le fichier contenant la liste mise à jour des fichiers du " "paquet %s" -#: main/filesdb.c:257 +#: main/filesdb.c:261 #, c-format msgid "failed to sync updated files list file for package %s" msgstr "" "échec pour \"sync\" le fichier contenant la liste mise à jour des fichiers " "du paquet %s" -#: main/filesdb.c:260 +#: main/filesdb.c:264 #, c-format msgid "failed to close updated files list file for package %s" msgstr "" "échec pour fermer le fichier contenant la liste mise à jour des fichiers du " "paquet %s" -#: main/filesdb.c:262 +#: main/filesdb.c:266 #, c-format msgid "failed to install updated files list file for package %s" msgstr "" "échec pour installer le fichier contenant la liste mise à jour des fichiers " "du paquet %s" -#: main/filesdb.c:326 +#: main/filesdb.c:330 msgid "failed to open diversions file" msgstr "échec pour ouvrir le fichier des détournements" -#: main/filesdb.c:330 +#: main/filesdb.c:334 msgid "failed to fstat previous diversions file" msgstr "échec pour \"fstat\" l'ancien fichier des détournements" -#: main/filesdb.c:332 +#: main/filesdb.c:336 msgid "failed to fstat diversions file" msgstr "échec pour \"fstat\" le fichier des détournements" -#: main/filesdb.c:352 +#: main/filesdb.c:356 msgid "fgets gave an empty string from diversions [i]" msgstr "\"fgets\" a donné une chaine vide pour les détournements [i]" -#: main/filesdb.c:353 +#: main/filesdb.c:357 msgid "diversions file has too-long line or EOF [i]" msgstr "le fichier des détournements a une ligne trop longue ou EOF [i]" -#: main/filesdb.c:359 +#: main/filesdb.c:363 msgid "read error in diversions [ii]" msgstr "erreur de lecture dans les détournements [ii]" -#: main/filesdb.c:360 +#: main/filesdb.c:364 msgid "unexpected EOF in diversions [ii]" msgstr "EOF inattendu dans les détournements [ii]" -#: main/filesdb.c:362 +#: main/filesdb.c:367 msgid "fgets gave an empty string from diversions [ii]" msgstr "\"fgets\" a donné une chaine vide pour les détournements [ii]" -#: main/filesdb.c:363 main/filesdb.c:373 +#: main/filesdb.c:368 main/filesdb.c:379 msgid "diversions file has too-long line or EOF [ii]" msgstr "le fichier des détournements a une ligne trop longue ou EOF [ii]" -#: main/filesdb.c:369 +#: main/filesdb.c:374 msgid "read error in diversions [iii]" msgstr "erreur de lecture dans les détournements [iii]" -#: main/filesdb.c:370 +#: main/filesdb.c:375 msgid "unexpected EOF in diversions [iii]" msgstr "EOF inattendu dans les détournements [iii]" -#: main/filesdb.c:372 +#: main/filesdb.c:378 msgid "fgets gave an empty string from diversions [iii]" msgstr "\"fgets\" a donné une chaine vide pour les détournements [iii]" -#: main/filesdb.c:380 +#: main/filesdb.c:386 #, c-format msgid "conflicting diversions involving `%.250s' or `%.250s'" msgstr "détournements contradictoires impliquant `%.250s' ou `%.250s'" -#: main/filesdb.c:389 +#: main/filesdb.c:395 msgid "read error in diversions [i]" msgstr "erreur de lecture dans les détournements [i]" @@ -1944,90 +1926,90 @@ msgstr "" "NB: la variable PATH de root doit normalement contenir /usr/local/sbin, " "/usr/sbin et /sbin." -#: main/help.c:210 +#: main/help.c:219 #, c-format msgid "error un-catching signal %s: %s\n" msgstr "erreur signal %s non-capturé: %s\n" -#: main/help.c:228 +#: main/help.c:237 #, c-format msgid "unable to ignore signal %s before running script" msgstr "impossible d'ignorer le signal %s avant le lancement du script" -#: main/help.c:237 +#: main/help.c:246 #, c-format msgid "unable to set execute permissions on `%.250s'" msgstr "impossible de paramétrer les permissions en exécution sur `%.250s'" -#: main/help.c:261 +#: main/help.c:270 #, c-format msgid "unable to stat installed %s script `%.250s'" msgstr "impossible d'analyser le script installé %s `%.250s'" -#: main/help.c:268 main/help.c:346 main/help.c:385 +#: main/help.c:277 main/help.c:356 main/help.c:396 #, c-format msgid "unable to execute %s" msgstr "impossible d'exécuter %s" -#: main/help.c:297 +#: main/help.c:307 #, c-format msgid "unable to stat new %s script `%.250s'" msgstr "impossible d'analyser le nouveau script %s `%.250s'" -#: main/help.c:304 +#: main/help.c:314 #, c-format msgid "unable to execute new %s" msgstr "impossible d'exécuter le nouveau %s" -#: main/help.c:338 +#: main/help.c:348 #, c-format msgid "dpkg: warning - unable to stat %s `%.250s': %s\n" msgstr "dpkg: avertissement - impossible d'analyser %s `%.250s': %s\n" -#: main/help.c:354 +#: main/help.c:364 #, c-format msgid "dpkg: warning - %s returned error exit status %d\n" msgstr "dpkg: avertissement- %s a retourné un code d'erreur de sortie %d\n" -#: main/help.c:357 +#: main/help.c:367 #, c-format msgid "dpkg: warning - %s killed by signal (%s)%s\n" msgstr "dpkg: avertissement - %s a été tué par le signal (%s)%s\n" -#: main/help.c:360 +#: main/help.c:370 #, c-format msgid "%s failed with unknown wait status code %d" msgstr "%s a échoué avec le code d'attente inconnu %d" -#: main/help.c:364 +#: main/help.c:374 msgid "dpkg - trying script from the new package instead ...\n" msgstr "dpkg - tentative avec le script du nouveau paquet à la place ...\n" -#: main/help.c:371 +#: main/help.c:381 #, c-format msgid "new %s script" msgstr "nouveau script %s" -#: main/help.c:375 +#: main/help.c:385 msgid "there is no script in the new version of the package - giving up" msgstr "il n'y a pas de script dans cette nouvelle version du paquet - abandon" -#: main/help.c:377 +#: main/help.c:387 #, c-format msgid "unable to stat %s `%.250s'" msgstr "impossible d'analyser %s `%.250s'" -#: main/help.c:390 +#: main/help.c:401 msgid "dpkg: ... it looks like that went OK.\n" msgstr "dpkg: ... tout a certainement fonctionné correctement.\n" #. Huh ? -#: main/help.c:469 +#: main/help.c:496 #, c-format msgid "failed to rmdir/unlink `%.255s'" msgstr "échec pour \"rmdir/unlink\" `%.255s'" -#: dpkg-deb/info.c:52 main/help.c:473 +#: dpkg-deb/info.c:52 main/help.c:500 msgid "failed to exec rm for cleanup" msgstr "échec pour exécuter \"rm\" pour nettoyage" @@ -2155,7 +2137,7 @@ msgid "--ignore-depends requires a legal package name. `%.250s' is not; %s" msgstr "" "--ignore-depends requiert un nom de paquet légal. `%.250s' ne l'est pas; %s" -#: main/main.c:251 +#: main/main.c:257 #, fuzzy msgid "" "dpkg forcing options - control behaviour when problems found:\n" @@ -2217,16 +2199,16 @@ msgstr "" "votre installation.\n" "Les options de forçage marquées [*] sont activées par défaut.\n" -#: main/main.c:283 +#: main/main.c:289 #, c-format msgid "unknown force/refuse option `%.*s'" msgstr "option de forçage `%.*s' inconnue" -#: main/main.c:360 +#: main/main.c:366 msgid "failed to exec dpkg-deb" msgstr "échec pour exécuter \"dpkg-deb\"" -#: dpkg-deb/main.c:150 main/main.c:396 split/main.c:163 +#: dpkg-deb/main.c:150 main/main.c:402 split/main.c:163 msgid "need an action option" msgstr "manque une option d'action" @@ -2337,34 +2319,7 @@ msgstr "Enregistrement de l'information sur %s de %s.\n" msgid "package architecture (%s) does not match system (%s)" msgstr "l'architecture du paquet (%s) ne correspond pas celle du système (%s)" -#: main/processarc.c:206 -#, c-format -msgid "Selecting previously deselected package %s.\n" -msgstr "Sélection du paquet %s précédemment déselectionné.\n" - -#: main/processarc.c:209 -#, c-format -msgid "Skipping deselected package %s.\n" -msgstr "Paquet déselectionné %s ignoré.\n" - -#: main/processarc.c:220 -#, c-format -msgid "dpkg - warning: downgrading %.250s from %.250s to %.250s.\n" -msgstr "" -"dpkg - avertissement: %.250s mis à jour de %.250s vers l'ancienne %.250s.\n" - -#: main/processarc.c:225 -#, c-format -msgid "Will not downgrade %.250s from version %.250s to %.250s, skipping.\n" -msgstr "" -"Mise à jour de %.250s de la version %.250s vers l'ancienne %.250s ignorée.\n" - -#: main/processarc.c:235 -#, c-format -msgid "Version %.250s of %.250s already installed, skipping.\n" -msgstr "Version %.250s de %.250s déjà installée, paquet ignoré.\n" - -#: main/processarc.c:268 +#: main/processarc.c:234 #, c-format msgid "" "dpkg: regarding %s containing %s, pre-dependency problem:\n" @@ -2373,152 +2328,152 @@ msgstr "" "dpkg: concernant %s contenant %s, problème de pré-dépendance:\n" "%s" -#: main/processarc.c:271 +#: main/processarc.c:237 #, c-format msgid "pre-dependency problem - not installing %.250s" msgstr "problème de pré-dépendance - %.250s non installé" -#: main/processarc.c:272 +#: main/processarc.c:238 msgid "dpkg: warning - ignoring pre-dependency problem !\n" msgstr "dpkg: avertissement - problème de pré-dépendance ignoré !\n" -#: main/processarc.c:286 +#: main/processarc.c:252 #, c-format msgid "Preparing to replace %s %s (using %s) ...\n" msgstr "Préparation de la mise à jour de %s %s (en utilisant %s) ...\n" -#: main/processarc.c:291 +#: main/processarc.c:257 #, c-format msgid "Unpacking %s (from %s) ...\n" msgstr "Dépaquetage de %s (à partir de %s) ...\n" -#: main/processarc.c:311 +#: main/processarc.c:277 #, c-format msgid "name of conffile (starting `%.250s') is too long (>%d characters)" msgstr "" "le nom du fichier de configuration (commençant par `%.250s') est trop long " "(>%d caractères)" -#: main/processarc.c:365 +#: main/processarc.c:331 #, c-format msgid "read error in %.250s" msgstr "erreur de lecture dans %.250s" #. conff= fopen() -#: main/processarc.c:367 +#: main/processarc.c:333 #, c-format msgid "error closing %.250s" msgstr "erreur de fermeture de %.250s" -#: main/processarc.c:369 +#: main/processarc.c:335 #, c-format msgid "error trying to open %.250s" msgstr "erreur en essayant d'ouvrir %.250s" -#: main/processarc.c:401 +#: main/processarc.c:367 #, c-format msgid "De-configuring %s, so that we can remove %s ...\n" msgstr "Déconfiguration de %s, pour pouvoir supprimer %s ...\n" -#: main/processarc.c:458 +#: main/processarc.c:424 #, c-format msgid "Unpacking replacement %.250s ...\n" msgstr "Dépaquetage de la mise à jour de %.250s ...\n" -#: main/processarc.c:534 +#: main/processarc.c:500 msgid "unable to exec dpkg-deb to get filesystem archive" msgstr "" "impossible d'exécuter dpkg-deb pour obtenir l'archive du système de fichiers" -#: main/processarc.c:542 +#: main/processarc.c:508 msgid "unable to fdopen dpkg-deb extract pipe" msgstr "impossible de \"fdopen\" le tube d'extraction de dpkg-deb" -#: main/processarc.c:548 +#: main/processarc.c:514 msgid "error reading dpkg-deb tar output" msgstr "erreur en lisant la sortie du \"tar\" de dpkg-deb" -#: main/processarc.c:551 +#: main/processarc.c:517 msgid "unexpected EOF in filesystem tarfile - corrupted package archive" msgstr "" "EOF inattendu dans l'archive du système de fichiers - archive du paquet " "corrompue" -#: main/processarc.c:553 +#: main/processarc.c:519 msgid "corrupted filesystem tarfile - corrupted package archive" msgstr "archive du système de fichiers corrompue - archive du paquet corrompue" -#: main/processarc.c:610 +#: main/processarc.c:576 #, c-format msgid "dpkg: warning - unable to delete old file `%.250s': %s\n" msgstr "" "dpkg: avertissement - impossible de supprimer le fichier `%.250s': %s\n" -#: main/processarc.c:632 main/processarc.c:867 main/remove.c:287 +#: main/processarc.c:598 main/processarc.c:833 main/remove.c:287 msgid "cannot read info directory" msgstr "ne peut pas lire le répertoire d'informations" -#: main/processarc.c:645 +#: main/processarc.c:611 #, c-format msgid "old version of package has overly-long info file name starting `%.250s'" msgstr "" "l'ancienne version du paquet a un nom de fichier d'information commençant " "par `%.250s' trop long" -#: main/processarc.c:657 +#: main/processarc.c:623 #, c-format msgid "unable to remove obsolete info file `%.250s'" msgstr "impossible de supprimer le fichier d'information obsolète `%.250s'" -#: main/processarc.c:660 +#: main/processarc.c:626 #, c-format msgid "unable to install (supposed) new info file `%.250s'" msgstr "" "impossible d'installer le (supposé) nouveau fichier d'information `%.250s'" -#: main/processarc.c:667 +#: main/processarc.c:633 msgid "unable to open temp control directory" msgstr "impossible d'ouvrir le répertoire de contrôle temporaire" -#: main/processarc.c:676 +#: main/processarc.c:642 #, c-format msgid "package contains overly-long control info file name (starting `%.50s')" msgstr "" "le paquet contient un nom de fichier de contrôle trop long (commençant par " "`%.50s')" -#: main/processarc.c:681 +#: main/processarc.c:647 #, c-format msgid "package control info contained directory `%.250s'" msgstr "l'information de contrôle du paquet contient le répertoire `%.250s'" -#: main/processarc.c:683 +#: main/processarc.c:649 #, c-format msgid "package control info rmdir of `%.250s' didn't say not a dir" msgstr "" "l'information de contrôle du paquet \"rmdir\" de `%.250s' ne dit pas que ce " "n'est pas un répertoire" -#: main/processarc.c:689 +#: main/processarc.c:655 #, c-format msgid "dpkg: warning - package %s contained list as info file" msgstr "" "dpkg: avertissement - le paquet %s contient une liste comme fichier " "d'information" -#: main/processarc.c:696 +#: main/processarc.c:662 #, c-format msgid "unable to install new info file `%.250s' as `%.250s'" msgstr "" "impossible d'installer le nouveau fichier d'information `%.250s' comme " "`%.250s'" -#: main/processarc.c:847 +#: main/processarc.c:813 #, c-format msgid "(Noting disappearance of %s, which has been completely replaced.)\n" msgstr "(A noter la disparition de %s, qui a été complètement remplacé.)\n" -#: main/processarc.c:883 +#: main/processarc.c:849 #, c-format msgid "unable to delete disappearing control info file `%.250s'" msgstr "" @@ -3739,6 +3694,42 @@ msgstr "%s: msgid "%s: no files checked\n" msgstr "%s: aucun fichiers vérifiés\n" +#~ msgid "cannot open GPL file /usr/doc/dpkg/copyright" +#~ msgstr "ne peut pas ouvrir le fichier GPL /usr/doc/dpkg/copyright" + +#~ msgid "--assert-support-predepends does not take any arguments" +#~ msgstr "--assert-support-predepends ne prend aucun argument" + +#~ msgid "" +#~ "Version of dpkg with Pre-Depends support not yet configured.\n" +#~ " Please use `dpkg --configure dpkg', and then try again.\n" +#~ msgstr "" +#~ "Version de dpkg avec support des pré-dépendances non encore configurée.\n" +#~ " Utilisez s'il vous plaît `dpkg --configure dpkg' et essayez à nouveau.\n" + +#~ msgid "" +#~ "dpkg not recorded as installed, cannot check for Pre-Depends support !\n" +#~ msgstr "" +#~ "dpkg non enregistré comme installé, vérification du support des " +#~ "pré-dépendances impossible !\n" + +#~ msgid "Selecting previously deselected package %s.\n" +#~ msgstr "Sélection du paquet %s précédemment déselectionné.\n" + +#~ msgid "Skipping deselected package %s.\n" +#~ msgstr "Paquet déselectionné %s ignoré.\n" + +#~ msgid "dpkg - warning: downgrading %.250s from %.250s to %.250s.\n" +#~ msgstr "" +#~ "dpkg - avertissement: %.250s mis à jour de %.250s vers l'ancienne %.250s.\n" + +#~ msgid "Will not downgrade %.250s from version %.250s to %.250s, skipping.\n" +#~ msgstr "" +#~ "Mise à jour de %.250s de la version %.250s vers l'ancienne %.250s ignorée.\n" + +#~ msgid "Version %.250s of %.250s already installed, skipping.\n" +#~ msgstr "Version %.250s de %.250s déjà installée, paquet ignoré.\n" + #, fuzzy #~ msgid "" #~ "Usage: \n" diff --git a/scripts/dpkg-scanpackages.pl b/scripts/dpkg-scanpackages.pl index 01ca69ac..d1fe1a65 100755 --- a/scripts/dpkg-scanpackages.pl +++ b/scripts/dpkg-scanpackages.pl @@ -26,6 +26,7 @@ $version= '1.2.6'; # This line modified by Makefile 'MD5sum', 'Description'); +$written=0; $i=100; grep($pri{$_}=$i--,@fieldpri); $#ARGV == 1 || $#ARGV == 2 -- 2.39.5