]> git.saurik.com Git - apt.git/commitdiff
merged from donkults experimental branch
authorMichael Vogt <michael.vogt@ubuntu.com>
Wed, 11 Apr 2012 15:45:36 +0000 (17:45 +0200)
committerMichael Vogt <michael.vogt@ubuntu.com>
Wed, 11 Apr 2012 15:45:36 +0000 (17:45 +0200)
91 files changed:
.bzr-builddeb/default.conf
Makefile
apt-inst/database.cc [deleted file]
apt-inst/database.h [deleted file]
apt-inst/deb/debfile.cc
apt-inst/deb/debfile.h
apt-inst/deb/dpkgdb.cc [deleted file]
apt-inst/deb/dpkgdb.h [deleted file]
apt-inst/makefile
apt-pkg/acquire-worker.cc
apt-pkg/acquire.cc
apt-pkg/aptconfiguration.cc
apt-pkg/cdrom.cc
apt-pkg/clean.cc
apt-pkg/contrib/fileutl.cc
apt-pkg/contrib/fileutl.h
apt-pkg/contrib/netrc.cc
apt-pkg/deb/dpkgpm.cc
apt-pkg/init.cc
apt-pkg/makefile
buildlib/config.h.in
buildlib/defaults.mak
buildlib/environment.mak.in
buildlib/podomain.mak
cmdline/apt-cache.cc
cmdline/apt-cdrom.cc
cmdline/apt-config.cc
cmdline/apt-dump-solver.cc
cmdline/apt-extracttemplates.cc
cmdline/apt-get.cc
cmdline/apt-internal-solver.cc
cmdline/apt-mark.cc
cmdline/apt-sortpkgs.cc
cmdline/makefile
configure.in
debian/apt-utils.install
debian/changelog
debian/control
debian/libapt-inst1.4.symbols
debian/libapt-pkg4.12.symbols
debian/rules
doc/Doxyfile.in
doc/apt-cache.8.xml
doc/apt-cdrom.8.xml
doc/apt-config.8.xml
doc/apt-extracttemplates.1.xml
doc/apt-ftparchive.1.xml
doc/apt-get.8.xml
doc/apt-key.8.xml
doc/apt-mark.8.xml
doc/apt-sortpkgs.1.xml
doc/apt-verbatim.ent
doc/apt.ent
doc/makefile
doc/po/apt-doc.pot
doc/po/de.po
doc/po/es.po
doc/po/fr.po
doc/po/it.po
doc/po/ja.po
doc/po/pl.po
doc/po/pt.po
doc/po/pt_BR.po
ftparchive/apt-ftparchive.cc
ftparchive/makefile
methods/bzip2.cc [deleted file]
methods/gzip.cc
methods/http.cc
methods/https.cc
methods/makefile
methods/mirror.cc
methods/rred.cc
po/da.po
po/fi.po
po/fr.po
po/makefile
po/pl.po
prepare-release [new file with mode: 0755]
test/Makefile
test/integration/framework
test/integration/test-bug-595691-empty-and-broken-archive-files
test/integration/test-bug-604222-new-and-autoremove
test/integration/test-bug-613420-new-garbage-dependency
test/integration/test-conflicts-loop
test/integration/test-hashsum-verification
test/integration/test-pdiff-usage
test/integration/test-releasefile-verification
test/interactive-helper/extract-control.cc
test/interactive-helper/makefile
test/interactive-helper/testextract.cc [deleted file]
test/libapt/run-tests

index 9c55498ceda8ea7ff3820e9ff8cc398d96c2886c..c33445b5661b848b8779b1a71ef5cfec5fe0de57 100644 (file)
@@ -1,2 +1,6 @@
 [BUILDDEB]
 native = true
+
+[HOOKS]
+pre-export = ./prepare-release pre-export
+post-build = ./prepare-release post-build
index 9a47014c3ccb0fb1d840bb619bb5e6479acba539..aa8160ac0694d7515ec5fb06b9724b088b5c9927 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -9,8 +9,8 @@ endif
 .PHONY: default
 default: startup all
 
-.PHONY: headers library clean veryclean all binary program doc test
-all headers library clean veryclean binary program doc dirs test:
+.PHONY: headers library clean veryclean all binary program doc test update-po
+startup all headers library clean veryclean binary program doc dirs test update-po:
        $(MAKE) -C apt-pkg $@
        $(MAKE) -C apt-inst $@
        $(MAKE) -C methods $@
@@ -21,6 +21,8 @@ all headers library clean veryclean binary program doc dirs test:
        $(MAKE) -C po $@
        $(MAKE) -C test $@
 
+update-po: startup
+
 # Some very common aliases
 .PHONY: maintainer-clean dist-clean distclean pristine sanity 
 maintainer-clean dist-clean distclean pristine sanity: veryclean
diff --git a/apt-inst/database.cc b/apt-inst/database.cc
deleted file mode 100644 (file)
index da76134..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-// -*- mode: cpp; mode: fold -*-
-// Description                                                         /*{{{*/
-// $Id: database.cc,v 1.2 2001/02/20 07:03:16 jgg Exp $
-/* ######################################################################
-
-   Data Base Abstraction
-   
-   ##################################################################### */
-                                                                       /*}}}*/
-// Include Files                                                       /*{{{*/
-#include<config.h>
-
-#include <apt-pkg/database.h>
-#include <apt-pkg/filelist.h>
-#include <apt-pkg/pkgcachegen.h>
-                                                                       /*}}}*/
-
-// DataBase::GetMetaTmp - Get the temp dir                             /*{{{*/
-// ---------------------------------------------------------------------
-/* This re-initializes the meta temporary directory if it hasn't yet 
-   been inited for this cycle. The flag is the emptyness of MetaDir */
-bool pkgDataBase::GetMetaTmp(std::string &Dir)
-{
-   if (MetaDir.empty() == true)
-      if (InitMetaTmp(MetaDir) == false)
-        return false;
-   Dir = MetaDir;
-   return true;
-}
-                                                                       /*}}}*/
-pkgDataBase::~pkgDataBase()
-{
-   delete Cache;
-   delete FList;
-}
diff --git a/apt-inst/database.h b/apt-inst/database.h
deleted file mode 100644 (file)
index 64e149f..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-// -*- mode: cpp; mode: fold -*-
-// Description                                                         /*{{{*/
-// $Id: database.h,v 1.2 2001/02/20 07:03:16 jgg Exp $
-/* ######################################################################
-
-   Data Base Abstraction
-   
-   This class provides a simple interface to an abstract notion of a 
-   database directory for storing state information about the system.
-
-   The 'Meta' information for a package is the control information and
-   setup scripts stored inside the archive. GetMetaTmp returns the name of
-   a directory that is used to store named files containing the control
-   information. 
-   
-   The File Listing is the database of installed files. It is loaded 
-   into the memory/persistent cache structure by the ReadFileList method.  
-   
-   ##################################################################### */
-                                                                       /*}}}*/
-#ifndef PKGLIB_DATABASE_H
-#define PKGLIB_DATABASE_H
-
-#include <apt-pkg/pkgcachegen.h>
-
-#include <string>
-
-#ifndef APT_8_CLEANER_HEADERS
-#include <apt-pkg/filelist.h>
-#endif
-
-class pkgFLCache;
-class OpProgress;
-
-class pkgDataBase
-{
-   protected:
-   
-   pkgCacheGenerator *Cache;
-   pkgFLCache *FList;
-   std::string MetaDir;
-   virtual bool InitMetaTmp(std::string &Dir) = 0;
-   
-   public:
-
-   // Some manipulators for the cache and generator
-   inline pkgCache &GetCache() {return Cache->GetCache();};
-   inline pkgFLCache &GetFLCache() {return *FList;};
-   inline pkgCacheGenerator &GetGenerator() {return *Cache;};
-   
-   bool GetMetaTmp(std::string &Dir);
-   virtual bool ReadyFileList(OpProgress &Progress) = 0;
-   virtual bool ReadyPkgCache(OpProgress &Progress) = 0;
-   virtual bool LoadChanges() = 0;
-
-   pkgDataBase() : Cache(0), FList(0) {};
-   virtual ~pkgDataBase();
-};
-
-#endif
index 4bd065cf8aa0dbb6f7a939b3034851529ef63c0a..ab4037915c5a076441af8fd517e8a1399e13b7e5 100644 (file)
@@ -18,7 +18,6 @@
 // Include Files                                                       /*{{{*/
 #include<config.h>
 
-#include <apt-pkg/database.h>
 #include <apt-pkg/debfile.h>
 #include <apt-pkg/extracttar.h>
 #include <apt-pkg/error.h>
@@ -90,42 +89,6 @@ const ARArchive::Member *debDebFile::GotoMember(const char *Name)
    return Member;
 }
                                                                        /*}}}*/
-// DebFile::ExtractControl - Extract Control information               /*{{{*/
-// ---------------------------------------------------------------------
-/* Extract the control information into the Database's temporary 
-   directory. */
-bool debDebFile::ExtractControl(pkgDataBase &DB)
-{
-   // Get the archive member and positition the file
-   const ARArchive::Member *Member = GotoMember("control.tar.gz");
-   if (Member == 0)
-      return false;
-      
-   // Prepare Tar
-   ControlExtract Extract;
-   ExtractTar Tar(File,Member->Size,"gzip");
-   if (_error->PendingError() == true)
-      return false;
-   
-   // Get into the temporary directory
-   std::string Cwd = SafeGetCWD();
-   std::string Tmp;
-   if (DB.GetMetaTmp(Tmp) == false)
-      return false;
-   if (chdir(Tmp.c_str()) != 0)
-      return _error->Errno("chdir",_("Couldn't change to %s"),Tmp.c_str());
-   
-   // Do extraction
-   if (Tar.Go(Extract) == false)
-      return false;
-   
-   // Switch out of the tmp directory.
-   if (chdir(Cwd.c_str()) != 0)
-      chdir("/");
-   
-   return true;
-}
-                                                                       /*}}}*/
 // DebFile::ExtractArchive - Extract the archive data itself           /*{{{*/
 // ---------------------------------------------------------------------
 /* Simple wrapper around tar.. */
@@ -167,32 +130,6 @@ bool debDebFile::ExtractArchive(pkgDirStream &Stream)
    return Tar.Go(Stream);
 }
                                                                        /*}}}*/
-// DebFile::MergeControl - Merge the control information               /*{{{*/
-// ---------------------------------------------------------------------
-/* This reads the extracted control file into the cache and returns the
-   version that was parsed. All this really does is select the correct
-   parser and correct file to parse. */
-pkgCache::VerIterator debDebFile::MergeControl(pkgDataBase &DB)
-{
-   // Open the control file
-   std::string Tmp;
-   if (DB.GetMetaTmp(Tmp) == false)
-      return pkgCache::VerIterator(DB.GetCache());
-   FileFd Fd(Tmp + "control",FileFd::ReadOnly);
-   if (_error->PendingError() == true)
-      return pkgCache::VerIterator(DB.GetCache());
-   
-   // Parse it
-   debListParser Parse(&Fd);
-   pkgCache::VerIterator Ver(DB.GetCache());
-   if (DB.GetGenerator().MergeList(Parse,&Ver) == false)
-      return pkgCache::VerIterator(DB.GetCache());
-   
-   if (Ver.end() == true)
-      _error->Error(_("Failed to locate a valid control file"));
-   return Ver;
-}
-                                                                       /*}}}*/
 
 // DebFile::ControlExtract::DoItem - Control Tar Extraction            /*{{{*/
 // ---------------------------------------------------------------------
index 5e1ea1d2f3e505f90ed801c327ad3a9f9b75413a..d94b744467760d24c0ddbdeb8062296def5fc9c2 100644 (file)
 #include <apt-pkg/tagfile.h>
 #include <apt-pkg/pkgcache.h>
 
-#ifndef APT_8_CLEANER_HEADERS
-#include <apt-pkg/database.h>
-#endif
-
 class FileFd;
-class pkgDataBase;
 
 class debDebFile
 {
@@ -46,13 +41,10 @@ class debDebFile
    bool CheckMember(const char *Name);
    
    public:
-
    class ControlExtract;
    class MemControlExtract;
-   
-   bool ExtractControl(pkgDataBase &DB);
+
    bool ExtractArchive(pkgDirStream &Stream);
-   pkgCache::VerIterator MergeControl(pkgDataBase &DB);
    const ARArchive::Member *GotoMember(const char *Name);
    inline FileFd &GetFile() {return File;};
    
diff --git a/apt-inst/deb/dpkgdb.cc b/apt-inst/deb/dpkgdb.cc
deleted file mode 100644 (file)
index 819c123..0000000
+++ /dev/null
@@ -1,494 +0,0 @@
-// -*- mode: cpp; mode: fold -*-
-// Description                                                         /*{{{*/
-// $Id: dpkgdb.cc,v 1.7.2.1 2004/01/16 18:58:50 mdz Exp $
-/* ######################################################################
-
-   DPKGv1 Database Implemenation
-   
-   This class provides parsers and other implementations for the DPKGv1
-   database. It reads the diversion file, the list files and the status
-   file to build both the list of currently installed files and the 
-   currently installed package list.
-   
-   ##################################################################### */
-                                                                       /*}}}*/
-// Include Files                                                       /*{{{*/
-#include<config.h>
-
-#include <apt-pkg/dpkgdb.h>
-#include <apt-pkg/configuration.h>
-#include <apt-pkg/error.h>
-#include <apt-pkg/progress.h>
-#include <apt-pkg/tagfile.h>
-#include <apt-pkg/strutl.h>
-#include <apt-pkg/fileutl.h>
-#include <apt-pkg/filelist.h>
-
-#include <stdio.h>
-#include <errno.h>
-#include <sys/stat.h>
-#include <sys/mman.h>
-#include <fcntl.h>
-#include <unistd.h>
-#include <ctype.h>
-#include <iostream>
-#include <apti18n.h>
-                                                                       /*}}}*/
-using namespace std;
-
-// EraseDir - Erase A Directory                                                /*{{{*/
-// ---------------------------------------------------------------------
-/* This is necessary to create a new empty sub directory. The caller should
-   invoke mkdir after this with the proper permissions and check for 
-   error. Maybe stick this in fileutils */
-static bool EraseDir(const char *Dir)
-{
-   // First we try a simple RM
-   if (rmdir(Dir) == 0 ||
-       errno == ENOENT)
-      return true;
-   
-   // A file? Easy enough..
-   if (errno == ENOTDIR)
-   {
-      if (unlink(Dir) != 0)
-        return _error->Errno("unlink",_("Failed to remove %s"),Dir);
-      return true;
-   }
-   
-   // Should not happen
-   if (errno != ENOTEMPTY)
-      return _error->Errno("rmdir",_("Failed to remove %s"),Dir);
-   
-   // Purge it using rm
-   pid_t Pid = ExecFork();
-
-   // Spawn the subprocess
-   if (Pid == 0)
-   {
-      execlp(_config->Find("Dir::Bin::rm","/bin/rm").c_str(),
-            "rm","-rf","--",Dir,(char *)NULL);
-      _exit(100);
-   }
-   return ExecWait(Pid,_config->Find("dir::bin::rm","/bin/rm").c_str());
-}
-                                                                       /*}}}*/
-// DpkgDB::debDpkgDB - Constructor                                     /*{{{*/
-// ---------------------------------------------------------------------
-/* */
-debDpkgDB::debDpkgDB() : CacheMap(0), FileMap(0)
-{
-   AdminDir = flNotFile(_config->Find("Dir::State::status"));   
-   DiverInode = 0;
-   DiverTime = 0;
-}
-                                                                       /*}}}*/
-// DpkgDB::~debDpkgDB - Destructor                                     /*{{{*/
-// ---------------------------------------------------------------------
-/* */
-debDpkgDB::~debDpkgDB()
-{
-   delete Cache;
-   Cache = 0;
-   delete CacheMap;
-   CacheMap = 0;
-   
-   delete FList;
-   FList = 0;
-   delete FileMap;
-   FileMap = 0;
-}
-                                                                       /*}}}*/
-// DpkgDB::InitMetaTmp - Get the temp dir for meta information         /*{{{*/
-// ---------------------------------------------------------------------
-/* This creats+empties the meta temporary directory /var/lib/dpkg/tmp.ci
-   Only one package at a time can be using the returned meta directory. */
-bool debDpkgDB::InitMetaTmp(string &Dir)
-{
-   string Tmp = AdminDir + "tmp.ci/";
-   if (EraseDir(Tmp.c_str()) == false)
-      return _error->Error(_("Unable to create %s"),Tmp.c_str());
-   if (mkdir(Tmp.c_str(),0755) != 0)
-      return _error->Errno("mkdir",_("Unable to create %s"),Tmp.c_str());
-   
-   // Verify it is on the same filesystem as the main info directory
-   dev_t Dev;
-   struct stat St;
-   if (stat((AdminDir + "info").c_str(),&St) != 0)
-      return _error->Errno("stat",_("Failed to stat %sinfo"),AdminDir.c_str());
-   Dev = St.st_dev;
-   if (stat(Tmp.c_str(),&St) != 0)
-      return _error->Errno("stat",_("Failed to stat %s"),Tmp.c_str());
-   if (Dev != St.st_dev)
-      return _error->Error(_("The info and temp directories need to be on the same filesystem"));
-   
-   // Done
-   Dir = Tmp;
-   return true;
-}
-                                                                       /*}}}*/
-// DpkgDB::ReadyPkgCache - Prepare the cache with the current status   /*{{{*/
-// ---------------------------------------------------------------------
-/* This reads in the status file into an empty cache. This really needs 
-   to be somehow unified with the high level APT notion of the Database
-   directory, but there is no clear way on how to do that yet. */
-bool debDpkgDB::ReadyPkgCache(OpProgress &Progress)
-{
-   if (Cache != 0)
-   {  
-      Progress.OverallProgress(1,1,1,_("Reading package lists"));      
-      return true;
-   }
-   
-   if (CacheMap != 0)
-   {
-      delete CacheMap;
-      CacheMap = 0;
-   }
-   
-   if (pkgCacheGenerator::MakeOnlyStatusCache(&Progress,&CacheMap) == false)
-      return false;
-   Cache->DropProgress();
-   
-   return true;
-}
-                                                                       /*}}}*/
-// DpkgDB::ReadFList - Read the File Listings in                       /*{{{*/
-// ---------------------------------------------------------------------
-/* This reads the file listing in from the state directory. This is a 
-   performance critical routine, as it needs to parse about 50k lines of
-   text spread over a hundred or more files. For an initial cold start
-   most of the time is spent in reading file inodes and so on, not 
-   actually parsing. */
-bool debDpkgDB::ReadFList(OpProgress &Progress)
-{
-   // Count the number of packages we need to read information for
-   unsigned long Total = 0;
-   pkgCache &Cache = this->Cache->GetCache();
-   for (pkgCache::PkgIterator I = Cache.PkgBegin(); I.end() == false; I++)
-   {
-      // Only not installed packages have no files.
-      if (I->CurrentState == pkgCache::State::NotInstalled)
-        continue;
-      Total++;
-   }
-
-   /* Switch into the admin dir, this prevents useless lookups for the 
-      path components */
-   string Cwd = SafeGetCWD();
-   if (chdir((AdminDir + "info/").c_str()) != 0)
-      return _error->Errno("chdir",_("Failed to change to the admin dir %sinfo"),AdminDir.c_str());
-   
-   // Allocate a buffer. Anything larger than this buffer will be mmaped
-   unsigned long BufSize = 32*1024;
-   char *Buffer = new char[BufSize];
-
-   // Begin Loading them
-   unsigned long Count = 0;
-   char Name[300];
-   for (pkgCache::PkgIterator I = Cache.PkgBegin(); I.end() == false; I++)
-   {
-      /* Only not installed packages have no files. ConfFile packages have
-         file lists but we don't want to read them in */
-      if (I->CurrentState == pkgCache::State::NotInstalled ||
-         I->CurrentState == pkgCache::State::ConfigFiles)
-        continue;
-
-      // Fetch a package handle to associate with the file
-      pkgFLCache::PkgIterator FlPkg = FList->GetPkg(I.Name(),0,true);
-      if (FlPkg.end() == true)
-      {
-        _error->Error(_("Internal error getting a package name"));
-        break;
-      }
-      
-      Progress.OverallProgress(Count,Total,1,_("Reading file listing"));
-     
-      // Open the list file
-      snprintf(Name,sizeof(Name),"%s.list",I.Name());
-      int Fd = open(Name,O_RDONLY);
-      
-      /* Okay this is very strange and bad.. Best thing is to bail and
-         instruct the user to look into it. */
-      struct stat Stat;
-      if (Fd == -1 || fstat(Fd,&Stat) != 0)
-      {
-        _error->Errno("open",_("Failed to open the list file '%sinfo/%s'. If you "
-                      "cannot restore this file then make it empty "
-                      "and immediately re-install the same version of the package!"),
-                      AdminDir.c_str(),Name);
-        break;
-      }
-      
-      // Set File to be a memory buffer containing the whole file
-      char *File;
-      if ((unsigned)Stat.st_size < BufSize)
-      {
-        if (read(Fd,Buffer,Stat.st_size) != Stat.st_size)
-        {
-           _error->Errno("read",_("Failed reading the list file %sinfo/%s"),
-                         AdminDir.c_str(),Name);
-           close(Fd);
-           break;
-        }
-        File = Buffer;
-      }
-      else
-      {
-        // Use mmap
-        File = (char *)mmap(0,Stat.st_size,PROT_READ,MAP_PRIVATE,Fd,0);
-        if (File == (char *)(-1))
-        {
-           _error->Errno("mmap",_("Failed reading the list file %sinfo/%s"),
-                         AdminDir.c_str(),Name);
-           close(Fd);
-           break;
-        }          
-      }
-      
-      // Parse it
-      const char *Start = File;
-      const char *End = File;
-      const char *Finish = File + Stat.st_size;
-      for (; End < Finish; End++)
-      {
-        // Not an end of line
-        if (*End != '\n' && End + 1 < Finish)
-           continue;
-
-        // Skip blank lines
-        if (End - Start > 1)
-        {
-           pkgFLCache::NodeIterator Node = FList->GetNode(Start,End,
-                                             FlPkg.Offset(),true,false);
-           if (Node.end() == true)
-           {
-              _error->Error(_("Internal error getting a node"));
-              break;
-           }
-        }
-        
-        // Skip past the end of line
-        for (; *End == '\n' && End < Finish; End++);
-        Start = End;
-      }      
-      
-      close(Fd);
-      if ((unsigned)Stat.st_size >= BufSize)
-        munmap((caddr_t)File,Stat.st_size);
-      
-      // Failed
-      if (End < Finish)
-        break;
-      
-      Count++;
-   }
-
-   delete [] Buffer;
-   if (chdir(Cwd.c_str()) != 0)
-      chdir("/");
-   
-   return !_error->PendingError();
-}
-                                                                       /*}}}*/
-// DpkgDB::ReadDiversions - Load the diversions file                   /*{{{*/
-// ---------------------------------------------------------------------
-/* Read the diversion file in from disk. This is usually invoked by 
-   LoadChanges before performing an operation that uses the FLCache. */
-bool debDpkgDB::ReadDiversions()
-{
-   struct stat Stat;
-   if (stat((AdminDir + "diversions").c_str(),&Stat) != 0)
-      return true;
-   
-   if (_error->PendingError() == true)
-      return false;
-   
-   FILE *Fd = fopen((AdminDir + "diversions").c_str(),"r");
-   if (Fd == 0)
-      return _error->Errno("fopen",_("Failed to open the diversions file %sdiversions"),AdminDir.c_str());
-       
-   FList->BeginDiverLoad();
-   while (1)
-   {
-      char From[300];
-      char To[300];
-      char Package[100];
-   
-      // Read the three lines in
-      if (fgets(From,sizeof(From),Fd) == 0)
-        break;
-      if (fgets(To,sizeof(To),Fd) == 0 ||
-         fgets(Package,sizeof(Package),Fd) == 0)
-      {
-        _error->Error(_("The diversion file is corrupted"));
-        break;
-      }
-      
-      // Strip the \ns
-      unsigned long Len = strlen(From);
-      if (Len < 2 || From[Len-1] != '\n')
-        _error->Error(_("Invalid line in the diversion file: %s"),From);
-      else
-        From[Len-1] = 0;
-      Len = strlen(To);
-      if (Len < 2 || To[Len-1] != '\n')
-        _error->Error(_("Invalid line in the diversion file: %s"),To);
-      else
-        To[Len-1] = 0;     
-      Len = strlen(Package);
-      if (Len < 2 || Package[Len-1] != '\n')
-        _error->Error(_("Invalid line in the diversion file: %s"),Package);
-      else
-        Package[Len-1] = 0;
-      
-      // Make sure the lines were parsed OK
-      if (_error->PendingError() == true)
-        break;
-      
-      // Fetch a package
-      if (strcmp(Package,":") == 0)
-        Package[0] = 0;
-      pkgFLCache::PkgIterator FlPkg = FList->GetPkg(Package,0,true);
-      if (FlPkg.end() == true)
-      {
-        _error->Error(_("Internal error getting a package name"));
-        break;
-      }
-      
-      // Install the diversion
-      if (FList->AddDiversion(FlPkg,From,To) == false)
-      {
-        _error->Error(_("Internal error adding a diversion"));
-        break;
-      }
-   }
-   if (_error->PendingError() == false)
-      FList->FinishDiverLoad();
-   
-   DiverInode = Stat.st_ino;
-   DiverTime = Stat.st_mtime;
-   
-   fclose(Fd);
-   return !_error->PendingError();
-}
-                                                                       /*}}}*/
-// DpkgDB::ReadFileList - Read the file listing                                /*{{{*/
-// ---------------------------------------------------------------------
-/* Read in the file listing. The file listing is created from three
-   sources, *.list, Conffile sections and the Diversion table. */
-bool debDpkgDB::ReadyFileList(OpProgress &Progress)
-{
-   if (Cache == 0)
-      return _error->Error(_("The pkg cache must be initialized first"));
-   if (FList != 0)
-   {
-      Progress.OverallProgress(1,1,1,_("Reading file listing"));
-      return true;
-   }
-   
-   // Create the cache and read in the file listing
-   FileMap = new DynamicMMap(MMap::Public);
-   FList = new pkgFLCache(*FileMap);
-   if (_error->PendingError() == true || 
-       ReadFList(Progress) == false ||
-       ReadConfFiles() == false || 
-       ReadDiversions() == false)
-   {
-      delete FList;
-      delete FileMap;
-      FileMap = 0;
-      FList = 0;
-      return false;
-   }
-      
-   cout << "Node: " << FList->HeaderP->NodeCount << ',' << FList->HeaderP->UniqNodes << endl;
-   cout << "Dir: " << FList->HeaderP->DirCount << endl;
-   cout << "Package: " << FList->HeaderP->PackageCount << endl;
-   cout << "HashSize: " << FList->HeaderP->HashSize << endl;
-   cout << "Size: " << FileMap->Size() << endl;
-   cout << endl;
-
-   return true;
-}
-                                                                       /*}}}*/
-// DpkgDB::ReadConfFiles - Read the conf file sections from the s-file /*{{{*/
-// ---------------------------------------------------------------------
-/* Reading the conf files is done by reparsing the status file. This is
-   actually rather fast so it is no big deal. */
-bool debDpkgDB::ReadConfFiles()
-{
-   FileFd File(_config->FindFile("Dir::State::status"),FileFd::ReadOnly);
-   pkgTagFile Tags(&File);
-   if (_error->PendingError() == true)
-      return false;
-   
-   pkgTagSection Section;   
-   while (1)
-   {
-      // Skip to the next section
-      unsigned long Offset = Tags.Offset();
-      if (Tags.Step(Section) == false)
-        break;
-        
-      // Parse the line
-      const char *Start;
-      const char *Stop;
-      if (Section.Find("Conffiles",Start,Stop) == false)
-        continue;
-
-      const char *PkgStart;
-      const char *PkgEnd;
-      if (Section.Find("Package",PkgStart,PkgEnd) == false)
-        return _error->Error(_("Failed to find a Package: header, offset %lu"),Offset);
-
-      // Snag a package record for it
-      pkgFLCache::PkgIterator FlPkg = FList->GetPkg(PkgStart,PkgEnd,true);
-      if (FlPkg.end() == true)
-        return _error->Error(_("Internal error getting a package name"));
-
-      // Parse the conf file lines
-      while (1)
-      {
-        for (; isspace(*Start) != 0 && Start < Stop; Start++);
-        if (Start == Stop)
-           break;
-
-        // Split it into words
-        const char *End = Start;
-        for (; isspace(*End) == 0 && End < Stop; End++);
-        const char *StartMd5 = End;
-        for (; isspace(*StartMd5) != 0 && StartMd5 < Stop; StartMd5++);
-        const char *EndMd5 = StartMd5;
-        for (; isspace(*EndMd5) == 0 && EndMd5 < Stop; EndMd5++);
-        if (StartMd5 == EndMd5 || Start == End)
-           return _error->Error(_("Bad ConfFile section in the status file. Offset %lu"),Offset);
-                
-        // Insert a new entry
-        unsigned char MD5[16];
-        if (Hex2Num(string(StartMd5,EndMd5-StartMd5),MD5,16) == false)
-           return _error->Error(_("Error parsing MD5. Offset %lu"),Offset);
-
-        if (FList->AddConfFile(Start,End,FlPkg,MD5) == false)
-           return false;
-        Start = EndMd5;
-      }      
-   }   
-   
-   return true;
-}
-                                                                       /*}}}*/
-// DpkgDB::LoadChanges - Read in any changed state files               /*{{{*/
-// ---------------------------------------------------------------------
-/* The only file in the dpkg system that can change while packages are
-   unpacking is the diversions file. */
-bool debDpkgDB::LoadChanges()
-{
-   struct stat Stat;
-   if (stat((AdminDir + "diversions").c_str(),&Stat) != 0)
-      return true;
-   if (DiverInode == Stat.st_ino && DiverTime == Stat.st_mtime)
-      return true;
-   return ReadDiversions();
-}
-                                                                       /*}}}*/
diff --git a/apt-inst/deb/dpkgdb.h b/apt-inst/deb/dpkgdb.h
deleted file mode 100644 (file)
index f28563a..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-// -*- mode: cpp; mode: fold -*-
-// Description                                                         /*{{{*/
-// $Id: dpkgdb.h,v 1.2 2001/02/20 07:03:17 jgg Exp $
-/* ######################################################################
-
-   DPKGv1 Data Base Implemenation
-   
-   The DPKGv1 database is typically stored in /var/lib/dpkg/. For 
-   DPKGv1 the 'meta' information is the contents of the .deb control.tar.gz
-   member prepended by the package name. The meta information is unpacked
-   in its temporary directory and then migrated into the main list dir
-   at a checkpoint.
-   
-   Journaling is providing by syncronized file writes to the updates sub
-   directory.
-
-   ##################################################################### */
-                                                                       /*}}}*/
-#ifndef PKGLIB_DPKGDB_H
-#define PKGLIB_DPKGDB_H
-
-
-#include <apt-pkg/database.h>
-
-#include <string>
-
-class DynamicMMap;
-class OpProgress;
-
-class debDpkgDB : public pkgDataBase
-{
-   protected:
-
-   std::string AdminDir;
-   DynamicMMap *CacheMap;
-   DynamicMMap *FileMap;
-   unsigned long DiverInode;
-   signed long DiverTime;
-
-   virtual bool InitMetaTmp(std::string &Dir);
-   bool ReadFList(OpProgress &Progress);
-   bool ReadDiversions();
-   bool ReadConfFiles();
-      
-   public:
-
-   virtual bool ReadyFileList(OpProgress &Progress);
-   virtual bool ReadyPkgCache(OpProgress &Progress);
-   virtual bool LoadChanges();
-   
-   debDpkgDB();
-   virtual ~debDpkgDB();
-};
-
-#endif
index 1b9cc2676bb95f3f29784d35fc99568143997cde..c716b8c9658908a86761a1a016a4654dae1dfcee 100644 (file)
@@ -23,12 +23,11 @@ APT_DOMAIN:=libapt-inst$(MAJOR)
 SOURCE = contrib/extracttar.cc contrib/arfile.cc
 
 # Source code for the main library
-SOURCE+= filelist.cc database.cc dirstream.cc extract.cc \
-         deb/dpkgdb.cc deb/debfile.cc
+SOURCE+= filelist.cc dirstream.cc extract.cc deb/debfile.cc
 
 # Public header files
-HEADERS = extracttar.h arfile.h filelist.h database.h extract.h \
-          dpkgdb.h dirstream.h debfile.h
+HEADERS = extracttar.h arfile.h filelist.h extract.h \
+          dirstream.h debfile.h
 
 HEADERS := $(addprefix apt-pkg/,$(HEADERS))
 include $(LIBRARY_H)
index 3bb977e1403f42a3920463f771f0a956024e9200..77e2fc3119d5c430effb8940569c6015ac0cb96f 100644 (file)
@@ -431,7 +431,9 @@ bool pkgAcquire::Worker::MediaChange(string Message)
             << Drive  << ":"     // drive
             << msg.str()         // l10n message
             << endl;
-      write(status_fd, status.str().c_str(), status.str().size());
+
+      std::string const dlstatus = status.str();
+      FileFd::Write(status_fd, dlstatus.c_str(), dlstatus.size());
    }
 
    if (Log == 0 || Log->MediaChange(LookupTag(Message,"Media"),
@@ -530,17 +532,10 @@ bool pkgAcquire::Worker::QueueItem(pkgAcquire::Queue::QItem *Item)
 /* */
 bool pkgAcquire::Worker::OutFdReady()
 {
-   int Res;
-   do
-   {
-      Res = write(OutFd,OutQueue.c_str(),OutQueue.length());
-   }
-   while (Res < 0 && errno == EINTR);
-   
-   if (Res <= 0)
+   if (FileFd::Write(OutFd,OutQueue.c_str(),OutQueue.length()) == false)
       return MethodFailure();
    
-   OutQueue.erase(0,Res);
+   OutQueue.clear();
    if (OutQueue.empty() == true)
       OutReady = false;
    
index 573a85c2fafc0aeea5b62ef619bee50ec4ce9c2d..5e1419056b4f93279e76c46075013a4a509dd1af 100644 (file)
@@ -872,7 +872,9 @@ bool pkgAcquireStatus::Pulse(pkgAcquire *Owner)
             << ":"  << (CurrentBytes/float(TotalBytes)*100.0) 
             << ":" << msg 
             << endl;
-      write(fd, status.str().c_str(), status.str().size());
+
+      std::string const dlstatus = status.str();
+      FileFd::Write(fd, dlstatus.c_str(), dlstatus.size());
    }
 
    return true;
index 4324f0e6395e60fcba7d728658bc9931862d1156..d72b0c5aed2b0a6f2860aceb8c28564e1ea13447 100644 (file)
@@ -432,9 +432,30 @@ bool const Configuration::checkArchitecture(std::string const &Arch) {
 // setDefaultConfigurationForCompressors                               /*{{{*/
 void Configuration::setDefaultConfigurationForCompressors() {
        // Set default application paths to check for optional compression types
-       _config->CndSet("Dir::Bin::lzma", "/usr/bin/lzma");
-       _config->CndSet("Dir::Bin::xz", "/usr/bin/xz");
        _config->CndSet("Dir::Bin::bzip2", "/bin/bzip2");
+       _config->CndSet("Dir::Bin::xz", "/usr/bin/xz");
+       if (FileExists(_config->FindFile("Dir::Bin::xz")) == true) {
+               _config->Clear("Dir::Bin::lzma");
+               _config->Set("APT::Compressor::lzma::Binary", "xz");
+               if (_config->Exists("APT::Compressor::lzma::CompressArg") == false) {
+                       _config->Set("APT::Compressor::lzma::CompressArg::", "--format=lzma");
+                       _config->Set("APT::Compressor::lzma::CompressArg::", "-9");
+               }
+               if (_config->Exists("APT::Compressor::lzma::UncompressArg") == false) {
+                       _config->Set("APT::Compressor::lzma::UncompressArg::", "--format=lzma");
+                       _config->Set("APT::Compressor::lzma::UncompressArg::", "-d");
+               }
+       } else {
+               _config->CndSet("Dir::Bin::lzma", "/usr/bin/lzma");
+               if (_config->Exists("APT::Compressor::lzma::CompressArg") == false) {
+                       _config->Set("APT::Compressor::lzma::CompressArg::", "--suffix=");
+                       _config->Set("APT::Compressor::lzma::CompressArg::", "-9");
+               }
+               if (_config->Exists("APT::Compressor::lzma::UncompressArg") == false) {
+                       _config->Set("APT::Compressor::lzma::UncompressArg::", "--suffix=");
+                       _config->Set("APT::Compressor::lzma::UncompressArg::", "-d");
+               }
+       }
 }
                                                                        /*}}}*/
 // getCompressors - Return Vector of usbale compressors                        /*{{{*/
@@ -456,12 +477,20 @@ const Configuration::getCompressors(bool const Cached) {
        compressors.push_back(Compressor(".", "", "", "", "", 1));
        if (_config->Exists("Dir::Bin::gzip") == false || FileExists(_config->FindFile("Dir::Bin::gzip")) == true)
                compressors.push_back(Compressor("gzip",".gz","gzip","-9n","-d",2));
+#ifdef HAVE_ZLIB
+       else
+               compressors.push_back(Compressor("gzip",".gz","false", "", "", 2));
+#endif
        if (_config->Exists("Dir::Bin::bzip2") == false || FileExists(_config->FindFile("Dir::Bin::bzip2")) == true)
                compressors.push_back(Compressor("bzip2",".bz2","bzip2","-9","-d",3));
-       if (_config->Exists("Dir::Bin::lzma") == false || FileExists(_config->FindFile("Dir::Bin::lzma")) == true)
-               compressors.push_back(Compressor("lzma",".lzma","lzma","-9","-d",4));
+#ifdef HAVE_BZ2
+       else
+               compressors.push_back(Compressor("bzip2",".bz2","false", "", "", 3));
+#endif
        if (_config->Exists("Dir::Bin::xz") == false || FileExists(_config->FindFile("Dir::Bin::xz")) == true)
-               compressors.push_back(Compressor("xz",".xz","xz","-6","-d",5));
+               compressors.push_back(Compressor("xz",".xz","xz","-6","-d",4));
+       if (_config->Exists("Dir::Bin::lzma") == false || FileExists(_config->FindFile("Dir::Bin::lzma")) == true)
+               compressors.push_back(Compressor("lzma",".lzma","lzma","-9","-d",5));
 
        std::vector<std::string> const comp = _config->FindVector("APT::Compressor");
        for (std::vector<std::string>::const_iterator c = comp.begin();
@@ -494,7 +523,7 @@ Configuration::Compressor::Compressor(char const *name, char const *extension,
                                      char const *binary,
                                      char const *compressArg, char const *uncompressArg,
                                      unsigned short const cost) {
-       std::string const config = std::string("APT:Compressor::").append(name).append("::");
+       std::string const config = std::string("APT::Compressor::").append(name).append("::");
        Name = _config->Find(std::string(config).append("Name"), name);
        Extension = _config->Find(std::string(config).append("Extension"), extension);
        Binary = _config->Find(std::string(config).append("Binary"), binary);
index 4462d4e246abb0273031d88c1568739b6117e2e8..50c2043716b274931c3a0614295f6aad8c81eca3 100644 (file)
@@ -430,7 +430,8 @@ bool pkgCdrom::WriteDatabase(Configuration &Cnf)
 
    Out.close();
    
-   link(DFile.c_str(),string(DFile + '~').c_str());
+   if (FileExists(DFile) == true && link(DFile.c_str(),string(DFile + '~').c_str()) != 0)
+      return _error->Errno("link", "Failed to link %s to %s~", DFile.c_str(), DFile.c_str());
    if (rename(NewFile.c_str(),DFile.c_str()) != 0)
       return _error->Errno("rename","Failed to rename %s.new to %s",
                           DFile.c_str(),DFile.c_str());
@@ -697,7 +698,8 @@ bool pkgCdrom::Add(pkgCdromStatus *log)                                     /*{{{*/
       return false;
    }
 
-   chdir(StartDir.c_str());
+   if (chdir(StartDir.c_str()) != 0)
+      return _error->Errno("chdir","Unable to change to %s", StartDir.c_str());
 
    if (_config->FindB("Debug::aptcdrom",false) == true)
    {
index ed8fa1aa9c8dabac4ee5080b11cd2c901a275065..9c167eaa505b82b3ae593f5c226f9c20506d49a8 100644 (file)
@@ -54,9 +54,11 @@ bool pkgArchiveCleaner::Go(std::string Dir,pkgCache &Cache)
       struct stat St;
       if (stat(Dir->d_name,&St) != 0)
       {
-        chdir(StartDir.c_str());
+        _error->Errno("stat",_("Unable to stat %s."),Dir->d_name);
         closedir(D);
-        return _error->Errno("stat",_("Unable to stat %s."),Dir->d_name);
+        if (chdir(StartDir.c_str()) != 0)
+           return _error->Errno("chdir", _("Unable to change to %s"), StartDir.c_str());
+        return false;
       }
       
       // Grab the package name
@@ -115,8 +117,9 @@ bool pkgArchiveCleaner::Go(std::string Dir,pkgCache &Cache)
       Erase(Dir->d_name,Pkg,Ver,St);
    };
    
-   chdir(StartDir.c_str());
    closedir(D);
-   return true;   
+   if (chdir(StartDir.c_str()) != 0)
+      return _error->Errno("chdir", _("Unable to change to %s"), StartDir.c_str());
+   return true;
 }
                                                                        /*}}}*/
index 1808489d7d276cc47c23afdde3589e0301c3fed8..9e3611b2663ccb17d8b8abfd637f22e2c91150f5 100644 (file)
 #include <set>
 #include <algorithm>
 
-// FIXME: Compressor Fds have some speed disadvantages and are a bit buggy currently,
-// so while the current implementation satisfies the testcases it is not a real option
-// to disable it for now
-#define APT_USE_ZLIB 1
-#if APT_USE_ZLIB
-#include <zlib.h>
-#else
-#pragma message "Usage of zlib is DISABLED!"
+#ifdef HAVE_ZLIB
+       #include <zlib.h>
+#endif
+#ifdef HAVE_BZ2
+       #include <bzlib.h>
 #endif
 
 #ifdef WORDS_BIGENDIAN
@@ -65,10 +62,15 @@ using namespace std;
 
 class FileFdPrivate {
        public:
-#if APT_USE_ZLIB
+#ifdef HAVE_ZLIB
        gzFile gz;
 #else
        void* gz;
+#endif
+#ifdef HAVE_BZ2
+       BZFILE* bz2;
+#else
+       void* bz2;
 #endif
        int compressed_fd;
        pid_t compressor_pid;
@@ -76,7 +78,8 @@ class FileFdPrivate {
        APT::Configuration::Compressor compressor;
        unsigned int openmode;
        unsigned long long seekpos;
-       FileFdPrivate() : gz(NULL), compressed_fd(-1), compressor_pid(-1), pipe(false),
+       FileFdPrivate() : gz(NULL), bz2(NULL),
+                         compressed_fd(-1), compressor_pid(-1), pipe(false),
                          openmode(0), seekpos(0) {};
 };
 
@@ -835,7 +838,6 @@ bool FileFd::Open(string FileName,unsigned int const Mode,CompressMode Compress,
    if (Compress == Auto && (Mode & WriteOnly) == WriteOnly)
       return _error->Error("Autodetection on %s only works in ReadOnly openmode!", FileName.c_str());
 
-   // FIXME: Denote inbuilt compressors somehow - as we don't need to have the binaries for them
    std::vector<APT::Configuration::Compressor> const compressors = APT::Configuration::getCompressors();
    std::vector<APT::Configuration::Compressor>::const_iterator compressor = compressors.begin();
    if (Compress == Auto)
@@ -1016,7 +1018,7 @@ bool FileFd::OpenInternDescriptor(unsigned int const Mode, APT::Configuration::C
    d->compressor = compressor;
    if (compressor.Name == "." || compressor.Binary.empty() == true)
       return true;
-#if APT_USE_ZLIB
+#ifdef HAVE_ZLIB
    else if (compressor.Name == "gzip")
    {
       if ((Mode & ReadWrite) == ReadWrite)
@@ -1024,13 +1026,29 @@ bool FileFd::OpenInternDescriptor(unsigned int const Mode, APT::Configuration::C
       else if ((Mode & WriteOnly) == WriteOnly)
         d->gz = gzdopen(iFd, "w");
       else
-        d->gz = gzdopen (iFd, "r");
+        d->gz = gzdopen(iFd, "r");
       if (d->gz == NULL)
         return false;
       Flags |= Compressed;
       return true;
    }
 #endif
+#ifdef HAVE_BZ2
+   else if (compressor.Name == "bzip2")
+   {
+      if ((Mode & ReadWrite) == ReadWrite)
+        d->bz2 = BZ2_bzdopen(iFd, "r+");
+      else if ((Mode & WriteOnly) == WriteOnly)
+        d->bz2 = BZ2_bzdopen(iFd, "w");
+      else
+        d->bz2 = BZ2_bzdopen(iFd, "r");
+      if (d->bz2 == NULL)
+        return false;
+      Flags |= Compressed;
+      return true;
+   }
+#endif
+
 
    if ((Mode & ReadWrite) == ReadWrite)
       return _error->Error("ReadWrite mode is not supported for file %s", FileName.c_str());
@@ -1137,9 +1155,14 @@ bool FileFd::Read(void *To,unsigned long long Size,unsigned long long *Actual)
    *((char *)To) = '\0';
    do
    {
-#if APT_USE_ZLIB
+#ifdef HAVE_ZLIB
       if (d->gz != NULL)
-         Res = gzread(d->gz,To,Size);
+        Res = gzread(d->gz,To,Size);
+      else
+#endif
+#ifdef HAVE_BZ2
+      if (d->bz2 != NULL)
+        Res = BZ2_bzread(d->bz2,To,Size);
       else
 #endif
          Res = read(iFd,To,Size);
@@ -1149,7 +1172,7 @@ bool FileFd::Read(void *To,unsigned long long Size,unsigned long long *Actual)
         if (errno == EINTR)
            continue;
         Flags |= Fail;
-#if APT_USE_ZLIB
+#ifdef HAVE_ZLIB
         if (d->gz != NULL)
         {
            int err;
@@ -1157,6 +1180,15 @@ bool FileFd::Read(void *To,unsigned long long Size,unsigned long long *Actual)
            if (err != Z_ERRNO)
               return _error->Error("gzread: %s (%d: %s)", _("Read error"), err, errmsg);
         }
+#endif
+#ifdef HAVE_BZ2
+        if (d->bz2 != NULL)
+        {
+           int err;
+           char const * const errmsg = BZ2_bzerror(d->bz2, &err);
+           if (err != BZ_IO_ERROR)
+              return _error->Error("BZ2_bzread: %s (%d: %s)", _("Read error"), err, errmsg);
+        }
 #endif
         return _error->Errno("read",_("Read error"));
       }
@@ -1190,7 +1222,7 @@ bool FileFd::Read(void *To,unsigned long long Size,unsigned long long *Actual)
 char* FileFd::ReadLine(char *To, unsigned long long const Size)
 {
    *To = '\0';
-#if APT_USE_ZLIB
+#ifdef HAVE_ZLIB
    if (d->gz != NULL)
       return gzgets(d->gz, To, Size);
 #endif
@@ -1221,10 +1253,15 @@ bool FileFd::Write(const void *From,unsigned long long Size)
    errno = 0;
    do
    {
-#if APT_USE_ZLIB
+#ifdef HAVE_ZLIB
       if (d->gz != NULL)
          Res = gzwrite(d->gz,From,Size);
       else
+#endif
+#ifdef HAVE_BZ2
+      if (d->bz2 != NULL)
+         Res = BZ2_bzwrite(d->bz2,(void*)From,Size);
+      else
 #endif
          Res = write(iFd,From,Size);
       if (Res < 0 && errno == EINTR)
@@ -1232,6 +1269,24 @@ bool FileFd::Write(const void *From,unsigned long long Size)
       if (Res < 0)
       {
         Flags |= Fail;
+#ifdef HAVE_ZLIB
+        if (d->gz != NULL)
+        {
+           int err;
+           char const * const errmsg = gzerror(d->gz, &err);
+           if (err != Z_ERRNO)
+              return _error->Error("gzwrite: %s (%d: %s)", _("Write error"), err, errmsg);
+        }
+#endif
+#ifdef HAVE_BZ2
+        if (d->bz2 != NULL)
+        {
+           int err;
+           char const * const errmsg = BZ2_bzerror(d->bz2, &err);
+           if (err != BZ_IO_ERROR)
+              return _error->Error("BZ2_bzwrite: %s (%d: %s)", _("Write error"), err, errmsg);
+        }
+#endif
         return _error->Errno("write",_("Write error"));
       }
       
@@ -1246,6 +1301,28 @@ bool FileFd::Write(const void *From,unsigned long long Size)
    
    Flags |= Fail;
    return _error->Error(_("write, still have %llu to write but couldn't"), Size);
+}
+bool FileFd::Write(int Fd, const void *From, unsigned long long Size)
+{
+   int Res;
+   errno = 0;
+   do
+   {
+      Res = write(Fd,From,Size);
+      if (Res < 0 && errno == EINTR)
+        continue;
+      if (Res < 0)
+        return _error->Errno("write",_("Write error"));
+
+      From = (char *)From + Res;
+      Size -= Res;
+   }
+   while (Res > 0 && Size > 0);
+
+   if (Size == 0)
+      return true;
+
+   return _error->Error(_("write, still have %llu to write but couldn't"), Size);
 }
                                                                        /*}}}*/
 // FileFd::Seek - Seek in the file                                     /*{{{*/
@@ -1253,7 +1330,11 @@ bool FileFd::Write(const void *From,unsigned long long Size)
 /* */
 bool FileFd::Seek(unsigned long long To)
 {
-   if (d->pipe == true)
+   if (d->pipe == true
+#ifdef HAVE_BZ2
+       || d->bz2 != NULL
+#endif
+       )
    {
       // Our poor man seeking in pipes is costly, so try to avoid it
       unsigned long long seekpos = Tell();
@@ -1264,6 +1345,10 @@ bool FileFd::Seek(unsigned long long To)
 
       if ((d->openmode & ReadOnly) != ReadOnly)
         return _error->Error("Reopen is only implemented for read-only files!");
+#ifdef HAVE_BZ2
+      if (d->bz2 != NULL)
+        BZ2_bzclose(d->bz2);
+#endif
       close(iFd);
       iFd = 0;
       if (TemporaryFileName.empty() == false)
@@ -1289,7 +1374,7 @@ bool FileFd::Seek(unsigned long long To)
       return true;
    }
    int res;
-#if APT_USE_ZLIB
+#ifdef HAVE_ZLIB
    if (d->gz)
       res = gzseek(d->gz,To,SEEK_SET);
    else
@@ -1310,7 +1395,11 @@ bool FileFd::Seek(unsigned long long To)
 /* */
 bool FileFd::Skip(unsigned long long Over)
 {
-   if (d->pipe == true)
+   if (d->pipe == true
+#ifdef HAVE_BZ2
+       || d->bz2 != NULL
+#endif
+       )
    {
       d->seekpos += Over;
       char buffer[1024];
@@ -1325,7 +1414,7 @@ bool FileFd::Skip(unsigned long long Over)
    }
 
    int res;
-#if APT_USE_ZLIB
+#ifdef HAVE_ZLIB
    if (d->gz != NULL)
       res = gzseek(d->gz,Over,SEEK_CUR);
    else
@@ -1346,11 +1435,13 @@ bool FileFd::Skip(unsigned long long Over)
 /* */
 bool FileFd::Truncate(unsigned long long To)
 {
-   if (d->gz != NULL)
+#if defined HAVE_ZLIB || defined HAVE_BZ2
+   if (d->gz != NULL || d->bz2 != NULL)
    {
       Flags |= Fail;
-      return _error->Error("Truncating gzipped files is not implemented (%s)", FileName.c_str());
+      return _error->Error("Truncating compressed files is not implemented (%s)", FileName.c_str());
    }
+#endif
    if (ftruncate(iFd,To) != 0)
    {
       Flags |= Fail;
@@ -1369,11 +1460,15 @@ unsigned long long FileFd::Tell()
    // seeking around, but not all users of FileFd use always Seek() and co
    // so d->seekpos isn't always true and we can just use it as a hint if
    // we have nothing else, but not always as an authority…
-   if (d->pipe == true)
+   if (d->pipe == true
+#ifdef HAVE_BZ2
+       || d->bz2 != NULL
+#endif
+       )
       return d->seekpos;
 
    off_t Res;
-#if APT_USE_ZLIB
+#ifdef HAVE_ZLIB
    if (d->gz != NULL)
      Res = gztell(d->gz);
    else
@@ -1416,7 +1511,11 @@ unsigned long long FileFd::Size()
 
    // for compressor pipes st_size is undefined and at 'best' zero,
    // so we 'read' the content and 'seek' back - see there
-   if (d->pipe == true)
+   if (d->pipe == true
+#ifdef HAVE_BZ2
+       || (d->bz2 && size > 0)
+#endif
+       )
    {
       unsigned long long const oldSeek = Tell();
       char ignore[1000];
@@ -1427,7 +1526,7 @@ unsigned long long FileFd::Size()
       size = Tell();
       Seek(oldSeek);
    }
-#if APT_USE_ZLIB
+#ifdef HAVE_ZLIB
    // only check gzsize if we are actually a gzip file, just checking for
    // "gz" is not sufficient as uncompressed files could be opened with
    // gzopen in "direct" mode as well
@@ -1500,13 +1599,18 @@ bool FileFd::Close()
    bool Res = true;
    if ((Flags & AutoClose) == AutoClose)
    {
-#if APT_USE_ZLIB
+#ifdef HAVE_ZLIB
       if (d != NULL && d->gz != NULL) {
         int const e = gzclose(d->gz);
         // gzdclose() on empty files always fails with "buffer error" here, ignore that
         if (e != 0 && e != Z_BUF_ERROR)
            Res &= _error->Errno("close",_("Problem closing the gzip file %s"), FileName.c_str());
       } else
+#endif
+#ifdef HAVE_BZ2
+      if (d != NULL && d->bz2 != NULL)
+        BZ2_bzclose(d->bz2);
+      else
 #endif
         if (iFd > 0 && close(iFd) != 0)
            Res &= _error->Errno("close",_("Problem closing the file %s"), FileName.c_str());
index 1ca41cb7d66c6b21cc3950613e30f696f4e6357b..426664d3a8ff514ff457a4730d2748bc39cec050 100644 (file)
@@ -78,6 +78,7 @@ class FileFd
    bool Read(void *To,unsigned long long Size,unsigned long long *Actual = 0);
    char* ReadLine(char *To, unsigned long long const Size);
    bool Write(const void *From,unsigned long long Size);
+   bool static Write(int Fd, const void *From, unsigned long long Size);
    bool Seek(unsigned long long To);
    bool Skip(unsigned long long To);
    bool Truncate(unsigned long long To);
index cb7d36088c5d46b57502adcfb35c996d61577ea6..56e59d84b89b64635158e6a74db0156260c753a2 100644 (file)
@@ -68,8 +68,7 @@ int parsenetrc (char *host, char *login, char *password, char *netrcfile = NULL)
     if (!home)
       return -1;
 
-    asprintf (&netrcfile, "%s%s%s", home, DIR_CHAR, NETRC);
-    if(!netrcfile)
+    if (asprintf (&netrcfile, "%s%s%s", home, DIR_CHAR, NETRC) == -1 || netrcfile == NULL)
       return -1;
     else
       netrc_alloc = true;
index c46a812095cd17e97ce3e24aa6f5cb6af4790d50..496daf1df4799a1a27ba29c8e999309ec6aec0ca 100644 (file)
@@ -425,7 +425,7 @@ void pkgDPkgPM::DoStdin(int master)
    unsigned char input_buf[256] = {0,}; 
    ssize_t len = read(0, input_buf, sizeof(input_buf));
    if (len)
-      write(master, input_buf, len);
+      FileFd::Write(master, input_buf, len);
    else
       d->stdin_is_dev_null = true;
 }
@@ -451,7 +451,7 @@ void pkgDPkgPM::DoTerminalPty(int master)
    }  
    if(len <= 0) 
       return;
-   write(1, term_buf, len);
+   FileFd::Write(1, term_buf, len);
    if(d->term_out)
       fwrite(term_buf, len, sizeof(char), d->term_out);
 }
@@ -526,7 +526,7 @@ void pkgDPkgPM::ProcessDpkgStatusLine(int OutStatusFd, char *line)
             << ":" << s
             << endl;
       if(OutStatusFd > 0)
-        write(OutStatusFd, status.str().c_str(), status.str().size());
+        FileFd::Write(OutStatusFd, status.str().c_str(), status.str().size());
       if (Debug == true)
         std::clog << "send: '" << status.str() << "'" << endl;
 
@@ -550,7 +550,7 @@ void pkgDPkgPM::ProcessDpkgStatusLine(int OutStatusFd, char *line)
             << ":" << list[3]
             << endl;
       if(OutStatusFd > 0)
-        write(OutStatusFd, status.str().c_str(), status.str().size());
+        FileFd::Write(OutStatusFd, status.str().c_str(), status.str().size());
       if (Debug == true)
         std::clog << "send: '" << status.str() << "'" << endl;
       pkgFailures++;
@@ -564,7 +564,7 @@ void pkgDPkgPM::ProcessDpkgStatusLine(int OutStatusFd, char *line)
             << ":" << list[3]
             << endl;
       if(OutStatusFd > 0)
-        write(OutStatusFd, status.str().c_str(), status.str().size());
+        FileFd::Write(OutStatusFd, status.str().c_str(), status.str().size());
       if (Debug == true)
         std::clog << "send: '" << status.str() << "'" << endl;
       return;
@@ -592,7 +592,7 @@ void pkgDPkgPM::ProcessDpkgStatusLine(int OutStatusFd, char *line)
             << ":" << s
             << endl;
       if(OutStatusFd > 0)
-        write(OutStatusFd, status.str().c_str(), status.str().size());
+        FileFd::Write(OutStatusFd, status.str().c_str(), status.str().size());
       if (Debug == true)
         std::clog << "send: '" << status.str() << "'" << endl;
    }
@@ -1055,7 +1055,8 @@ bool pkgDPkgPM::Go(int OutStatusFd)
       }
 
       int fd[2];
-      pipe(fd);
+      if (pipe(fd) != 0)
+        return _error->Errno("pipe","Failed to create IPC pipe to dpkg");
 
 #define ADDARG(X) Args.push_back(X); Size += strlen(X)
 #define ADDARGC(X) Args.push_back(X); Size += sizeof(X) - 1
@@ -1236,7 +1237,7 @@ bool pkgDPkgPM::Go(int OutStatusFd)
                << (PackagesDone/float(PackagesTotal)*100.0) 
                << ":" << _("Running dpkg")
                << endl;
-        write(OutStatusFd, status.str().c_str(), status.str().size());
+        FileFd::Write(OutStatusFd, status.str().c_str(), status.str().size());
       }
       Child = ExecFork();
             
index a1c47c030ae2ff41eb3c79b5855d5bae52e2b646..76278921f7e29ed60e770a479cdd97947b489e8d 100644 (file)
@@ -24,7 +24,7 @@
 
 #define Stringfy_(x) # x
 #define Stringfy(x)  Stringfy_(x)
-const char *pkgVersion = VERSION;
+const char *pkgVersion = PACKAGE_VERSION;
 const char *pkgLibVersion = Stringfy(APT_PKG_MAJOR) "."
                             Stringfy(APT_PKG_MINOR) "." 
                             Stringfy(APT_PKG_RELEASE);
index e1f69dd655d6d52acf5580fb7334677abd44fe8e..27d7ead2485d15c8d273286a86955a26f1ebb919 100644 (file)
@@ -14,7 +14,13 @@ include ../buildlib/libversion.mak
 LIBRARY=apt-pkg
 MAJOR=$(LIBAPTPKG_MAJOR)
 MINOR=$(LIBAPTPKG_RELEASE)
-SLIBS=$(PTHREADLIB) $(INTLLIBS) -lutil -ldl -lz
+SLIBS=$(PTHREADLIB) $(INTLLIBS) -lutil -ldl
+ifeq ($(HAVE_ZLIB),yes)
+SLIBS+= -lz
+endif
+ifeq ($(HAVE_BZ2),yes)
+SLIBS+= -lbz2
+endif
 APT_DOMAIN:=libapt-pkg$(LIBAPTPKG_MAJOR)
 
 # Source code for the contributed non-core things
index 4798fe3f53d487c4f18e065d0f7eb4fc05cc7fa1..b07d4f77f9d04d72a166a95322d1587ac5aa930b 100644 (file)
 /* Define if we have the timegm() function */
 #undef HAVE_TIMEGM
 
+/* Define if we have the zlib library for gzip */
+#undef HAVE_ZLIB
+
+/* Define if we have the bz2 library for bzip2 */
+#undef HAVE_BZ2
+
 /* These two are used by the statvfs shim for glibc2.0 and bsd */
 /* Define if we have sys/vfs.h */
 #undef HAVE_VFS_H
 /* Define the arch name string */
 #undef COMMON_ARCH
 
-/* The version number string */
-#undef VERSION
-
 /* The package name string */
 #undef PACKAGE
 
+/* The version number string */
+#undef PACKAGE_VERSION
+
 #define APT_8_CLEANER_HEADERS
index edb08916037d46152f3fe18f5ef0ea5a6e678382..c10813e9d2126bc15744b063f004a42212f1a00a 100644 (file)
@@ -121,7 +121,7 @@ MKDIRS := $(BIN)
 all: dirs binary doc
 binary: library program
 maintainer-clean dist-clean distclean pristine sanity: veryclean
-headers library clean veryclean program test:
+startup headers library clean veryclean program test update-po:
 
 veryclean:
        echo Very Clean done for $(SUBDIR)
index fdac3e6c3ec6b9c77c28c9634f17433497bed9f9..0f0fac09503a9c872e94e29d6bd14904da0f24e0 100644 (file)
@@ -2,6 +2,7 @@
 # if you want you can edit it, just don't re-run configure.
 
 PACKAGE = @PACKAGE@
+PACKAGE_VERSION = @PACKAGE_VERSION@
 
 # C++ compiler options
 CC = @CC@
@@ -54,7 +55,8 @@ INTLLIBS = @INTLLIBS@
 # Shim Headerfile control
 HAVE_C9X = @HAVE_C9X@
 HAVE_STATVFS = @HAVE_STATVFS@
-HAVE_TIMEGM = @HAVE_TIMEGM@
+HAVE_ZLIB = @HAVE_ZLIB@
+HAVE_BZ2 = @HAVE_BZ2@
 NEED_SOCKLEN_T_DEFINE = @NEED_SOCKLEN_T_DEFINE@
 
 # Shared library things
index 511a5cae278a352394d7a3fd184b5caeeee6f837..bb1c77e47612ea45deb2d9662b5a814326fa68e0 100644 (file)
@@ -14,7 +14,7 @@ MKDIRS += $(PO_DOMAINS)/$(MY_DOMAIN)
 $(PO_DOMAINS)/$(MY_DOMAIN)/$(LOCAL).$(TYPE)list: SRC := $(addprefix $(SUBDIR)/,$(SOURCE))
 $(PO_DOMAINS)/$(MY_DOMAIN)/$(LOCAL).$(TYPE)list: makefile
        (echo $(SRC) | xargs -n1 echo) > $@
-binary program clean: $(PO_DOMAINS)/$(MY_DOMAIN)/$(LOCAL).$(TYPE)list
+startup binary program clean: $(PO_DOMAINS)/$(MY_DOMAIN)/$(LOCAL).$(TYPE)list
 
 veryclean: veryclean/$(LOCAL)
 veryclean/po/$(LOCAL): LIST := $(PO_DOMAINS)/$(MY_DOMAIN)/$(LOCAL).$(TYPE)list
index 94654ffd4c8864cd5227aa064f7bfa660fe17193..ce869581b47d3228fdb09ba87b4507ce09565adb 100644 (file)
@@ -1676,7 +1676,7 @@ bool GenCaches(CommandLine &Cmd)
 /* */
 bool ShowHelp(CommandLine &Cmd)
 {
-   ioprintf(cout,_("%s %s for %s compiled on %s %s\n"),PACKAGE,VERSION,
+   ioprintf(cout,_("%s %s for %s compiled on %s %s\n"),PACKAGE,PACKAGE_VERSION,
            COMMON_ARCH,__DATE__,__TIME__);
    
    if (_config->FindB("version") == true)
index 0017d954e874e3ae293f54ef790b34f7bc2c3662..2551f49161e9fc07fe5b775a708e339a6e816eb9 100644 (file)
@@ -195,7 +195,7 @@ bool DoIdent(CommandLine &)
 /* */
 int ShowHelp()
 {
-   ioprintf(cout,_("%s %s for %s compiled on %s %s\n"),PACKAGE,VERSION,
+   ioprintf(cout,_("%s %s for %s compiled on %s %s\n"),PACKAGE,PACKAGE_VERSION,
            COMMON_ARCH,__DATE__,__TIME__);
    if (_config->FindB("version") == true)
       return 0;
index 47bedfe3f4d10280465720264a92aa8a0711f353..79ae944df1f8e0e2417789b4d535b04ddf2743aa 100644 (file)
@@ -72,7 +72,7 @@ bool DoDump(CommandLine &CmdL)
 /* */
 int ShowHelp()
 {
-   ioprintf(cout,_("%s %s for %s compiled on %s %s\n"),PACKAGE,VERSION,
+   ioprintf(cout,_("%s %s for %s compiled on %s %s\n"),PACKAGE,PACKAGE_VERSION,
            COMMON_ARCH,__DATE__,__TIME__);
    if (_config->FindB("version") == true)
       return 0;
index e82e15c6e3a5c6c791d42f8b6baffb17f80a06ae..aa16b127149f74fe2114e720aa23d3520498c9ea 100644 (file)
@@ -21,7 +21,7 @@
 bool ShowHelp() {
 
        std::cout <<
-               PACKAGE " " VERSION " for " COMMON_ARCH " compiled on " __DATE__ " " __TIME__ << std::endl <<
+               PACKAGE " " PACKAGE_VERSION " for " COMMON_ARCH " compiled on " __DATE__ " " __TIME__ << std::endl <<
                "Usage: apt-dump-resolver\n"
                "\n"
                "apt-dump-resolver is a dummy solver who just dumps its input to the\n"
index dc4c110a122fbbd0261c808f8039bd7c4325f14b..60efafba544283d9b0ee0c569abfab0297bbe2f1 100644 (file)
@@ -224,7 +224,7 @@ bool DebFile::ParseInfo()
 /* */
 int ShowHelp(void)
 {
-       ioprintf(cout,_("%s %s for %s compiled on %s %s\n"),PACKAGE,VERSION,
+       ioprintf(cout,_("%s %s for %s compiled on %s %s\n"),PACKAGE,PACKAGE_VERSION,
            COMMON_ARCH,__DATE__,__TIME__);
 
        if (_config->FindB("version") == true) 
index f4ad75d1c5ba4a820d7a752e9cd3cc5c4cfe1973..6d7f802027d930793ba7136155bddf56120e65de 100644 (file)
@@ -1711,12 +1711,13 @@ bool DoAutomaticRemove(CacheFile &Cache)
    bool smallList = (hideAutoRemove == false &&
                strcasecmp(_config->Find("APT::Get::HideAutoRemove","").c_str(),"small") == 0);
 
-   string autoremovelist, autoremoveversions;
    unsigned long autoRemoveCount = 0;
    APT::PackageSet tooMuch;
+   APT::PackageList autoRemoveList;
    // look over the cache to see what can be removed
-   for (pkgCache::PkgIterator Pkg = Cache->PkgBegin(); ! Pkg.end(); ++Pkg)
+   for (unsigned J = 0; J < Cache->Head().PackageCount; ++J)
    {
+      pkgCache::PkgIterator Pkg(Cache,Cache.List[J]);
       if (Cache[Pkg].Garbage)
       {
         if(Pkg.CurrentVer() != 0 || Cache[Pkg].Install())
@@ -1733,6 +1734,8 @@ bool DoAutomaticRemove(CacheFile &Cache)
         }
         else
         {
+           if (hideAutoRemove == false && Cache[Pkg].Delete() == false)
+              autoRemoveList.insert(Pkg);
            // if the package is a new install and already garbage we don't need to
            // install it in the first place, so nuke it instead of show it
            if (Cache[Pkg].Install() == true && Pkg.CurrentVer() == 0)
@@ -1742,16 +1745,8 @@ bool DoAutomaticRemove(CacheFile &Cache)
               Cache->MarkDelete(Pkg, false);
            }
            // only show stuff in the list that is not yet marked for removal
-           else if(hideAutoRemove == false && Cache[Pkg].Delete() == false) 
-           {
+           else if(hideAutoRemove == false && Cache[Pkg].Delete() == false)
               ++autoRemoveCount;
-              // we don't need to fill the strings if we don't need them
-              if (smallList == false)
-              {
-                autoremovelist += Pkg.FullName(true) + " ";
-                autoremoveversions += string(Cache[Pkg].CandVersion) + "\n";
-              }
-           }
         }
       }
    }
@@ -1786,14 +1781,7 @@ bool DoAutomaticRemove(CacheFile &Cache)
                    std::clog << "Save " << Pkg << " as another installed garbage package depends on it" << std::endl;
                 Cache->MarkInstall(Pkg, false);
                 if (hideAutoRemove == false)
-                {
                    ++autoRemoveCount;
-                   if (smallList == false)
-                   {
-                      autoremovelist += Pkg.FullName(true) + " ";
-                      autoremoveversions += string(Cache[Pkg].CandVersion) + "\n";
-                   }
-                }
                 tooMuch.erase(Pkg);
                 Changed = true;
                 break;
@@ -1803,6 +1791,18 @@ bool DoAutomaticRemove(CacheFile &Cache)
       } while (Changed == true);
    }
 
+   std::string autoremovelist, autoremoveversions;
+   if (smallList == false && autoRemoveCount != 0)
+   {
+      for (APT::PackageList::const_iterator Pkg = autoRemoveList.begin(); Pkg != autoRemoveList.end(); ++Pkg)
+      {
+        if (Cache[Pkg].Garbage == false)
+           continue;
+        autoremovelist += Pkg.FullName(true) + " ";
+        autoremoveversions += string(Cache[Pkg].CandVersion) + "\n";
+      }
+   }
+
    // Now see if we had destroyed anything (if we had done anything)
    if (Cache->BrokenCount() != 0)
    {
@@ -1826,7 +1826,7 @@ bool DoAutomaticRemove(CacheFile &Cache)
       else
         ioprintf(c1out, P_("%lu package was automatically installed and is no longer required.\n",
                  "%lu packages were automatically installed and are no longer required.\n", autoRemoveCount), autoRemoveCount);
-      c1out << _("Use 'apt-get autoremove' to remove them.") << std::endl;
+      c1out << P_("Use 'apt-get autoremove' to remove it.", "Use 'apt-get autoremove' to remove them.", autoRemoveCount) << std::endl;
    }
    return true;
 }
@@ -3295,7 +3295,7 @@ bool DoMoo(CommandLine &CmdL)
 /* */
 bool ShowHelp(CommandLine &CmdL)
 {
-   ioprintf(cout,_("%s %s for %s compiled on %s %s\n"),PACKAGE,VERSION,
+   ioprintf(cout,_("%s %s for %s compiled on %s %s\n"),PACKAGE,PACKAGE_VERSION,
            COMMON_ARCH,__DATE__,__TIME__);
            
    if (_config->FindB("version") == true)
index 1b636e4d5fe6c6851a7cc5f718cdb07e455bc30f..25ecb7af1d0773c13fb5bed21c4ef7367b192fb0 100644 (file)
@@ -29,7 +29,7 @@
 // ---------------------------------------------------------------------
 /* */
 bool ShowHelp(CommandLine &CmdL) {
-       ioprintf(std::cout,_("%s %s for %s compiled on %s %s\n"),PACKAGE,VERSION,
+       ioprintf(std::cout,_("%s %s for %s compiled on %s %s\n"),PACKAGE,PACKAGE_VERSION,
                 COMMON_ARCH,__DATE__,__TIME__);
 
        std::cout <<
index ef43317142210573455bc40aff6b6a0f2df70c50..2d5eed29d273d4d0e21ef98f9645b64b630e44d6 100644 (file)
@@ -360,7 +360,7 @@ bool ShowHold(CommandLine &CmdL)
 /* */
 bool ShowHelp(CommandLine &CmdL)
 {
-   ioprintf(cout,_("%s %s for %s compiled on %s %s\n"),PACKAGE,VERSION,
+   ioprintf(cout,_("%s %s for %s compiled on %s %s\n"),PACKAGE,PACKAGE_VERSION,
            COMMON_ARCH,__DATE__,__TIME__);
 
    cout <<
index 20ae14f2abf8e52e292a286f1eb066abec3d2c6b..46989044e6cb49088fbd745afbfda24c15972439 100644 (file)
@@ -144,7 +144,7 @@ bool DoIt(string InFile)
 /* */
 int ShowHelp()
 {
-   ioprintf(cout,_("%s %s for %s compiled on %s %s\n"),PACKAGE,VERSION,
+   ioprintf(cout,_("%s %s for %s compiled on %s %s\n"),PACKAGE,PACKAGE_VERSION,
            COMMON_ARCH,__DATE__,__TIME__);
    if (_config->FindB("version") == true)
       return 0;
index 07e9eb8ca7c76cfbff0f588c2de0047f068135bf..f3712232af9e2ce3671b68983559715813305871 100644 (file)
@@ -33,20 +33,6 @@ LIB_MAKES = apt-pkg/makefile
 SOURCE = apt-cdrom.cc 
 include $(PROGRAM_H)
 
-# The apt-sortpkgs program
-PROGRAM=apt-sortpkgs
-SLIBS = -lapt-pkg $(INTLLIBS)
-LIB_MAKES = apt-pkg/makefile
-SOURCE = apt-sortpkgs.cc
-include $(PROGRAM_H)
-
-# The apt-extracttemplates program
-PROGRAM=apt-extracttemplates
-SLIBS = -lapt-pkg -lapt-inst $(INTLLIBS)
-LIB_MAKES = apt-pkg/makefile
-SOURCE = apt-extracttemplates.cc 
-include $(PROGRAM_H)
-
 # The apt-key program
 SOURCE=apt-key
 TO=$(BIN)
@@ -66,6 +52,25 @@ include $(PROGRAM_H)
 #TARGET=program
 #include $(COPY_H)
 
+#
+# the following programs are shipped in apt-utils
+#
+APT_DOMAIN:=apt-utils
+
+# The apt-sortpkgs program
+PROGRAM=apt-sortpkgs
+SLIBS = -lapt-pkg $(INTLLIBS)
+LIB_MAKES = apt-pkg/makefile
+SOURCE = apt-sortpkgs.cc
+include $(PROGRAM_H)
+
+# The apt-extracttemplates program
+PROGRAM=apt-extracttemplates
+SLIBS = -lapt-pkg -lapt-inst $(INTLLIBS)
+LIB_MAKES = apt-pkg/makefile
+SOURCE = apt-extracttemplates.cc 
+include $(PROGRAM_H)
+
 # The internal solver acting as an external
 PROGRAM=apt-internal-solver
 SLIBS = -lapt-pkg $(INTLLIBS)
index 065afccf1f47f9e6d519d864a3cea9657ee4dea7..b974b9eb94ff37559e57de24077df70a9e4193b8 100644 (file)
@@ -17,11 +17,12 @@ AC_INIT(configure.in)
 AC_CONFIG_AUX_DIR(buildlib)
 AC_CONFIG_HEADER(include/config.h:buildlib/config.h.in include/apti18n.h:buildlib/apti18n.h.in)
 
-dnl -- SET THIS TO THE RELEASE VERSION --
-AC_DEFINE_UNQUOTED(VERSION,"0.8.16~exp9")
 PACKAGE="apt"
+PACKAGE_VERSION="0.8.16~exp14"
 AC_DEFINE_UNQUOTED(PACKAGE,"$PACKAGE")
+AC_DEFINE_UNQUOTED(PACKAGE_VERSION,"$PACKAGE_VERSION")
 AC_SUBST(PACKAGE)
+AC_SUBST(PACKAGE_VERSION)
 
 dnl Check the archs, we want the target type.
 AC_CANONICAL_SYSTEM
@@ -87,9 +88,21 @@ AC_CHECK_LIB(curl, curl_easy_init,
 
 AC_SUBST(BDBLIB)
 
+HAVE_ZLIB=no
 AC_CHECK_LIB(z, gzopen,
-       [AC_CHECK_HEADER(zlib.h, [], AC_MSG_ERROR([failed: zlib.h not found]))],
+       [AC_CHECK_HEADER(zlib.h, [HAVE_ZLIB=yes], AC_MSG_ERROR([failed: zlib.h not found]))],
        AC_MSG_ERROR([failed: Need libz]))
+AC_SUBST(HAVE_ZLIB)
+if test "x$HAVE_ZLIB" = "xyes"; then
+       AC_DEFINE(HAVE_ZLIB)
+fi
+
+HAVE_BZ2=no
+AC_CHECK_LIB(bz2, BZ2_bzopen,[AC_CHECK_HEADER(bzlib.h, [HAVE_BZ2=yes], [])], [])
+AC_SUBST(HAVE_BZ2)
+if test "x$HAVE_BZ2" = "xyes"; then
+       AC_DEFINE(HAVE_BZ2)
+fi
 
 dnl Converts the ARCH to be something singular for this general CPU family
 dnl This is often the dpkg architecture string.
@@ -218,4 +231,4 @@ fi
 AC_SUBST(USE_NLS)
 AC_PATH_PROG(BASH, bash)
 
-AC_OUTPUT(environment.mak:buildlib/environment.mak.in makefile:buildlib/makefile.in doc/Doxyfile,make -s dirs)
+AC_OUTPUT(environment.mak:buildlib/environment.mak.in makefile:buildlib/makefile.in doc/Doxyfile:doc/Doxyfile.in,make -s dirs)
index 8b137891791fe96927ad78e64b0aad7bded08bdc..cdbcb2f37ebfc5db6cf41617d0c26ae78f6968d6 100644 (file)
@@ -1 +1 @@
-
+usr/share/locale/*/*/apt-utils.mo
index c8679604328a82da306d41bf817a1501133a3f28..463165c1b42774e5106a3a658cf795e40b16a0e0 100644 (file)
@@ -6,16 +6,88 @@ apt (0.8.16~exp14) UNRELEASED; urgency=low
     - add APT::pkgPackageManager::MaxLoopCount to ensure that the
       ordering code does not get into a endless loop when it flip-flops
       between two states
-  * debian/control:
-    - suggest xz-lzma instead of lzma
-  
+
   [ David Kalnischkies ]
+  * do not update po and pot files in the process of the build as this
+    causes timestamp changes for the mo files which therefore can't
+    be refcounted by dpkg for your M-A: same packages
+    (Closes: #659333, LP: #924628)
+  * apt-inst/database.{cc,h}, apt-inst/deb/dpkgdb.{cc,h}:
+    - drop instead of fix as it is only needed if you want to reimplement dpkg
+      and comes straight from the beginning of last decade (Closes: #663372)
+  * apt-inst/deb/debfile.cc:
+    - {Extract,Merge}Control() is another instance of "lets reimplement dpkg"
+      so shot of this code before someone ends up using this…
+  * debian/libapt-pkg4.12:
+    - update symbols file
+  * debian/apt-utils.install:
+    - ship the ftparchive, apt-extractemplates and apt-sortpkgs locales
+      in the apt-utils package instead of the apt package
   * apt-pkg/packagemanager.cc:
     - recheck all dependencies if we changed a package in SmartConfigure
       as this could break an earlier dependency (LP: #940396)
     - recheck dependencies in SmartUnpack after a change, too
+  * apt-pkg/acquire-worker.cc:
+    - check return of write() as gcc recommends
+  * apt-pkg/acquire.cc:
+    - check return of write() as gcc recommends
+  * apt-pkg/cdrom.cc:
+    - check return of chdir() and link() as gcc recommends
+  * apt-pkg/clean.cc:
+    - check return of chdir() as gcc recommends
+  * apt-pkg/contrib/netrc.cc:
+    - check return of asprintf() as gcc recommends
+  * methods/rred.cc:
+    - check return of writev() as gcc recommends
+  * methods/mirror.cc:
+    - check return of chdir() as gcc recommends
+  * apt-pkg/deb/dpkgpm.cc:
+    - check return of write() a gcc recommends
+  * apt-inst/deb/debfile.cc:
+    - check return of chdir() as gcc recommends
+  * apt-inst/deb/dpkgdb.cc:
+    - check return of chdir() as gcc recommends
+  * methods/makefile:
+    - do not link rred against libz anymore as FileFd handles all
+      this transparently now
+  * debian/control:
+    - bump Standards-Version to 3.9.3 (no changes needed)
+    - add libbz2-dev as new build-dependency
+    - remove the libz-dev alternative from zlib1g-dev build-dependency
+    - suggest xz-utils instead of bzip2 and lzma
+  * doc/apt-get.8.xml:
+    - typofix: respect → respecting, thanks Mike Erickson! (Closes: #664833)
+  * debian/rules:
+    - do not sed in configure.in to set the version-number
+  * prepare-release:
+    - add as a small script to lazy check and prepare releases
+  * doc/*:
+    - move the command synopsis out of each manpage into apt-verbatim.ent
+      as they are a hell to translate and just single out the parameters
+      which can be translated to apt.ent
+  * apt-pkg/aptconfiguration.cc:
+    - if present, prefer xz binary over lzma
+    - if we have zlib builtin insert add a dummy gzip compressor for FileFD
+    - do the same for bz2 builtin if available
+  * methods/bzip2.cc:
+    - remove it as the functionality for all compressors can be
+      provided by gzip.cc now with the usage of FileFD
+  * apt-pkg/contrib/fileutl.cc:
+    - use libz2 library for (de)compression instead of the bzip2 binary as
+      the first is a dependency of dpkg and the later just priority:optional
+      so we gain 'easier' access to bz2-compressed Translation files this way
+  * cmdline/apt-get.cc:
+    - print list of autoremoves in alphabetical order (Closes: #639008)
 
- -- David Kalnischkies <kalnischkies@gmail.com>  Tue, 13 Mar 2012 12:38:35 +0100
+  [ Bogdan Purcareata ]
+  * doc/apt-get.8.xml:
+    - add 'download' to the usage line (Closes: #649340)
+  * cmdline/apt-get.cc:
+    - distinguish information about 'apt-get autoremove' based on the
+      number of auto-removed packages both before and after the list
+      of packages (Closes: #665833)
+
+ -- David Kalnischkies <kalnischkies@gmail.com>  Wed, 11 Apr 2012 12:09:33 +0200
 
 apt (0.8.16~exp13) experimental; urgency=low
 
@@ -166,6 +238,10 @@ apt (0.8.16~exp10) experimental; urgency=low
   * apt-pkg/contrib/fileutl.h:
     - store the offset in the internal fd before calculate size of
       the zlib-handled file to jump back to this place again
+  * apt-pkg/aptconfiguration.cc:
+    - parse dpkg --print-foreign-architectures correctly in
+      case archs are separated by newline instead of space, too.
+      (Closes: #655590)
 
   [ Michael Vogt ]
   * apt-pkg/contrib/fileutl.h:
@@ -414,19 +490,20 @@ apt (0.8.16~exp1) experimental; urgency=low
 
  -- Michael Vogt <mvo@debian.org>  Wed, 29 Jun 2011 12:40:31 +0200
 
-apt (0.8.15.10) UNRELEASEDunstable; urgency=low
+apt (0.8.15.10) unstable; urgency=high
 
   [ David Kalnischkies ]
   * algorithms.cc:
     - show a debug why a package was kept by ResolveByKeep()
   * doc/manpage-style.xml:
     - put <brackets> around email addresses
-  * apt-pkg/aptconfiguration.cc:
-    - parse dpkg --print-foreign-architectures correctly in
-      case archs are separated by newline instead of space, too.
-      (Closes: #655590)
   * doc/po/de.po:
     - apply typo-fix from Michael Basse, thanks! (LP: #900770)
+  * apt-pkg/acquire-item.cc:
+    - remove 'old' InRelease file if we can't get a new one before
+      proceeding with Release.gpg to avoid the false impression of a still
+      trusted repository by a (still present) old InRelease file.
+      Thanks to Simon Ruderich for reporting this issue! (CVE-2012-0214)
 
   [ Chris Leick ]
   * German manpage translation update
@@ -438,8 +515,16 @@ apt (0.8.15.10) UNRELEASEDunstable; urgency=low
   * Slovak (Ivan Masar). Closes: #652985
   * Russian (Yuri Kozlov). Closes: #654844
   * Hungarian (Gabor Kelemen). Closes: #655238
+  * Polish (Michał Kułach). Closes: #656908
+  * Danish (Joe Hansen). Closes: #658643
+  * French: replace "étiquetage" by "épinglage" for "pinning"
+
+  [ Michael Vogt ]
+  * merged patch from lp:~uusijani/apt/uusi-branch:
+     Correct fi translation for hash sum mismatches (lp:420403)
+     Thanks to Jani Uusitalo
 
- -- David Kalnischkies <kalnischkies@gmail.com>  Fri, 13 Jan 2012 17:30:36 +0100
+ -- Michael Vogt <mvo@debian.org>  Tue, 06 Mar 2012 14:14:26 +0100
 
 apt (0.8.15.9) unstable; urgency=low
 
index 413276e95804560560dc79a37de2aba6714ef7e8..78b10e0f0f869589490d74b4aee9c5d026ba64b3 100644 (file)
@@ -5,10 +5,10 @@ Maintainer: APT Development Team <deity@lists.debian.org>
 Uploaders: Michael Vogt <mvo@debian.org>, Otavio Salvador <otavio@debian.org>,
  Christian Perrier <bubulle@debian.org>, Daniel Burrows <dburrows@debian.org>,
  Julian Andres Klode <jak@debian.org>
-Standards-Version: 3.9.2
+Standards-Version: 3.9.3
 Build-Depends: dpkg-dev (>= 1.15.8), debhelper (>= 8.1.3~), libdb-dev,
  gettext (>= 0.12), libcurl4-gnutls-dev (>= 7.19.0),
- zlib1g-dev | libz-dev, debiandoc-sgml, xsltproc, docbook-xsl, docbook-xml,
+ zlib1g-dev, libbz2-dev, debiandoc-sgml, xsltproc, docbook-xsl, docbook-xml,
  po4a (>= 0.34-2), autotools-dev, autoconf, automake, doxygen
 Build-Conflicts: autoconf2.13, automake1.4
 Vcs-Bzr: http://bzr.debian.org/apt/debian-sid/
@@ -19,7 +19,7 @@ Architecture: any
 Depends: ${shlibs:Depends}, ${misc:Depends}, debian-archive-keyring, gnupg
 Replaces: manpages-pl (<< 20060617-3~)
 Conflicts: python-apt (<< 0.7.93.2~)
-Suggests: aptitude | synaptic | wajig, dpkg-dev, apt-doc, bzip2, xz-lzma, python-apt
+Suggests: aptitude | synaptic | wajig, dpkg-dev, apt-doc, xz-utils, python-apt
 Description: commandline package manager
  This package provides commandline tools for searching and
  managing as well as querying information about packages
@@ -80,7 +80,7 @@ Architecture: any
 Multi-Arch: same
 Priority: optional
 Pre-Depends: ${misc:Pre-Depends}
-Depends: ${libapt-pkg-name} (= ${binary:Version}), ${libapt-inst-name} (= ${binary:Version}), ${misc:Depends}, zlib1g-dev | zlib-dev
+Depends: ${libapt-pkg-name} (= ${binary:Version}), ${libapt-inst-name} (= ${binary:Version}), ${misc:Depends}, zlib1g-dev
 Section: libdevel
 Description: development files for APT's libapt-pkg and libapt-inst
  This package contains the header files and libraries for
@@ -102,6 +102,7 @@ Description: documentation for APT development
 Package: apt-utils
 Architecture: any
 Depends: ${shlibs:Depends}, ${misc:Depends}
+Suggests: xz-utils
 Description: package managment related utility programs
  This package contains some less used commandline utilities related
  to package managment with APT.
index bba2cb653587355b47daddd03c0184b5f2eabb04..cade0990da049dcddd0e329b6f8caee0ecbc29fd 100644 (file)
@@ -7,11 +7,9 @@ libapt-inst.so.1.4 libapt-inst1.4 #MINVER#
  (c++)"ExtractTar::~ExtractTar()@Base" 0.8.0
  (c++)"debDebFile::GotoMember(char const*)@Base" 0.8.0
  (c++)"debDebFile::CheckMember(char const*)@Base" 0.8.0
- (c++)"debDebFile::MergeControl(pkgDataBase&)@Base" 0.8.0
  (c++)"debDebFile::ControlExtract::DoItem(pkgDirStream::Item&, int&)@Base" 0.8.0
  (c++)"debDebFile::ControlExtract::~ControlExtract()@Base" 0.8.0
  (c++)"debDebFile::ExtractArchive(pkgDirStream&)@Base" 0.8.0
- (c++)"debDebFile::ExtractControl(pkgDataBase&)@Base" 0.8.0
  (c++)"debDebFile::MemControlExtract::TakeControl(void const*, unsigned long)@Base" 0.8.0
  (c++)"debDebFile::MemControlExtract::Read(debDebFile&)@Base" 0.8.0
  (c++)"debDebFile::MemControlExtract::DoItem(pkgDirStream::Item&, int&)@Base" 0.8.0
@@ -39,16 +37,11 @@ libapt-inst.so.1.4 libapt-inst1.4 #MINVER#
  (c++)"pkgFLCache::HashNode(pkgFLCache::NodeIterator const&)@Base" 0.8.0
  (c++)"pkgFLCache::PrintTree(unsigned int, unsigned long)@Base" 0.8.0
  (c++)"pkgFLCache::pkgFLCache(DynamicMMap&)@Base" 0.8.0
- (c++)"pkgDataBase::GetMetaTmp(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@Base" 0.8.0
- (c++)"pkgDataBase::~pkgDataBase()@Base" 0.8.0
  (c++)"pkgDirStream::FinishedFile(pkgDirStream::Item&, int)@Base" 0.8.0
  (c++)"pkgDirStream::Fail(pkgDirStream::Item&, int)@Base" 0.8.0
  (c++)"pkgDirStream::DoItem(pkgDirStream::Item&, int&)@Base" 0.8.0
  (c++)"pkgDirStream::Process(pkgDirStream::Item&, unsigned char const*, unsigned long, unsigned long)@Base" 0.8.0
  (c++)"pkgDirStream::~pkgDirStream()@Base" 0.8.0
- (c++|optional)"debListParser::~debListParser()@Base" 0.8.0
- (c++|optional)"pkgCacheGenerator::ListParser::CollectFileProvides(pkgCache&, pkgCache::VerIterator&)@Base" 0.8.0
- (c++|optional)"pkgCacheGenerator::ListParser::~ListParser()@Base" 0.8.0
  (c++|optional)"pkgCache::DepIterator::operator++(int)@Base" 0.8.0
  (c++|optional)"pkgCache::DepIterator::operator++()@Base" 0.8.0
  (c++|optional)"pkgCache::VerIterator::operator++(int)@Base" 0.8.0
@@ -56,15 +49,6 @@ libapt-inst.so.1.4 libapt-inst1.4 #MINVER#
  (c++)"ARArchive::LoadHeaders()@Base" 0.8.0
  (c++)"ARArchive::ARArchive(FileFd&)@Base" 0.8.0
  (c++)"ARArchive::~ARArchive()@Base" 0.8.0
- (c++)"debDpkgDB::InitMetaTmp(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@Base" 0.8.0
- (c++)"debDpkgDB::LoadChanges()@Base" 0.8.0
- (c++)"debDpkgDB::ReadConfFiles()@Base" 0.8.0
- (c++)"debDpkgDB::ReadyFileList(OpProgress&)@Base" 0.8.0
- (c++)"debDpkgDB::ReadyPkgCache(OpProgress&)@Base" 0.8.0
- (c++)"debDpkgDB::ReadDiversions()@Base" 0.8.0
- (c++)"debDpkgDB::ReadFList(OpProgress&)@Base" 0.8.0
- (c++)"debDpkgDB::debDpkgDB()@Base" 0.8.0
- (c++)"debDpkgDB::~debDpkgDB()@Base" 0.8.0
  (c++)"pkgFLCache::NodeIterator::RealPackage() const@Base" 0.8.0
  (c++)"pkgFLCache::Header::CheckSizes(pkgFLCache::Header&) const@Base" 0.8.0
  (c++|optional)"pkgCache::DepIterator::OwnerPointer() const@Base" 0.8.0
@@ -72,42 +56,30 @@ libapt-inst.so.1.4 libapt-inst1.4 #MINVER#
  (c++)"ARArchive::FindMember(char const*) const@Base" 0.8.0
  (c++)"typeinfo for ExtractTar@Base" 0.8.0
  (c++)"typeinfo for pkgExtract@Base" 0.8.0
- (c++)"typeinfo for pkgDataBase@Base" 0.8.0
  (c++)"typeinfo for pkgDirStream@Base" 0.8.0
- (c++)"typeinfo for debDpkgDB@Base" 0.8.0
  (c++)"typeinfo for debDebFile::ControlExtract@Base" 0.8.0
  (c++)"typeinfo for debDebFile::MemControlExtract@Base" 0.8.0
- (c++|optional)"typeinfo for pkgCacheGenerator::ListParser@Base" 0.8.0
  (c++|optional)"typeinfo for pkgCache::DepIterator@Base" 0.8.0
  (c++|optional)"typeinfo for pkgCache::VerIterator@Base" 0.8.0
  (c++|optional)"typeinfo for pkgCache::Iterator<pkgCache::Dependency, pkgCache::DepIterator>@Base" 0.8.0
- (c++|optional)"typeinfo for pkgCache::Iterator<pkgCache::Package, pkgCache::PkgIterator>@Base" 0.8.0
  (c++|optional)"typeinfo for pkgCache::Iterator<pkgCache::Version, pkgCache::VerIterator>@Base" 0.8.0
  (c++)"typeinfo name for ExtractTar@Base" 0.8.0
  (c++)"typeinfo name for pkgExtract@Base" 0.8.0
- (c++)"typeinfo name for pkgDataBase@Base" 0.8.0
  (c++)"typeinfo name for pkgDirStream@Base" 0.8.0
- (c++)"typeinfo name for debDpkgDB@Base" 0.8.0
  (c++)"typeinfo name for debDebFile::ControlExtract@Base" 0.8.0
  (c++)"typeinfo name for debDebFile::MemControlExtract@Base" 0.8.0
- (c++|optional)"typeinfo name for pkgCacheGenerator::ListParser@Base" 0.8.0
  (c++|optional)"typeinfo name for pkgCache::DepIterator@Base" 0.8.0
  (c++|optional)"typeinfo name for pkgCache::VerIterator@Base" 0.8.0
  (c++|optional)"typeinfo name for pkgCache::Iterator<pkgCache::Dependency, pkgCache::DepIterator>@Base" 0.8.0
- (c++|optional)"typeinfo name for pkgCache::Iterator<pkgCache::Package, pkgCache::PkgIterator>@Base" 0.8.0
  (c++|optional)"typeinfo name for pkgCache::Iterator<pkgCache::Version, pkgCache::VerIterator>@Base" 0.8.0
  (c++)"vtable for ExtractTar@Base" 0.8.0
  (c++)"vtable for pkgExtract@Base" 0.8.0
- (c++)"vtable for pkgDataBase@Base" 0.8.0
  (c++)"vtable for pkgDirStream@Base" 0.8.0
- (c++)"vtable for debDpkgDB@Base" 0.8.0
  (c++)"vtable for debDebFile::ControlExtract@Base" 0.8.0
  (c++)"vtable for debDebFile::MemControlExtract@Base" 0.8.0
- (c++|optional)"vtable for pkgCacheGenerator::ListParser@Base" 0.8.0
  (c++|optional)"vtable for pkgCache::DepIterator@Base" 0.8.0
  (c++|optional)"vtable for pkgCache::VerIterator@Base" 0.8.0
  (c++|optional)"vtable for pkgCache::Iterator<pkgCache::Dependency, pkgCache::DepIterator>@Base" 0.8.0
- (c++|optional)"vtable for pkgCache::Iterator<pkgCache::Package, pkgCache::PkgIterator>@Base" 0.8.0
  (c++|optional)"vtable for pkgCache::Iterator<pkgCache::Version, pkgCache::VerIterator>@Base" 0.8.0
 ### gcc-4.4 specific
 # (c++|regex|optional=std)"^char\* std::[^ ]+<.+ >::_.+@Base$" 0.8.0
index 8d2bc4a5422e2709f74afdbb3aadb1773a56d25b..1abf22899ba748c09c89defed292f6cd18522e1f 100644 (file)
@@ -55,7 +55,6 @@ libapt-pkg.so.4.12 libapt-pkg4.12 #MINVER#
  (c++)"pkgMinimizeUpgrade(pkgDepCache&)@Base" 0.8.0
  (c++)"GetListOfFilesInDir(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, bool const&)@Base" 0.8.0
  (c++)"GetListOfFilesInDir(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool const&, bool const&)@Base" 0.8.0
- (c++)"pkgMakeStatusCacheMem(pkgSourceList&, OpProgress&)@Base" 0.8.0
  (c++)"pkgMakeOnlyStatusCache(OpProgress&, DynamicMMap**)@Base" 0.8.0
  (c++)"WaitFd(int, bool, unsigned long)@Base" 0.8.0
  (c++)"GetLock(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool)@Base" 0.8.0
@@ -551,13 +550,11 @@ libapt-pkg.so.4.12 libapt-pkg4.12 #MINVER#
  (c++)"pkgPackageManager::ImmediateAdd(pkgCache::PkgIterator, bool, unsigned int const&)@Base" 0.8.0
  (c++)"pkgPackageManager::OrderInstall()@Base" 0.8.0
  (c++)"pkgPackageManager::DepAlwaysTrue(pkgCache::DepIterator)@Base" 0.8.0
- (c++)"pkgPackageManager::SmartConfigure(pkgCache::PkgIterator)@Base" 0.8.0
  (c++)"pkgPackageManager::CheckRConflicts(pkgCache::PkgIterator, pkgCache::DepIterator, char const*)@Base" 0.8.0
  (c++)"pkgPackageManager::CreateOrderList()@Base" 0.8.0
  (c++)"pkgPackageManager::DoInstallPostFork(int)@Base" 0.8.0
  (c++)"pkgPackageManager::Go(int)@Base" 0.8.0
  (c++)"pkgPackageManager::Reset()@Base" 0.8.0
- (c++)"pkgPackageManager::DepAdd(pkgOrderList&, pkgCache::PkgIterator, int)@Base" 0.8.0
  (c++)"pkgPackageManager::Remove(pkgCache::PkgIterator, bool)@Base" 0.8.0
  (c++)"pkgPackageManager::Install(pkgCache::PkgIterator, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
  (c++)"pkgPackageManager::Configure(pkgCache::PkgIterator)@Base" 0.8.0
@@ -601,20 +598,6 @@ libapt-pkg.so.4.12 libapt-pkg4.12 #MINVER#
  (c++)"pkgVersioningSystem::~pkgVersioningSystem()@Base" 0.8.0
  (c++)"debTranslationsIndex::debTranslationsIndex(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, char const*)@Base" 0.8.0
  (c++)"debTranslationsIndex::~debTranslationsIndex()@Base" 0.8.0
- (c++)"APT::PackageSet::FromString(pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, APT::CacheSetHelper&)@Base" 0.8.0
- (c++)"APT::PackageSet::FromCommandLine(pkgCacheFile&, char const**, APT::CacheSetHelper&)@Base" 0.8.0
- (c++)"APT::PackageSet::GroupedFromCommandLine(pkgCacheFile&, char const**, std::list<APT::PackageSet::Modifier, std::allocator<APT::PackageSet::Modifier> > const&, unsigned short const&, APT::CacheSetHelper&)@Base" 0.8.0
- (c++)"APT::PackageSet::FromName(pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, APT::CacheSetHelper&)@Base" 0.8.0
- (c++)"APT::PackageSet::FromTask(pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@Base" 0.8.0
- (c++)"APT::PackageSet::FromRegEx(pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@Base" 0.8.0
- (c++)"APT::PackageSet::~PackageSet()@Base" 0.8.0
- (c++)"APT::VersionSet::FromString(pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::VersionSet::Version const&, APT::CacheSetHelper&, bool const&)@Base" 0.8.0
- (c++)"APT::VersionSet::FromPackage(pkgCacheFile&, pkgCache::PkgIterator const&, APT::VersionSet::Version const&, APT::CacheSetHelper&)@Base" 0.8.0
- (c++)"APT::VersionSet::FromCommandLine(pkgCacheFile&, char const**, APT::VersionSet::Version const&, APT::CacheSetHelper&)@Base" 0.8.0
- (c++)"APT::VersionSet::getCandidateVer(pkgCacheFile&, pkgCache::PkgIterator const&, APT::CacheSetHelper&)@Base" 0.8.0
- (c++)"APT::VersionSet::getInstalledVer(pkgCacheFile&, pkgCache::PkgIterator const&, APT::CacheSetHelper&)@Base" 0.8.0
- (c++)"APT::VersionSet::GroupedFromCommandLine(pkgCacheFile&, char const**, std::list<APT::VersionSet::Modifier, std::allocator<APT::VersionSet::Modifier> > const&, unsigned short const&, APT::CacheSetHelper&)@Base" 0.8.0
- (c++)"APT::VersionSet::~VersionSet()@Base" 0.8.0
  (c++)"APT::CacheFilter::PackageNameMatchesRegEx::PackageNameMatchesRegEx(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
  (c++)"APT::CacheFilter::PackageNameMatchesRegEx::~PackageNameMatchesRegEx()@Base" 0.8.0
  (c++)"APT::CacheFilter::PackageNameMatchesRegEx::operator()(pkgCache::GrpIterator const&)@Base" 0.8.0
@@ -623,17 +606,8 @@ libapt-pkg.so.4.12 libapt-pkg4.12 #MINVER#
  (c++)"APT::Configuration::getArchitectures(bool const&)@Base" 0.8.0
  (c++)"APT::Configuration::checkArchitecture(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
  (c++)"APT::Configuration::getCompressionTypes(bool const&)@Base" 0.8.0
- (c++)"APT::CacheSetHelper::canNotFindTask(pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
- (c++)"APT::CacheSetHelper::canNotFindRegEx(pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
- (c++)"APT::CacheSetHelper::canNotFindAllVer(pkgCacheFile&, pkgCache::PkgIterator const&)@Base" 0.8.0
- (c++)"APT::CacheSetHelper::canNotFindPackage(pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
  (c++)"APT::CacheSetHelper::canNotFindPkgName(pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
- (c++)"APT::CacheSetHelper::showTaskSelection(APT::PackageSet const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
- (c++)"APT::CacheSetHelper::showRegExSelection(APT::PackageSet const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
  (c++)"APT::CacheSetHelper::canNotFindNewestVer(pkgCacheFile&, pkgCache::PkgIterator const&)@Base" 0.8.0
- (c++)"APT::CacheSetHelper::showSelectedVersion(pkgCache::PkgIterator const&, pkgCache::VerIterator, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool const&)@Base" 0.8.0
- (c++)"APT::CacheSetHelper::canNotFindCandInstVer(pkgCacheFile&, pkgCache::PkgIterator const&)@Base" 0.8.0
- (c++)"APT::CacheSetHelper::canNotFindInstCandVer(pkgCacheFile&, pkgCache::PkgIterator const&)@Base" 0.8.0
  (c++)"APT::CacheSetHelper::canNotFindCandidateVer(pkgCacheFile&, pkgCache::PkgIterator const&)@Base" 0.8.0
  (c++)"APT::CacheSetHelper::canNotFindInstalledVer(pkgCacheFile&, pkgCache::PkgIterator const&)@Base" 0.8.0
  (c++)"APT::CacheSetHelper::~CacheSetHelper()@Base" 0.8.0
@@ -649,8 +623,6 @@ libapt-pkg.so.4.12 libapt-pkg4.12 #MINVER#
  (c++)"MMap::MMap(FileFd&, unsigned long)@Base" 0.8.0
  (c++)"MMap::MMap(unsigned long)@Base" 0.8.0
  (c++)"MMap::~MMap()@Base" 0.8.0
- (c++)"FileFd::OpenDescriptor(int, FileFd::OpenMode, bool)@Base" 0.8.0
- (c++)"FileFd::Open(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, FileFd::OpenMode, unsigned long)@Base" 0.8.0
  (c++)"FileFd::Size()@Base" 0.8.0
  (c++)"FileFd::Sync()@Base" 0.8.0
  (c++)"FileFd::Tell()@Base" 0.8.0
@@ -1172,11 +1144,12 @@ libapt-pkg.so.4.12 libapt-pkg4.12 #MINVER#
 # (c++|regex|optional=template)"^SPtrArray<[^ ]+>::~SPtrArray\(\)@Base$" 0.8.0
 # (c++|optional=template)"SPtrArray<unsigned char>::~SPtrArray()@Base" 0.8.0
 ### gcc-4.6 specific
- (c++|optional=template)"SPtrArray<pkgCache::Version*>::~SPtrArray()@Base" 0.8.0
+# (c++|optional=template)"SPtrArray<pkgCache::Version*>::~SPtrArray()@Base" 0.8.0
+# (c++|optional=inline)"IndexTarget::~IndexTarget()@Base" 0.8.11
  (c++|regex|optional=std)"^std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string<char( const|)\*>\(.+\)@Base$" 0.8.0
  (c++|regex|optional=std)"^std::vector<DiffInfo, .+@Base$" 0.8.0
  (c++|regex|optional=std)"^std::vector<.+ >::(vector|push_back|erase|_[^ ]+)\(.+\)( const|)@Base$" 0.8.0
-# (c++|optional=strange)"pkgCache::VerIterator::VerIterator(pkgCache&, pkgCache::Version*)@Base" 0.8.0
+ (c++|optional=template)"HashSumValue<160>::operator std::basic_string<char, std::char_traits<char>, std::allocator<char> >() const@Base" 0.8.16~exp14
 ### architecture specific: va_list
  (arch=armel armhf|c++)"pkgAcqMethod::PrintStatus(char const*, char const*, std::__va_list&) const@Base" 0.8.15~exp1
  (arch=i386 hurd-i386 kfreebsd-i386|c++)"pkgAcqMethod::PrintStatus(char const*, char const*, char*&) const@Base" 0.8.15~exp1
@@ -1223,7 +1196,6 @@ libapt-pkg.so.4.12 libapt-pkg4.12 #MINVER#
  (c++)"pkgDepCache::SetCandidateRelease(pkgCache::VerIterator, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.11
  (c++)"RealFileExists(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.11
  (c++)"StripEpoch(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.11
- (c++)"IndexTarget::~IndexTarget()@Base" 0.8.11
  (c++)"pkgAcqIndex::Init(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.11
  (c++)"pkgAcqIndex::pkgAcqIndex(pkgAcquire*, IndexTarget const*, HashString const&, indexRecords const*)@Base" 0.8.11
  (c++)"pkgTagSection::FindFlag(unsigned long&, unsigned long, char const*, char const*)@Base" 0.8.11
@@ -1258,7 +1230,6 @@ libapt-pkg.so.4.12 libapt-pkg4.12 #MINVER#
  (c++|optional=private)"debListParser::NewProvidesAllArch(pkgCache::VerIterator&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.13.2
  (c++|optional=private)"PrintMode(char)@Base" 0.8.13.2
  (c++)"pkgDepCache::IsModeChangeOk(pkgDepCache::ModeList, pkgCache::PkgIterator const&, unsigned long, bool)@Base" 0.8.13.2
- (c++)"pkgPackageManager::SmartUnPack(pkgCache::PkgIterator, bool)@Base" 0.8.15~exp1
  (c++)"pkgCache::DepIterator::IsNegative() const@Base" 0.8.15~exp1
  (c++)"Configuration::CndSet(char const*, int)@Base" 0.8.15.3
  (c++)"pkgProblemResolver::InstOrNewPolicyBroken(pkgCache::PkgIterator)@Base" 0.8.15.3
@@ -1305,10 +1276,8 @@ libapt-pkg.so.4.12 libapt-pkg4.12 #MINVER#
  (c++)"EDSP::WriteScenario(pkgDepCache&, _IO_FILE*, OpProgress*)@Base" 0.8.16~exp2
  (c++)"EDSP::WriteSolution(pkgDepCache&, _IO_FILE*)@Base" 0.8.16~exp2
  (c++)"EDSP::ResolveExternal(char const*, pkgDepCache&, bool, bool, bool, OpProgress*)@Base" 0.8.16~exp2
- (c++)"EDSP::WriteLimitedScenario(pkgDepCache&, _IO_FILE*, APT::PackageSet const&, OpProgress*)@Base" 0.8.16~exp2
  (c++)"EDSP::WriteScenarioVersion(pkgDepCache&, _IO_FILE*, pkgCache::PkgIterator const&, pkgCache::VerIterator const&)@Base" 0.8.16~exp2
  (c++)"EDSP::WriteScenarioDependency(pkgDepCache&, _IO_FILE*, pkgCache::PkgIterator const&, pkgCache::VerIterator const&)@Base" 0.8.16~exp2
- (c++)"EDSP::WriteScenarioLimitedDependency(pkgDepCache&, _IO_FILE*, pkgCache::PkgIterator const&, pkgCache::VerIterator const&, APT::PackageSet const&)@Base" 0.8.16~exp2
  (c++)"EDSP::DepMap@Base" 0.8.16~exp2
  (c++)"EDSP::PrioMap@Base" 0.8.16~exp2
  (c++)"EDSP::ReadLine(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@Base" 0.8.16~exp2
@@ -1328,21 +1297,6 @@ libapt-pkg.so.4.12 libapt-pkg4.12 #MINVER#
  (c++)"vtable for edspIndex@Base" 0.8.16~exp2
  edspSys@Base 0.8.16~exp2
 ### generalisation of checksums (with lfs) -- mostly api-compatible available (without sha512 in previous versions)
- (c++)"SHA256_End(_SHA256_CTX*, char*)@Base" 0.8.16~exp2
- (c++)"SHA384_End(_SHA512_CTX*, char*)@Base" 0.8.16~exp2
- (c++)"SHA512_End(_SHA512_CTX*, char*)@Base" 0.8.16~exp2
- (c++)"SHA256_Data(unsigned char const*, unsigned int, char*)@Base" 0.8.16~exp2
- (c++)"SHA256_Init(_SHA256_CTX*)@Base" 0.8.16~exp2
- (c++)"SHA384_Data(unsigned char const*, unsigned int, char*)@Base" 0.8.16~exp2
- (c++)"SHA384_Init(_SHA512_CTX*)@Base" 0.8.16~exp2
- (c++)"SHA512_Data(unsigned char const*, unsigned int, char*)@Base" 0.8.16~exp2
- (c++)"SHA512_Init(_SHA512_CTX*)@Base" 0.8.16~exp2
- (c++)"SHA256_Final(unsigned char*, _SHA256_CTX*)@Base" 0.8.16~exp2
- (c++)"SHA384_Final(unsigned char*, _SHA512_CTX*)@Base" 0.8.16~exp2
- (c++)"SHA512_Final(unsigned char*, _SHA512_CTX*)@Base" 0.8.16~exp2
- (c++)"SHA256_Update(_SHA256_CTX*, unsigned char const*, unsigned int)@Base" 0.8.16~exp2
- (c++)"SHA384_Update(_SHA512_CTX*, unsigned char const*, unsigned int)@Base" 0.8.16~exp2
- (c++)"SHA512_Update(_SHA512_CTX*, unsigned char const*, unsigned int)@Base" 0.8.16~exp2
  (c++)"AddCRC16(unsigned short, void const*, unsigned long long)@Base" 0.8.16~exp2
  (c++)"MD5Summation::Add(unsigned char const*, unsigned long long)@Base" 0.8.16~exp6
  (c++)"MD5Summation::Result()@Base" 0.8.16~exp2
@@ -1445,3 +1399,135 @@ libapt-pkg.so.4.12 libapt-pkg4.12 #MINVER#
  (c++)"pkgDepCache::SetCandidateVersion(pkgCache::VerIterator)@Base" 0.8.16~exp6
  (c++)"pkgDepCache::AddSizes(pkgCache::PkgIterator const&, bool)@Base" 0.8.16~exp6
  (c++)"pkgDepCache::AddStates(pkgCache::PkgIterator const&, bool)@Base" 0.8.16~exp6
+### used internally by public interfaces - if you use them directly, you can keep the pieces
+ (c++|optional=internal|regex)"^SHA256_.*@Base$" 0.8.16~exp2
+ (c++|optional=internal|regex)"^SHA384_.*@Base$" 0.8.16~exp2
+ (c++|optional=internal|regex)"^SHA512_.*@Base$" 0.8.16~exp2
+### orderlist rework: the touched methods are protected
+# (c++)"pkgPackageManager::SmartConfigure(pkgCache::PkgIterator)@Base" 0.8.0
+# (c++)"pkgPackageManager::DepAdd(pkgOrderList&, pkgCache::PkgIterator, int)@Base" 0.8.0
+# (c++)"pkgPackageManager::SmartUnPack(pkgCache::PkgIterator, bool)@Base" 0.8.15~exp1
+ (c++)"SigINT(int)@Base" 0.8.16~exp14
+ (c++)"pkgPackageManager::SigINTStop@Base" 0.8.16~exp14
+ (c++)"pkgPackageManager::SmartUnPack(pkgCache::PkgIterator, bool, int)@Base" 0.8.16~exp14
+ (c++)"pkgPackageManager::SmartConfigure(pkgCache::PkgIterator, int)@Base" 0.8.16~exp14
+### FileFd rework: supporting different on-the-fly (de)compressing needs more parameter (abi), but the api is stable
+# (c++)"FileFd::OpenDescriptor(int, FileFd::OpenMode, bool)@Base" 0.8.0
+# (c++)"FileFd::Open(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, FileFd::OpenMode, unsigned long)@Base" 0.8.0
+ (c++)"FileFd::OpenDescriptor(int, unsigned int, FileFd::CompressMode, bool)@Base" 0.8.16~exp9
+ (c++)"FileFd::OpenDescriptor(int, unsigned int, APT::Configuration::Compressor const&, bool)@Base" 0.8.16~exp9
+ (c++)"FileFd::ModificationTime()@Base" 0.8.16~exp9
+ (c++)"FileFd::Open(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, FileFd::CompressMode, unsigned long)@Base" 0.8.16~exp9
+ (c++)"FileFd::Open(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, APT::Configuration::Compressor const&, unsigned long)@Base" 0.8.16~exp9
+ (c++)"FileFd::ReadLine(char*, unsigned long long)@Base" 0.8.16~exp9
+ (c++)"SummationImplementation::AddFD(FileFd&, unsigned long long)@Base" 0.8.16~exp9
+ (c++)"Hashes::AddFD(FileFd&, unsigned long long, bool, bool, bool, bool)@Base" 0.8.16~exp9
+ (c++|optional=deprecated,previous-inline)"FileFd::gzFd()@Base" 0.8.0
+ (c++|optional=private)"FileFd::OpenInternDescriptor(unsigned int, APT::Configuration::Compressor const&)@Base" 0.8.16~exp9
+### CacheSet rework: making them real containers breaks bigtime the API (for the CacheSetHelper)
+# (c++)"EDSP::WriteLimitedScenario(pkgDepCache&, _IO_FILE*, APT::PackageSet const&, OpProgress*)@Base" 0.8.16~exp2
+# (c++)"EDSP::WriteScenarioLimitedDependency(pkgDepCache&, _IO_FILE*, pkgCache::PkgIterator const&, pkgCache::VerIterator const&, APT::PackageSet const&)@Base" 0.8.16~exp2
+# (c++)"APT::PackageSet::FromString(pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, APT::CacheSetHelper&)@Base" 0.8.0
+# (c++)"APT::PackageSet::FromCommandLine(pkgCacheFile&, char const**, APT::CacheSetHelper&)@Base" 0.8.0
+# (c++)"APT::PackageSet::GroupedFromCommandLine(pkgCacheFile&, char const**, std::list<APT::PackageSet::Modifier, std::allocator<APT::PackageSet::Modifier> > const&, unsigned short const&, APT::CacheSetHelper&)@Base" 0.8.0
+# (c++)"APT::PackageSet::FromName(pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, APT::CacheSetHelper&)@Base" 0.8.0
+# (c++)"APT::PackageSet::FromTask(pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@Base" 0.8.0
+# (c++)"APT::PackageSet::FromRegEx(pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@Base" 0.8.0
+# (c++)"APT::PackageSet::~PackageSet()@Base" 0.8.0
+# (c++)"APT::VersionSet::FromString(pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::VersionSet::Version const&, APT::CacheSetHelper&, bool const&)@Base" 0.8.0
+# (c++)"APT::VersionSet::FromPackage(pkgCacheFile&, pkgCache::PkgIterator const&, APT::VersionSet::Version const&, APT::CacheSetHelper&)@Base" 0.8.0
+# (c++)"APT::VersionSet::FromCommandLine(pkgCacheFile&, char const**, APT::VersionSet::Version const&, APT::CacheSetHelper&)@Base" 0.8.0
+# (c++)"APT::VersionSet::getCandidateVer(pkgCacheFile&, pkgCache::PkgIterator const&, APT::CacheSetHelper&)@Base" 0.8.0
+# (c++)"APT::VersionSet::getInstalledVer(pkgCacheFile&, pkgCache::PkgIterator const&, APT::CacheSetHelper&)@Base" 0.8.0
+# (c++)"APT::VersionSet::GroupedFromCommandLine(pkgCacheFile&, char const**, std::list<APT::VersionSet::Modifier, std::allocator<APT::VersionSet::Modifier> > const&, unsigned short const&, APT::CacheSetHelper&)@Base" 0.8.0
+# (c++)"APT::VersionSet::~VersionSet()@Base" 0.8.0
+# (c++)"APT::CacheSetHelper::showTaskSelection(APT::PackageSet const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
+# (c++)"APT::CacheSetHelper::showRegExSelection(APT::PackageSet const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
+# (c++)"APT::CacheSetHelper::canNotFindTask(pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
+# (c++)"APT::CacheSetHelper::canNotFindRegEx(pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.0
+# (c++)"APT::CacheSetHelper::canNotFindAllVer(pkgCacheFile&, pkgCache::PkgIterator const&)@Base" 0.8.0
+# (c++)"APT::CacheSetHelper::canNotFindPackage(pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.0
+# (c++)"APT::CacheSetHelper::showSelectedVersion(pkgCache::PkgIterator const&, pkgCache::VerIterator, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool const&)@Base" 0.8.0
+# (c++)"APT::CacheSetHelper::canNotFindCandInstVer(pkgCacheFile&, pkgCache::PkgIterator const&)@Base" 0.8.0
+# (c++)"APT::CacheSetHelper::canNotFindInstCandVer(pkgCacheFile&, pkgCache::PkgIterator const&)@Base" 0.8.0
+ (c++)"APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::const_iterator::getPkg() const@Base" 0.8.16~exp9
+ (c++)"APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::getConstructor() const@Base" 0.8.16~exp9
+ (c++)"APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::empty() const@Base" 0.8.16~exp9
+ (c++)"APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >::const_iterator::getPkg() const@Base" 0.8.16~exp9
+ (c++)"APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >::getConstructor() const@Base" 0.8.16~exp9
+ (c++)"APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >::empty() const@Base" 0.8.16~exp9
+ (c++)"APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::empty() const@Base" 0.8.16~exp9
+ (c++)"APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::iterator::getVer() const@Base" 0.8.16~exp9
+ (c++)"APT::CacheSetHelper::canNotFindTask(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.16~exp9
+ (c++)"APT::CacheSetHelper::canNotFindRegEx(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)@Base" 0.8.16~exp9
+ (c++)"APT::CacheSetHelper::canNotFindAllVer(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&)@Base" 0.8.16~exp9
+ (c++)"APT::CacheSetHelper::canNotFindPackage(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.16~exp9
+ (c++)"APT::CacheSetHelper::showTaskSelection(pkgCache::PkgIterator const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.16~exp9
+ (c++)"APT::CacheSetHelper::showRegExSelection(pkgCache::PkgIterator const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.16~exp9
+ (c++)"APT::CacheSetHelper::showSelectedVersion(pkgCache::PkgIterator const&, pkgCache::VerIterator, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@Base" 0.8.16~exp9
+ (c++)"APT::CacheSetHelper::canNotFindCandInstVer(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&)@Base" 0.8.16~exp9
+ (c++)"APT::CacheSetHelper::canNotFindInstCandVer(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&)@Base" 0.8.16~exp9
+ (c++)"APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::setConstructor(APT::PackageContainerInterface::Constructor const&)@Base" 0.8.16~exp9
+ (c++)"APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::clear()@Base" 0.8.16~exp9
+ (c++)"APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::insert(pkgCache::PkgIterator const&)@Base" 0.8.16~exp9
+ (c++)"APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >::setConstructor(APT::PackageContainerInterface::Constructor const&)@Base" 0.8.16~exp9
+ (c++)"APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >::clear()@Base" 0.8.16~exp9
+ (c++)"APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >::insert(pkgCache::PkgIterator const&)@Base" 0.8.16~exp9
+ (c++)"APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::clear()@Base" 0.8.16~exp9
+ (c++)"APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::insert(pkgCache::VerIterator const&)@Base" 0.8.16~exp9
+ (c++)"APT::PackageContainerInterface::FromString(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9
+ (c++)"APT::PackageContainerInterface::FromCommandLine(APT::PackageContainerInterface*, pkgCacheFile&, char const**, APT::CacheSetHelper&)@Base" 0.8.16~exp9
+ (c++)"APT::PackageContainerInterface::FromModifierCommandLine(unsigned short&, APT::PackageContainerInterface*, pkgCacheFile&, char const*, std::list<APT::PackageContainerInterface::Modifier, std::allocator<APT::PackageContainerInterface::Modifier> > const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9
+ (c++)"APT::PackageContainerInterface::FromName(pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9
+ (c++)"APT::PackageContainerInterface::FromTask(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@Base" 0.8.16~exp9
+ (c++)"APT::PackageContainerInterface::FromRegEx(APT::PackageContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@Base" 0.8.16~exp9
+ (c++)"APT::VersionContainerInterface::FromString(APT::VersionContainerInterface*, pkgCacheFile&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::VersionContainerInterface::Version const&, APT::CacheSetHelper&, bool)@Base" 0.8.16~exp9
+ (c++)"APT::VersionContainerInterface::FromPackage(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&, APT::VersionContainerInterface::Version const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9
+ (c++)"APT::VersionContainerInterface::FromCommandLine(APT::VersionContainerInterface*, pkgCacheFile&, char const**, APT::VersionContainerInterface::Version const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9
+ (c++)"APT::VersionContainerInterface::getCandidateVer(pkgCacheFile&, pkgCache::PkgIterator const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9
+ (c++)"APT::VersionContainerInterface::getInstalledVer(pkgCacheFile&, pkgCache::PkgIterator const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9
+ (c++)"APT::VersionContainerInterface::FromModifierCommandLine(unsigned short&, APT::VersionContainerInterface*, pkgCacheFile&, char const*, std::list<APT::VersionContainerInterface::Modifier, std::allocator<APT::VersionContainerInterface::Modifier> > const&, APT::CacheSetHelper&)@Base" 0.8.16~exp9
+ (c++)"EDSP::WriteLimitedScenario(pkgDepCache&, _IO_FILE*, APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > > const&, OpProgress*)@Base" 0.8.16~exp9
+ (c++)"EDSP::WriteScenarioLimitedDependency(pkgDepCache&, _IO_FILE*, pkgCache::PkgIterator const&, pkgCache::VerIterator const&, APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > > const&)@Base" 0.8.16~exp9
+ (c++)"APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::iterator std::max_element<APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::iterator, CompareProviders>(APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::iterator, APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::iterator, CompareProviders)@Base" 0.8.16~exp9
+ (c++)"typeinfo for APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::const_iterator@Base" 0.8.16~exp9
+ (c++)"typeinfo for APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >@Base" 0.8.16~exp9
+ (c++)"typeinfo for APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >::const_iterator@Base" 0.8.16~exp9
+ (c++)"typeinfo for APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >@Base" 0.8.16~exp9
+ (c++)"typeinfo for APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::iterator@Base" 0.8.16~exp9
+ (c++)"typeinfo for APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >@Base" 0.8.16~exp9
+ (c++)"typeinfo for APT::PackageContainerInterface::const_iterator@Base" 0.8.16~exp9
+ (c++)"typeinfo for APT::PackageContainerInterface@Base" 0.8.16~exp9
+ (c++)"typeinfo for APT::VersionContainerInterface::const_iterator@Base" 0.8.16~exp9
+ (c++)"typeinfo for APT::VersionContainerInterface@Base" 0.8.16~exp9
+ (c++)"typeinfo name for APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::const_iterator@Base" 0.8.16~exp9
+ (c++)"typeinfo name for APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >@Base" 0.8.16~exp9
+ (c++)"typeinfo name for APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >::const_iterator@Base" 0.8.16~exp9
+ (c++)"typeinfo name for APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >@Base" 0.8.16~exp9
+ (c++)"typeinfo name for APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::iterator@Base" 0.8.16~exp9
+ (c++)"typeinfo name for APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >@Base" 0.8.16~exp9
+ (c++)"typeinfo name for APT::PackageContainerInterface::const_iterator@Base" 0.8.16~exp9
+ (c++)"typeinfo name for APT::PackageContainerInterface@Base" 0.8.16~exp9
+ (c++)"typeinfo name for APT::VersionContainerInterface::const_iterator@Base" 0.8.16~exp9
+ (c++)"typeinfo name for APT::VersionContainerInterface@Base" 0.8.16~exp9
+ (c++)"vtable for APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >::const_iterator@Base" 0.8.16~exp9
+ (c++)"vtable for APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >@Base" 0.8.16~exp9
+ (c++)"vtable for APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >::const_iterator@Base" 0.8.16~exp9
+ (c++)"vtable for APT::PackageContainer<std::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >@Base" 0.8.16~exp9
+ (c++)"vtable for APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >::iterator@Base" 0.8.16~exp9
+ (c++)"vtable for APT::VersionContainer<std::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >@Base" 0.8.16~exp9
+ (c++)"vtable for APT::PackageContainerInterface::const_iterator@Base" 0.8.16~exp9
+ (c++)"vtable for APT::PackageContainerInterface@Base" 0.8.16~exp9
+ (c++)"vtable for APT::VersionContainerInterface::const_iterator@Base" 0.8.16~exp9
+ (c++)"vtable for APT::VersionContainerInterface@Base" 0.8.16~exp9
+### mixed stuff
+ (c++)"GetListOfFilesInDir(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@Base" 0.8.16~exp13
+ (c++)"pkgCache::DepIterator::IsIgnorable(pkgCache::PkgIterator const&) const@Base" 0.8.16~exp10
+ (c++)"pkgCache::DepIterator::IsIgnorable(pkgCache::PrvIterator const&) const@Base" 0.8.16~exp10
+ (c++)"FileFd::Write(int, void const*, unsigned long long)@Base" 0.8.16~exp14
+ (c++|optional=private)"pkgCacheGenerator::MergeListGroup(pkgCacheGenerator::ListParser&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.16~exp7
+ (c++|optional=private)"pkgCacheGenerator::MergeListPackage(pkgCacheGenerator::ListParser&, pkgCache::PkgIterator&)@Base" 0.8.16~exp7
+ (c++|optional=private)"pkgCacheGenerator::MergeListVersion(pkgCacheGenerator::ListParser&, pkgCache::PkgIterator&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, pkgCache::VerIterator*&)@Base" 0.8.16~exp7
+ (c++|optional=private)"pkgCacheGenerator::AddImplicitDepends(pkgCache::GrpIterator&, pkgCache::PkgIterator&, pkgCache::VerIterator&)@Base" 0.8.16~exp7
+ (c++|optional=private)"pkgCacheGenerator::AddImplicitDepends(pkgCache::VerIterator&, pkgCache::PkgIterator&)@Base" 0.8.16~exp7
+ (c++|optional=internal)"IsDuplicateDescription(pkgCache::DescIterator, HashSumValue<128> const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.8.16~exp7
index 9eda3a8fa0056f8cef5c827f7ea69a5b4ff5f0cc..4b9510663a01f6eb87a139fbde56ca477483081b 100755 (executable)
@@ -34,9 +34,6 @@ build:
 
 PKG=apt
 DEB_BUILD_PROG:=debuild --preserve-envvar PATH --preserve-envvar CCACHE_DIR -us -uc $(DEB_BUILD_PROG_OPTS)
-APT_DEBVER=$(shell dpkg-parsechangelog |sed -n -e '/^Version:/s/^Version: //p' | sed -e 's/\+.*$$//')
-APT_CONFVER=$(shell sed -n -e 's/^AC_DEFINE_UNQUOTED(VERSION,"\(.*\)")/\1/p' configure.in)
-APT_CVSTAG=$(shell echo "$(APT_DEBVER)" | sed -e 's/^/v/' -e 's/\./_/g')
 
 # Determine the build directory to use
 BASE=.
@@ -53,17 +50,6 @@ ifeq ($(words $(BLD)),0)
 override BLD := ./build
 endif
 
-# Rebuild configure.in to have the correct version from the change log
-ifneq ($(APT_DEBVER),$(APT_CONFVER))
-ifneq ($(APT_DEBVER),)
-.PHONY: configure.in
-configure.in:
-       sed -e 's/$(APT_CONFVER)/$(APT_DEBVER)/' $@ > $@.$$$$ && mv $@.$$$$ $@
-endif
-else
-configure.in:
-endif
-
 # APT Programs in apt-utils
 APT_UTILS=ftparchive sortpkgs extracttemplates internal-solver
 
index 43d961443dc3d86ca4460f8d80a16599b6f90b7f..cf79aff8596a8b6d823f0c525c7b6a1edf1d4b99 100644 (file)
@@ -31,7 +31,7 @@ PROJECT_NAME           = @PACKAGE@
 # This could be handy for archiving the generated documentation or
 # if some version control system is used.
 
-PROJECT_NUMBER         = @VERSION@
+PROJECT_NUMBER         = @PACKAGE_VERSION@
 
 # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
 # base path where the generated documentation will be put.
index 1393de015928c687de9ba7884521d2863332a252..42d700c824526f8b4ad5af7e04f1fdf1348a1de6 100644 (file)
     <refpurpose>query the APT cache</refpurpose>
  </refnamediv>
 
- <!-- Arguments -->
- <refsynopsisdiv>
-   <cmdsynopsis>
-      <command>apt-cache</command>
-      <arg><option>-hvsn</option></arg>
-      <arg><option>-o=<replaceable>config string</replaceable></option></arg>
-      <arg><option>-c=<replaceable>file</replaceable></option></arg>
-      <group choice="req">
-         <arg>gencaches</arg>
-         <arg>showpkg <arg choice="plain" rep="repeat"><replaceable>pkg</replaceable></arg></arg>
-         <arg>showsrc <arg choice="plain" rep="repeat"><replaceable>pkg</replaceable></arg></arg>
-         <arg>stats</arg>
-         <arg>dump</arg>
-         <arg>dumpavail</arg>
-         <arg>unmet</arg>
-         <arg>search <arg choice="plain"><replaceable>regex</replaceable></arg></arg>
-         <arg>show <arg choice="plain" rep="repeat"><replaceable>pkg</replaceable></arg></arg>
-         <arg>depends <arg choice="plain" rep="repeat"><replaceable>pkg</replaceable></arg></arg>
-         <arg>rdepends <arg choice="plain" rep="repeat"><replaceable>pkg</replaceable></arg></arg>
-         <arg>pkgnames <arg choice="plain"><replaceable>prefix</replaceable></arg></arg>
-         <arg>dotty <arg choice="plain" rep="repeat"><replaceable>pkg</replaceable></arg></arg>
-         <arg>xvcg <arg choice="plain" rep="repeat"><replaceable>pkg</replaceable></arg></arg>
-         <arg>policy <arg choice="plain" rep="repeat"><replaceable>pkgs</replaceable></arg></arg>
-         <arg>madison <arg choice="plain" rep="repeat"><replaceable>pkgs</replaceable></arg></arg>
-      </group>   
-   </cmdsynopsis>
- </refsynopsisdiv>
+ &synopsis-command-apt-cache;
+
  <refsect1><title>Description</title>
    <para><command>apt-cache</command> performs a variety of operations on APT's package 
    cache. <command>apt-cache</command> does not manipulate the state of the system 
index 53ab392abb6eed7e8b2492bc51f3166c4df29233..94fc6fd8b7bf4011983f843e66ab966088375918 100644 (file)
     <refpurpose>APT CDROM management utility</refpurpose>
  </refnamediv>
 
- <!-- Arguments -->
- <refsynopsisdiv>
-   <cmdsynopsis>
-      <command>apt-cdrom</command>
-      <arg><option>-hvrmfan</option></arg>
-      <arg><option>-d=<replaceable>cdrom mount point</replaceable></option></arg>
-      <arg><option>-o=<replaceable>config string</replaceable></option></arg>
-      <arg><option>-c=<replaceable>file</replaceable></option></arg>
-      <group>
-         <arg>add</arg>
-         <arg>ident</arg>
-      </group>   
-   </cmdsynopsis>
- </refsynopsisdiv>
+ &synopsis-command-apt-cdrom;
 
  <refsect1><title>Description</title>
    <para><command>apt-cdrom</command> is used to add a new CDROM to APTs list
index 862a034a14d098630d47cdbc1c201e1ed428facc..b6fcf4bf29949bc3f060669693ddc04477ca6c02 100644 (file)
     <refpurpose>APT Configuration Query program</refpurpose>
  </refnamediv>
 
- <!-- Arguments -->
- <refsynopsisdiv>
-   <cmdsynopsis>
-      <command>apt-config</command>
-      <arg><option>-hv</option></arg>
-      <arg><option>-o=<replaceable>config string</replaceable></option></arg>
-      <arg><option>-c=<replaceable>file</replaceable></option></arg>
-      <group choice="req">
-         <arg>shell</arg>
-         <arg>dump</arg>
-      </group>   
-   </cmdsynopsis>
- </refsynopsisdiv>
+ &synopsis-command-apt-config;
+
  <refsect1><title>Description</title>
    <para><command>apt-config</command> is an internal program used by various
    portions of the APT suite to provide consistent configurability. It accesses
index af4cacfced4c448b461fd334f976347cf93cffff..8f28f8c5487994d806609520996c44d2b78d8a3a 100644 (file)
     <refpurpose>Utility to extract DebConf config and templates from Debian packages</refpurpose>
  </refnamediv>
 
- <!-- Arguments -->
- <refsynopsisdiv>
-   <cmdsynopsis>
-      <command>apt-extracttemplates</command>
-      <arg><option>-hv</option></arg>
-      <arg><option>-t=<replaceable>temporary directory</replaceable></option></arg>
-      <arg choice="plain" rep="repeat"><replaceable>file</replaceable></arg>
-   </cmdsynopsis>
- </refsynopsisdiv>
+ &synopsis-command-apt-extracttemplates;
+
  <refsect1><title>Description</title>
    <para><command>apt-extracttemplates</command> will take one or more Debian package files
    as input and write out (to a temporary directory) all associated config
index b08ebe80f4c8ac795d9aa8ffb70c4c10bef7a16a..93b109af18e8b9c68f52e0ee63accdab1ab6327e 100644 (file)
     <refpurpose>Utility to generate index files</refpurpose>
  </refnamediv>
 
- <!-- Arguments -->
- <refsynopsisdiv>
-   <cmdsynopsis>
-      <command>apt-ftparchive</command>
-      <arg><option>-hvdsq</option></arg>
-      <arg><option>--md5</option></arg>
-      <arg><option>--delink</option></arg>
-      <arg><option>--readonly</option></arg>
-      <arg><option>--contents</option></arg>
-      <arg><option>--arch <replaceable>architecture</replaceable></option></arg>
-      <arg><option>-o <replaceable>config</replaceable>=<replaceable>string</replaceable></option></arg>
-      <arg><option>-c=<replaceable>file</replaceable></option></arg>      
-      <group choice="req">
-         <arg>packages<arg choice="plain" rep="repeat"><replaceable>path</replaceable></arg><arg><replaceable>override</replaceable><arg><replaceable>pathprefix</replaceable></arg></arg></arg>
-         <arg>sources<arg choice="plain" rep="repeat"><replaceable>path</replaceable></arg><arg><replaceable>override</replaceable><arg><replaceable>pathprefix</replaceable></arg></arg></arg>
-         <arg>contents <arg choice="plain"><replaceable>path</replaceable></arg></arg>
-         <arg>release <arg choice="plain"><replaceable>path</replaceable></arg></arg>
-         <arg>generate <arg choice="plain"><replaceable>config-file</replaceable></arg> <arg choice="plain" rep="repeat"><replaceable>section</replaceable></arg></arg>
-         <arg>clean <arg choice="plain"><replaceable>config-file</replaceable></arg></arg>
-      </group>
-   </cmdsynopsis>
- </refsynopsisdiv>
+ &synopsis-command-apt-ftparchive;
+
  <refsect1><title>Description</title>
    <para><command>apt-ftparchive</command> is the command line tool that generates the index 
    files that APT uses to access a distribution source. The index files should 
index fd1cd254019882b24cc72acf4c521619c000cb4b..65929e733bd6609c396b9d438dda29c93c39b2c8 100644 (file)
     <refpurpose>APT package handling utility -- command-line interface</refpurpose>
  </refnamediv>
 
- <!-- Arguments -->
- <refsynopsisdiv>
-   <cmdsynopsis>
-      <command>apt-get</command>
-      <arg><option>-sqdyfmubV</option></arg>
-      <arg>
-             <option>-o=
-                         <replaceable>config_string</replaceable>
-             </option>
-      </arg>
-      <arg>
-             <option>-c=
-                     <replaceable>config_file</replaceable>
-             </option>
-      </arg>
-      <arg>
-               <option>-t=</option>
-               <arg choice='plain'>
-                       <replaceable>target_release</replaceable>
-               </arg>
-      </arg>
-      <arg>
-               <option>-a=</option>
-               <arg choice='plain'>
-                       <replaceable>default_architecture</replaceable>
-               </arg>
-      </arg>
-
-
-      <group choice="req">
-         <arg choice='plain'>update</arg>
-         <arg choice='plain'>upgrade</arg>
-         <arg choice='plain'>dselect-upgrade</arg>
-         <arg choice='plain'>dist-upgrade</arg>
-         <arg choice='plain'>install 
-                        <arg choice="plain" rep="repeat"><replaceable>pkg</replaceable>
-                               <arg>
-                                       <group choice='req'>
-                                               <arg choice='plain'>
-                                                       =<replaceable>pkg_version_number</replaceable>
-                                               </arg>
-                                               <arg choice='plain'>
-                                                       /<replaceable>target_release</replaceable>
-                                               </arg>
-                                       </group>
-                               </arg>
-                        </arg>
-            </arg>
-         <arg choice='plain'>remove <arg choice="plain" rep="repeat"><replaceable>pkg</replaceable></arg></arg>
-         <arg choice='plain'>purge <arg choice="plain" rep="repeat"><replaceable>pkg</replaceable></arg></arg>
-         <arg choice='plain'>source 
-                        <arg choice="plain" rep="repeat"><replaceable>pkg</replaceable>
-                               <arg>
-                                       <group choice='req'>
-                                               <arg choice='plain'>
-                                                       =<replaceable>pkg_version_number</replaceable>
-                                               </arg>
-                                               <arg choice='plain'>
-                                                       /<replaceable>target_release</replaceable>
-                                               </arg>
-                                       </group>
-                               </arg>
-                        </arg>
-            </arg>
-         <arg choice='plain'>build-dep <arg choice="plain" rep="repeat"><replaceable>pkg</replaceable></arg></arg>
-         <arg choice='plain'>check</arg>
-         <arg choice='plain'>clean</arg>
-         <arg choice='plain'>autoclean</arg>
-         <arg choice='plain'>autoremove</arg>
-                <arg choice='plain'>
-                        <group choice='req'>
-                               <arg choice='plain'>-v</arg>
-                               <arg choice='plain'>--version</arg>
-                        </group>
-                </arg>
-                <arg choice='plain'>
-                        <group choice='req'>
-                               <arg choice='plain'>-h</arg>
-                               <arg choice='plain'>--help</arg>
-                        </group>
-                </arg>
-      </group>   
-   </cmdsynopsis>
- </refsynopsisdiv>
+ &synopsis-command-apt-get;
+
  <refsect1><title>Description</title>
    <para><command>apt-get</command> is the command-line tool for handling packages, and may be 
    considered the user's "back-end" to other tools using the APT
      <listitem><para><literal>source</literal> causes <command>apt-get</command> to fetch source packages. APT 
      will examine the available packages to decide which source package to 
      fetch. It will then find and download into the current directory the 
-     newest available version of that source package while respect the
+     newest available version of that source package while respecting the
      default release, set with the option <literal>APT::Default-Release</literal>,
      the <option>-t</option> option or per package with the
      <literal>pkg/release</literal> syntax, if possible.</para>
index cae2b00a0ef60853721e8db4a1c4d297803d44a8..3748b5e17929ae4ba6fe6103dbbbed9fe3428001 100644 (file)
     <refpurpose>APT key management utility</refpurpose>
  </refnamediv>
 
- <!-- Arguments -->
- <refsynopsisdiv>
-   <cmdsynopsis>
-      <command>apt-key</command>
-      <arg><option>--keyring <replaceable>filename</replaceable></option></arg>
-      <arg><replaceable>command</replaceable></arg>
-      <arg rep="repeat"><option><replaceable>arguments</replaceable></option></arg>
-   </cmdsynopsis>
- </refsynopsisdiv>
+ &synopsis-command-apt-key;
 
  <refsect1><title>Description</title>
    <para>
 
 <refsect1><title>Commands</title>
    <variablelist>
-     <varlistentry><term>add <replaceable>filename</replaceable></term>
+     <varlistentry><term>add &synopsis-param-filename;</term>
      <listitem>
      <para>
 
        Add a new key to the list of trusted keys.  The key is read
-       from <replaceable>filename</replaceable>, or standard input if
-       <replaceable>filename</replaceable> is <literal>-</literal>.
+       from &synopsis-param-filename;, or standard input if
+       &synopsis-param-filename; is <literal>-</literal>.
      </para>
 
      </listitem>
      </varlistentry>
 
-     <varlistentry><term>del <replaceable>keyid</replaceable></term>
+     <varlistentry><term>del &synopsis-param-keyid;</term>
      <listitem>
      <para>
 
      </listitem>
      </varlistentry>
 
-     <varlistentry><term>export <replaceable>keyid</replaceable></term>
+     <varlistentry><term>export &synopsis-param-keyid;</term>
      <listitem>
      <para>
 
-        Output the key <replaceable>keyid</replaceable> to standard output.
+        Output the key &synopsis-param-keyid; to standard output.
 
      </para>
 
  <refsect1><title>Options</title>
 <para>Note that options need to be defined before the commands described in the previous section.</para>
    <variablelist>
-      <varlistentry><term>--keyring <replaceable>filename</replaceable></term>
+      <varlistentry><term>--keyring &synopsis-param-filename;</term>
       <listitem><para>With this option it is possible to specify a specific keyring
       file the command should operate on. The default is that a command is executed
       on the <filename>trusted.gpg</filename> file as well as on all parts in the
index 01c8665ddc646b531baf9b6faefd53796625f8c1..d627311241c802cd76a4a96b5a4d05d761d9919a 100644 (file)
     <refpurpose>mark/unmark a package as being automatically-installed</refpurpose>
  </refnamediv>
 
- <!-- Arguments -->
- <refsynopsisdiv>
-   <cmdsynopsis>
-       <command>apt-mark</command>
-       <arg><option>-hv</option></arg>
-       <arg><option>-f=<replaceable>FILENAME</replaceable></option></arg>
-       <group choice="plain">
-               <arg choice="plain">
-                       <group choice="req">
-                               <arg choice="plain">auto</arg>
-                               <arg choice="plain">manual</arg>
-                               <arg choice="plain">showauto</arg>
-                               <arg choice="plain">showmanual</arg>
-                       </group>
-                       <arg choice="plain" rep="repeat"><replaceable>package</replaceable></arg>
-               </arg>
-       </group>
-   </cmdsynopsis>
- </refsynopsisdiv>
+ &synopsis-command-apt-mark;
+
  <refsect1><title>Description</title>
    <para><command>apt-mark</command> will change whether a package has
    been marked as being automatically installed.
index f2bd3c3eaf187dce95609f83b7af3998a8413a28..c1d1aa1e1f3e881cc8780168d6420dfefd3f34a1 100644 (file)
     <refpurpose>Utility to sort package index files</refpurpose>
  </refnamediv>
 
- <!-- Arguments -->
- <refsynopsisdiv>
-   <cmdsynopsis>
-      <command>apt-sortpkgs</command>
-      <arg><option>-hvs</option></arg>
-      <arg><option>-o=<replaceable>config string</replaceable></option></arg>
-      <arg><option>-c=<replaceable>file</replaceable></option></arg>
-      <arg choice="plain" rep="repeat"><replaceable>file</replaceable></arg>
-   </cmdsynopsis>
- </refsynopsisdiv>
+ &synopsis-command-apt-sortpkgs;
+
  <refsect1><title>Description</title>
    <para><command>apt-sortpkgs</command> will take an index file (Source index or Package 
    index) and sort the records so that they are ordered by the package name. 
index 14cd70e891e64d8c872ee4f825703c61472ebfbe..ad4554e2f823f329e0563cb3e0fe1aeb52eac905 100644 (file)
 <!ENTITY oldstable-codename "lenny">
 <!ENTITY stable-codename "squeeze">
 <!ENTITY testing-codename "wheezy">
+
+
+<!-- Arguments -->
+<!ENTITY synopsis-arg-option "<arg><option>-o=<replaceable>&synopsis-config-string;</replaceable></option></arg>">
+<!ENTITY synopsis-arg-config "<arg><option>-c=<filename><replaceable>&synopsis-config-file;</replaceable></filename></option></arg>">
+<!ENTITY synopsis-arg-target-release "<arg><option>-t=<replaceable>&synopsis-target-release;</replaceable></option></arg>">
+<!ENTITY synopsis-arg-architecture "<arg><option>-a=<replaceable>&synopsis-architecture;</replaceable></option></arg>">
+<!ENTITY synopsis-arg-pkgver "<arg choice='plain' rep='repeat'><replaceable>&synopsis-pkg;</replaceable><arg><group choice='req'>
+       <arg choice='plain'>=<replaceable>&synopsis-pkg-ver-number;</replaceable></arg>
+       <arg choice='plain'>/<replaceable>&synopsis-target-release;</replaceable></arg>
+</group></arg></arg>">
+<!ENTITY synopsis-arg-pkg "<arg choice='plain' rep='repeat'><replaceable>&synopsis-pkg;</replaceable></arg>">
+<!ENTITY synopsis-param-filename "<filename><replaceable>&synopsis-filename;</replaceable></filename>">
+<!ENTITY synopsis-help "<arg choice='plain'><group choice='req'><arg choice='plain'>-v</arg><arg choice='plain'>--version</arg></group></arg>
+       <arg choice='plain'><group choice='req'><arg choice='plain'>-h</arg><arg choice='plain'>--help</arg></group></arg>">
+<!ENTITY synopsis-command-apt-get "<refsynopsisdiv><cmdsynopsis>
+       <command>apt-get</command>
+       <arg><option>-asqdyfmubV</option></arg>
+       &synopsis-arg-option;
+       &synopsis-arg-config;
+       &synopsis-arg-target-release;
+       &synopsis-arg-architecture;
+       <group choice='req'>
+               <arg choice='plain'>update</arg>
+               <arg choice='plain'>upgrade</arg>
+               <arg choice='plain'>dselect-upgrade</arg>
+               <arg choice='plain'>dist-upgrade</arg>
+               <arg choice='plain'>install &synopsis-arg-pkgver;</arg>
+               <arg choice='plain'>remove &synopsis-arg-pkg;</arg>
+               <arg choice='plain'>purge &synopsis-arg-pkg;</arg>
+               <arg choice='plain'>source &synopsis-arg-pkgver;</arg>
+               <arg choice='plain'>build-dep &synopsis-arg-pkgver;</arg>
+               <arg choice='plain'>download &synopsis-arg-pkgver;</arg>
+               <arg choice='plain'>check</arg>
+               <arg choice='plain'>clean</arg>
+               <arg choice='plain'>autoclean</arg>
+               <arg choice='plain'>autoremove</arg>
+               &synopsis-help;
+       </group>
+</cmdsynopsis></refsynopsisdiv>">
+<!ENTITY synopsis-command-apt-cache "<refsynopsisdiv><cmdsynopsis>
+       <command>apt-cache</command>
+       <arg><option>-agipns</option></arg>
+       &synopsis-arg-option;
+       &synopsis-arg-config;
+       <group choice='req'>
+               <arg choice='plain'>gencaches</arg>
+               <arg choice='plain'>showpkg &synopsis-arg-pkg;</arg>
+               <arg choice='plain'>showsrc &synopsis-arg-pkg;</arg>
+               <arg choice='plain'>stats</arg>
+               <arg choice='plain'>dump</arg>
+               <arg choice='plain'>dumpavail</arg>
+               <arg choice='plain'>unmet</arg>
+               <arg choice='plain'>search <arg choice='plain' rep='repeat'><replaceable>&synopsis-regex;</replaceable></arg></arg>
+               <arg choice='plain'>show &synopsis-arg-pkgver;</arg>
+               <arg choice='plain'>depends &synopsis-arg-pkgver;</arg>
+               <arg choice='plain'>rdepends &synopsis-arg-pkgver;</arg>
+               <arg choice='plain'>pkgnames <arg choice='plain'><replaceable>&synopsis-prefix;</replaceable></arg></arg>
+               <arg choice='plain'>dotty &synopsis-arg-pkgver;</arg>
+               <arg choice='plain'>xvcg &synopsis-arg-pkgver;</arg>
+               <arg choice='plain'>policy &synopsis-arg-pkg;</arg>
+               <arg choice='plain'>madison &synopsis-arg-pkg;</arg>
+               &synopsis-help;
+       </group>
+</cmdsynopsis></refsynopsisdiv>">
+<!ENTITY synopsis-command-apt-cdrom "<refsynopsisdiv><cmdsynopsis>
+       <command>apt-cdrom</command>
+       <arg><option>-rmfan</option></arg>
+       <arg><option>-d=<replaceable>&synopsis-cdrom-mount;</replaceable></option></arg>
+       &synopsis-arg-option;
+       &synopsis-arg-config;
+       <group choice='req'>
+               <arg choice='plain'>add</arg>
+               <arg choice='plain'>ident</arg>
+               &synopsis-help;
+       </group>
+</cmdsynopsis></refsynopsisdiv>">
+<!ENTITY synopsis-command-apt-config "<refsynopsisdiv><cmdsynopsis>
+       <command>apt-config</command>
+       &synopsis-arg-option;
+       &synopsis-arg-config;
+       <group choice='req'>
+               <arg choice='plain'>shell</arg>
+               <arg choice='plain'>dump</arg>
+               &synopsis-help;
+       </group>
+</cmdsynopsis></refsynopsisdiv>">
+<!ENTITY synopsis-command-apt-extracttemplates "<refsynopsisdiv><cmdsynopsis>
+       <command>apt-extracttemplates</command>
+       <arg><option>-t=<replaceable>&synopsis-tmp-directory;</replaceable></option></arg>
+       <arg choice='plain' rep='repeat'>&synopsis-param-filename;</arg>
+       &synopsis-help;
+</cmdsynopsis></refsynopsisdiv>">
+<!ENTITY synopsis-arg-ftparchive "<arg choice='plain' rep='repeat'><replaceable>&synopsis-path;</replaceable></arg><arg><filename><replaceable>&synopsis-override;</replaceable></filename><arg><replaceable>&synopsis-pathprefix;</replaceable></arg></arg>">
+<!ENTITY synopsis-command-apt-ftparchive "<refsynopsisdiv><cmdsynopsis>
+       <command>apt-ftparchive</command>
+       <arg><option>-dsq</option></arg>
+       <arg><option>--md5</option></arg>
+       <arg><option>--delink</option></arg>
+       <arg><option>--readonly</option></arg>
+       <arg><option>--contents</option></arg>
+       <arg><option>--arch <replaceable>architecture</replaceable></option></arg>
+       &synopsis-arg-option;
+       &synopsis-arg-config;
+       <group choice='req'>
+               <arg choice='plain'>packages &synopsis-arg-ftparchive;</arg>
+               <arg choice='plain'>sources &synopsis-arg-ftparchive;</arg>
+               <arg choice='plain'>contents <arg choice='plain'><replaceable>&synopsis-path;</replaceable></arg></arg>
+               <arg choice='plain'>release <arg choice='plain'><replaceable>&synopsis-path;</replaceable></arg></arg>
+               <arg choice='plain'>generate <arg choice='plain'><replaceable>&synopsis-config-file;</replaceable></arg> <arg choice='plain' rep='repeat'><replaceable>&synopsis-section;</replaceable></arg></arg>
+               <arg choice='plain'>clean <arg choice='plain'><replaceable>&synopsis-config-file;</replaceable></arg></arg>
+               &synopsis-help;
+       </group>
+</cmdsynopsis></refsynopsisdiv>">
+<!ENTITY synopsis-param-keyid "<replaceable>&synopsis-keyid;</replaceable>">
+<!ENTITY synopsis-command-apt-key "<refsynopsisdiv><cmdsynopsis>
+       <command>apt-key</command>
+       <arg><option>--keyring &synopsis-param-filename;</option></arg>
+       <group choice='req'>
+               <arg choice='plain'>add &synopsis-param-filename;</arg>
+               <arg choice='plain'>del &synopsis-param-keyid;</arg>
+               <arg choice='plain'>export &synopsis-param-keyid;</arg>
+               <arg choice='plain'>exportall</arg>
+               <arg choice='plain'>list</arg>
+               <arg choice='plain'>finger</arg>
+               <arg choice='plain'>adv</arg>
+               <arg choice='plain'>update</arg>
+               <arg choice='plain'>net-update</arg>
+               &synopsis-help;
+       </group>
+</cmdsynopsis></refsynopsisdiv>">
+<!ENTITY synopsis-command-apt-mark "<refsynopsisdiv><cmdsynopsis>
+       <command>apt-mark</command>
+       <arg><option>-f=&synopsis-param-filename;</option></arg>
+       <group choice='plain'>
+               <arg choice='plain'>
+                       <group choice='req'>
+                               <arg choice='plain'>auto</arg>
+                               <arg choice='plain'>manual</arg>
+                               <arg choice='plain'>showauto</arg>
+                               <arg choice='plain'>showmanual</arg>
+                       </group>
+                       &synopsis-arg-pkg;
+               </arg>
+               &synopsis-help;
+       </group>
+</cmdsynopsis></refsynopsisdiv>">
+<!ENTITY synopsis-command-apt-sortpkgs "<refsynopsisdiv><cmdsynopsis>
+       <command>apt-sortpkgs</command>
+       <arg><option>-s</option></arg>
+       &synopsis-arg-option;
+       &synopsis-arg-config;
+       <arg choice='plain' rep='repeat'>&synopsis-param-filename;</arg>
+       &synopsis-help;
+</cmdsynopsis></refsynopsisdiv>">
index fc745989f95a1767f7a6b8ab3445a6ac7d480c9b..e48087fa712dee6a8a5a2a70238a67360b80dba6 100644 (file)
      This is done on purpose, to avoid losing content when the
      translation is lagging behind the original content.
 ">
+
+<!-- TRANSLATOR: used as in -o=config_string  e.g. -o=Debug::pkgProblemResolver=1 -->
+<!ENTITY synopsis-config-string "config_string">
+
+<!-- TRANSLATOR: used as in -c=config_file  e.g. -c=./apt.conf -->
+<!ENTITY synopsis-config-file "config_file">
+
+<!-- TRANSLATOR: used as in -t=target_release or pkg/target_release  e.g. -t=squeeze apt/experimental -->
+<!ENTITY synopsis-target-release "target_release">
+
+<!-- TRANSLATOR: used as in -a=architecture  e.g. -a=armel -->
+<!ENTITY synopsis-architecture "architecture">
+
+<!-- TRANSLATOR: used as in apt-get install pkg  e.g. apt-get install awesome -->
+<!ENTITY synopsis-pkg "pkg">
+
+<!-- TRANSLATOR: used as in pkg=pkg_version_number  e.g. apt=0.8.15 -->
+<!ENTITY synopsis-pkg-ver-number "pkg_version_number">
+
+<!-- TRANSLATOR: used as in apt-cache pkgnames prefix  e.g. apt-cache pkgnames apt -->
+<!ENTITY synopsis-prefix "prefix">
+
+<!-- TRANSLATOR: used as in apt-cache search regex  e.g. apt-cache search awesome -->
+<!ENTITY synopsis-regex "regex">
+
+<!-- TRANSLATOR: used as in apt-cdrom -d=cdrom_mount_point  e.g. apt-cdrom -d=/media/cdrom -->
+<!ENTITY synopsis-cdrom-mount "cdrom_mount_point">
+
+<!-- TRANSLATOR: used as in apt-extracttemplates -t=temporary_directory  e.g. apt-extracttemplates -t=/tmp -->
+<!ENTITY synopsis-tmp-directory "temporary_directory">
+
+<!-- TRANSLATOR: used as in apt-extracttemplates filename -->
+<!ENTITY synopsis-filename "filename">
+
+<!-- TRANSLATOR: used as parameters for apt-ftparchive  e.g. apt-ftparchive packages path override pathprefix -->
+<!ENTITY synopsis-path "path">
+<!ENTITY synopsis-pathprefix "pathprefix">
+<!ENTITY synopsis-section "section">
+<!ENTITY synopsis-override "override">
+
+<!-- TRANSLATOR: used as in apt-key export keyid  e.g. apt-key export 473041FA -->
+<!ENTITY synopsis-keyid "keyid">
+
index 4fcf3bd10a822afcb5c4e811f01d6e5fd20df032..df2ddb25f37fc582643f230e9f1bd15c250b6f19 100644 (file)
@@ -15,7 +15,7 @@ include $(DEBIANDOC_H)
 ifdef XSLTPROC
 # generate a list of accepted man page translations
 SOURCE = $(patsubst %.xml,%,$(wildcard *.?.xml))
-INCLUDES = apt.ent
+INCLUDES = apt.ent apt-verbatim.ent
 STYLESHEET=manpage-style.xsl
 
 LOCAL := manpage-$(firstword $(SOURCE))
@@ -67,26 +67,21 @@ veryclean-subdirs:
                rm -rf $$dir; \
        done
 
+.PHONY: update-po po4a stats
+
 ifdef PO4A
 doc: po4a
 
-clean: po4a-clean
-
-.PHONY: update-po po4a stats
 update-po:
        po4a --previous --no-backups --force --no-translations po4a.conf
 
-po4a-clean:
-       po4a --previous --rm-backups --rm-translations po4a.conf
-
 po4a:
        po4a --previous --no-backups po4a.conf
+endif
 
 stats:
        for i in po/*.po; do echo -n "$$i: "; msgfmt --statistics $$i; done
 
-endif
-
 ifdef DOXYGEN
 DOXYGEN_SOURCES = $(shell find $(BASE)/apt-pkg -not -name .\\\#* -and \( -name \*.cc -or -name \*.h \) )
 
@@ -96,9 +91,6 @@ doxygen-clean:
        rm -fr $(BUILD)/doc/doxygen
        rm -f $(BUILD)/doc/doxygen-stamp
 
-$(BUILD)/doc/Doxyfile: Doxyfile.in
-       (cd $(BUILD) && ./config.status doc/Doxyfile)
-
 $(BUILD)/doc/doxygen-stamp: $(DOXYGEN_SOURCES) $(BUILD)/doc/Doxyfile
        rm -fr $(BUILD)/doc/doxygen
        mkdir $(BUILD)/doc/doxygen  # some versions seem to not create this directory #628799
index 364dce12f821361f22df78f81181c9777660254d..5cc0b53fedf39841843f7ffd9ecfe8c273d7edec 100644 (file)
@@ -2845,7 +2845,7 @@ msgid ""
 "<literal>source</literal> causes <command>apt-get</command> to fetch source "
 "packages. APT will examine the available packages to decide which source "
 "package to fetch. It will then find and download into the current directory "
-"the newest available version of that source package while respect the "
+"the newest available version of that source package while respecting the "
 "default release, set with the option "
 "<literal>APT::Default-Release</literal>, the <option>-t</option> option or "
 "per package with the <literal>pkg/release</literal> syntax, if possible."
index 9a3415051c81bd24034eb886cc76aee00d30aea3..0db7a13fbabeb497602c964e183ee8ef13882e81 100644 (file)
@@ -3768,7 +3768,7 @@ msgid ""
 "<literal>source</literal> causes <command>apt-get</command> to fetch source "
 "packages. APT will examine the available packages to decide which source "
 "package to fetch. It will then find and download into the current directory "
-"the newest available version of that source package while respect the "
+"the newest available version of that source package while respecting the "
 "default release, set with the option <literal>APT::Default-Release</"
 "literal>, the <option>-t</option> option or per package with the "
 "<literal>pkg/release</literal> syntax, if possible."
index 35b8d0af7de051584d61d3cbaf306301420ac8b7..645be1ab2feb6a0fb940409494a9c22ff1816139 100644 (file)
@@ -3820,7 +3820,7 @@ msgid ""
 "<literal>source</literal> causes <command>apt-get</command> to fetch source "
 "packages. APT will examine the available packages to decide which source "
 "package to fetch. It will then find and download into the current directory "
-"the newest available version of that source package while respect the "
+"the newest available version of that source package while respecting the "
 "default release, set with the option <literal>APT::Default-Release</"
 "literal>, the <option>-t</option> option or per package with the "
 "<literal>pkg/release</literal> syntax, if possible."
index 2e0e766a7af26d1d9a947d56dc59615d9a48c47d..6292cdcd5ed8e2af9f5daf6763bfeaebb8987af1 100644 (file)
@@ -465,7 +465,7 @@ msgstr ""
 "<!ENTITY file-preferences \"\n"
 "     <varlistentry><term><filename>/etc/apt/preferences</filename></term>\n"
 "     <listitem><para>Fichier des préférences.\n"
-"     C'est dans ce fichier qu'on peut faire de l'étiquetage (pinning) c'est-à-dire, choisir d'obtenir des paquets d'une source distincte ou d'une distribution différente.\n"
+"     C'est dans ce fichier qu'on peut faire de l'épinglage (pinning) c'est-à-dire, choisir d'obtenir des paquets d'une source distincte ou d'une distribution différente.\n"
 "     Élément de configuration : <literal>Dir::Etc::Preferences</literal>.</para></listitem>\n"
 "     </varlistentry>\n"
 
@@ -3752,7 +3752,7 @@ msgid ""
 "<literal>source</literal> causes <command>apt-get</command> to fetch source "
 "packages. APT will examine the available packages to decide which source "
 "package to fetch. It will then find and download into the current directory "
-"the newest available version of that source package while respect the "
+"the newest available version of that source package while respecting the "
 "default release, set with the option <literal>APT::Default-Release</"
 "literal>, the <option>-t</option> option or per package with the "
 "<literal>pkg/release</literal> syntax, if possible."
@@ -4444,7 +4444,7 @@ msgid ""
 "also the &apt-preferences; manual page."
 msgstr ""
 "Cette option contrôle l'entrée par défaut pour les questions de "
-"distribution ; une étiquette (pin) par défaut dont la priorité vaut 990 est "
+"distribution ; un épinglage (pin) par défaut dont la priorité vaut 990 est "
 "créée en utilisant la chaîne spécifiée. Le fichier des préférences peut "
 "annuler cette décision. En clair, cette option permet de contrôler "
 "simplement dans quelle distribution seront récupérés les paquets. Par "
index 4571690e1c107d1d1952cc17d5c1abc4c4eaa5b5..505553b5559d210d144381781dbddcf88ee8ffe9 100644 (file)
@@ -2821,7 +2821,7 @@ msgid ""
 "<literal>source</literal> causes <command>apt-get</command> to fetch source "
 "packages. APT will examine the available packages to decide which source "
 "package to fetch. It will then find and download into the current directory "
-"the newest available version of that source package while respect the "
+"the newest available version of that source package while respecting the "
 "default release, set with the option <literal>APT::Default-Release</"
 "literal>, the <option>-t</option> option or per package with the "
 "<literal>pkg/release</literal> syntax, if possible."
index 22488b22748bf8abb548fa0b7ef881fa1c02583f..3685729436c27afafe09c702e434c501a23dfec7 100644 (file)
@@ -3907,7 +3907,7 @@ msgid ""
 "<literal>source</literal> causes <command>apt-get</command> to fetch source "
 "packages. APT will examine the available packages to decide which source "
 "package to fetch. It will then find and download into the current directory "
-"the newest available version of that source package while respect the "
+"the newest available version of that source package while respecting the "
 "default release, set with the option <literal>APT::Default-Release</"
 "literal>, the <option>-t</option> option or per package with the "
 "<literal>pkg/release</literal> syntax, if possible."
index 41eb5668414aa5d2743e41dd087e33c9d706cfff..08c1b16608d1c81e0e4241482ea14fb37d93ec66 100644 (file)
@@ -3722,7 +3722,7 @@ msgid ""
 "<literal>source</literal> causes <command>apt-get</command> to fetch source "
 "packages. APT will examine the available packages to decide which source "
 "package to fetch. It will then find and download into the current directory "
-"the newest available version of that source package while respect the "
+"the newest available version of that source package while respecting the "
 "default release, set with the option <literal>APT::Default-Release</"
 "literal>, the <option>-t</option> option or per package with the "
 "<literal>pkg/release</literal> syntax, if possible."
index e298281f82acec21872c9aed3dfd032f5946f6ce..e3d699bd017432d36e6bd8a75081cd7e2620cfa5 100644 (file)
@@ -3755,7 +3755,7 @@ msgid ""
 "<literal>source</literal> causes <command>apt-get</command> to fetch source "
 "packages. APT will examine the available packages to decide which source "
 "package to fetch. It will then find and download into the current directory "
-"the newest available version of that source package while respect the "
+"the newest available version of that source package while respecting the "
 "default release, set with the option <literal>APT::Default-Release</"
 "literal>, the <option>-t</option> option or per package with the "
 "<literal>pkg/release</literal> syntax, if possible."
index 488350186083f92dca43c1368009f02d5ffdb9ca..4f4c04caf1a8a8c7d6413e2be2375ee6e11847ef 100644 (file)
@@ -2878,7 +2878,7 @@ msgid ""
 "<literal>source</literal> causes <command>apt-get</command> to fetch source "
 "packages. APT will examine the available packages to decide which source "
 "package to fetch. It will then find and download into the current directory "
-"the newest available version of that source package while respect the "
+"the newest available version of that source package while respecting the "
 "default release, set with the option <literal>APT::Default-Release</"
 "literal>, the <option>-t</option> option or per package with the "
 "<literal>pkg/release</literal> syntax, if possible."
index f289eb00dbe0334155c55ea25a0fe4aae1d18b0d..4efbecc8ced7606ce3269335e56e6459c14f91b0 100644 (file)
@@ -587,7 +587,7 @@ void LoadBinDir(vector<PackageMap> &PkgList,Configuration &Setup)
 /* */
 bool ShowHelp(CommandLine &CmdL)
 {
-   ioprintf(cout,_("%s %s for %s compiled on %s %s\n"),PACKAGE,VERSION,
+   ioprintf(cout,_("%s %s for %s compiled on %s %s\n"),PACKAGE,PACKAGE_VERSION,
            COMMON_ARCH,__DATE__,__TIME__);
    if (_config->FindB("version") == true)
       return true;
index 504ebf893650696dd5921568cf2e35697c7ba021..c53ecff72f52c16fafa3146945f3f1f16af7bfc3 100644 (file)
@@ -7,6 +7,7 @@ include ../buildlib/defaults.mak
 
 # The apt-ftparchive program
 ifdef BDBLIB
+APT_DOMAIN:=apt-utils
 PROGRAM=apt-ftparchive
 SLIBS = -lapt-pkg -lapt-inst $(BDBLIB) $(INTLLIBS)
 LIB_MAKES = apt-pkg/makefile apt-inst/makefile
@@ -15,6 +16,6 @@ SOURCE = apt-ftparchive.cc cachedb.cc writer.cc contents.cc override.cc \
 include $(PROGRAM_H)
 else
 PROGRAM=apt-ftparchive
-MESSAGE="Must have db2 to build apt-ftparchive"
+MESSAGE="Must have libdb to build apt-ftparchive"
 include $(FAIL_H)
 endif # ifdef BDBLIB
diff --git a/methods/bzip2.cc b/methods/bzip2.cc
deleted file mode 100644 (file)
index 8e7e465..0000000
+++ /dev/null
@@ -1,175 +0,0 @@
-// -*- mode: cpp; mode: fold -*-
-// Description                                                         /*{{{*/
-/* ######################################################################
-
-   Bzip2 method - Take a file URI in and decompress it into the target 
-   file.
-
-   While the method is named "bzip2" it handles also other compression
-   types as it calls binaries based on the name of the method,
-   so it can also be used to handle gzip, lzma and others if named
-   correctly.
-
-   ##################################################################### */
-                                                                       /*}}}*/
-// Include Files                                                       /*{{{*/
-#include <config.h>
-
-#include <apt-pkg/fileutl.h>
-#include <apt-pkg/error.h>
-#include <apt-pkg/acquire-method.h>
-#include <apt-pkg/strutl.h>
-#include <apt-pkg/hashes.h>
-#include <apt-pkg/configuration.h>
-
-#include <sys/stat.h>
-#include <unistd.h>
-#include <utime.h>
-#include <stdio.h>
-#include <errno.h>
-#include <apti18n.h>
-                                                                       /*}}}*/
-
-const char *Prog;
-
-class Bzip2Method : public pkgAcqMethod
-{
-   virtual bool Fetch(FetchItem *Itm);
-   
-   public:
-   
-   Bzip2Method() : pkgAcqMethod("1.1",SingleInstance | SendConfig) {};
-};
-
-
-// Bzip2Method::Fetch - Decompress the passed URI                      /*{{{*/
-// ---------------------------------------------------------------------
-/* */
-bool Bzip2Method::Fetch(FetchItem *Itm)
-{
-   URI Get = Itm->Uri;
-   std::string Path = Get.Host + Get.Path; // To account for relative paths
-   
-   std::string GzPathOption = "Dir::bin::" + std::string(Prog);
-
-   FetchResult Res;
-   Res.Filename = Itm->DestFile;
-   URIStart(Res);
-   
-   // Open the source and destination files
-   FileFd From(Path,FileFd::ReadOnly);
-
-   if(From.FileSize() == 0)
-      return _error->Error(_("Empty files can't be valid archives"));
-
-   int GzOut[2];   
-   if (pipe(GzOut) < 0)
-      return _error->Errno("pipe",_("Couldn't open pipe for %s"),Prog);
-
-   // Fork bzip2
-   pid_t Process = ExecFork();
-   if (Process == 0)
-   {
-      close(GzOut[0]);
-      dup2(From.Fd(),STDIN_FILENO);
-      dup2(GzOut[1],STDOUT_FILENO);
-      From.Close();
-      close(GzOut[1]);
-      SetCloseExec(STDIN_FILENO,false);
-      SetCloseExec(STDOUT_FILENO,false);
-      
-      const char *Args[3];
-      std::string Tmp = _config->Find(GzPathOption,Prog);
-      Args[0] = Tmp.c_str();
-      Args[1] = "-d";
-      Args[2] = 0;
-      execvp(Args[0],(char **)Args);
-      _exit(100);
-   }
-   From.Close();
-   close(GzOut[1]);
-   
-   FileFd FromGz(GzOut[0]);  // For autoclose   
-   FileFd To(Itm->DestFile,FileFd::WriteAtomic);   
-   To.EraseOnFailure();
-   if (_error->PendingError() == true)
-      return false;
-   
-   // Read data from bzip2, generate checksums and write
-   Hashes Hash;
-   bool Failed = false;
-   while (1) 
-   {
-      unsigned char Buffer[4*1024];
-      
-      ssize_t Count = read(GzOut[0],Buffer,sizeof(Buffer));
-      if (Count < 0 && errno == EINTR)
-        continue;
-      
-      if (Count < 0)
-      {
-        _error->Errno("read", _("Read error from %s process"),Prog);
-        Failed = true;
-        break;
-      }
-      
-      if (Count == 0)
-        break;
-      
-      Hash.Add(Buffer,Count);
-      if (To.Write(Buffer,Count) == false)
-      {
-        Failed = true;
-        FromGz.Close();
-        break;
-      }      
-   }
-   
-   // Wait for bzip2 to finish
-   if (ExecWait(Process,_config->Find(GzPathOption,Prog).c_str(),false) == false)
-   {
-      To.OpFail();
-      return false;
-   }  
-       
-   To.Close();
-   
-   if (Failed == true)
-      return false;
-   
-   // Transfer the modification times
-   struct stat Buf;
-   if (stat(Path.c_str(),&Buf) != 0)
-      return _error->Errno("stat",_("Failed to stat"));
-
-   struct utimbuf TimeBuf;
-   TimeBuf.actime = Buf.st_atime;
-   TimeBuf.modtime = Buf.st_mtime;
-   if (utime(Itm->DestFile.c_str(),&TimeBuf) != 0)
-      return _error->Errno("utime",_("Failed to set modification time"));
-
-   if (stat(Itm->DestFile.c_str(),&Buf) != 0)
-      return _error->Errno("stat",_("Failed to stat"));
-   
-   // Return a Done response
-   Res.LastModified = Buf.st_mtime;
-   Res.Size = Buf.st_size;
-   Res.TakeHashes(Hash);
-
-   URIDone(Res);
-   
-   return true;
-}
-                                                                       /*}}}*/
-
-int main(int argc, char *argv[])
-{
-   setlocale(LC_ALL, "");
-
-   Bzip2Method Mth;
-
-   Prog = strrchr(argv[0],'/');
-   Prog++;
-   
-   return Mth.Run();
-}
index 6ab6548efb56f82edea77f4de17763e14d3c2953..48c8e98926e05881e616eb345f75252edc5c67fd 100644 (file)
@@ -25,6 +25,8 @@
 #include <apti18n.h>
                                                                        /*}}}*/
 
+const char *Prog;
+
 class GzipMethod : public pkgAcqMethod
 {
    virtual bool Fetch(FetchItem *Itm);
@@ -46,9 +48,18 @@ bool GzipMethod::Fetch(FetchItem *Itm)
    FetchResult Res;
    Res.Filename = Itm->DestFile;
    URIStart(Res);
-   
+
+   std::vector<APT::Configuration::Compressor> const compressors = APT::Configuration::getCompressors();
+   std::vector<APT::Configuration::Compressor>::const_iterator compressor = compressors.begin();
+   for (; compressor != compressors.end(); ++compressor)
+      if (compressor->Name == Prog)
+        break;
+   if (compressor == compressors.end())
+      return _error->Error("Extraction of file %s requires unknown compressor %s", Path.c_str(), Prog);
+
    // Open the source and destination files
-   FileFd From(Path,FileFd::ReadOnly, FileFd::Gzip);
+   FileFd From;
+   From.Open(Path, FileFd::ReadOnly, *compressor);
 
    if(From.FileSize() == 0)
       return _error->Error(_("Empty files can't be valid archives"));
@@ -117,6 +128,9 @@ int main(int argc, char *argv[])
 {
    setlocale(LC_ALL, "");
 
+   Prog = strrchr(argv[0],'/');
+   ++Prog;
+
    GzipMethod Mth;
    return Mth.Run();
 }
index d2e03cfbc13352c295e13080d38c3f20a8beed73..c62ca71d38e51a0569d244ec39b983e6b6cc4965 100644 (file)
@@ -758,7 +758,7 @@ void HttpMethod::SendReq(FetchItem *Itm,CircleBuf &Out)
           Base64Encode(Uri.User + ":" + Uri.Password) + "\r\n";
    }
    Req += "User-Agent: " + _config->Find("Acquire::http::User-Agent",
-               "Debian APT-HTTP/1.3 ("VERSION")") + "\r\n\r\n";
+               "Debian APT-HTTP/1.3 ("PACKAGE_VERSION")") + "\r\n\r\n";
    
    if (Debug == true)
       cerr << Req << endl;
index 4f2d581d26ab544382116761b81fe1849b66da6e..fac7ba7907eab896027cd7d743f6e0ad901d10d5 100644 (file)
@@ -219,7 +219,7 @@ bool HttpsMethod::Fetch(FetchItem *Itm)
    curl_easy_setopt(curl, CURLOPT_USERAGENT,
        _config->Find("Acquire::https::User-Agent",
                _config->Find("Acquire::http::User-Agent",
-                       "Debian APT-CURL/1.0 ("VERSION")").c_str()).c_str());
+                       "Debian APT-CURL/1.0 ("PACKAGE_VERSION")").c_str()).c_str());
 
    // set timeout
    int const timeout = _config->FindI("Acquire::https::Timeout",
index 6ba51058ebb3d25ff554af60254781afd6cb041b..a271aff5e0ac220273e4e786843e0f6b3b2d7031 100644 (file)
@@ -7,7 +7,7 @@ include ../buildlib/defaults.mak
 BIN := $(BIN)/methods
 
 include ../buildlib/libversion.mak
-APT_DOMAIN := libapt-pkg$(LIBAPTPKG_MAJOR)
+APT_DOMAIN := apt
 
 # The file method
 PROGRAM=file
@@ -67,7 +67,7 @@ include $(PROGRAM_H)
 
 # The rred method
 PROGRAM=rred
-SLIBS = -lapt-pkg -lz $(SOCKETLIBS) $(INTLLIBS)
+SLIBS = -lapt-pkg $(SOCKETLIBS) $(INTLLIBS)
 LIB_MAKES = apt-pkg/makefile
 SOURCE = rred.cc
 include $(PROGRAM_H)
@@ -86,16 +86,9 @@ LIB_MAKES = apt-pkg/makefile
 SOURCE = mirror.cc http.cc rfc2553emu.cc connect.cc
 include $(PROGRAM_H)
 
-# The gzip method
-PROGRAM=bzip2
-SLIBS = -lapt-pkg $(INTLLIBS)
-LIB_MAKES = apt-pkg/makefile
-SOURCE = bzip2.cc
-include $(PROGRAM_H)
-
-# SSH and lzma method symlink
-binary: $(BIN)/ssh $(BIN)/lzma $(BIN)/xz
-veryclean: clean-$(BIN)/ssh clean-$(BIN)/lzma clean-$(BIN)/xz
+# SSH method symlink
+binary: $(BIN)/ssh
+veryclean: clean-$(BIN)/ssh
 
 $(BIN)/ssh:
        echo "Installing ssh method link"
@@ -103,14 +96,15 @@ $(BIN)/ssh:
 clean-$(BIN)/ssh:
        -rm $(BIN)/ssh
 
-$(BIN)/lzma:
-       echo "Installing lzma method link"
-       ln -fs bzip2 $(BIN)/lzma
-clean-$(BIN)/lzma:
-       -rm $(BIN)/lzma
-
-$(BIN)/xz:
-       echo "Installing xz method link"
-       ln -fs bzip2 $(BIN)/xz
-clean-$(BIN)/xz:
-       -rm $(BIN)/xz
+# create links for all other compressors
+COMPRESSORS=bzip2 lzma xz
+
+binary: $(addprefix $(BIN)/,$(COMPRESSORS))
+veryclean: $(addprefix clean-$(BIN)/,$(COMPRESSORS))
+
+$(addprefix $(BIN)/,$(COMPRESSORS)): $(BIN)/gzip
+       echo "Installing $(notdir $@) method link"
+       ln -fs gzip $@
+
+$(addprefix clean-$(BIN)/,$(COMPRESSORS)):
+       -rm $(BIN)/$(notdir $@)
index 3b2ab8ede38cf2c761bec7e7e37774b903d0b671..eb6d974256eea0ecb93c745c5d0c097165786f4b 100644 (file)
@@ -124,9 +124,10 @@ bool MirrorMethod::Clean(string Dir)
       if (I == list.end())
         unlink(Dir->d_name);
    };
-   
-   chdir(StartDir.c_str());
+
    closedir(D);
+   if (chdir(StartDir.c_str()) != 0)
+      return _error->Errno("chdir",_("Unable to change to %s"),StartDir.c_str());
    return true;   
 }
 
index 1e352d0e7850c235ef30532ec66aea20a7f7cac5..78d1595d4ec468e89a953df266563d94590ba2d7 100644 (file)
@@ -227,6 +227,21 @@ struct EdCommand {
   char type;
 };
 #define IOV_COUNT 1024 /* Don't really want IOV_MAX since it can be arbitrarily large */
+static ssize_t retry_writev(int fd, const struct iovec *iov, int iovcnt) {
+       ssize_t Res;
+       errno = 0;
+       ssize_t i = 0;
+       do {
+               Res = writev(fd, iov + i, iovcnt);
+               if (Res < 0 && errno == EINTR)
+                       continue;
+               if (Res < 0)
+                       return _error->Errno("writev",_("Write error"));
+               iovcnt -= Res;
+               i += Res;
+       } while (Res > 0 && iovcnt > 0);
+       return i;
+}
 #endif
                                                                                /*}}}*/
 RredMethod::State RredMethod::patchMMap(FileFd &Patch, FileFd &From,           /*{{{*/
@@ -377,7 +392,7 @@ RredMethod::State RredMethod::patchMMap(FileFd &Patch, FileFd &From,                /*{{{*/
                        hash->Add((const unsigned char*) begin, input - begin);
 
                        if(++iov_size == IOV_COUNT) {
-                               writev(out_file.Fd(), iov, IOV_COUNT);
+                               retry_writev(out_file.Fd(), iov, IOV_COUNT);
                                iov_size = 0;
                        }
                }
@@ -402,7 +417,7 @@ RredMethod::State RredMethod::patchMMap(FileFd &Patch, FileFd &From,                /*{{{*/
                                iov[iov_size].iov_len);
 
                                if(++iov_size == IOV_COUNT) {
-                                       writev(out_file.Fd(), iov, IOV_COUNT);
+                                       retry_writev(out_file.Fd(), iov, IOV_COUNT);
                                        iov_size = 0;
                                }
                        }
@@ -417,15 +432,15 @@ RredMethod::State RredMethod::patchMMap(FileFd &Patch, FileFd &From,              /*{{{*/
        }
 
        if(iov_size) {
-               writev(out_file.Fd(), iov, iov_size);
+               retry_writev(out_file.Fd(), iov, iov_size);
                iov_size = 0;
        }
 
        for(i = 0; i < iov_size; i += IOV_COUNT) {
                if(iov_size - i < IOV_COUNT)
-                       writev(out_file.Fd(), iov + i, iov_size - i);
+                       retry_writev(out_file.Fd(), iov + i, iov_size - i);
                else
-                       writev(out_file.Fd(), iov + i, IOV_COUNT);
+                       retry_writev(out_file.Fd(), iov + i, IOV_COUNT);
        }
 
        delete [] iov;
index 9babe20ded17f04ed37db2bcb017063b9226523b..358e0fe12a4d3462b858119b1140dc349740cb7d 100644 (file)
--- a/po/da.po
+++ b/po/da.po
@@ -1,16 +1,15 @@
 # Danish translation apt.
-# Copyright (C) 2010 apt & nedenstående oversættere.
+# Copyright (C) 2012 apt & nedenstående oversættere.
 # This file is distributed under the same license as the apt package.
-# Claus Hindsgaul <claus_h@image.dk>, 2002,2003, 2004, 2005, 2006.
-# Claus Hindsgaul <claus.hindsgaul@gmail.com>, 2006, 2007.
-# Joe Hansen <joedalton2@yahoo.dk>, 2010.
+# Claus Hindsgaul <claus.hindsgaul@gmail.com>, 2002, 2003, 2004, 2005, 2006, 2007.
+# Joe Hansen <joedalton2@yahoo.dk>, 2010, 2012.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: apt\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-07-26 12:05+0200\n"
-"PO-Revision-Date: 2010-09-01 23:51+0200\n"
+"POT-Creation-Date: 2011-10-14 12:59+0200\n"
+"PO-Revision-Date: 2012-02-04 23:51+0200\n"
 "Last-Translator: Joe Hansen <joedalton2@yahoo.dk>\n"
 "Language-Team: Danish <debian-l10n-danish@lists.debian.org> \n"
 "Language: \n"
@@ -111,6 +110,7 @@ msgstr "Du skal angive mindst ét søgemønster"
 #: cmdline/apt-cache.cc:1353
 msgid "This command is deprecated. Please use 'apt-mark showauto' instead."
 msgstr ""
+"Denne kommando er forældet. Brug venligst »apt-mark showauto« i stedet for."
 
 #: cmdline/apt-cache.cc:1448 apt-pkg/cacheset.cc:440
 #, c-format
@@ -159,13 +159,12 @@ msgstr "  Versionstabel:"
 
 #: cmdline/apt-cache.cc:1675 cmdline/apt-cdrom.cc:197 cmdline/apt-config.cc:73
 #: cmdline/apt-extracttemplates.cc:225 ftparchive/apt-ftparchive.cc:589
-#: cmdline/apt-get.cc:3220 cmdline/apt-mark.cc:264 cmdline/apt-sortpkgs.cc:144
+#: cmdline/apt-get.cc:3235 cmdline/apt-mark.cc:264 cmdline/apt-sortpkgs.cc:144
 #, c-format
 msgid "%s %s for %s compiled on %s %s\n"
 msgstr "%s %s for %s kompileret på %s %s\n"
 
 #: cmdline/apt-cache.cc:1682
-#, fuzzy
 msgid ""
 "Usage: apt-cache [options] command\n"
 "       apt-cache [options] showpkg pkg1 [pkg2 ...]\n"
@@ -202,7 +201,6 @@ msgid ""
 "See the apt-cache(8) and apt.conf(5) manual pages for more information.\n"
 msgstr ""
 "Brug: apt-cache [tilvalg] kommando\n"
-"      apt-cache [tilvalg] add fil1 [fil2 ...]\n"
 "      apt-cache [tilvalg] showpkg pakke1 [pakke2 ...]\n"
 "      apt-cache [tilvalg] showsrc pakke1 [pakke2 ...]\n"
 "\n"
@@ -210,7 +208,6 @@ msgstr ""
 "binære mellemlagerfiler og hente oplysninger fra dem.\n"
 "\n"
 "Kommandoer:\n"
-"   add - Tilføj en pakkefil til kildemellemlageret\n"
 "   gencaches - Opbyg både pakke- og kildemellemlageret\n"
 "   showpkg - Vis generelle oplysninger om en enkelt pakke\n"
 "   showsrc - Vis kildetekstposter\n"
@@ -220,7 +217,6 @@ msgstr ""
 "   unmet - Vis uopfyldte afhængigheder\n"
 "   search - Gennemsøg pakkelisten med et regulært udtryk\n"
 "   show - Vis en læsbar post for pakken\n"
-"   showauto - Vis en liste af automatisk installerede pakker\n"
 "   depends - Vis de rå afhængighedsoplysninger for en pakke\n"
 "   rdepends - Vis omvendte afhængighedsoplysninger for en pakke\n"
 "   pkgnames - Vis navnene på alle pakker\n"
@@ -317,7 +313,7 @@ msgstr ""
 "  -c=? Læs denne opsætningsfil\n"
 "  -o=? Angiv et opsætningstilvalg. F.eks. -o dir::cache=/tmp\n"
 
-#: cmdline/apt-extracttemplates.cc:267 apt-pkg/pkgcachegen.cc:1149
+#: cmdline/apt-extracttemplates.cc:267 apt-pkg/pkgcachegen.cc:1164
 #, c-format
 msgid "Unable to write to %s"
 msgstr "Kunne ikke skrive til %s"
@@ -472,7 +468,7 @@ msgstr "Kunne ikke finde %s"
 msgid "Archive has no control record"
 msgstr "Arkivet har ingen kontrolindgang"
 
-#: ftparchive/cachedb.cc:448
+#: ftparchive/cachedb.cc:452
 msgid "Unable to get a cursor"
 msgstr "Kunne skaffe en markør"
 
@@ -838,7 +834,7 @@ msgstr "Geninstallering af %s er ikke mulig, da den ikke kan hentes.\n"
 msgid "%s is already the newest version.\n"
 msgstr "%s er i forvejen den nyeste version.\n"
 
-#: cmdline/apt-get.cc:818 cmdline/apt-get.cc:2088 cmdline/apt-mark.cc:59
+#: cmdline/apt-get.cc:818 cmdline/apt-get.cc:2096 cmdline/apt-mark.cc:59
 #, c-format
 msgid "%s set to manually installed.\n"
 msgstr "%s sat til manuelt installeret.\n"
@@ -849,127 +845,127 @@ msgid "Selected version '%s' (%s) for '%s'\n"
 msgstr "Valgte version '%s' (%s) for '%s'\n"
 
 #: cmdline/apt-get.cc:849
-#, fuzzy, c-format
+#, c-format
 msgid "Selected version '%s' (%s) for '%s' because of '%s'\n"
-msgstr "Valgte version '%s' (%s) for '%s'\n"
+msgstr "Valgte version '%s' (%s) for '%s' på grund af '%s'\n"
 
-#: cmdline/apt-get.cc:893
+#: cmdline/apt-get.cc:891
 #, c-format
 msgid "Package %s is not installed, so not removed\n"
 msgstr "Pakken %s er ikke installeret, så den afinstalleres ikke\n"
 
-#: cmdline/apt-get.cc:971
+#: cmdline/apt-get.cc:969
 msgid "Correcting dependencies..."
 msgstr "Retter afhængigheder..."
 
-#: cmdline/apt-get.cc:974
+#: cmdline/apt-get.cc:972
 msgid " failed."
 msgstr " mislykkedes."
 
-#: cmdline/apt-get.cc:977
+#: cmdline/apt-get.cc:975
 msgid "Unable to correct dependencies"
 msgstr "Kunne ikke rette afhængigheder"
 
-#: cmdline/apt-get.cc:980
+#: cmdline/apt-get.cc:978
 msgid "Unable to minimize the upgrade set"
 msgstr "Kunne ikke minimere opgraderingssættet"
 
-#: cmdline/apt-get.cc:982
+#: cmdline/apt-get.cc:980
 msgid " Done"
 msgstr " Færdig"
 
-#: cmdline/apt-get.cc:986
+#: cmdline/apt-get.cc:984
 msgid "You might want to run 'apt-get -f install' to correct these."
 msgstr "Du kan muligvis rette dette ved at køre 'apt-get -f install'."
 
-#: cmdline/apt-get.cc:989
+#: cmdline/apt-get.cc:987
 msgid "Unmet dependencies. Try using -f."
 msgstr "Uopfyldte afhængigheder. Prøv med -f."
 
-#: cmdline/apt-get.cc:1014
+#: cmdline/apt-get.cc:1012
 msgid "WARNING: The following packages cannot be authenticated!"
 msgstr "ADVARSEL: Følgende pakkers autenticitet kunne ikke verificeres!"
 
-#: cmdline/apt-get.cc:1018
+#: cmdline/apt-get.cc:1016
 msgid "Authentication warning overridden.\n"
 msgstr "Autentifikationsadvarsel tilsidesat.\n"
 
-#: cmdline/apt-get.cc:1025
+#: cmdline/apt-get.cc:1023
 msgid "Install these packages without verification [y/N]? "
 msgstr "Installér disse pakker uden verifikation (y/N)? "
 
-#: cmdline/apt-get.cc:1027
+#: cmdline/apt-get.cc:1025
 msgid "Some packages could not be authenticated"
 msgstr "Nogle pakker kunne ikke autentificeres"
 
-#: cmdline/apt-get.cc:1036 cmdline/apt-get.cc:1197
+#: cmdline/apt-get.cc:1034 cmdline/apt-get.cc:1195
 msgid "There are problems and -y was used without --force-yes"
 msgstr "Der er problemer og -y blev brugt uden --force-yes"
 
-#: cmdline/apt-get.cc:1077
+#: cmdline/apt-get.cc:1075
 msgid "Internal error, InstallPackages was called with broken packages!"
 msgstr "Intern fejl. InstallPackages blev kaldt med ødelagte pakker!"
 
-#: cmdline/apt-get.cc:1086
+#: cmdline/apt-get.cc:1084
 msgid "Packages need to be removed but remove is disabled."
 msgstr "Pakker skal afinstalleres, men Remove er deaktiveret."
 
-#: cmdline/apt-get.cc:1097
+#: cmdline/apt-get.cc:1095
 msgid "Internal error, Ordering didn't finish"
 msgstr "Intern fejl. Sortering blev ikke fuldført"
 
-#: cmdline/apt-get.cc:1135
+#: cmdline/apt-get.cc:1133
 msgid "How odd.. The sizes didn't match, email apt@packages.debian.org"
 msgstr "Mystisk.. Størrelserne passede ikke, skriv til apt@packages.debian.org"
 
 #. TRANSLATOR: The required space between number and unit is already included
 #. in the replacement strings, so %sB will be correctly translate in e.g. 1,5 MB
-#: cmdline/apt-get.cc:1142
+#: cmdline/apt-get.cc:1140
 #, c-format
 msgid "Need to get %sB/%sB of archives.\n"
 msgstr "%sB/%sB skal hentes fra arkiverne.\n"
 
 #. TRANSLATOR: The required space between number and unit is already included
 #. in the replacement string, so %sB will be correctly translate in e.g. 1,5 MB
-#: cmdline/apt-get.cc:1147
+#: cmdline/apt-get.cc:1145
 #, c-format
 msgid "Need to get %sB of archives.\n"
 msgstr "%sB skal hentes fra arkiverne.\n"
 
 #. TRANSLATOR: The required space between number and unit is already included
 #. in the replacement string, so %sB will be correctly translate in e.g. 1,5 MB
-#: cmdline/apt-get.cc:1154
+#: cmdline/apt-get.cc:1152
 #, c-format
 msgid "After this operation, %sB of additional disk space will be used.\n"
 msgstr "Efter denne handling, vil %sB yderligere diskplads være brugt.\n"
 
 #. TRANSLATOR: The required space between number and unit is already included
 #. in the replacement string, so %sB will be correctly translate in e.g. 1,5 MB
-#: cmdline/apt-get.cc:1159
+#: cmdline/apt-get.cc:1157
 #, c-format
 msgid "After this operation, %sB disk space will be freed.\n"
 msgstr "Efter denne handling, vil %sB diskplads blive frigjort.\n"
 
-#: cmdline/apt-get.cc:1174 cmdline/apt-get.cc:1177 cmdline/apt-get.cc:2499
-#: cmdline/apt-get.cc:2502
+#: cmdline/apt-get.cc:1172 cmdline/apt-get.cc:1175 cmdline/apt-get.cc:2514
+#: cmdline/apt-get.cc:2517
 #, c-format
 msgid "Couldn't determine free space in %s"
 msgstr "Kunne ikke bestemme ledig plads i %s"
 
-#: cmdline/apt-get.cc:1187
+#: cmdline/apt-get.cc:1185
 #, c-format
 msgid "You don't have enough free space in %s."
 msgstr "Du har ikke nok ledig plads i %s."
 
-#: cmdline/apt-get.cc:1203 cmdline/apt-get.cc:1223
+#: cmdline/apt-get.cc:1201 cmdline/apt-get.cc:1221
 msgid "Trivial Only specified but this is not a trivial operation."
 msgstr "'Trivial Only' angivet, men dette er ikke en triviel handling."
 
-#: cmdline/apt-get.cc:1205
+#: cmdline/apt-get.cc:1203
 msgid "Yes, do as I say!"
 msgstr "Ja, gør som jeg siger!"
 
-#: cmdline/apt-get.cc:1207
+#: cmdline/apt-get.cc:1205
 #, c-format
 msgid ""
 "You are about to do something potentially harmful.\n"
@@ -980,28 +976,28 @@ msgstr ""
 "For at fortsætte, skal du skrive '%s'\n"
 " ?] "
 
-#: cmdline/apt-get.cc:1213 cmdline/apt-get.cc:1232
+#: cmdline/apt-get.cc:1211 cmdline/apt-get.cc:1230
 msgid "Abort."
 msgstr "Afbryder."
 
-#: cmdline/apt-get.cc:1228
+#: cmdline/apt-get.cc:1226
 msgid "Do you want to continue [Y/n]? "
 msgstr "Vil du fortsætte [J/n]? "
 
-#: cmdline/apt-get.cc:1300 cmdline/apt-get.cc:2564 apt-pkg/algorithms.cc:1438
+#: cmdline/apt-get.cc:1298 cmdline/apt-get.cc:2579 apt-pkg/algorithms.cc:1445
 #, c-format
 msgid "Failed to fetch %s  %s\n"
 msgstr "Kunne ikke hente %s %s\n"
 
-#: cmdline/apt-get.cc:1318
+#: cmdline/apt-get.cc:1316
 msgid "Some files failed to download"
 msgstr "Nedhentningen af filer mislykkedes"
 
-#: cmdline/apt-get.cc:1319 cmdline/apt-get.cc:2576
+#: cmdline/apt-get.cc:1317 cmdline/apt-get.cc:2591
 msgid "Download complete and in download only mode"
 msgstr "Nedhentning afsluttet i 'hent-kun'-tilstand"
 
-#: cmdline/apt-get.cc:1325
+#: cmdline/apt-get.cc:1323
 msgid ""
 "Unable to fetch some archives, maybe run apt-get update or try with --fix-"
 "missing?"
@@ -1009,19 +1005,19 @@ msgstr ""
 "Kunne ikke hente nogle af arkiverne. Prøv evt. at køre 'apt-get update' "
 "eller prøv med --fix-missing."
 
-#: cmdline/apt-get.cc:1329
+#: cmdline/apt-get.cc:1327
 msgid "--fix-missing and media swapping is not currently supported"
 msgstr "--fix-missing og medieskift understøttes endnu ikke"
 
-#: cmdline/apt-get.cc:1334
+#: cmdline/apt-get.cc:1332
 msgid "Unable to correct missing packages."
 msgstr "Kunne ikke rette manglende pakker."
 
-#: cmdline/apt-get.cc:1335
+#: cmdline/apt-get.cc:1333
 msgid "Aborting install."
 msgstr "Afbryder installationen."
 
-#: cmdline/apt-get.cc:1363
+#: cmdline/apt-get.cc:1361
 msgid ""
 "The following package disappeared from your system as\n"
 "all files have been overwritten by other packages:"
@@ -1035,37 +1031,37 @@ msgstr[1] ""
 "De følgende pakker forsvandt fra dit system, da\n"
 "alle filer er blevet overskrevet af andre pakker:"
 
-#: cmdline/apt-get.cc:1367
+#: cmdline/apt-get.cc:1365
 msgid "Note: This is done automatic and on purpose by dpkg."
 msgstr "Bemærk: Dette sker automatisk og med vilje af dpkg."
 
-#: cmdline/apt-get.cc:1505
+#: cmdline/apt-get.cc:1503
 #, c-format
 msgid "Ignore unavailable target release '%s' of package '%s'"
 msgstr "Ignorer utilgængelig måludgivelse '%s' af pakke '%s'"
 
-#: cmdline/apt-get.cc:1537
+#: cmdline/apt-get.cc:1535
 #, c-format
 msgid "Picking '%s' as source package instead of '%s'\n"
 msgstr "Vælger '%s' som kildepakke fremfor '%s'\n"
 
 #. if (VerTag.empty() == false && Last == 0)
-#: cmdline/apt-get.cc:1575
+#: cmdline/apt-get.cc:1573
 #, c-format
 msgid "Ignore unavailable version '%s' of package '%s'"
 msgstr "Ignorer utilgængelig version '%s' af pakke '%s'"
 
-#: cmdline/apt-get.cc:1591
+#: cmdline/apt-get.cc:1589
 msgid "The update command takes no arguments"
 msgstr "'update'-kommandoen benytter ingen parametre"
 
-#: cmdline/apt-get.cc:1653
+#: cmdline/apt-get.cc:1652
 msgid "We are not supposed to delete stuff, can't start AutoRemover"
 msgstr ""
 "Det er ikke meningen, at vi skal slette ting og sager, kan ikke starte "
 "AutoRemover"
 
-#: cmdline/apt-get.cc:1748
+#: cmdline/apt-get.cc:1756
 msgid ""
 "Hmm, seems like the AutoRemover destroyed something which really\n"
 "shouldn't happen. Please file a bug report against apt."
@@ -1083,15 +1079,15 @@ msgstr ""
 #. "that package should be filed.") << endl;
 #. }
 #.
-#: cmdline/apt-get.cc:1751 cmdline/apt-get.cc:1921
+#: cmdline/apt-get.cc:1759 cmdline/apt-get.cc:1929
 msgid "The following information may help to resolve the situation:"
 msgstr "Følgende oplysninger kan hjælpe dig med at klare situationen:"
 
-#: cmdline/apt-get.cc:1755
+#: cmdline/apt-get.cc:1763
 msgid "Internal Error, AutoRemover broke stuff"
 msgstr "Intern fejl. AutoRemover ødelagde noget"
 
-#: cmdline/apt-get.cc:1762
+#: cmdline/apt-get.cc:1770
 msgid ""
 "The following package was automatically installed and is no longer required:"
 msgid_plural ""
@@ -1102,7 +1098,7 @@ msgstr[0] ""
 msgstr[1] ""
 "Følgende pakker blev installeret automatisk, og behøves ikke længere:"
 
-#: cmdline/apt-get.cc:1766
+#: cmdline/apt-get.cc:1774
 #, c-format
 msgid "%lu package was automatically installed and is no longer required.\n"
 msgid_plural ""
@@ -1111,19 +1107,19 @@ msgstr[0] "Pakken %lu blev installeret automatisk, og behøves ikke længere.\n"
 msgstr[1] ""
 "Pakkerne %lu blev installeret automatisk, og behøves ikke længere.\n"
 
-#: cmdline/apt-get.cc:1768
+#: cmdline/apt-get.cc:1776
 msgid "Use 'apt-get autoremove' to remove them."
 msgstr "Brug 'apt-get autoremove' til at fjerne dem."
 
-#: cmdline/apt-get.cc:1787
+#: cmdline/apt-get.cc:1795
 msgid "Internal error, AllUpgrade broke stuff"
 msgstr "Intern fejl, AllUpgrade ødelagde noget"
 
-#: cmdline/apt-get.cc:1886
+#: cmdline/apt-get.cc:1894
 msgid "You might want to run 'apt-get -f install' to correct these:"
 msgstr "Du kan muligvis rette det ved at køre 'apt-get -f install':"
 
-#: cmdline/apt-get.cc:1890
+#: cmdline/apt-get.cc:1898
 msgid ""
 "Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a "
 "solution)."
@@ -1131,7 +1127,7 @@ msgstr ""
 "Uopfyldte afhængigheder. Prøv 'apt-get -f install' uden pakker (eller angiv "
 "en løsning)."
 
-#: cmdline/apt-get.cc:1906
+#: cmdline/apt-get.cc:1914
 msgid ""
 "Some packages could not be installed. This may mean that you have\n"
 "requested an impossible situation or if you are using the unstable\n"
@@ -1142,73 +1138,75 @@ msgstr ""
 "en umulig situation eller bruger den ustabile distribution, hvor enkelte\n"
 "pakker endnu ikke er lavet eller gjort tilgængelige."
 
-#: cmdline/apt-get.cc:1924
+#: cmdline/apt-get.cc:1932
 msgid "Broken packages"
 msgstr "Ødelagte pakker"
 
-#: cmdline/apt-get.cc:1950
+#: cmdline/apt-get.cc:1958
 msgid "The following extra packages will be installed:"
 msgstr "Følgende yderligere pakker vil blive installeret:"
 
-#: cmdline/apt-get.cc:2040
+#: cmdline/apt-get.cc:2048
 msgid "Suggested packages:"
 msgstr "Foreslåede pakker:"
 
-#: cmdline/apt-get.cc:2041
+#: cmdline/apt-get.cc:2049
 msgid "Recommended packages:"
 msgstr "Anbefalede pakker:"
 
-#: cmdline/apt-get.cc:2083
+#: cmdline/apt-get.cc:2091
 #, c-format
 msgid "Couldn't find package %s"
 msgstr "Kunne ikke finde pakken %s"
 
-#: cmdline/apt-get.cc:2090 cmdline/apt-mark.cc:61
+#: cmdline/apt-get.cc:2098 cmdline/apt-mark.cc:61
 #, c-format
 msgid "%s set to automatically installed.\n"
 msgstr "%s sat til automatisk installation.\n"
 
-#: cmdline/apt-get.cc:2098 cmdline/apt-mark.cc:105
+#: cmdline/apt-get.cc:2106 cmdline/apt-mark.cc:105
 msgid ""
 "This command is deprecated. Please use 'apt-mark auto' and 'apt-mark manual' "
 "instead."
 msgstr ""
+"Denne kommando er forældet. Brug venligst »apt-mark auto« og »apt-mark "
+"manual« i stedet for."
 
-#: cmdline/apt-get.cc:2114
+#: cmdline/apt-get.cc:2122
 msgid "Calculating upgrade... "
 msgstr "Beregner opgraderingen... "
 
-#: cmdline/apt-get.cc:2117 methods/ftp.cc:707 methods/connect.cc:111
+#: cmdline/apt-get.cc:2125 methods/ftp.cc:708 methods/connect.cc:111
 msgid "Failed"
 msgstr "Mislykkedes"
 
-#: cmdline/apt-get.cc:2122
+#: cmdline/apt-get.cc:2130
 msgid "Done"
 msgstr "Færdig"
 
-#: cmdline/apt-get.cc:2189 cmdline/apt-get.cc:2197
+#: cmdline/apt-get.cc:2197 cmdline/apt-get.cc:2205
 msgid "Internal error, problem resolver broke stuff"
 msgstr "Intern fejl. Problemløseren ødelagde noget"
 
-#: cmdline/apt-get.cc:2221 cmdline/apt-get.cc:2254
+#: cmdline/apt-get.cc:2233 cmdline/apt-get.cc:2269
 msgid "Unable to lock the download directory"
 msgstr "Kunne ikke låse nedhentningsmappen"
 
-#: cmdline/apt-get.cc:2305
+#: cmdline/apt-get.cc:2320
 #, c-format
 msgid "Downloading %s %s"
-msgstr ""
+msgstr "Henter %s %s"
 
-#: cmdline/apt-get.cc:2361
+#: cmdline/apt-get.cc:2376
 msgid "Must specify at least one package to fetch source for"
 msgstr "Du skal angive mindst én pakke at hente kildeteksten til"
 
-#: cmdline/apt-get.cc:2401 cmdline/apt-get.cc:2713
+#: cmdline/apt-get.cc:2416 cmdline/apt-get.cc:2728
 #, c-format
 msgid "Unable to find a source package for %s"
 msgstr "Kunne ikke finde kildetekstpakken for %s"
 
-#: cmdline/apt-get.cc:2418
+#: cmdline/apt-get.cc:2433
 #, c-format
 msgid ""
 "NOTICE: '%s' packaging is maintained in the '%s' version control system at:\n"
@@ -1217,7 +1215,7 @@ msgstr ""
 "BEMÆRK: Pakning af '%s' vedligeholdes i versionskontrolsystemet '%s' på:\n"
 "%s\n"
 
-#: cmdline/apt-get.cc:2423
+#: cmdline/apt-get.cc:2438
 #, c-format
 msgid ""
 "Please use:\n"
@@ -1228,149 +1226,151 @@ msgstr ""
 "bzr get %s\n"
 "for at hente de seneste (muligvis ikke udgivet) opdateringer til pakken.\n"
 
-#: cmdline/apt-get.cc:2476
+#: cmdline/apt-get.cc:2491
 #, c-format
 msgid "Skipping already downloaded file '%s'\n"
 msgstr "Overspringer allerede hentet fil '%s'\n"
 
-#: cmdline/apt-get.cc:2513
+#: cmdline/apt-get.cc:2528
 #, c-format
 msgid "You don't have enough free space in %s"
 msgstr "Du har ikke nok ledig plads i %s"
 
 #. TRANSLATOR: The required space between number and unit is already included
 #. in the replacement strings, so %sB will be correctly translate in e.g. 1,5 MB
-#: cmdline/apt-get.cc:2522
+#: cmdline/apt-get.cc:2537
 #, c-format
 msgid "Need to get %sB/%sB of source archives.\n"
 msgstr "%sB/%sB skal hentes fra kildetekst-arkiverne.\n"
 
 #. TRANSLATOR: The required space between number and unit is already included
 #. in the replacement string, so %sB will be correctly translate in e.g. 1,5 MB
-#: cmdline/apt-get.cc:2527
+#: cmdline/apt-get.cc:2542
 #, c-format
 msgid "Need to get %sB of source archives.\n"
 msgstr "%sB skal hentes fra kildetekst-arkiverne.\n"
 
-#: cmdline/apt-get.cc:2533
+#: cmdline/apt-get.cc:2548
 #, c-format
 msgid "Fetch source %s\n"
 msgstr "Henter kildetekst %s\n"
 
-#: cmdline/apt-get.cc:2571
+#: cmdline/apt-get.cc:2586
 msgid "Failed to fetch some archives."
 msgstr "Nogle arkiver kunne ikke hentes."
 
-#: cmdline/apt-get.cc:2602
+#: cmdline/apt-get.cc:2617
 #, c-format
 msgid "Skipping unpack of already unpacked source in %s\n"
 msgstr "Overspringer udpakning af allerede udpakket kildetekst i %s\n"
 
-#: cmdline/apt-get.cc:2614
+#: cmdline/apt-get.cc:2629
 #, c-format
 msgid "Unpack command '%s' failed.\n"
 msgstr "Udpakningskommandoen '%s' fejlede.\n"
 
-#: cmdline/apt-get.cc:2615
+#: cmdline/apt-get.cc:2630
 #, c-format
 msgid "Check if the 'dpkg-dev' package is installed.\n"
 msgstr "Tjek om pakken 'dpkg-dev' er installeret.\n"
 
-#: cmdline/apt-get.cc:2637
+#: cmdline/apt-get.cc:2652
 #, c-format
 msgid "Build command '%s' failed.\n"
 msgstr "Opbygningskommandoen '%s' fejlede.\n"
 
-#: cmdline/apt-get.cc:2657
+#: cmdline/apt-get.cc:2672
 msgid "Child process failed"
 msgstr "Barneprocessen fejlede"
 
-#: cmdline/apt-get.cc:2676
+#: cmdline/apt-get.cc:2691
 msgid "Must specify at least one package to check builddeps for"
 msgstr "Skal angive mindst én pakke at tjekke opbygningsafhængigheder for"
 
-#: cmdline/apt-get.cc:2701
+#: cmdline/apt-get.cc:2716
 #, c-format
 msgid ""
 "No architecture information available for %s. See apt.conf(5) APT::"
 "Architectures for setup"
 msgstr ""
+"Ingen arkitekturinformation tilgængelig for %s. Se apt.conf(5) APT::"
+"Architectures for opsætning"
 
-#: cmdline/apt-get.cc:2718
+#: cmdline/apt-get.cc:2733
 #, c-format
 msgid "Unable to get build-dependency information for %s"
 msgstr "Kunne ikke hente oplysninger om opbygningsafhængigheder for %s"
 
-#: cmdline/apt-get.cc:2738
+#: cmdline/apt-get.cc:2753
 #, c-format
 msgid "%s has no build depends.\n"
 msgstr "%s har ingen opbygningsafhængigheder.\n"
 
-#: cmdline/apt-get.cc:2868
-#, fuzzy, c-format
+#: cmdline/apt-get.cc:2883
+#, c-format
 msgid ""
 "%s dependency for %s can't be satisfied because %s is not allowed on '%s' "
 "packages"
 msgstr ""
-"%s-afhængigheden for %s kan ikke opfyldes, da pakken %s ikke blev fundet"
+"Afhængigheden %s for %s kan ikke opfyldes, da %s ikke er tilladt på '%s'"
 
-#: cmdline/apt-get.cc:2889
+#: cmdline/apt-get.cc:2904
 #, c-format
 msgid ""
 "%s dependency for %s cannot be satisfied because the package %s cannot be "
 "found"
 msgstr ""
-"%s-afhængigheden for %s kan ikke opfyldes, da pakken %s ikke blev fundet"
+"Afhængigheden %s for %s kan ikke opfyldes, da pakken %s ikke blev fundet"
 
-#: cmdline/apt-get.cc:2912
+#: cmdline/apt-get.cc:2927
 #, c-format
 msgid "Failed to satisfy %s dependency for %s: Installed package %s is too new"
 msgstr ""
 "Kunne ikke opfylde %s-afhængigheden for %s: Den installerede pakke %s er for "
 "ny"
 
-#: cmdline/apt-get.cc:2951
-#, fuzzy, c-format
+#: cmdline/apt-get.cc:2966
+#, c-format
 msgid ""
 "%s dependency for %s cannot be satisfied because candidate version of "
 "package %s can't satisfy version requirements"
 msgstr ""
-"%s-afhængigheden for %s kan ikke opfyldes, da ingen af de tilgængelige "
-"udgaver af pakken %s kan tilfredsstille versions-kravene"
+"Afhængigheden %s for %s kan ikke opfyldes, da ingen af de tilgængelige "
+"kandidater for pakken %s kan tilfredsstille versionskravene"
 
-#: cmdline/apt-get.cc:2957
-#, fuzzy, c-format
+#: cmdline/apt-get.cc:2972
+#, c-format
 msgid ""
 "%s dependency for %s cannot be satisfied because package %s has no candidate "
 "version"
 msgstr ""
-"%s-afhængigheden for %s kan ikke opfyldes, da pakken %s ikke blev fundet"
+"%s-afhængigheden for %s kan ikke opfyldes, da pakken %s ikke har en "
+"kandidatversion"
 
-#: cmdline/apt-get.cc:2980
+#: cmdline/apt-get.cc:2995
 #, c-format
 msgid "Failed to satisfy %s dependency for %s: %s"
 msgstr "Kunne ikke opfylde %s-afhængigheden for %s: %s"
 
-#: cmdline/apt-get.cc:2996
+#: cmdline/apt-get.cc:3011
 #, c-format
 msgid "Build-dependencies for %s could not be satisfied."
 msgstr "Opbygningsafhængigheden for %s kunne ikke opfyldes."
 
-#: cmdline/apt-get.cc:3001
+#: cmdline/apt-get.cc:3016
 msgid "Failed to process build dependencies"
 msgstr "Kunne ikke behandler opbygningsafhængighederne"
 
-#: cmdline/apt-get.cc:3094 cmdline/apt-get.cc:3106
-#, fuzzy, c-format
+#: cmdline/apt-get.cc:3109 cmdline/apt-get.cc:3121
+#, c-format
 msgid "Changelog for %s (%s)"
-msgstr "Forbinder til %s (%s)"
+msgstr "Ændringslog for %s (%s)"
 
-#: cmdline/apt-get.cc:3225
+#: cmdline/apt-get.cc:3240
 msgid "Supported modules:"
 msgstr "Understøttede moduler:"
 
-#: cmdline/apt-get.cc:3266
-#, fuzzy
+#: cmdline/apt-get.cc:3281
 msgid ""
 "Usage: apt-get [options] command\n"
 "       apt-get [options] install|remove pkg1 [pkg2 ...]\n"
@@ -1426,9 +1426,9 @@ msgstr ""
 "Kommandoer:\n"
 "   update - Hent nye lister over pakker\n"
 "   upgrade - Udfør en opgradering\n"
-"   install - Installér nye pakker (pakke er libc6, ikke libc6.deb)\n"
-"   remove - Afinstallér pakker\n"
-"   autoremove - Afinstallér automatisk alle ubrugte pakker\n"
+"   install - Installer nye pakker (pakke er libc6, ikke libc6.deb)\n"
+"   remove - Afinstaller pakker\n"
+"   autoremove - Afinstaller automatisk alle ubrugte pakker\n"
 "   purge - Fjern pakker og konfigurationsfiler\n"
 "   source - Hent kildetekstarkiver\n"
 "   build-dep - Sæt opbygningsafhængigheder op for kildetekstpakker\n"
@@ -1437,8 +1437,8 @@ msgstr ""
 "   clean - Slet hentede arkivfiler\n"
 "   autoclean - Slet gamle hentede arkivfiler\n"
 "   check - Tjek at der ikke er uopfyldte afhængigheder\n"
-"   markauto - Marker de angivne pakker som automatisk installeret\n"
-"   unmarkauto - Marker de angivne pakker som manuelt installeret\n"
+"   changelog - Hent og vis ændringsloggen for den angivne pakke\n"
+"   download - Hent den binære pakke til den aktuelle mappe\n"
 "\n"
 "Tilvalg:\n"
 "  -h  Denne hjælpetekst.\n"
@@ -1456,9 +1456,9 @@ msgstr ""
 "  -o=? Angiv et arbitrært opsætningsvalg. F.eks. -o dir::cache=/tmp\n"
 "Se manualsiderne for apt-get(8), sources.list(5) og apt.conf(5)\n"
 "for flere oplysninger og tilvalg.\n"
-"                       Denne APT har \"Super Cow Powers\".\n"
+"                       Denne APT har »Super Cow Powers«.\n"
 
-#: cmdline/apt-get.cc:3429
+#: cmdline/apt-get.cc:3444
 msgid ""
 "NOTE: This is only a simulation!\n"
 "      apt-get needs root privileges for real execution.\n"
@@ -1508,43 +1508,43 @@ msgstr ""
 "i drevet '%s' og tryk retur\n"
 
 #: cmdline/apt-mark.cc:46
-#, fuzzy, c-format
+#, c-format
 msgid "%s can not be marked as it is not installed.\n"
-msgstr "men den er ikke installeret"
+msgstr "%s kan ikke markeres, da den ikke er installeret.\n"
 
 #: cmdline/apt-mark.cc:52
-#, fuzzy, c-format
+#, c-format
 msgid "%s was already set to manually installed.\n"
-msgstr "%s sat til manuelt installeret.\n"
+msgstr "%s var allerede sat til manuelt installeret.\n"
 
 #: cmdline/apt-mark.cc:54
-#, fuzzy, c-format
+#, c-format
 msgid "%s was already set to automatically installed.\n"
-msgstr "%s sat til automatisk installation.\n"
+msgstr "%s var allerede sat til automatisk installeret.\n"
 
 #: cmdline/apt-mark.cc:169
-#, fuzzy, c-format
+#, c-format
 msgid "%s was already set on hold.\n"
-msgstr "%s er i forvejen den nyeste version.\n"
+msgstr "%s var allerede sat i bero.\n"
 
 #: cmdline/apt-mark.cc:171
-#, fuzzy, c-format
+#, c-format
 msgid "%s was already not hold.\n"
-msgstr "%s er i forvejen den nyeste version.\n"
+msgstr "%s var allerede ikke i bero.\n"
 
 #: cmdline/apt-mark.cc:185 cmdline/apt-mark.cc:207
-#, fuzzy, c-format
+#, c-format
 msgid "%s set on hold.\n"
-msgstr "%s sat til manuelt installeret.\n"
+msgstr "%s sat i bero.\n"
 
 #: cmdline/apt-mark.cc:187 cmdline/apt-mark.cc:212
-#, fuzzy, c-format
+#, c-format
 msgid "Canceled hold on %s.\n"
-msgstr "Kunne ikke åbne %s"
+msgstr "Afbrød i bero for %s.\n"
 
 #: cmdline/apt-mark.cc:220
 msgid "Executing dpkg failed. Are you root?"
-msgstr ""
+msgstr "Kørsel af dpkg fejlede. Er du root (administrator)?"
 
 #: cmdline/apt-mark.cc:268
 msgid ""
@@ -1567,6 +1567,26 @@ msgid ""
 "  -o=? Set an arbitrary configuration option, eg -o dir::cache=/tmp\n"
 "See the apt-mark(8) and apt.conf(5) manual pages for more information."
 msgstr ""
+"Brug: apt-mark [tilvalg] {auto|manual} pakke1 [pakke2 ...]\n"
+"\n"
+"apt-mark er en simpel kommandolinjegrænseflade for markering af pakker\n"
+"som manuelt eller automatisk installeret. Programmet kan også vise\n"
+"markeringerne.\n"
+"\n"
+"Kommandoer:\n"
+"   auto - Marker de givne pakker som automatisk installeret\n"
+"   manual - Marker de givne pakker som manuelt installeret\n"
+"\n"
+"Tilvalg:\n"
+"  -h  Denne hjælpetekst.\n"
+"  -q  Logbar uddata - ingen statusindikator\n"
+"  -qq Ingen uddata undtagen for fejl\n"
+"  -s  Ingen handling. Viser kun hvad der ville blive udført.\n"
+"  -f  læs/skriv auto/manuel markering i den givne fil\n"
+"  -c=? Læs denne konfigurationsfil\n"
+"  -o=? Angiv en arbitrær konfigurationsindstilling, f.eks. -o dir::cache=/"
+"tmp\n"
+"Se manualsiderne apt-mark(8) og apt.conf(5) for yderligere information."
 
 #: cmdline/apt-sortpkgs.cc:86
 msgid "Unknown package record!"
@@ -1773,8 +1793,8 @@ msgstr "File %s/%s overskriver filen i pakken %s"
 #. Only warn if there is no sources.list file.
 #: apt-inst/extract.cc:462 apt-pkg/contrib/cdromutl.cc:179
 #: apt-pkg/contrib/fileutl.cc:343 apt-pkg/sourcelist.cc:204
-#: apt-pkg/sourcelist.cc:210 apt-pkg/acquire.cc:450 apt-pkg/init.cc:104
-#: apt-pkg/init.cc:112 apt-pkg/clean.cc:33 apt-pkg/policy.cc:352
+#: apt-pkg/sourcelist.cc:210 apt-pkg/acquire.cc:454 apt-pkg/init.cc:103
+#: apt-pkg/init.cc:111 apt-pkg/clean.cc:33 apt-pkg/policy.cc:353
 #: methods/mirror.cc:91
 #, c-format
 msgid "Unable to read %s"
@@ -1804,9 +1824,9 @@ msgstr "Kunne ikke finde %sinfo"
 msgid "The info and temp directories need to be on the same filesystem"
 msgstr "Mapperne info og temp skal ligge i samme filsystem"
 
-#: apt-inst/deb/dpkgdb.cc:135 apt-pkg/pkgcachegen.cc:1048
-#: apt-pkg/pkgcachegen.cc:1152 apt-pkg/pkgcachegen.cc:1158
-#: apt-pkg/pkgcachegen.cc:1320
+#: apt-inst/deb/dpkgdb.cc:135 apt-pkg/pkgcachegen.cc:1063
+#: apt-pkg/pkgcachegen.cc:1167 apt-pkg/pkgcachegen.cc:1173
+#: apt-pkg/pkgcachegen.cc:1335
 msgid "Reading package lists"
 msgstr "Indlæser pakkelisterne"
 
@@ -1915,7 +1935,7 @@ msgstr "Ikke-tolkbar kontrolfil"
 
 #: methods/bzip2.cc:60 methods/gzip.cc:52
 msgid "Empty files can't be valid archives"
-msgstr ""
+msgstr "Tomme filer kan ikke være gyldige arkiver"
 
 #: methods/bzip2.cc:64
 #, c-format
@@ -1928,22 +1948,22 @@ msgid "Read error from %s process"
 msgstr "Læsefejl fra %s-process"
 
 #: methods/bzip2.cc:140 methods/bzip2.cc:149 methods/copy.cc:43
-#: methods/gzip.cc:92 methods/gzip.cc:101 methods/rred.cc:524
-#: methods/rred.cc:533
+#: methods/gzip.cc:92 methods/gzip.cc:101 methods/rred.cc:527
+#: methods/rred.cc:536
 msgid "Failed to stat"
 msgstr "Kunne ikke finde"
 
 #: methods/bzip2.cc:146 methods/copy.cc:80 methods/gzip.cc:98
-#: methods/rred.cc:530
+#: methods/rred.cc:533
 msgid "Failed to set modification time"
 msgstr "Kunne ikke angive ændringstidspunkt"
 
-#: methods/cdrom.cc:199
+#: methods/cdrom.cc:200
 #, c-format
 msgid "Unable to read the cdrom database %s"
 msgstr "Kunne ikke læse cdrom-databasen %s"
 
-#: methods/cdrom.cc:208
+#: methods/cdrom.cc:209
 msgid ""
 "Please use apt-cdrom to make this CD-ROM recognized by APT. apt-get update "
 "cannot be used to add new CD-ROMs"
@@ -1951,20 +1971,20 @@ msgstr ""
 "Brug apt-cdrom for at apt kan lære den at kende. apt-get update kan ikke "
 "bruges til at tilføje nye cd'er"
 
-#: methods/cdrom.cc:218
+#: methods/cdrom.cc:219
 msgid "Wrong CD-ROM"
 msgstr "Forkert cd"
 
-#: methods/cdrom.cc:245
+#: methods/cdrom.cc:246
 #, c-format
 msgid "Unable to unmount the CD-ROM in %s, it may still be in use."
 msgstr "Kunne ikke afmontere cdrommen i %s, den er muligvis stadig i brug."
 
-#: methods/cdrom.cc:250
+#: methods/cdrom.cc:251
 msgid "Disk not found."
 msgstr "Disk blev ikke fundet."
 
-#: methods/cdrom.cc:258 methods/file.cc:79 methods/rsh.cc:265
+#: methods/cdrom.cc:259 methods/file.cc:79 methods/rsh.cc:265
 msgid "File not found"
 msgstr "Fil blev ikke fundet"
 
@@ -1973,34 +1993,34 @@ msgid "Invalid URI, local URIS must not start with //"
 msgstr "Ugyldig URI, lokale URI'er må ikke starte med //"
 
 #. Login must be before getpeername otherwise dante won't work.
-#: methods/ftp.cc:168
+#: methods/ftp.cc:169
 msgid "Logging in"
 msgstr "Logget på"
 
-#: methods/ftp.cc:174
+#: methods/ftp.cc:175
 msgid "Unable to determine the peer name"
 msgstr "Kunne ikke bestemme serverens navn"
 
-#: methods/ftp.cc:179
+#: methods/ftp.cc:180
 msgid "Unable to determine the local name"
 msgstr "Kunne ikke bestemme det lokale navn"
 
-#: methods/ftp.cc:210 methods/ftp.cc:238
+#: methods/ftp.cc:211 methods/ftp.cc:239
 #, c-format
 msgid "The server refused the connection and said: %s"
 msgstr "Serveren nægtede os forbindelse og sagde: %s"
 
-#: methods/ftp.cc:216
+#: methods/ftp.cc:217
 #, c-format
 msgid "USER failed, server said: %s"
 msgstr "angivelse af brugernavn mislykkedes, serveren sagde: %s"
 
-#: methods/ftp.cc:223
+#: methods/ftp.cc:224
 #, c-format
 msgid "PASS failed, server said: %s"
 msgstr "angivelse af adgangskode mislykkedes, serveren sagde: %s"
 
-#: methods/ftp.cc:243
+#: methods/ftp.cc:244
 msgid ""
 "A proxy server was specified but no login script, Acquire::ftp::ProxyLogin "
 "is empty."
@@ -2008,114 +2028,114 @@ msgstr ""
 "Der blev angivet en proxyserver men intet logpå-skript; Acquire::ftp::"
 "ProxyLogin er tom."
 
-#: methods/ftp.cc:271
+#: methods/ftp.cc:272
 #, c-format
 msgid "Login script command '%s' failed, server said: %s"
 msgstr "Logpå-skriptets kommando '%s' mislykkedes. Serveren sagde: %s"
 
-#: methods/ftp.cc:297
+#: methods/ftp.cc:298
 #, c-format
 msgid "TYPE failed, server said: %s"
 msgstr "TYPE mislykkedes. Serveren sagde: %s"
 
-#: methods/ftp.cc:335 methods/ftp.cc:446 methods/rsh.cc:184 methods/rsh.cc:227
+#: methods/ftp.cc:336 methods/ftp.cc:447 methods/rsh.cc:184 methods/rsh.cc:227
 msgid "Connection timeout"
 msgstr "Tidsudløb på forbindelsen"
 
-#: methods/ftp.cc:341
+#: methods/ftp.cc:342
 msgid "Server closed the connection"
 msgstr "Serveren lukkede forbindelsen"
 
-#: methods/ftp.cc:344 apt-pkg/contrib/fileutl.cc:820 methods/rsh.cc:191
+#: methods/ftp.cc:345 apt-pkg/contrib/fileutl.cc:831 methods/rsh.cc:191
 msgid "Read error"
 msgstr "Læsefejl"
 
-#: methods/ftp.cc:351 methods/rsh.cc:198
+#: methods/ftp.cc:352 methods/rsh.cc:198
 msgid "A response overflowed the buffer."
 msgstr "Mellemlageret blev overfyldt af et svar."
 
-#: methods/ftp.cc:368 methods/ftp.cc:380
+#: methods/ftp.cc:369 methods/ftp.cc:381
 msgid "Protocol corruption"
 msgstr "Protokolfejl"
 
-#: methods/ftp.cc:452 apt-pkg/contrib/fileutl.cc:862 methods/rsh.cc:233
+#: methods/ftp.cc:453 apt-pkg/contrib/fileutl.cc:873 methods/rsh.cc:233
 msgid "Write error"
 msgstr "Skrivefejl"
 
-#: methods/ftp.cc:692 methods/ftp.cc:698 methods/ftp.cc:734
+#: methods/ftp.cc:693 methods/ftp.cc:699 methods/ftp.cc:735
 msgid "Could not create a socket"
 msgstr "Kunne ikke oprette sokkel"
 
-#: methods/ftp.cc:703
+#: methods/ftp.cc:704
 msgid "Could not connect data socket, connection timed out"
 msgstr "Kunne ikke forbinde datasokkel, tidsudløb på forbindelsen"
 
-#: methods/ftp.cc:709
+#: methods/ftp.cc:710
 msgid "Could not connect passive socket."
 msgstr "Kunne ikke forbinde passiv sokkel."
 
-#: methods/ftp.cc:727
+#: methods/ftp.cc:728
 msgid "getaddrinfo was unable to get a listening socket"
 msgstr "getaddrinfo kunne ikke få en lyttesokkel"
 
-#: methods/ftp.cc:741
+#: methods/ftp.cc:742
 msgid "Could not bind a socket"
 msgstr "Kunne ikke tilknytte en sokkel"
 
-#: methods/ftp.cc:745
+#: methods/ftp.cc:746
 msgid "Could not listen on the socket"
 msgstr "Kunne ikke lytte på soklen"
 
-#: methods/ftp.cc:752
+#: methods/ftp.cc:753
 msgid "Could not determine the socket's name"
 msgstr "Kunne ikke finde soklens navn"
 
-#: methods/ftp.cc:784
+#: methods/ftp.cc:785
 msgid "Unable to send PORT command"
 msgstr "Kunne ikke sende PORT-kommando"
 
-#: methods/ftp.cc:794
+#: methods/ftp.cc:795
 #, c-format
 msgid "Unknown address family %u (AF_*)"
 msgstr "Ukendt adressefamilie %u (AF_*)"
 
-#: methods/ftp.cc:803
+#: methods/ftp.cc:804
 #, c-format
 msgid "EPRT failed, server said: %s"
 msgstr "EPRT mislykkedes. Serveren sagde: %s"
 
-#: methods/ftp.cc:823
+#: methods/ftp.cc:824
 msgid "Data socket connect timed out"
 msgstr "Tidsudløb på datasokkel-forbindelse"
 
-#: methods/ftp.cc:830
+#: methods/ftp.cc:831
 msgid "Unable to accept connection"
 msgstr "Kunne ikke acceptere forbindelse"
 
-#: methods/ftp.cc:869 methods/http.cc:1023 methods/rsh.cc:303
+#: methods/ftp.cc:870 methods/http.cc:1023 methods/rsh.cc:303
 msgid "Problem hashing file"
 msgstr "Problem ved \"hashing\" af fil"
 
-#: methods/ftp.cc:882
+#: methods/ftp.cc:883
 #, c-format
 msgid "Unable to fetch file, server said '%s'"
 msgstr "Kunne ikke hente fil. Serveren sagde '%s'"
 
-#: methods/ftp.cc:897 methods/rsh.cc:322
+#: methods/ftp.cc:898 methods/rsh.cc:322
 msgid "Data socket timed out"
 msgstr "Tidsudløb ved datasokkel"
 
-#: methods/ftp.cc:927
+#: methods/ftp.cc:928
 #, c-format
 msgid "Data transfer failed, server said '%s'"
 msgstr "Dataoverførsel mislykkedes, serveren sagde '%s'"
 
 #. Get the files information
-#: methods/ftp.cc:1004
+#: methods/ftp.cc:1005
 msgid "Query"
 msgstr "Forespørgsel"
 
-#: methods/ftp.cc:1116
+#: methods/ftp.cc:1117
 msgid "Unable to invoke "
 msgstr "Kunne ikke udføre "
 
@@ -2356,7 +2376,7 @@ msgstr "%limin %lis"
 msgid "%lis"
 msgstr "%lis"
 
-#: apt-pkg/contrib/strutl.cc:1138
+#: apt-pkg/contrib/strutl.cc:1137
 #, c-format
 msgid "Selection %s not found"
 msgstr "Det valgte %s blev ikke fundet"
@@ -2431,43 +2451,43 @@ msgstr "%c%s... Færdig"
 msgid "Command line option '%c' [from %s] is not known."
 msgstr "Kommandolinjetilvalget '%c' [fra %s] kendes ikke."
 
-#: apt-pkg/contrib/cmndline.cc:103 apt-pkg/contrib/cmndline.cc:111
-#: apt-pkg/contrib/cmndline.cc:119
+#: apt-pkg/contrib/cmndline.cc:101 apt-pkg/contrib/cmndline.cc:109
+#: apt-pkg/contrib/cmndline.cc:117
 #, c-format
 msgid "Command line option %s is not understood"
 msgstr "Kommandolinjetilvalget %s blev ikke forstået"
 
-#: apt-pkg/contrib/cmndline.cc:124
+#: apt-pkg/contrib/cmndline.cc:122
 #, c-format
 msgid "Command line option %s is not boolean"
 msgstr "Kommandolinjetilvalget %s er ikke boolsk"
 
-#: apt-pkg/contrib/cmndline.cc:165 apt-pkg/contrib/cmndline.cc:186
+#: apt-pkg/contrib/cmndline.cc:163 apt-pkg/contrib/cmndline.cc:184
 #, c-format
 msgid "Option %s requires an argument."
 msgstr "Tilvalget %s kræver et parameter."
 
-#: apt-pkg/contrib/cmndline.cc:200 apt-pkg/contrib/cmndline.cc:206
+#: apt-pkg/contrib/cmndline.cc:197 apt-pkg/contrib/cmndline.cc:203
 #, c-format
 msgid "Option %s: Configuration item specification must have an =<val>."
 msgstr "Tilvalg %s: Opsætningspostens specifikation skal have en =<værdi>."
 
-#: apt-pkg/contrib/cmndline.cc:236
+#: apt-pkg/contrib/cmndline.cc:232
 #, c-format
 msgid "Option %s requires an integer argument, not '%s'"
 msgstr "Tilvalget %s kræver et heltalligt parameter, ikke '%s'"
 
-#: apt-pkg/contrib/cmndline.cc:267
+#: apt-pkg/contrib/cmndline.cc:263
 #, c-format
 msgid "Option '%s' is too long"
 msgstr "Tilvalget '%s' er for langt"
 
-#: apt-pkg/contrib/cmndline.cc:300
+#: apt-pkg/contrib/cmndline.cc:295
 #, c-format
 msgid "Sense %s is not understood, try true or false."
 msgstr "%s blev ikke forstået, prøv med 'true' eller 'false'."
 
-#: apt-pkg/contrib/cmndline.cc:350
+#: apt-pkg/contrib/cmndline.cc:345
 #, c-format
 msgid "Invalid operation %s"
 msgstr "Ugyldig handling %s"
@@ -2478,7 +2498,7 @@ msgid "Unable to stat the mount point %s"
 msgstr "Kunne ikke finde monteringspunktet %s"
 
 #: apt-pkg/contrib/cdromutl.cc:175 apt-pkg/contrib/cdromutl.cc:209
-#: apt-pkg/acquire.cc:456 apt-pkg/acquire.cc:481 apt-pkg/clean.cc:39
+#: apt-pkg/acquire.cc:460 apt-pkg/acquire.cc:485 apt-pkg/clean.cc:39
 #: methods/mirror.cc:97
 #, c-format
 msgid "Unable to change to %s"
@@ -2511,90 +2531,90 @@ msgstr "Kunne ikke opnå låsen %s"
 #: apt-pkg/contrib/fileutl.cc:335
 #, c-format
 msgid "List of files can't be created as '%s' is not a directory"
-msgstr ""
+msgstr "Liste over filer kan ikke oprettes da »%s« ikke er en mappe"
 
 #: apt-pkg/contrib/fileutl.cc:362
 #, c-format
 msgid "Ignoring '%s' in directory '%s' as it is not a regular file"
-msgstr ""
+msgstr "Ignorerer »%s« i mappe »%s« da det ikke er en regulær fil"
 
 #: apt-pkg/contrib/fileutl.cc:380
 #, c-format
 msgid "Ignoring file '%s' in directory '%s' as it has no filename extension"
-msgstr ""
+msgstr "Ignorerer fil »%s« i mappe »%s« da den ikke har en filendelse"
 
 #: apt-pkg/contrib/fileutl.cc:389
 #, c-format
 msgid ""
 "Ignoring file '%s' in directory '%s' as it has an invalid filename extension"
-msgstr ""
+msgstr "Ignorerer fil »%s« i mappe »%s« da den har en ugyldig filendelse"
 
-#: apt-pkg/contrib/fileutl.cc:679
+#: apt-pkg/contrib/fileutl.cc:690
 #, c-format
 msgid "Waited for %s but it wasn't there"
 msgstr "Ventede på %s, men den var der ikke"
 
-#: apt-pkg/contrib/fileutl.cc:691
+#: apt-pkg/contrib/fileutl.cc:702
 #, c-format
 msgid "Sub-process %s received a segmentation fault."
 msgstr "Underprocessen %s modtog en segmenteringsfejl."
 
-#: apt-pkg/contrib/fileutl.cc:693
+#: apt-pkg/contrib/fileutl.cc:704
 #, c-format
 msgid "Sub-process %s received signal %u."
 msgstr "Underprocessen %s modtog en signal %u."
 
-#: apt-pkg/contrib/fileutl.cc:697
+#: apt-pkg/contrib/fileutl.cc:708
 #, c-format
 msgid "Sub-process %s returned an error code (%u)"
 msgstr "Underprocessen %s returnerede en fejlkode (%u)"
 
-#: apt-pkg/contrib/fileutl.cc:699
+#: apt-pkg/contrib/fileutl.cc:710
 #, c-format
 msgid "Sub-process %s exited unexpectedly"
 msgstr "Underprocessen %s afsluttedes uventet"
 
-#: apt-pkg/contrib/fileutl.cc:764 apt-pkg/indexcopy.cc:673
+#: apt-pkg/contrib/fileutl.cc:775 apt-pkg/indexcopy.cc:673
 #, c-format
 msgid "Could not open file %s"
 msgstr "Kunne ikke åbne filen %s"
 
-#: apt-pkg/contrib/fileutl.cc:781
+#: apt-pkg/contrib/fileutl.cc:792
 #, c-format
 msgid "Could not open file descriptor %d"
 msgstr "Kunne ikke åbne filbeskrivelse %d"
 
-#: apt-pkg/contrib/fileutl.cc:841
+#: apt-pkg/contrib/fileutl.cc:852
 #, c-format
 msgid "read, still have %lu to read but none left"
 msgstr "læs, mangler stadig at læse %lu men der er ikke flere"
 
-#: apt-pkg/contrib/fileutl.cc:874
+#: apt-pkg/contrib/fileutl.cc:885
 #, c-format
 msgid "write, still have %lu to write but couldn't"
 msgstr "skriv, mangler stadig at skrive %lu men kunne ikke"
 
-#: apt-pkg/contrib/fileutl.cc:1010
+#: apt-pkg/contrib/fileutl.cc:1021
 #, c-format
 msgid "Problem closing the gzip file %s"
 msgstr "Problem under lukning af gzip-filen %s"
 
-#: apt-pkg/contrib/fileutl.cc:1013
+#: apt-pkg/contrib/fileutl.cc:1024
 #, c-format
 msgid "Problem closing the file %s"
 msgstr "Problem under lukning af filen %s"
 
-#: apt-pkg/contrib/fileutl.cc:1018
+#: apt-pkg/contrib/fileutl.cc:1029
 #, c-format
 msgid "Problem renaming the file %s to %s"
 msgstr "Problem under omdøbning af filen %s til %s"
 
-#: apt-pkg/contrib/fileutl.cc:1029
+#: apt-pkg/contrib/fileutl.cc:1040
 #, c-format
 msgid "Problem unlinking the file %s"
 msgstr "Fejl ved frigivelse af filen %s"
 
-#: apt-pkg/contrib/fileutl.cc:1042
+#: apt-pkg/contrib/fileutl.cc:1053
 msgid "Problem syncing the file"
 msgstr "Problem under synkronisering af fil"
 
@@ -2781,7 +2801,7 @@ msgstr "Ugyldig linje %u i kildelisten %s (type)"
 msgid "Type '%s' is not known on line %u in source list %s"
 msgstr "Typen '%s' er ukendt på linje %u i kildelisten %s"
 
-#: apt-pkg/packagemanager.cc:335 apt-pkg/packagemanager.cc:623
+#: apt-pkg/packagemanager.cc:335 apt-pkg/packagemanager.cc:645
 #, c-format
 msgid ""
 "Could not perform immediate configuration on '%s'. Please see man 5 apt.conf "
@@ -2836,13 +2856,12 @@ msgid "Unable to correct problems, you have held broken packages."
 msgstr ""
 "Kunne ikke korrigere problemerne, da du har tilbageholdt ødelagte pakker."
 
-#: apt-pkg/algorithms.cc:1464 apt-pkg/algorithms.cc:1466
-#, fuzzy
+#: apt-pkg/algorithms.cc:1471 apt-pkg/algorithms.cc:1473
 msgid ""
 "Some index files failed to download. They have been ignored, or old ones "
 "used instead."
 msgstr ""
-"Nogle indeksfiler kunne ikke hentes, de er blevet ignoreret eller de gamle "
+"Nogle indeksfiler kunne ikke hentes. De er blevet ignoreret eller de gamle "
 "bruges i stedet."
 
 #: apt-pkg/acquire.cc:79
@@ -2862,12 +2881,12 @@ msgstr "Kunne ikke låse mappen %s"
 
 #. only show the ETA if it makes sense
 #. two days
-#: apt-pkg/acquire.cc:857
+#: apt-pkg/acquire.cc:861
 #, c-format
 msgid "Retrieving file %li of %li (%s remaining)"
 msgstr "Henter fil %li ud af %li (%s tilbage)"
 
-#: apt-pkg/acquire.cc:859
+#: apt-pkg/acquire.cc:863
 #, c-format
 msgid "Retrieving file %li of %li"
 msgstr "Henter fil %li ud af %li"
@@ -2887,12 +2906,12 @@ msgstr "Metoden %s startede ikke korrekt"
 msgid "Please insert the disc labeled: '%s' in the drive '%s' and press enter."
 msgstr "Indsæt disken med navnet: '%s' i drevet '%s' og tryk retur."
 
-#: apt-pkg/init.cc:147
+#: apt-pkg/init.cc:146
 #, c-format
 msgid "Packaging system '%s' is not supported"
 msgstr "Pakkesystemet '%s' understøttes ikke"
 
-#: apt-pkg/init.cc:163
+#: apt-pkg/init.cc:162
 msgid "Unable to determine a suitable packaging system type"
 msgstr "Kunne ikke bestemme en passende pakkesystemtype"
 
@@ -2917,24 +2936,26 @@ msgstr "Du kan muligvis rette problemet ved at køre 'apt-get update'"
 msgid "The list of sources could not be read."
 msgstr "Listen med kilder kunne ikke læses."
 
-#: apt-pkg/policy.cc:71
+#: apt-pkg/policy.cc:72
 #, c-format
 msgid ""
 "The value '%s' is invalid for APT::Default-Release as such a release is not "
 "available in the sources"
 msgstr ""
+"Værdien »%s« er ugyldig for APT::Default-Release da sådan en udgivelse ikke "
+"er tilgængelig i kilderne"
 
-#: apt-pkg/policy.cc:389
+#: apt-pkg/policy.cc:390
 #, c-format
 msgid "Invalid record in the preferences file %s, no Package header"
 msgstr "Ugyldig indgang i indstillingsfilen %s, pakkehovedet mangler"
 
-#: apt-pkg/policy.cc:411
+#: apt-pkg/policy.cc:412
 #, c-format
 msgid "Did not understand pin type %s"
 msgstr "Kunne ikke forstå pin-type %s"
 
-#: apt-pkg/policy.cc:419
+#: apt-pkg/policy.cc:420
 msgid "No priority (or zero) specified for pin"
 msgstr "Ingen prioritet (eller prioritet nul) angivet ved pin"
 
@@ -2942,90 +2963,90 @@ msgstr "Ingen prioritet (eller prioritet nul) angivet ved pin"
 msgid "Cache has an incompatible versioning system"
 msgstr "Mellemlageret benytter en inkompatibel versionsstyring"
 
-#: apt-pkg/pkgcachegen.cc:187
+#: apt-pkg/pkgcachegen.cc:190
 #, c-format
 msgid "Error occurred while processing %s (NewPackage)"
 msgstr "Der skete en fejl under behandlingen af %s (NewPackage)"
 
-#: apt-pkg/pkgcachegen.cc:204
+#: apt-pkg/pkgcachegen.cc:207
 #, c-format
 msgid "Error occurred while processing %s (UsePackage1)"
 msgstr "Der skete en fejl under behandlingen af %s (UsePackage1)"
 
-#: apt-pkg/pkgcachegen.cc:242
+#: apt-pkg/pkgcachegen.cc:245
 #, c-format
 msgid "Error occurred while processing %s (NewFileDesc1)"
 msgstr "Der skete en fejl under behandlingen af %s (NewFileDesc1)"
 
-#: apt-pkg/pkgcachegen.cc:274
+#: apt-pkg/pkgcachegen.cc:277
 #, c-format
 msgid "Error occurred while processing %s (UsePackage2)"
 msgstr "Der skete en fejl under behandlingen af %s (UsePackage2)"
 
-#: apt-pkg/pkgcachegen.cc:278
+#: apt-pkg/pkgcachegen.cc:281
 #, c-format
 msgid "Error occurred while processing %s (NewFileVer1)"
 msgstr "Der skete en fejl under behandlingen af %s (NewFileVer1)"
 
-#: apt-pkg/pkgcachegen.cc:295 apt-pkg/pkgcachegen.cc:305
-#: apt-pkg/pkgcachegen.cc:313
+#: apt-pkg/pkgcachegen.cc:298 apt-pkg/pkgcachegen.cc:308
+#: apt-pkg/pkgcachegen.cc:316
 #, c-format
 msgid "Error occurred while processing %s (NewVersion%d)"
 msgstr "Der skete en fejl under behandlingen af %s (NewVersion%d)"
 
-#: apt-pkg/pkgcachegen.cc:309
+#: apt-pkg/pkgcachegen.cc:312
 #, c-format
 msgid "Error occurred while processing %s (UsePackage3)"
 msgstr "Der skete en fejl under behandlingen af %s (UsePackage3)"
 
-#: apt-pkg/pkgcachegen.cc:342
+#: apt-pkg/pkgcachegen.cc:345
 #, c-format
 msgid "Error occurred while processing %s (NewFileDesc2)"
 msgstr "Der skete en fejl under behandlingen af %s (NewFileDesc2)"
 
-#: apt-pkg/pkgcachegen.cc:348
+#: apt-pkg/pkgcachegen.cc:351
 msgid "Wow, you exceeded the number of package names this APT is capable of."
 msgstr ""
 "Hold da op! Du nåede over det antal pakkenavne, denne APT kan håndtere."
 
-#: apt-pkg/pkgcachegen.cc:351
+#: apt-pkg/pkgcachegen.cc:354
 msgid "Wow, you exceeded the number of versions this APT is capable of."
 msgstr "Hold da op! Du nåede over det antal versioner, denne APT kan håndtere."
 
-#: apt-pkg/pkgcachegen.cc:354
+#: apt-pkg/pkgcachegen.cc:357
 msgid "Wow, you exceeded the number of descriptions this APT is capable of."
 msgstr "Hold da op! Du nåede over det antal versioner, denne APT kan håndtere."
 
-#: apt-pkg/pkgcachegen.cc:357
+#: apt-pkg/pkgcachegen.cc:360
 msgid "Wow, you exceeded the number of dependencies this APT is capable of."
 msgstr ""
 "Hold da op! Du nåede over det antal afhængigheder, denne APT kan håndtere."
 
-#: apt-pkg/pkgcachegen.cc:386
+#: apt-pkg/pkgcachegen.cc:389
 #, c-format
 msgid "Error occurred while processing %s (FindPkg)"
 msgstr "Der skete en fejl under behandlingen af %s (FindPkg)"
 
-#: apt-pkg/pkgcachegen.cc:400
+#: apt-pkg/pkgcachegen.cc:403
 #, c-format
 msgid "Error occurred while processing %s (CollectFileProvides)"
 msgstr "Der skete en fejl under behandlingen af %s (CollectfileProvides)"
 
-#: apt-pkg/pkgcachegen.cc:406
+#: apt-pkg/pkgcachegen.cc:409
 #, c-format
 msgid "Package %s %s was not found while processing file dependencies"
 msgstr "Pakken %s %s blev ikke fundet under behandlingen af filafhængigheder"
 
-#: apt-pkg/pkgcachegen.cc:960
+#: apt-pkg/pkgcachegen.cc:975
 #, c-format
 msgid "Couldn't stat source package list %s"
 msgstr "Kunne ikke finde kildepakkelisten %s"
 
-#: apt-pkg/pkgcachegen.cc:1065
+#: apt-pkg/pkgcachegen.cc:1080
 msgid "Collecting File Provides"
 msgstr "Samler filudbud"
 
-#: apt-pkg/pkgcachegen.cc:1259 apt-pkg/pkgcachegen.cc:1266
+#: apt-pkg/pkgcachegen.cc:1274 apt-pkg/pkgcachegen.cc:1281
 msgid "IO Error saving source cache"
 msgstr "IO-fejl ved gemning af kilde-mellemlageret"
 
@@ -3038,41 +3059,45 @@ msgstr "omdøbning mislykkedes, %s (%s -> %s)."
 msgid "MD5Sum mismatch"
 msgstr "MD5Sum stemmer ikke"
 
-#: apt-pkg/acquire-item.cc:900 apt-pkg/acquire-item.cc:1848
-#: apt-pkg/acquire-item.cc:1991
+#: apt-pkg/acquire-item.cc:900 apt-pkg/acquire-item.cc:1847
+#: apt-pkg/acquire-item.cc:1990
 msgid "Hash Sum mismatch"
 msgstr "Hashsum stemmer ikke"
 
-#: apt-pkg/acquire-item.cc:1388
+#: apt-pkg/acquire-item.cc:1387
 #, c-format
 msgid ""
 "Unable to find expected entry '%s' in Release file (Wrong sources.list entry "
 "or malformed file)"
 msgstr ""
+"Kunne ikke finde uventet punkt »%s« i udgivelsesfil (forkert sources.list-"
+"punkt eller forkert udformet fil)"
 
 #: apt-pkg/acquire-item.cc:1403
-#, fuzzy, c-format
+#, c-format
 msgid "Unable to find hash sum for '%s' in Release file"
-msgstr "Kunne ikke fortolke udgivelsesfil %s"
+msgstr "Kunne ikke finde hashsum for »%s« i udgivelsesfilen"
 
-#: apt-pkg/acquire-item.cc:1439
+#: apt-pkg/acquire-item.cc:1438
 msgid "There is no public key available for the following key IDs:\n"
 msgstr ""
 "Der er ingen tilgængelige offentlige nøgler for følgende nøgle-ID'er:\n"
 
-#: apt-pkg/acquire-item.cc:1477
+#: apt-pkg/acquire-item.cc:1476
 #, c-format
 msgid ""
 "Release file for %s is expired (invalid since %s). Updates for this "
 "repository will not be applied."
 msgstr ""
+"Udgivelsesfil for %s er udløbet (ugyldig siden %s). Opdateringer for dette "
+"arkiv vil ikke blive anvendt."
 
-#: apt-pkg/acquire-item.cc:1499
+#: apt-pkg/acquire-item.cc:1498
 #, c-format
 msgid "Conflicting distribution: %s (expected %s but got %s)"
 msgstr "Konfliktdistribution: %s (forventede %s men fik %s)"
 
-#: apt-pkg/acquire-item.cc:1532
+#: apt-pkg/acquire-item.cc:1531
 #, c-format
 msgid ""
 "A error occurred during the signature verification. The repository is not "
@@ -3082,12 +3107,12 @@ msgstr ""
 "og den forrige indeksfil vil blive brugt. GPG-fejl: %s: %s\n"
 
 #. Invalid signature file, reject (LP: #346386) (Closes: #627642)
-#: apt-pkg/acquire-item.cc:1542 apt-pkg/acquire-item.cc:1547
+#: apt-pkg/acquire-item.cc:1541 apt-pkg/acquire-item.cc:1546
 #, c-format
 msgid "GPG error: %s: %s"
 msgstr "GPG-fejl: %s: %s"
 
-#: apt-pkg/acquire-item.cc:1639
+#: apt-pkg/acquire-item.cc:1638
 #, c-format
 msgid ""
 "I wasn't able to locate a file for the %s package. This might mean you need "
@@ -3096,7 +3121,7 @@ msgstr ""
 "Jeg kunne ikke lokalisere filen til %s-pakken. Det betyder muligvis at du er "
 "nødt til manuelt at reparere denne pakke. (grundet manglende arch)"
 
-#: apt-pkg/acquire-item.cc:1698
+#: apt-pkg/acquire-item.cc:1697
 #, c-format
 msgid ""
 "I wasn't able to locate a file for the %s package. This might mean you need "
@@ -3105,13 +3130,13 @@ msgstr ""
 "Jeg kunne ikke lokalisere filen til %s-pakken. Det betyder muligvis at du er "
 "nødt til manuelt at reparere denne pakke."
 
-#: apt-pkg/acquire-item.cc:1753
+#: apt-pkg/acquire-item.cc:1752
 #, c-format
 msgid ""
 "The package index files are corrupted. No Filename: field for package %s."
 msgstr "Pakkeindeksfilerne er i stykker. Intet 'Filename:'-felt for pakken %s."
 
-#: apt-pkg/acquire-item.cc:1840
+#: apt-pkg/acquire-item.cc:1839
 msgid "Size mismatch"
 msgstr "Størrelsen stemmer ikke"
 
@@ -3135,7 +3160,7 @@ msgstr "Intet hashpunkt i udgivelsesfil %s"
 msgid "Invalid 'Valid-Until' entry in Release file %s"
 msgstr "Ugyldigt punkt 'Valid-Until' i udgivelsesfil %s"
 
-#: apt-pkg/indexrecords.cc:125
+#: apt-pkg/indexrecords.cc:129
 #, c-format
 msgid "Invalid 'Date' entry in Release file %s"
 msgstr "Ugyldigt punkt 'Date' i udgivelsesfil %s"
@@ -3235,22 +3260,22 @@ msgstr "Skriver ny kildeliste\n"
 msgid "Source list entries for this disc are:\n"
 msgstr "Denne disk har følgende kildeliste-indgange:\n"
 
-#: apt-pkg/indexcopy.cc:270 apt-pkg/indexcopy.cc:928
+#: apt-pkg/indexcopy.cc:270 apt-pkg/indexcopy.cc:927
 #, c-format
 msgid "Wrote %i records.\n"
 msgstr "Skrev %i poster.\n"
 
-#: apt-pkg/indexcopy.cc:272 apt-pkg/indexcopy.cc:930
+#: apt-pkg/indexcopy.cc:272 apt-pkg/indexcopy.cc:929
 #, c-format
 msgid "Wrote %i records with %i missing files.\n"
 msgstr "Skrev %i poster med %i manglende filer.\n"
 
-#: apt-pkg/indexcopy.cc:275 apt-pkg/indexcopy.cc:933
+#: apt-pkg/indexcopy.cc:275 apt-pkg/indexcopy.cc:932
 #, c-format
 msgid "Wrote %i records with %i mismatched files\n"
 msgstr "Skrev %i poster med %i ikke-trufne filer\n"
 
-#: apt-pkg/indexcopy.cc:278 apt-pkg/indexcopy.cc:936
+#: apt-pkg/indexcopy.cc:278 apt-pkg/indexcopy.cc:935
 #, c-format
 msgid "Wrote %i records with %i missing files and %i mismatched files\n"
 msgstr "Skrev %i poster med %i manglende filer og %i ikke-trufne filer\n"
@@ -3273,7 +3298,7 @@ msgstr "Hashsum stemmer ikke: %s"
 #: apt-pkg/indexcopy.cc:677
 #, c-format
 msgid "File %s doesn't start with a clearsigned message"
-msgstr ""
+msgstr "Fil %s starter ikke med en »clearsigned« besked"
 
 #. TRANSLATOR: %s is the trusted keyring parts directory
 #: apt-pkg/indexcopy.cc:708
@@ -3413,25 +3438,25 @@ msgstr "Gør klar til at fjerne %s helt"
 msgid "Completely removed %s"
 msgstr "Fjernede %s helt"
 
-#: apt-pkg/deb/dpkgpm.cc:1082
+#: apt-pkg/deb/dpkgpm.cc:1087
 msgid "Can not write log, openpty() failed (/dev/pts not mounted?)\n"
 msgstr "Kan ikke skrive log, openpty() mislykkedes (/dev/pts ej monteret?)\n"
 
-#: apt-pkg/deb/dpkgpm.cc:1113
+#: apt-pkg/deb/dpkgpm.cc:1118
 msgid "Running dpkg"
 msgstr "Kører dpkg"
 
-#: apt-pkg/deb/dpkgpm.cc:1338
+#: apt-pkg/deb/dpkgpm.cc:1344
 msgid "No apport report written because MaxReports is reached already"
 msgstr ""
 "Ingen apportrapport skrevet da MaxReports (maks rapporter) allerede er nået"
 
 #. check if its not a follow up error
-#: apt-pkg/deb/dpkgpm.cc:1343
+#: apt-pkg/deb/dpkgpm.cc:1349
 msgid "dependency problems - leaving unconfigured"
 msgstr "afhængighedsproblemer - efterlader ukonfigureret"
 
-#: apt-pkg/deb/dpkgpm.cc:1345
+#: apt-pkg/deb/dpkgpm.cc:1351
 msgid ""
 "No apport report written because the error message indicates its a followup "
 "error from a previous failure."
@@ -3439,14 +3464,14 @@ msgstr ""
 "Ingen apportrapport skrevet da fejlbeskeden indikerer, at det er en "
 "opfølgningsfejl fra en tidligere fejl."
 
-#: apt-pkg/deb/dpkgpm.cc:1351
+#: apt-pkg/deb/dpkgpm.cc:1357
 msgid ""
 "No apport report written because the error message indicates a disk full "
 "error"
 msgstr ""
 "Ingen apportrapport skrevet da fejlbeskeden indikerer en fuld disk-fejl"
 
-#: apt-pkg/deb/dpkgpm.cc:1357
+#: apt-pkg/deb/dpkgpm.cc:1363
 msgid ""
 "No apport report written because the error message indicates a out of memory "
 "error"
@@ -3454,7 +3479,7 @@ msgstr ""
 "Ingen apportrapport skrevet da fejlbeskeden indikerer en ikke nok "
 "hukommelsesfejl"
 
-#: apt-pkg/deb/dpkgpm.cc:1364
+#: apt-pkg/deb/dpkgpm.cc:1370
 msgid ""
 "No apport report written because the error message indicates a dpkg I/O error"
 msgstr "Ingen apportrapport skrevet da fejlbeskeden indikerer en dpkg I/O-fejl"
@@ -3489,21 +3514,21 @@ msgstr "Ikke låst"
 #: methods/mirror.cc:260
 #, c-format
 msgid "No mirror file '%s' found "
-msgstr "Ingen spejlfil '%s' fundet "
+msgstr "Ingen spejlfil »%s« fundet "
 
 #. FIXME: fallback to a default mirror here instead
 #. and provide a config option to define that default
 #: methods/mirror.cc:267
-#, fuzzy, c-format
+#, c-format
 msgid "Can not read mirror file '%s'"
-msgstr "Ingen spejlfil '%s' fundet "
+msgstr "Kan ikke læse spejlfil »%s«"
 
 #: methods/mirror.cc:422
 #, c-format
 msgid "[Mirror: %s]"
 msgstr "[Spejl: %s]"
 
-#: methods/rred.cc:503
+#: methods/rred.cc:506
 #, c-format
 msgid ""
 "Could not patch %s with mmap and with file operation usage - the patch seems "
@@ -3512,7 +3537,7 @@ msgstr ""
 "Kunne ikke fejlrette (patch) %s med mmap og med filhandlingsbrug - "
 "fejlrettelsen ser ud til at være ødelagt."
 
-#: methods/rred.cc:508
+#: methods/rred.cc:511
 #, c-format
 msgid ""
 "Could not patch %s with mmap (but no mmap specific fail) - the patch seems "
@@ -3524,12 +3549,3 @@ msgstr ""
 #: methods/rsh.cc:330
 msgid "Connection closed prematurely"
 msgstr "Forbindelsen lukkedes for hurtigt"
-
-#~ msgid "Internal error, could not locate member"
-#~ msgstr "Intern fejl, kunne ikke finde element"
-
-#~ msgid "Internal error, group '%s' has no installable pseudo package"
-#~ msgstr "Intern fejl, gruppe '%s' har ingen installationsbar pseudopakke"
-
-#~ msgid "Release file expired, ignoring %s (invalid since %s)"
-#~ msgstr "Udgivelsesfil udløbet, ignorerer %s (ugyldig siden %s)"
index 617cc6182fed7603c8dc4c6fb6cd862e032be748..eaab969aa15ba0ea15d81ee4da26126b6bb214c1 100644 (file)
--- a/po/fi.po
+++ b/po/fi.po
@@ -3018,7 +3018,7 @@ msgstr "MD5Sum ei täsmää"
 #: apt-pkg/acquire-item.cc:900 apt-pkg/acquire-item.cc:1848
 #: apt-pkg/acquire-item.cc:1991
 msgid "Hash Sum mismatch"
-msgstr "Hash Sum täsmää"
+msgstr "Tarkistussumma ei täsmää"
 
 #: apt-pkg/acquire-item.cc:1388
 #, c-format
@@ -3244,7 +3244,7 @@ msgstr ""
 #: apt-pkg/indexcopy.cc:549
 #, fuzzy, c-format
 msgid "Hash mismatch for: %s"
-msgstr "Hash Sum täsmää"
+msgstr "Kohteen %s tarkistussumma ei täsmää"
 
 #: apt-pkg/indexcopy.cc:677
 #, c-format
index cc2a9d8baa4d57db48058553d51a397bed1b10b0..1c008ef065efa8e859bac27bae51034b2287908c 100644 (file)
--- a/po/fr.po
+++ b/po/fr.po
@@ -127,7 +127,7 @@ msgstr "Le cache est désynchronisé, impossible de référencer un fichier"
 #. Show any packages have explicit pins
 #: cmdline/apt-cache.cc:1499
 msgid "Pinned packages:"
-msgstr "Paquets étiquetés :"
+msgstr "Paquets épinglés :"
 
 #: cmdline/apt-cache.cc:1511 cmdline/apt-cache.cc:1556
 msgid "(not found)"
@@ -147,7 +147,7 @@ msgstr "(aucun)"
 
 #: cmdline/apt-cache.cc:1553
 msgid "  Package pin: "
-msgstr "  Étiquette de paquet : "
+msgstr "  Épinglage de paquet : "
 
 #. Show the priority tables
 #: cmdline/apt-cache.cc:1562
@@ -220,7 +220,7 @@ msgstr ""
 "   pkgnames - Liste le nom de tous les paquets du système\n"
 "   dotty - Génère un graphe des paquets pour GraphViz\n"
 "   xvcg - Génère un graphe des paquets pour xvcg\n"
-"   policy - Affiche l'étiquetage (Pin) en vigueur\n"
+"   policy - Affiche l'épinglage (Pin) en vigueur\n"
 "\n"
 "Options :\n"
 "  -h    Ce texte d'aide\n"
@@ -3020,11 +3020,11 @@ msgstr ""
 #: apt-pkg/policy.cc:411
 #, c-format
 msgid "Did not understand pin type %s"
-msgstr "Étiquette %s inconnue"
+msgstr "Type d'épinglage %s inconnu"
 
 #: apt-pkg/policy.cc:419
 msgid "No priority (or zero) specified for pin"
-msgstr "Aucune priorité (ou zéro) n'a été spécifiée pour l'étiquette"
+msgstr "Aucune priorité (ou zéro) n'a été spécifiée pour l'épinglage"
 
 #: apt-pkg/pkgcachegen.cc:80
 msgid "Cache has an incompatible versioning system"
index 9f8b7b22e850780747c089bfb9e6cd9cb400c739..46b75ff4f721ce814a3716fc0107f13b5367606d 100644 (file)
@@ -29,7 +29,7 @@ GETDOMAIN = $(word 1,$(subst /, ,$(1)))
 # Generate the list of files from the bits the other make files dropped 
 # and produce the .pot file.
 $(POTFILES) : $(PO)/%.pot :
-       printf "%s " "Generating POT file $@"
+       echo "Generating POT file $@"
        echo $@ : $(wildcard $(PO)/domains/$*/*.*list) $(addprefix $(BASE)/,$(shell cat $(wildcard $(PO)/domains/$*/*.srclist))) > $@.d
 # From sh source
        cat $(PO)/domains/$*/*.shlist 2> /dev/null | (cd $(BASE) && xargs -n1 bash --dump-po-strings) > $(PO)/domains/$*/sh.pot
@@ -40,22 +40,19 @@ $(POTFILES) : $(PO)/%.pot :
          --keyword=P_:1,2 \
          --files-from=$(PO)/POTFILES_$*.in -o $(PO)/domains/$*/c.pot
        rm -f $(PO)/POTFILES_$*.in
-       $(MSGCOMM) --more-than=0 $(PO)/domains/$*/c.pot $(PO)/domains/$*/sh.pot --output=$@
+       $(MSGCOMM) --omit-header --more-than=0 $(PO)/domains/$*/c.pot $(PO)/domains/$*/sh.pot --output=$@
        # copy into the domain dirs to make rosetta happy
        rm -f $(PO)/domains/$*/*.pot
        cp $@ $(PO)/domains/$*
 
-$(PACKAGE)-all.pot: $(POTFILES)
-       $(MSGCOMM) --more-than=0 $(POTFILES) --output=$@
-
 # Filter the complete translation with the domain specific file to produce
 # only the subtext needed for this domain
 # We cannot express the dependencies required for this directly with a pattern
 # rule, so we use the .d hack.
-$(LANG_POFILES) : $(PO_DOMAINS)/%.po : $(PACKAGE)-all.pot
+$(LANG_POFILES) : $(PO_DOMAINS)/%.po : $(POTFILES)
        printf "%s " "Generating $@"
        echo $@ : $(notdir $@) $(PO)/$(call GETDOMAIN,$*).pot > $(PO)/$(call GETDOMAIN,$*)_$(notdir $@).d
-       $(MSGMERGE) $(notdir $@) $(PO)/$(call GETDOMAIN,$*).pot -o $@
+       $(MSGMERGE) --no-location $(notdir $@) $(PO)/$(call GETDOMAIN,$*).pot -o $@
 
 $(MOFILES) : $(PO_DOMAINS)/%.mo : $(PO_DOMAINS)/%.po
        printf "%s: " "Generating $(LOCALE)/$(notdir $*)/LC_MESSAGES/$(call GETDOMAIN,$*).mo"
@@ -66,7 +63,16 @@ $(MOFILES) : $(PO_DOMAINS)/%.mo : $(PO_DOMAINS)/%.po
 stats:
        for i in *.pot *.po; do echo -n "$$i: "; msgfmt --statistics $$i; done
 
-binary: $(POTFILES) $(PACKAGE)-all.pot $(MOFILES)
+binary: $(POTFILES) $(MOFILES)
+
+$(PACKAGE)-all.pot: $(POTFILES)
+       # we create our partial pot files without a header to avoid changing dates in *.mo files,
+       # but we want a header for our master-pot file, so we use a dummy pot with nothing but the header
+       $(XGETTEXT) --default-domain=$(PO)/$(PACKAGE)-dummy.pot --foreign --language=c \
+               -o $(PO)/$(PACKAGE)-dummy.pot --force-po --package-name=$(PACKAGE) \
+               --package-version=$(PACKAGE_VERSION) --msgid-bugs-address=deity@lists.debian.org /dev/null
+       $(MSGCOMM) --more-than=0 $(PO)/$(PACKAGE)-dummy.pot $(POTFILES) --output=$(PACKAGE)-all.pot
+       rm -f $(PO)/$(PACKAGE)-dummy.pot
 
 .PHONY: update-po
 update-po: $(PACKAGE)-all.pot
@@ -78,7 +84,7 @@ update-po: $(PACKAGE)-all.pot
        done
 
 clean: clean/local
-clean/local: update-po
+clean/local:
        rm -f $(MOFILES) $(LANG_POFILES) $(PO)/*.d
 
 # Include the dependencies that are available
index 7cf36ab92f44cf203daa04fc531eaab817345abc..7e3736f5f2279387e6246136e47036c95855719f 100644 (file)
--- a/po/pl.po
+++ b/po/pl.po
@@ -1,23 +1,27 @@
 # Advanced Package Transfer - APT message translation catalog
 # Polish translation by:
-# Marcin Owsiany <porridge@debian.org>, 2002, 2003, 2004.
-# Bartosz Fenski <fenio@debian.org>, 2005, 2006
-# Wiktor Wandachowicz <siryes@gmail.com>, 2008, 2009
 #
 # Nazewnictwo i spójność tłumaczeń programów apt, aptitude, synaptic i innych:
 # http://wiki.debian.org/PolishL10N/PackageInstallers
+# Marcin Owsiany <porridge@debian.org>, 2002, 2003, 2004.
+# Bartosz Fenski <fenio@debian.org>, 2005, 2006.
+# Wiktor Wandachowicz <siryes@gmail.com>, 2008, 2009.
+# Michał Kułach <michal.kulach@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: apt 0.7.23.1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-07-26 12:05+0200\n"
-"PO-Revision-Date: 2009-09-27 03:42+0100\n"
-"Last-Translator: Wiktor Wandachowicz <siryes@gmail.com>\n"
+"POT-Creation-Date: 2011-10-14 12:59+0200\n"
+"PO-Revision-Date: 2012-01-22 20:35+0100\n"
+"Last-Translator: Michał Kułach <michal.kulach@gmail.com>\n"
 "Language-Team: Polish <debian-l10n-polish@lists.debian.org>\n"
 "Language: pl\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Lokalize 1.0\n"
+"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
+"|| n%100>=20) ? 1 : 2);\n"
 
 #: cmdline/apt-cache.cc:154
 #, c-format
@@ -29,9 +33,8 @@ msgid "Total package names: "
 msgstr "Liczba nazw pakietów: "
 
 #: cmdline/apt-cache.cc:284
-#, fuzzy
 msgid "Total package structures: "
-msgstr "Liczba nazw pakietów: "
+msgstr "Liczba wszystkich typów pakietów: "
 
 #: cmdline/apt-cache.cc:324
 msgid "  Normal packages: "
@@ -105,13 +108,12 @@ msgid "No packages found"
 msgstr "Nie znaleziono żadnych pakietów"
 
 #: cmdline/apt-cache.cc:1218
-#, fuzzy
 msgid "You must give at least one search pattern"
-msgstr "Należy podać dokładnie jeden wzorzec"
+msgstr "Należy podać przynajmniej jeden wzorzec"
 
 #: cmdline/apt-cache.cc:1353
 msgid "This command is deprecated. Please use 'apt-mark showauto' instead."
-msgstr ""
+msgstr "To polecenie jest przestarzałe. Prosimy używać \"apt-mark showauto\"."
 
 #: cmdline/apt-cache.cc:1448 apt-pkg/cacheset.cc:440
 #, c-format
@@ -135,7 +137,7 @@ msgstr "Przypięte pakiety:"
 
 #: cmdline/apt-cache.cc:1511 cmdline/apt-cache.cc:1556
 msgid "(not found)"
-msgstr "(nieznaleziony)"
+msgstr "(nie znaleziono)"
 
 #: cmdline/apt-cache.cc:1519
 msgid "  Installed: "
@@ -160,13 +162,12 @@ msgstr "  Tabela wersji:"
 
 #: cmdline/apt-cache.cc:1675 cmdline/apt-cdrom.cc:197 cmdline/apt-config.cc:73
 #: cmdline/apt-extracttemplates.cc:225 ftparchive/apt-ftparchive.cc:589
-#: cmdline/apt-get.cc:3220 cmdline/apt-mark.cc:264 cmdline/apt-sortpkgs.cc:144
+#: cmdline/apt-get.cc:3235 cmdline/apt-mark.cc:264 cmdline/apt-sortpkgs.cc:144
 #, c-format
 msgid "%s %s for %s compiled on %s %s\n"
 msgstr "%s %s dla %s skompilowany %s %s\n"
 
 #: cmdline/apt-cache.cc:1682
-#, fuzzy
 msgid ""
 "Usage: apt-cache [options] command\n"
 "       apt-cache [options] showpkg pkg1 [pkg2 ...]\n"
@@ -203,16 +204,13 @@ msgid ""
 "See the apt-cache(8) and apt.conf(5) manual pages for more information.\n"
 msgstr ""
 "Użycie: apt-cache [opcje] polecenie\n"
-"        apt-cache [opcje] add plik1 [plik2 ...]\n"
 "        apt-cache [opcje] showpkg pakiet1 [pakiet2 ...]\n"
 "        apt-cache [opcje] showsrc pakiet1 [pakiet2 ...]\n"
 "\n"
-"apt-cache to niskopoziomowe narzędzie służące do manipulowania\n"
-"binarnymi plikami magazynów podręcznych APT-a, oraz do pobierania\n"
-"z nich informacji.\n"
+"apt-cache to niskopoziomowe narzędzie służące  pobierania informacji\n"
+"z podręcznego magazynu plików binarnych APT-a.\n"
 "\n"
 "Polecenia:\n"
-"   add - Dodaje plik pakietów do magazynu podręcznego\n"
 "   gencaches - Buduje magazyn podręczny pakietów i źródeł\n"
 "   showpkg - Pokazuje ogólne informacje na temat pojedynczego pakietu\n"
 "   showsrc - Pokazuje informacje dla źródeł\n"
@@ -241,18 +239,17 @@ msgstr ""
 "oraz apt.conf(5).\n"
 
 #: cmdline/apt-cdrom.cc:77
-#, fuzzy
 msgid "Please provide a name for this Disc, such as 'Debian 5.0.3 Disk 1'"
-msgstr "Proszę wprowadzić nazwę dla tej płyty, np. \"Debian 2.1r1 Disk 1\""
+msgstr "Proszę wprowadzić nazwę dla tej płyty, np. \"Debian 5.0.3 Disk 1\""
 
 #: cmdline/apt-cdrom.cc:92
 msgid "Please insert a Disc in the drive and press enter"
 msgstr "Proszę włożyć dysk do napędu i nacisnąć enter"
 
 #: cmdline/apt-cdrom.cc:127
-#, fuzzy, c-format
+#, c-format
 msgid "Failed to mount '%s' to '%s'"
-msgstr "Nie udało się zmienić nazwy %s na %s"
+msgstr "Nie udało się zamontować \"%s\" w \"%s\""
 
 #: cmdline/apt-cdrom.cc:162
 msgid "Repeat this process for the rest of the CDs in your set."
@@ -319,7 +316,7 @@ msgstr ""
 "  -c=? Czyta wskazany plik konfiguracyjny.\n"
 "  -o=? Ustawia dowolną opcję konfiguracji, np. -o dir::cache=/tmp\n"
 
-#: cmdline/apt-extracttemplates.cc:267 apt-pkg/pkgcachegen.cc:1149
+#: cmdline/apt-extracttemplates.cc:267 apt-pkg/pkgcachegen.cc:1164
 #, c-format
 msgid "Unable to write to %s"
 msgstr "Nie udało się pisać do %s"
@@ -455,13 +452,12 @@ msgid "DB is old, attempting to upgrade %s"
 msgstr "Baza jest przestarzała, próbuję zaktualizować %s"
 
 #: ftparchive/cachedb.cc:72
-#, fuzzy
 msgid ""
 "DB format is invalid. If you upgraded from an older version of apt, please "
 "remove and re-create the database."
 msgstr ""
-"Niepoprawny format bazy. Jeśli została zaktualizowana starsza wersja apt, "
-"proszę usunąć i utworzyć ponownie bazę danych."
+"Niepoprawny format bazy. Jeśli zaktualizowano ze starszej wersji apt, proszę "
+"usunąć i utworzyć ponownie bazę danych."
 
 #: ftparchive/cachedb.cc:77
 #, c-format
@@ -478,7 +474,7 @@ msgstr "Nie udało się wykonać operacji stat na %s"
 msgid "Archive has no control record"
 msgstr "Archiwum nie posiada rekordu kontrolnego"
 
-#: ftparchive/cachedb.cc:448
+#: ftparchive/cachedb.cc:452
 msgid "Unable to get a cursor"
 msgstr "Nie udało się pobrać kursora"
 
@@ -579,17 +575,17 @@ msgstr "Nie można otworzyć %s"
 #: ftparchive/override.cc:60 ftparchive/override.cc:166
 #, c-format
 msgid "Malformed override %s line %lu #1"
-msgstr "Błędna linia %2$lu #1 pliku override %1$s"
+msgstr "Nieprawidłowa linia %2$lu #1 pliku override %1$s"
 
 #: ftparchive/override.cc:74 ftparchive/override.cc:178
 #, c-format
 msgid "Malformed override %s line %lu #2"
-msgstr "Błędna linia %2$lu #2 pliku override %1$s"
+msgstr "Nieprawidłowa linia %2$lu #2 pliku override %1$s"
 
 #: ftparchive/override.cc:88 ftparchive/override.cc:191
 #, c-format
 msgid "Malformed override %s line %lu #3"
-msgstr "Błędna linia %2$lu #3 pliku override %1$s"
+msgstr "Nieprawidłowa linia %2$lu #3 pliku override %1$s"
 
 #: ftparchive/override.cc:127 ftparchive/override.cc:201
 #, c-format
@@ -735,7 +731,7 @@ msgid ""
 "This should NOT be done unless you know exactly what you are doing!"
 msgstr ""
 "UWAGA: Zostaną usunięte następujące istotne pakiety.\n"
-"Nie powinno się tego robić, chyba że dokładnie wiesz co robisz!"
+"NIE należy kontynuować, jeśli nie jest się pewnym tego co się robi!"
 
 #: cmdline/apt-get.cc:594
 #, c-format
@@ -745,7 +741,7 @@ msgstr "%lu aktualizowanych, %lu nowo instalowanych, "
 #: cmdline/apt-get.cc:598
 #, c-format
 msgid "%lu reinstalled, "
-msgstr "%lu przeinstalowywanych, "
+msgstr "%lu ponownie instalowanych, "
 
 #: cmdline/apt-get.cc:600
 #, c-format
@@ -763,14 +759,14 @@ msgid "%lu not fully installed or removed.\n"
 msgstr "%lu nie w pełni zainstalowanych lub usuniętych.\n"
 
 #: cmdline/apt-get.cc:628
-#, fuzzy, c-format
+#, c-format
 msgid "Note, selecting '%s' for task '%s'\n"
-msgstr "Uwaga, wybieranie %s za wyrażenie \"%s\"\n"
+msgstr "Uwaga, wybieranie %s dla zadania \"%s\"\n"
 
 #: cmdline/apt-get.cc:634
-#, fuzzy, c-format
+#, c-format
 msgid "Note, selecting '%s' for regex '%s'\n"
-msgstr "Uwaga, wybieranie %s za wyrażenie \"%s\"\n"
+msgstr "Uwaga, wybieranie %s dla wyrażenia \"%s\"\n"
 
 #: cmdline/apt-get.cc:651
 #, c-format
@@ -782,9 +778,8 @@ msgid " [Installed]"
 msgstr " [Zainstalowany]"
 
 #: cmdline/apt-get.cc:671
-#, fuzzy
 msgid " [Not candidate version]"
-msgstr "Kandydujące wersje"
+msgstr " [Brak wersji kandydującej]"
 
 #: cmdline/apt-get.cc:673
 msgid "You should explicitly select one to install."
@@ -806,19 +801,19 @@ msgid "However the following packages replace it:"
 msgstr "Jednak następujące pakiety go zastępują:"
 
 #: cmdline/apt-get.cc:706
-#, fuzzy, c-format
+#, c-format
 msgid "Package '%s' has no installation candidate"
 msgstr "Pakiet %s nie ma kandydata do instalacji"
 
 #: cmdline/apt-get.cc:717
 #, c-format
 msgid "Virtual packages like '%s' can't be removed\n"
-msgstr ""
+msgstr "Pakiety wirtualne, takie jak \"%s\" nie mogą być usunięte\n"
 
 #: cmdline/apt-get.cc:748
-#, fuzzy, c-format
+#, c-format
 msgid "Note, selecting '%s' instead of '%s'\n"
-msgstr "Uwaga, wybieranie %s zamiast %s\n"
+msgstr "Uwaga, wybieranie \"%s\" zamiast \"%s\"\n"
 
 #: cmdline/apt-get.cc:778
 #, c-format
@@ -827,10 +822,10 @@ msgstr ""
 "Pomijanie %s, jest już zainstalowane, a nie została wybrana aktualizacja.\n"
 
 #: cmdline/apt-get.cc:782
-#, fuzzy, c-format
+#, c-format
 msgid "Skipping %s, it is not installed and only upgrades are requested.\n"
 msgstr ""
-"Pomijanie %s, jest już zainstalowane, a nie została wybrana aktualizacja.\n"
+"Pomijanie %s, nie jest zainstalowane, a wybrano wyłącznie aktualizacje.\n"
 
 #: cmdline/apt-get.cc:794
 #, c-format
@@ -843,192 +838,193 @@ msgstr ""
 msgid "%s is already the newest version.\n"
 msgstr "%s jest już w najnowszej wersji.\n"
 
-#: cmdline/apt-get.cc:818 cmdline/apt-get.cc:2088 cmdline/apt-mark.cc:59
+#: cmdline/apt-get.cc:818 cmdline/apt-get.cc:2096 cmdline/apt-mark.cc:59
 #, c-format
 msgid "%s set to manually installed.\n"
 msgstr "%s zaznaczony jako zainstalowany ręcznie.\n"
 
 #: cmdline/apt-get.cc:844
-#, fuzzy, c-format
+#, c-format
 msgid "Selected version '%s' (%s) for '%s'\n"
-msgstr "Wybrano wersję %s (%s) dla %s\n"
+msgstr "Wybrano wersję \"%s\" (%s) pakietu \"%s\"\n"
 
 #: cmdline/apt-get.cc:849
-#, fuzzy, c-format
+#, c-format
 msgid "Selected version '%s' (%s) for '%s' because of '%s'\n"
-msgstr "Wybrano wersję %s (%s) dla %s\n"
+msgstr "Wybrano wersję \"%s\" (%s) pakietu \"%s\", z powodu \"%s\"\n"
 
-#: cmdline/apt-get.cc:893
+#: cmdline/apt-get.cc:891
 #, c-format
 msgid "Package %s is not installed, so not removed\n"
 msgstr "Pakiet %s nie jest zainstalowany, więc nie zostanie usunięty.\n"
 
-#: cmdline/apt-get.cc:971
+#: cmdline/apt-get.cc:969
 msgid "Correcting dependencies..."
 msgstr "Naprawianie zależności..."
 
-#: cmdline/apt-get.cc:974
+#: cmdline/apt-get.cc:972
 msgid " failed."
 msgstr " nie udało się."
 
-#: cmdline/apt-get.cc:977
+#: cmdline/apt-get.cc:975
 msgid "Unable to correct dependencies"
 msgstr "Nie udało się naprawić zależności"
 
-#: cmdline/apt-get.cc:980
+#: cmdline/apt-get.cc:978
 msgid "Unable to minimize the upgrade set"
 msgstr "Nie udało się zminimalizować zbioru aktualizacji"
 
-#: cmdline/apt-get.cc:982
+#: cmdline/apt-get.cc:980
 msgid " Done"
 msgstr " Gotowe"
 
-#: cmdline/apt-get.cc:986
+#: cmdline/apt-get.cc:984
 msgid "You might want to run 'apt-get -f install' to correct these."
 msgstr "Należy uruchomić \"apt-get -f install\", aby je naprawić."
 
-#: cmdline/apt-get.cc:989
+#: cmdline/apt-get.cc:987
 msgid "Unmet dependencies. Try using -f."
 msgstr "Niespełnione zależności. Proszę spróbować użyć -f."
 
-#: cmdline/apt-get.cc:1014
+#: cmdline/apt-get.cc:1012
 msgid "WARNING: The following packages cannot be authenticated!"
 msgstr "UWAGA: Następujące pakiety nie mogą zostać zweryfikowane!"
 
-#: cmdline/apt-get.cc:1018
+#: cmdline/apt-get.cc:1016
 msgid "Authentication warning overridden.\n"
-msgstr "Ostrzeżenie uwierzytelniania zignorowano.\n"
+msgstr "Zignorowano ostrzeżenie uwierzytelniania.\n"
 
-#: cmdline/apt-get.cc:1025
+#: cmdline/apt-get.cc:1023
 msgid "Install these packages without verification [y/N]? "
 msgstr "Zainstalować te pakiety bez weryfikacji [t/N]? "
 
-#: cmdline/apt-get.cc:1027
+#: cmdline/apt-get.cc:1025
 msgid "Some packages could not be authenticated"
 msgstr "Niektóre pakiety nie mogły zostać zweryfikowane"
 
-#: cmdline/apt-get.cc:1036 cmdline/apt-get.cc:1197
+#: cmdline/apt-get.cc:1034 cmdline/apt-get.cc:1195
 msgid "There are problems and -y was used without --force-yes"
-msgstr "Były problemy, a użyto -y bez --force-yes"
+msgstr "Wystąpiły problemy, a użyto -y bez --force-yes"
 
-#: cmdline/apt-get.cc:1077
+#: cmdline/apt-get.cc:1075
 msgid "Internal error, InstallPackages was called with broken packages!"
-msgstr "Błąd wewnętrzny, InstallPackages użyto z uszkodzonymi pakietami!"
+msgstr "Błąd wewnętrzny, użyto InstallPackages z uszkodzonymi pakietami!"
 
-#: cmdline/apt-get.cc:1086
+#: cmdline/apt-get.cc:1084
 msgid "Packages need to be removed but remove is disabled."
 msgstr "Pakiety powinny zostać usunięte, ale Remove jest wyłączone."
 
-#: cmdline/apt-get.cc:1097
+#: cmdline/apt-get.cc:1095
 msgid "Internal error, Ordering didn't finish"
 msgstr "Błąd wewnętrzny, sortowanie niezakończone"
 
-#: cmdline/apt-get.cc:1135
+#: cmdline/apt-get.cc:1133
 msgid "How odd.. The sizes didn't match, email apt@packages.debian.org"
 msgstr ""
-"Dziwne. Rozmiary się nie zgadzają, proszę to zgłosić pod apt@packages.debian."
-"org"
+"Wystąpił dziwny błąd - rozmiary się nie zgadzają. Proszę to zgłosić pod "
+"apt@packages.debian.org"
 
 #. TRANSLATOR: The required space between number and unit is already included
 #. in the replacement strings, so %sB will be correctly translate in e.g. 1,5 MB
-#: cmdline/apt-get.cc:1142
+#: cmdline/apt-get.cc:1140
 #, c-format
 msgid "Need to get %sB/%sB of archives.\n"
 msgstr "Konieczne pobranie %sB/%sB archiwów.\n"
 
 #. TRANSLATOR: The required space between number and unit is already included
 #. in the replacement string, so %sB will be correctly translate in e.g. 1,5 MB
-#: cmdline/apt-get.cc:1147
+#: cmdline/apt-get.cc:1145
 #, c-format
 msgid "Need to get %sB of archives.\n"
 msgstr "Konieczne pobranie %sB archiwów.\n"
 
 #. TRANSLATOR: The required space between number and unit is already included
 #. in the replacement string, so %sB will be correctly translate in e.g. 1,5 MB
-#: cmdline/apt-get.cc:1154
+#: cmdline/apt-get.cc:1152
 #, c-format
 msgid "After this operation, %sB of additional disk space will be used.\n"
 msgstr "Po tej operacji zostanie dodatkowo użyte %sB miejsca na dysku.\n"
 
 #. TRANSLATOR: The required space between number and unit is already included
 #. in the replacement string, so %sB will be correctly translate in e.g. 1,5 MB
-#: cmdline/apt-get.cc:1159
+#: cmdline/apt-get.cc:1157
 #, c-format
 msgid "After this operation, %sB disk space will be freed.\n"
 msgstr "Po tej operacji zostanie zwolnione %sB miejsca na dysku.\n"
 
-#: cmdline/apt-get.cc:1174 cmdline/apt-get.cc:1177 cmdline/apt-get.cc:2499
-#: cmdline/apt-get.cc:2502
+#: cmdline/apt-get.cc:1172 cmdline/apt-get.cc:1175 cmdline/apt-get.cc:2514
+#: cmdline/apt-get.cc:2517
 #, c-format
 msgid "Couldn't determine free space in %s"
 msgstr "Nie udało się ustalić ilości wolnego miejsca w %s"
 
-#: cmdline/apt-get.cc:1187
+#: cmdline/apt-get.cc:1185
 #, c-format
 msgid "You don't have enough free space in %s."
 msgstr "Niestety w %s nie ma wystarczającej ilości wolnego miejsca."
 
-#: cmdline/apt-get.cc:1203 cmdline/apt-get.cc:1223
+#: cmdline/apt-get.cc:1201 cmdline/apt-get.cc:1221
 msgid "Trivial Only specified but this is not a trivial operation."
-msgstr "Nakazano wykonywać tylko trywialne operacje, a to nie jest trywialne."
+msgstr "Nakazano wykonywać tylko trywialne operacje, a ta do nich nie należy."
 
-#: cmdline/apt-get.cc:1205
+# Bezpieczniej jest nie używać tu polskich znaków.
+#: cmdline/apt-get.cc:1203
 msgid "Yes, do as I say!"
-msgstr "Tak, rób jak mówię!"
+msgstr "Tak, jestem pewien!"
 
-#: cmdline/apt-get.cc:1207
+#: cmdline/apt-get.cc:1205
 #, c-format
 msgid ""
 "You are about to do something potentially harmful.\n"
 "To continue type in the phrase '%s'\n"
 " ?] "
 msgstr ""
-"Zaraz zrobisz coś potencjalnie szkodliwego.\n"
-"Aby kontynuować wpisz zdanie \"%s\"\n"
+"Zaraz stanie się coś potencjalnie szkodliwego.\n"
+"Aby kontynuować proszę napisać zdanie \"%s\"\n"
 " ?] "
 
-#: cmdline/apt-get.cc:1213 cmdline/apt-get.cc:1232
+#: cmdline/apt-get.cc:1211 cmdline/apt-get.cc:1230
 msgid "Abort."
 msgstr "Przerwane."
 
-#: cmdline/apt-get.cc:1228
+#: cmdline/apt-get.cc:1226
 msgid "Do you want to continue [Y/n]? "
 msgstr "Kontynuować [T/n]? "
 
-#: cmdline/apt-get.cc:1300 cmdline/apt-get.cc:2564 apt-pkg/algorithms.cc:1438
+#: cmdline/apt-get.cc:1298 cmdline/apt-get.cc:2579 apt-pkg/algorithms.cc:1445
 #, c-format
 msgid "Failed to fetch %s  %s\n"
 msgstr "Nie udało się pobrać %s  %s\n"
 
-#: cmdline/apt-get.cc:1318
+#: cmdline/apt-get.cc:1316
 msgid "Some files failed to download"
 msgstr "Nie udało się pobrać niektórych plików"
 
-#: cmdline/apt-get.cc:1319 cmdline/apt-get.cc:2576
+#: cmdline/apt-get.cc:1317 cmdline/apt-get.cc:2591
 msgid "Download complete and in download only mode"
 msgstr "Ukończono pobieranie w trybie samego pobierania"
 
-#: cmdline/apt-get.cc:1325
+#: cmdline/apt-get.cc:1323
 msgid ""
 "Unable to fetch some archives, maybe run apt-get update or try with --fix-"
 "missing?"
 msgstr ""
 "Nie udało się pobrać niektórych archiwów, proszę spróbować uruchomić apt-get "
-"update lub użyć opcji --fix-missing"
+"update lub użyć opcji --fix-missing."
 
-#: cmdline/apt-get.cc:1329
+#: cmdline/apt-get.cc:1327
 msgid "--fix-missing and media swapping is not currently supported"
 msgstr "--fix-missing i zamiana nośników nie są obecnie obsługiwane"
 
-#: cmdline/apt-get.cc:1334
+#: cmdline/apt-get.cc:1332
 msgid "Unable to correct missing packages."
 msgstr "Nie udało się poprawić brakujących pakietów."
 
-#: cmdline/apt-get.cc:1335
+#: cmdline/apt-get.cc:1333
 msgid "Aborting install."
 msgstr "Przerywanie instalacji"
 
-#: cmdline/apt-get.cc:1363
+#: cmdline/apt-get.cc:1361
 msgid ""
 "The following package disappeared from your system as\n"
 "all files have been overwritten by other packages:"
@@ -1036,37 +1032,44 @@ msgid_plural ""
 "The following packages disappeared from your system as\n"
 "all files have been overwritten by other packages:"
 msgstr[0] ""
+"Następujący pakiet zniknął z tego systemu, ponieważ wszystkie jego pliki "
+"zostały nadpisane przez inne pakiety:"
 msgstr[1] ""
+"Następujące pakiety zniknęły z tego systemu, ponieważ wszystkie ich pliki "
+"zostały nadpisane przez inne pakiety:"
+msgstr[2] ""
+"Następujące pakiety zniknęły z tego systemu, ponieważ wszystkie ich pliki "
+"zostały nadpisane przez inne pakiety:"
 
-#: cmdline/apt-get.cc:1367
+#: cmdline/apt-get.cc:1365
 msgid "Note: This is done automatic and on purpose by dpkg."
-msgstr ""
+msgstr "Uwaga: dpkg wykonał to automatycznie i celowo."
 
-#: cmdline/apt-get.cc:1505
+#: cmdline/apt-get.cc:1503
 #, c-format
 msgid "Ignore unavailable target release '%s' of package '%s'"
-msgstr ""
+msgstr "Ignorowanie niedostępnego wydania docelowego %s pakietu %s"
 
-#: cmdline/apt-get.cc:1537
-#, fuzzy, c-format
+#: cmdline/apt-get.cc:1535
+#, c-format
 msgid "Picking '%s' as source package instead of '%s'\n"
-msgstr "Nie udało się wykonać operacji stat na liście pakietów źródłowych %s"
+msgstr "Zmieniono wybrany pakiet źródłowy na \"%s\" z \"%s\"\n"
 
 #. if (VerTag.empty() == false && Last == 0)
-#: cmdline/apt-get.cc:1575
+#: cmdline/apt-get.cc:1573
 #, c-format
 msgid "Ignore unavailable version '%s' of package '%s'"
-msgstr ""
+msgstr "Ignorowanie niedostępnej wersji \"%s\" pakietu \"%s\""
 
-#: cmdline/apt-get.cc:1591
+#: cmdline/apt-get.cc:1589
 msgid "The update command takes no arguments"
 msgstr "Polecenie update nie wymaga żadnych argumentów"
 
-#: cmdline/apt-get.cc:1653
+#: cmdline/apt-get.cc:1652
 msgid "We are not supposed to delete stuff, can't start AutoRemover"
 msgstr "Nic nie powinno być usuwane, AutoRemover nie zostanie uruchomiony"
 
-#: cmdline/apt-get.cc:1748
+#: cmdline/apt-get.cc:1756
 msgid ""
 "Hmm, seems like the AutoRemover destroyed something which really\n"
 "shouldn't happen. Please file a bug report against apt."
@@ -1084,61 +1087,67 @@ msgstr ""
 #. "that package should be filed.") << endl;
 #. }
 #.
-#: cmdline/apt-get.cc:1751 cmdline/apt-get.cc:1921
+#: cmdline/apt-get.cc:1759 cmdline/apt-get.cc:1929
 msgid "The following information may help to resolve the situation:"
 msgstr "Następujące informacje mogą pomóc rozwiązać sytuację:"
 
-#: cmdline/apt-get.cc:1755
+#: cmdline/apt-get.cc:1763
 msgid "Internal Error, AutoRemover broke stuff"
-msgstr "Błąd wewnętrzny, AutoRemover wszystko popsuł"
+msgstr "Błąd wewnętrzny spowodowany przez AutoRemover"
 
-#: cmdline/apt-get.cc:1762
-#, fuzzy
+#: cmdline/apt-get.cc:1770
 msgid ""
 "The following package was automatically installed and is no longer required:"
 msgid_plural ""
 "The following packages were automatically installed and are no longer "
 "required:"
 msgstr[0] ""
+"Następujący pakiet został zainstalowany automatycznie i nie jest już więcej "
+"wymagany:"
+msgstr[1] ""
 "Następujące pakiety zostały zainstalowane automatycznie i nie są już więcej "
 "wymagane:"
-msgstr[1] ""
+msgstr[2] ""
 "Następujące pakiety zostały zainstalowane automatycznie i nie są już więcej "
 "wymagane:"
 
-#: cmdline/apt-get.cc:1766
-#, fuzzy, c-format
+#: cmdline/apt-get.cc:1774
+#, c-format
 msgid "%lu package was automatically installed and is no longer required.\n"
 msgid_plural ""
 "%lu packages were automatically installed and are no longer required.\n"
 msgstr[0] ""
-"%lu pakiety(ów) zostały zainstalowane automatycznie i nie są już więcej "
-"wymagane.\n"
+"%lu pakiet został zainstalowany automatycznie i nie jest już więcej "
+"wymagany.\n"
 msgstr[1] ""
-"%lu pakiety(ów) zostały zainstalowane automatycznie i nie są już więcej "
+"%lu pakiety zostały zainstalowane automatycznie i nie są już więcej "
+"wymagane.\n"
+msgstr[2] ""
+"%lu pakietów zostało zainstalowanych automatycznie i nie są już więcej "
 "wymagane.\n"
 
-#: cmdline/apt-get.cc:1768
+#: cmdline/apt-get.cc:1776
 msgid "Use 'apt-get autoremove' to remove them."
 msgstr "Aby je usunąć należy użyć \"apt-get autoremove\"."
 
-#: cmdline/apt-get.cc:1787
+#: cmdline/apt-get.cc:1795
 msgid "Internal error, AllUpgrade broke stuff"
-msgstr "Błąd wewnętrzny, AllUpgrade wszystko popsuło"
+msgstr "Błąd wewnętrzny spowodowany przez AllUpgrade"
 
-#: cmdline/apt-get.cc:1886
+#: cmdline/apt-get.cc:1894
 msgid "You might want to run 'apt-get -f install' to correct these:"
-msgstr "Należy uruchomić \"apt-get -f install\", aby je naprawić:"
+msgstr ""
+"Należy uruchomić \"apt-get -f install\", aby naprawić poniższe problemy:"
 
-#: cmdline/apt-get.cc:1890
+#: cmdline/apt-get.cc:1898
 msgid ""
 "Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a "
 "solution)."
 msgstr ""
-"Niespełnione zależności. Proszę spróbować \"apt-get -f install\" bez "
+"Niespełnione zależności. Proszę spróbować wykonać \"apt-get -f install\" bez "
 "pakietów (lub podać rozwiązanie)."
 
-#: cmdline/apt-get.cc:1906
+#: cmdline/apt-get.cc:1914
 msgid ""
 "Some packages could not be installed. This may mean that you have\n"
 "requested an impossible situation or if you are using the unstable\n"
@@ -1146,183 +1155,194 @@ msgid ""
 "or been moved out of Incoming."
 msgstr ""
 "Nie udało się zainstalować niektórych pakietów. Może to oznaczać,\n"
-"że zażądano niemożliwej sytuacji lub używasz dystrybucji niestabilnej,\n"
+"że zażądano niemożliwej sytuacji lub użyto dystrybucji niestabilnej,\n"
 "w której niektóre pakiety nie zostały jeszcze utworzone lub przeniesione\n"
 "z katalogu Incoming (\"Przychodzące\")."
 
-#: cmdline/apt-get.cc:1924
+#: cmdline/apt-get.cc:1932
 msgid "Broken packages"
 msgstr "Pakiety są uszkodzone"
 
-#: cmdline/apt-get.cc:1950
+#: cmdline/apt-get.cc:1958
 msgid "The following extra packages will be installed:"
 msgstr "Zostaną zainstalowane następujące dodatkowe pakiety:"
 
-#: cmdline/apt-get.cc:2040
+#: cmdline/apt-get.cc:2048
 msgid "Suggested packages:"
 msgstr "Sugerowane pakiety:"
 
-#: cmdline/apt-get.cc:2041
+#: cmdline/apt-get.cc:2049
 msgid "Recommended packages:"
 msgstr "Polecane pakiety:"
 
-#: cmdline/apt-get.cc:2083
+#: cmdline/apt-get.cc:2091
 #, c-format
 msgid "Couldn't find package %s"
 msgstr "Nie udało się odnaleźć pakietu %s"
 
-#: cmdline/apt-get.cc:2090 cmdline/apt-mark.cc:61
-#, fuzzy, c-format
+#: cmdline/apt-get.cc:2098 cmdline/apt-mark.cc:61
+#, c-format
 msgid "%s set to automatically installed.\n"
-msgstr "%s zaznaczony jako zainstalowany cznie.\n"
+msgstr "%s zaznaczony jako zainstalowany automatycznie.\n"
 
-#: cmdline/apt-get.cc:2098 cmdline/apt-mark.cc:105
+#: cmdline/apt-get.cc:2106 cmdline/apt-mark.cc:105
 msgid ""
 "This command is deprecated. Please use 'apt-mark auto' and 'apt-mark manual' "
 "instead."
 msgstr ""
+"To polecenie jest przestarzałe. Prosimy używać \"apt-mark auto\" i \"apt-"
+"mark manual\"."
 
-#: cmdline/apt-get.cc:2114
+#: cmdline/apt-get.cc:2122
 msgid "Calculating upgrade... "
 msgstr "Obliczanie aktualizacji..."
 
-#: cmdline/apt-get.cc:2117 methods/ftp.cc:707 methods/connect.cc:111
+#: cmdline/apt-get.cc:2125 methods/ftp.cc:708 methods/connect.cc:111
 msgid "Failed"
 msgstr "Nie udało się"
 
-#: cmdline/apt-get.cc:2122
+#: cmdline/apt-get.cc:2130
 msgid "Done"
 msgstr "Gotowe"
 
-#: cmdline/apt-get.cc:2189 cmdline/apt-get.cc:2197
+#: cmdline/apt-get.cc:2197 cmdline/apt-get.cc:2205
 msgid "Internal error, problem resolver broke stuff"
-msgstr "Błąd wewnętrzny, rozwiązywanie problemów wszystko popsuło"
+msgstr "Błąd wewnętrzny, spowodowany przez moduł rozwiązywania problemów"
 
-#: cmdline/apt-get.cc:2221 cmdline/apt-get.cc:2254
+#: cmdline/apt-get.cc:2233 cmdline/apt-get.cc:2269
 msgid "Unable to lock the download directory"
 msgstr "Nie udało się zablokować katalogu pobierania"
 
-#: cmdline/apt-get.cc:2305
+#: cmdline/apt-get.cc:2320
 #, c-format
 msgid "Downloading %s %s"
-msgstr ""
+msgstr "Pobieranie %s %s"
 
-#: cmdline/apt-get.cc:2361
+#: cmdline/apt-get.cc:2376
 msgid "Must specify at least one package to fetch source for"
 msgstr ""
 "Należy podać przynajmniej jeden pakiet, dla którego mają zostać pobrane "
 "źródła"
 
-#: cmdline/apt-get.cc:2401 cmdline/apt-get.cc:2713
+#: cmdline/apt-get.cc:2416 cmdline/apt-get.cc:2728
 #, c-format
 msgid "Unable to find a source package for %s"
 msgstr "Nie udało się odnaleźć źródła dla pakietu %s"
 
-#: cmdline/apt-get.cc:2418
+#: cmdline/apt-get.cc:2433
 #, c-format
 msgid ""
 "NOTICE: '%s' packaging is maintained in the '%s' version control system at:\n"
 "%s\n"
 msgstr ""
+"UWAGA: pakietowanie \"%s\" jest zarządzane w systemie kontroli wersji \"%s\" "
+"pod adresem:\n"
+"%s\n"
 
-#: cmdline/apt-get.cc:2423
+#: cmdline/apt-get.cc:2438
 #, c-format
 msgid ""
 "Please use:\n"
 "bzr get %s\n"
 "to retrieve the latest (possibly unreleased) updates to the package.\n"
 msgstr ""
+"Proszę użyć:\n"
+"bzr get %s\n"
+"by pobrać najnowsze (prawdopodobnie jeszcze niewydane) poprawki tego "
+"pakietu.\n"
 
-#: cmdline/apt-get.cc:2476
+#: cmdline/apt-get.cc:2491
 #, c-format
 msgid "Skipping already downloaded file '%s'\n"
 msgstr "Pomijanie już pobranego pliku \"%s\"\n"
 
-#: cmdline/apt-get.cc:2513
+#: cmdline/apt-get.cc:2528
 #, c-format
 msgid "You don't have enough free space in %s"
 msgstr "W %s nie ma wystarczającej ilości wolnego miejsca"
 
 #. TRANSLATOR: The required space between number and unit is already included
 #. in the replacement strings, so %sB will be correctly translate in e.g. 1,5 MB
-#: cmdline/apt-get.cc:2522
+#: cmdline/apt-get.cc:2537
 #, c-format
 msgid "Need to get %sB/%sB of source archives.\n"
 msgstr "Konieczne pobranie %sB/%sB archiwów źródeł.\n"
 
 #. TRANSLATOR: The required space between number and unit is already included
 #. in the replacement string, so %sB will be correctly translate in e.g. 1,5 MB
-#: cmdline/apt-get.cc:2527
+#: cmdline/apt-get.cc:2542
 #, c-format
 msgid "Need to get %sB of source archives.\n"
 msgstr "Konieczne pobranie %sB archiwów źródeł.\n"
 
-#: cmdline/apt-get.cc:2533
+#: cmdline/apt-get.cc:2548
 #, c-format
 msgid "Fetch source %s\n"
-msgstr "Pobierz źródło %s\n"
+msgstr "Pobieranie źródeł %s\n"
 
-#: cmdline/apt-get.cc:2571
+#: cmdline/apt-get.cc:2586
 msgid "Failed to fetch some archives."
 msgstr "Nie udało się pobrać niektórych archiwów."
 
-#: cmdline/apt-get.cc:2602
+#: cmdline/apt-get.cc:2617
 #, c-format
 msgid "Skipping unpack of already unpacked source in %s\n"
 msgstr "Pomijanie rozpakowania już rozpakowanego źródła w %s\n"
 
-#: cmdline/apt-get.cc:2614
+#: cmdline/apt-get.cc:2629
 #, c-format
 msgid "Unpack command '%s' failed.\n"
 msgstr "Polecenie rozpakowania \"%s\" zawiodło.\n"
 
-#: cmdline/apt-get.cc:2615
+#: cmdline/apt-get.cc:2630
 #, c-format
 msgid "Check if the 'dpkg-dev' package is installed.\n"
 msgstr "Proszę sprawdzić czy pakiet \"dpkg-dev\" jest zainstalowany.\n"
 
-#: cmdline/apt-get.cc:2637
+#: cmdline/apt-get.cc:2652
 #, c-format
 msgid "Build command '%s' failed.\n"
 msgstr "Polecenie budowania \"%s\" zawiodło.\n"
 
-#: cmdline/apt-get.cc:2657
+#: cmdline/apt-get.cc:2672
 msgid "Child process failed"
 msgstr "Proces potomny zawiódł"
 
-#: cmdline/apt-get.cc:2676
+#: cmdline/apt-get.cc:2691
 msgid "Must specify at least one package to check builddeps for"
 msgstr ""
 "Należy podać przynajmniej jeden pakiet, dla którego mają zostać sprawdzone "
 "zależności dla budowania"
 
-#: cmdline/apt-get.cc:2701
+#: cmdline/apt-get.cc:2716
 #, c-format
 msgid ""
 "No architecture information available for %s. See apt.conf(5) APT::"
 "Architectures for setup"
 msgstr ""
+"Nie znaleziono informacji o architekturze dla %s. Proszę zapoznać się z apt."
+"conf(5) APT::Architectures"
 
-#: cmdline/apt-get.cc:2718
+#: cmdline/apt-get.cc:2733
 #, c-format
 msgid "Unable to get build-dependency information for %s"
 msgstr "Nie udało się pobrać informacji o zależnościach dla budowania %s"
 
-#: cmdline/apt-get.cc:2738
+#: cmdline/apt-get.cc:2753
 #, c-format
 msgid "%s has no build depends.\n"
 msgstr "%s nie ma zależności dla budowania.\n"
 
-#: cmdline/apt-get.cc:2868
-#, fuzzy, c-format
+#: cmdline/apt-get.cc:2883
+#, c-format
 msgid ""
 "%s dependency for %s can't be satisfied because %s is not allowed on '%s' "
 "packages"
 msgstr ""
-"Zależność %s od %s nie może zostać spełniona, ponieważ nie znaleziono "
-"pakietu %s"
+"Zależność %s od %s nie może zostać spełniona, ponieważ %s nie jest dozwolone "
+"w pakietach \"%s\""
 
-#: cmdline/apt-get.cc:2889
+#: cmdline/apt-get.cc:2904
 #, c-format
 msgid ""
 "%s dependency for %s cannot be satisfied because the package %s cannot be "
@@ -1331,56 +1351,55 @@ msgstr ""
 "Zależność %s od %s nie może zostać spełniona, ponieważ nie znaleziono "
 "pakietu %s"
 
-#: cmdline/apt-get.cc:2912
+#: cmdline/apt-get.cc:2927
 #, c-format
 msgid "Failed to satisfy %s dependency for %s: Installed package %s is too new"
 msgstr ""
 "Nie udało się spełnić zależności %s od %s: Zainstalowany pakiet %s jest zbyt "
 "nowy"
 
-#: cmdline/apt-get.cc:2951
-#, fuzzy, c-format
+#: cmdline/apt-get.cc:2966
+#, c-format
 msgid ""
 "%s dependency for %s cannot be satisfied because candidate version of "
 "package %s can't satisfy version requirements"
 msgstr ""
-"Zależność %s od %s nie może zostać spełniona, ponieważ żadna z dostępnych "
-"wersji pakietu %s nie ma odpowiedniej wersji"
+"Zależność %s od %s nie może zostać spełniona, ponieważ kandydująca wersja "
+"pakietu %s nie spełnia wymagań wersji"
 
-#: cmdline/apt-get.cc:2957
-#, fuzzy, c-format
+#: cmdline/apt-get.cc:2972
+#, c-format
 msgid ""
 "%s dependency for %s cannot be satisfied because package %s has no candidate "
 "version"
 msgstr ""
-"Zależność %s od %s nie może zostać spełniona, ponieważ nie znaleziono "
-"pakietu %s"
+"Zależność %s od %s nie może zostać spełniona, ponieważ pakiet %s nie ma "
+"wersji kandydującej"
 
-#: cmdline/apt-get.cc:2980
+#: cmdline/apt-get.cc:2995
 #, c-format
 msgid "Failed to satisfy %s dependency for %s: %s"
 msgstr "Nie udało się spełnić zależności %s od %s: %s"
 
-#: cmdline/apt-get.cc:2996
+#: cmdline/apt-get.cc:3011
 #, c-format
 msgid "Build-dependencies for %s could not be satisfied."
 msgstr "Nie udało się spełnić zależności dla budowania %s."
 
-#: cmdline/apt-get.cc:3001
+#: cmdline/apt-get.cc:3016
 msgid "Failed to process build dependencies"
 msgstr "Nie udało się przetworzyć zależności dla budowania"
 
-#: cmdline/apt-get.cc:3094 cmdline/apt-get.cc:3106
-#, fuzzy, c-format
+#: cmdline/apt-get.cc:3109 cmdline/apt-get.cc:3121
+#, c-format
 msgid "Changelog for %s (%s)"
-msgstr "Podłączanie do %s (%s)"
+msgstr "Dziennik zmian %s (%s)"
 
-#: cmdline/apt-get.cc:3225
+#: cmdline/apt-get.cc:3240
 msgid "Supported modules:"
 msgstr "Obsługiwane moduły:"
 
-#: cmdline/apt-get.cc:3266
-#, fuzzy
+#: cmdline/apt-get.cc:3281
 msgid ""
 "Usage: apt-get [options] command\n"
 "       apt-get [options] install|remove pkg1 [pkg2 ...]\n"
@@ -1438,7 +1457,7 @@ msgstr ""
 "  install - Instaluje nowe pakiety (pakiet to np. libc6, nie libc6.deb)\n"
 "  remove - Usuwa pakiety\n"
 "  autoremove - Usuwa automatycznie wszystkie nieużywane pakiety\n"
-"  purge - Usuwa i czyści pakiety\n"
+"  purge - Usuwa pakiety łącznie z plikami konfiguracyjnymi\n"
 "  source - Pobiera archiwa źródłowe\n"
 "  build-dep - Konfiguruje zależności dla budowania pakietów źródłowych\n"
 "  dist-upgrade - Aktualizacja dystrybucji, patrz apt-get(8)\n"
@@ -1446,9 +1465,11 @@ msgstr ""
 "  clean - Usuwa pobrane pliki archiwów\n"
 "  autoclean - Usuwa stare pobrane pliki archiwów\n"
 "  check - Sprawdza, czy wszystkie zależności są spełnione\n"
+"  changelog - Pobiera i wyświetla dziennika zmian wybranych pakietów\n"
+"  download - Pobiera pakiet binarny do bieżącego katalogu\n"
 "\n"
 "Opcje:\n"
-"  -h   Ten tekst pomocy.\n"
+"  -h   Ten tekst pomocy\n"
 "  -q   Nie pokazuje wskaźnika postępu (przydatne przy rejestrowaniu "
 "działania)\n"
 "  -qq  Nie wypisuje nic oprócz komunikatów błędów\n"
@@ -1466,7 +1487,7 @@ msgstr ""
 "apt-get(8), sources.list(5) i apt.conf(5).\n"
 "                         Ten APT ma moce Super Krowy.\n"
 
-#: cmdline/apt-get.cc:3429
+#: cmdline/apt-get.cc:3444
 msgid ""
 "NOTE: This is only a simulation!\n"
 "      apt-get needs root privileges for real execution.\n"
@@ -1474,25 +1495,28 @@ msgid ""
 "      so don't depend on the relevance to the real current situation!"
 msgstr ""
 "UWAGA: To jest tylko symulacja!\n"
-"      apt-get wymaga normalnie praw administracyjnych dla działania.\n"
+"      apt-get wymaga do normalnego działania uprawnień administratora.\n"
 "      Aktualnie blokowanie jest wyłączone, więc nie należy polegać\n"
 "      na związku z rzeczywistą sytuacją!"
 
+# Ujednolicono z aptitude
 #: cmdline/acqprogress.cc:57
 msgid "Hit "
-msgstr "Traf "
+msgstr "Stary "
 
 #: cmdline/acqprogress.cc:81
 msgid "Get:"
-msgstr "Pob"
+msgstr "Pobieranie:"
 
+# Wyrównane do Hit i Err.
 #: cmdline/acqprogress.cc:112
 msgid "Ign "
-msgstr "Ign "
+msgstr "Ign "
 
+# Wyrównane do Hit i Ign.
 #: cmdline/acqprogress.cc:116
 msgid "Err "
-msgstr "Błąd "
+msgstr "Błąd  "
 
 #: cmdline/acqprogress.cc:137
 #, c-format
@@ -1516,43 +1540,45 @@ msgstr ""
 "do napędu \"%s\" i nacisnąć enter\n"
 
 #: cmdline/apt-mark.cc:46
-#, fuzzy, c-format
+#, c-format
 msgid "%s can not be marked as it is not installed.\n"
-msgstr "ale nie jest zainstalowany"
+msgstr "%s nie może zostać oznaczony, ponieważ nie jest zainstalowany.\n"
 
 #: cmdline/apt-mark.cc:52
-#, fuzzy, c-format
+#, c-format
 msgid "%s was already set to manually installed.\n"
-msgstr "%s zaznaczony jako zainstalowany ręcznie.\n"
+msgstr "%s został już ustawiony jako zainstalowany ręcznie.\n"
 
 #: cmdline/apt-mark.cc:54
-#, fuzzy, c-format
+#, c-format
 msgid "%s was already set to automatically installed.\n"
-msgstr "%s zaznaczony jako zainstalowany ręcznie.\n"
+msgstr "%s został już ustawiony jako zainstalowany automatycznie.\n"
 
 #: cmdline/apt-mark.cc:169
-#, fuzzy, c-format
+#, c-format
 msgid "%s was already set on hold.\n"
-msgstr "%s jest już w najnowszej wersji.\n"
+msgstr "%s został już zatrzymany.\n"
 
 #: cmdline/apt-mark.cc:171
-#, fuzzy, c-format
+#, c-format
 msgid "%s was already not hold.\n"
-msgstr "%s jest już w najnowszej wersji.\n"
+msgstr "%s został już odznaczony jako zatrzymany.\n"
 
 #: cmdline/apt-mark.cc:185 cmdline/apt-mark.cc:207
-#, fuzzy, c-format
+#, c-format
 msgid "%s set on hold.\n"
-msgstr "%s zaznaczony jako zainstalowany ręcznie.\n"
+msgstr "%s został zatrzymany.\n"
 
 #: cmdline/apt-mark.cc:187 cmdline/apt-mark.cc:212
-#, fuzzy, c-format
+#, c-format
 msgid "Canceled hold on %s.\n"
-msgstr "Nie udało się otworzyć %s"
+msgstr "Odznaczono zatrzymanie %s\n"
 
+# Musi pasować do su i sudo.
 #: cmdline/apt-mark.cc:220
 msgid "Executing dpkg failed. Are you root?"
 msgstr ""
+"Uruchomienie dpkg nie powiodło się. Czy użyto uprawnień administratora?"
 
 #: cmdline/apt-mark.cc:268
 msgid ""
@@ -1575,6 +1601,27 @@ msgid ""
 "  -o=? Set an arbitrary configuration option, eg -o dir::cache=/tmp\n"
 "See the apt-mark(8) and apt.conf(5) manual pages for more information."
 msgstr ""
+"Użycie: apt-mark [opcje] {auto|manual} pakiet1 [pakiet2 ...]\n"
+"\n"
+"apt-mark jest prostym poleceniem wiersza poleceń do oznaczania pakietów\n"
+"jako zainstalowane automatycznie lub ręcznie. Może także służyć\n"
+"do wyświetlania stanu oznaczeń.\n"
+"\n"
+"Polecenia:\n"
+"  auto - Oznacza dany pakiet jako zainstalowany automatycznie\n"
+"  manual - Oznacza dany pakiet jako zainstalowany ręcznie\n"
+"\n"
+"Opcje:\n"
+"  -h  Ten tekst pomocy\n"
+"  -q   Nie pokazuje wskaźnika postępu (przydatne przy rejestrowaniu "
+"działania)\n"
+"  -qq  Nie wypisuje nic oprócz komunikatów błędów\n"
+"  -s  Symulacja - wyświetla jedynie co powinno zostać zrobione\n"
+"  -f  zapis/odczyt oznaczenia jako automatyczny/ręczny danego pliku\n"
+"  -c=? Czyta wskazany plik konfiguracyjny.\n"
+"  -o=? Ustawia dowolną opcję konfiguracji, np. -o dir::cache=/tmp\n"
+"Proszę zapoznać się ze stronami podręcznika systemowego apt-mark(8)\n"
+"i apt.conf(5), aby uzyskać więcej informacji."
 
 #: cmdline/apt-sortpkgs.cc:86
 msgid "Unknown package record!"
@@ -1615,30 +1662,29 @@ msgstr "Proszę nacisnąć enter, aby kontynuować."
 
 #: dselect/install:91
 msgid "Do you want to erase any previously downloaded .deb files?"
-msgstr "Usunąć wszystkie pobrane wcześniej pliki .deb?"
+msgstr "Czy usunąć wszystkie pobrane wcześniej pliki .deb?"
 
 # Note to translators: The following four messages belong together. It doesn't
 # matter where sentences start, but it has to fit in just these four lines, and
 # at only 80 characters per line, if possible.
 #: dselect/install:101
-#, fuzzy
 msgid "Some errors occurred while unpacking. Packages that were installed"
 msgstr "Wystąpiły problemy przy rozpakowywaniu. Zainstalowane pakiety zostaną"
 
 #: dselect/install:102
-#, fuzzy
 msgid "will be configured. This may result in duplicate errors"
 msgstr "skonfigurowane. Może to spowodować podwójne błędy lub błędy"
 
 #: dselect/install:103
 msgid "or errors caused by missing dependencies. This is OK, only the errors"
 msgstr ""
-"spowodowane brakującymi zależnościami. To jest normalne. Tylko powyższe"
+"spowodowane brakującymi zależnościami. Jest to normalne. Tylko błędy nad tym"
 
 #: dselect/install:104
 msgid ""
 "above this message are important. Please fix them and run [I]nstall again"
-msgstr "błędy są istotne. Proszę je poprawić i ponownie wybrać [I]nstalację."
+msgstr ""
+"komunikatem są istotne. Proszę je poprawić i ponownie wybrać [I]nstalację."
 
 #: dselect/update:30
 msgid "Merging available information"
@@ -1674,9 +1720,9 @@ msgid "Error reading archive member header"
 msgstr "Błąd przy czytaniu nagłówka składnika archiwum"
 
 #: apt-inst/contrib/arfile.cc:90
-#, fuzzy, c-format
+#, c-format
 msgid "Invalid archive member header %s"
-msgstr "Nieprawidłowy nagłówek składnika archiwum"
+msgstr "Nieprawidłowy nagłówek składnika archiwum: %s"
 
 #: apt-inst/contrib/arfile.cc:102
 msgid "Invalid archive member header"
@@ -1771,7 +1817,7 @@ msgstr "Ścieżka jest zbyt długa"
 #: apt-inst/extract.cc:412
 #, c-format
 msgid "Overwrite package match with no version for %s"
-msgstr "Dopasowanie dla %s nadpisującego pakietu bez wersji"
+msgstr "Nadpisujący pakiet nie pasuje z wersją %s"
 
 #: apt-inst/extract.cc:429
 #, c-format
@@ -1782,8 +1828,8 @@ msgstr "Plik %s/%s nadpisuje plik w pakiecie %s"
 #. Only warn if there is no sources.list file.
 #: apt-inst/extract.cc:462 apt-pkg/contrib/cdromutl.cc:179
 #: apt-pkg/contrib/fileutl.cc:343 apt-pkg/sourcelist.cc:204
-#: apt-pkg/sourcelist.cc:210 apt-pkg/acquire.cc:450 apt-pkg/init.cc:104
-#: apt-pkg/init.cc:112 apt-pkg/clean.cc:33 apt-pkg/policy.cc:352
+#: apt-pkg/sourcelist.cc:210 apt-pkg/acquire.cc:454 apt-pkg/init.cc:103
+#: apt-pkg/init.cc:111 apt-pkg/clean.cc:33 apt-pkg/policy.cc:353
 #: methods/mirror.cc:91
 #, c-format
 msgid "Unable to read %s"
@@ -1811,11 +1857,11 @@ msgstr "Nie udało się wykonać operacji stat na %sinfo"
 
 #: apt-inst/deb/dpkgdb.cc:119
 msgid "The info and temp directories need to be on the same filesystem"
-msgstr "Pliki info i katalog tymczasowy muszą być na tym samym systemie plików"
+msgstr "Pliki info i katalog tymczasowy muszą być w tym samym systemie plików"
 
-#: apt-inst/deb/dpkgdb.cc:135 apt-pkg/pkgcachegen.cc:1048
-#: apt-pkg/pkgcachegen.cc:1152 apt-pkg/pkgcachegen.cc:1158
-#: apt-pkg/pkgcachegen.cc:1320
+#: apt-inst/deb/dpkgdb.cc:135 apt-pkg/pkgcachegen.cc:1063
+#: apt-pkg/pkgcachegen.cc:1167 apt-pkg/pkgcachegen.cc:1173
+#: apt-pkg/pkgcachegen.cc:1335
 msgid "Reading package lists"
 msgstr "Czytanie list pakietów"
 
@@ -1874,7 +1920,7 @@ msgstr "Błąd wewnętrzny przy dodawaniu ominięcia"
 
 #: apt-inst/deb/dpkgdb.cc:379
 msgid "The pkg cache must be initialized first"
-msgstr "Magazyn podręczny pakietów musi wcześniej zostać zainicjalizowany"
+msgstr "Magazyn podręczny pakietów musi zostać wcześniej zainicjalizowany"
 
 #: apt-inst/deb/dpkgdb.cc:439
 #, c-format
@@ -1916,7 +1962,7 @@ msgstr "Błąd wewnętrzny, nie udało się odnaleźć składnika %s"
 
 #: apt-inst/deb/debfile.cc:189
 msgid "Failed to locate a valid control file"
-msgstr "Nie udało się odnaleźć poprawnego pliku control"
+msgstr "Nie udało się odnaleźć poprawnego pliku kontrolnego"
 
 #: apt-inst/deb/debfile.cc:274
 msgid "Unparsable control file"
@@ -1924,7 +1970,7 @@ msgstr "Plik kontrolny nie może zostać poprawnie zinterpretowany"
 
 #: methods/bzip2.cc:60 methods/gzip.cc:52
 msgid "Empty files can't be valid archives"
-msgstr ""
+msgstr "Puste pliki nie mogą być prawidłowymi archiwami"
 
 #: methods/bzip2.cc:64
 #, c-format
@@ -1937,22 +1983,22 @@ msgid "Read error from %s process"
 msgstr "Błąd odczytu z procesu %s"
 
 #: methods/bzip2.cc:140 methods/bzip2.cc:149 methods/copy.cc:43
-#: methods/gzip.cc:92 methods/gzip.cc:101 methods/rred.cc:524
-#: methods/rred.cc:533
+#: methods/gzip.cc:92 methods/gzip.cc:101 methods/rred.cc:527
+#: methods/rred.cc:536
 msgid "Failed to stat"
 msgstr "Nie udało się wykonać operacji stat"
 
 #: methods/bzip2.cc:146 methods/copy.cc:80 methods/gzip.cc:98
-#: methods/rred.cc:530
+#: methods/rred.cc:533
 msgid "Failed to set modification time"
 msgstr "Nie udało się ustawić czasu modyfikacji"
 
-#: methods/cdrom.cc:199
+#: methods/cdrom.cc:200
 #, c-format
 msgid "Unable to read the cdrom database %s"
 msgstr "Nie można odczytać bazy danych CD-ROM-ów %s"
 
-#: methods/cdrom.cc:208
+#: methods/cdrom.cc:209
 msgid ""
 "Please use apt-cdrom to make this CD-ROM recognized by APT. apt-get update "
 "cannot be used to add new CD-ROMs"
@@ -1960,20 +2006,20 @@ msgstr ""
 "Proszę użyć programu apt-cdrom, aby APT mógł rozpoznać tę płytę CD. Nowych "
 "płyt nie można dodawać przy pomocy polecenia apt-get update"
 
-#: methods/cdrom.cc:218
+#: methods/cdrom.cc:219
 msgid "Wrong CD-ROM"
 msgstr "Niewłaściwa płyta CD"
 
-#: methods/cdrom.cc:245
+#: methods/cdrom.cc:246
 #, c-format
 msgid "Unable to unmount the CD-ROM in %s, it may still be in use."
 msgstr "Nie udało się odmontować CD-ROM-u w %s, być może wciąż jest używany."
 
-#: methods/cdrom.cc:250
+#: methods/cdrom.cc:251
 msgid "Disk not found."
 msgstr "Nie odnaleziono dysku."
 
-#: methods/cdrom.cc:258 methods/file.cc:79 methods/rsh.cc:265
+#: methods/cdrom.cc:259 methods/file.cc:79 methods/rsh.cc:265
 msgid "File not found"
 msgstr "Nie odnaleziono pliku"
 
@@ -1982,34 +2028,34 @@ msgid "Invalid URI, local URIS must not start with //"
 msgstr "Nieprawidłowe URI, lokalne URI nie mogą zaczynać się od //"
 
 #. Login must be before getpeername otherwise dante won't work.
-#: methods/ftp.cc:168
+#: methods/ftp.cc:169
 msgid "Logging in"
 msgstr "Logowanie się"
 
-#: methods/ftp.cc:174
+#: methods/ftp.cc:175
 msgid "Unable to determine the peer name"
 msgstr "Nie można określić nazwy zdalnego systemu"
 
-#: methods/ftp.cc:179
+#: methods/ftp.cc:180
 msgid "Unable to determine the local name"
 msgstr "Nie udało się określić nazwy lokalnego systemu"
 
-#: methods/ftp.cc:210 methods/ftp.cc:238
+#: methods/ftp.cc:211 methods/ftp.cc:239
 #, c-format
 msgid "The server refused the connection and said: %s"
 msgstr "Serwer odrzucił połączenie, otrzymana odpowiedź: %s"
 
-#: methods/ftp.cc:216
+#: methods/ftp.cc:217
 #, c-format
 msgid "USER failed, server said: %s"
 msgstr "Polecenie USER nie powiodło się, odpowiedź serwera: %s"
 
-#: methods/ftp.cc:223
+#: methods/ftp.cc:224
 #, c-format
 msgid "PASS failed, server said: %s"
 msgstr "Polecenie PASS nie powiodło się, odpowiedź serwera: %s"
 
-#: methods/ftp.cc:243
+#: methods/ftp.cc:244
 msgid ""
 "A proxy server was specified but no login script, Acquire::ftp::ProxyLogin "
 "is empty."
@@ -2017,123 +2063,123 @@ msgstr ""
 "Określono serwer pośredniczący, ale nie określono skryptu rejestrowania, "
 "Acquire::ftp::ProxyLogin jest puste."
 
-#: methods/ftp.cc:271
+#: methods/ftp.cc:272
 #, c-format
 msgid "Login script command '%s' failed, server said: %s"
 msgstr ""
 "Polecenie skryptu rejestrowania \"%s\" nie powiodło się, odpowiedź serwera: "
 "%s"
 
-#: methods/ftp.cc:297
+#: methods/ftp.cc:298
 #, c-format
 msgid "TYPE failed, server said: %s"
 msgstr "Polecenie TYPE nie powiodło się, odpowiedź serwera: %s"
 
-#: methods/ftp.cc:335 methods/ftp.cc:446 methods/rsh.cc:184 methods/rsh.cc:227
+#: methods/ftp.cc:336 methods/ftp.cc:447 methods/rsh.cc:184 methods/rsh.cc:227
 msgid "Connection timeout"
 msgstr "Przekroczenie czasu połączenia"
 
-#: methods/ftp.cc:341
+#: methods/ftp.cc:342
 msgid "Server closed the connection"
 msgstr "Serwer zamknął połączenie"
 
-#: methods/ftp.cc:344 apt-pkg/contrib/fileutl.cc:820 methods/rsh.cc:191
+#: methods/ftp.cc:345 apt-pkg/contrib/fileutl.cc:831 methods/rsh.cc:191
 msgid "Read error"
 msgstr "Błąd odczytu"
 
-#: methods/ftp.cc:351 methods/rsh.cc:198
+#: methods/ftp.cc:352 methods/rsh.cc:198
 msgid "A response overflowed the buffer."
 msgstr "Odpowiedź przepełniła bufor."
 
-#: methods/ftp.cc:368 methods/ftp.cc:380
+#: methods/ftp.cc:369 methods/ftp.cc:381
 msgid "Protocol corruption"
 msgstr "Naruszenie zasad protokołu"
 
-#: methods/ftp.cc:452 apt-pkg/contrib/fileutl.cc:862 methods/rsh.cc:233
+#: methods/ftp.cc:453 apt-pkg/contrib/fileutl.cc:873 methods/rsh.cc:233
 msgid "Write error"
 msgstr "Błąd zapisu"
 
-#: methods/ftp.cc:692 methods/ftp.cc:698 methods/ftp.cc:734
+#: methods/ftp.cc:693 methods/ftp.cc:699 methods/ftp.cc:735
 msgid "Could not create a socket"
 msgstr "Nie udało się utworzyć gniazda"
 
-#: methods/ftp.cc:703
+#: methods/ftp.cc:704
 msgid "Could not connect data socket, connection timed out"
 msgstr "Nie udało się połączyć gniazda danych, przekroczenie czasu połączenia"
 
-#: methods/ftp.cc:709
+#: methods/ftp.cc:710
 msgid "Could not connect passive socket."
 msgstr "Nie udało się połączyć pasywnego gniazda."
 
-#: methods/ftp.cc:727
+#: methods/ftp.cc:728
 msgid "getaddrinfo was unable to get a listening socket"
 msgstr "getaddrinfo nie było w stanie uzyskać nasłuchującego gniazda"
 
-#: methods/ftp.cc:741
+#: methods/ftp.cc:742
 msgid "Could not bind a socket"
 msgstr "Nie udało się przyłączyć gniazda"
 
-#: methods/ftp.cc:745
+#: methods/ftp.cc:746
 msgid "Could not listen on the socket"
 msgstr "Nie udało się nasłuchiwać na gnieździe"
 
-#: methods/ftp.cc:752
+#: methods/ftp.cc:753
 msgid "Could not determine the socket's name"
 msgstr "Nie udało się określić nazwy gniazda"
 
-#: methods/ftp.cc:784
+#: methods/ftp.cc:785
 msgid "Unable to send PORT command"
 msgstr "Nie można wysłać polecenia PORT"
 
-#: methods/ftp.cc:794
+#: methods/ftp.cc:795
 #, c-format
 msgid "Unknown address family %u (AF_*)"
 msgstr "Nieznana rodzina adresów %u (AF_*)"
 
-#: methods/ftp.cc:803
+#: methods/ftp.cc:804
 #, c-format
 msgid "EPRT failed, server said: %s"
 msgstr "Polecenie EPRT nie powiodło się, odpowiedź serwera: %s"
 
-#: methods/ftp.cc:823
+#: methods/ftp.cc:824
 msgid "Data socket connect timed out"
 msgstr "Przekroczony czas połączenia gniazda danych"
 
-#: methods/ftp.cc:830
+#: methods/ftp.cc:831
 msgid "Unable to accept connection"
 msgstr "Nie udało się przyjąć połączenia"
 
-#: methods/ftp.cc:869 methods/http.cc:1023 methods/rsh.cc:303
+#: methods/ftp.cc:870 methods/http.cc:1023 methods/rsh.cc:303
 msgid "Problem hashing file"
 msgstr "Nie udało się obliczyć skrótu pliku"
 
-#: methods/ftp.cc:882
+#: methods/ftp.cc:883
 #, c-format
 msgid "Unable to fetch file, server said '%s'"
 msgstr "Nie można pobrać pliku, odpowiedź serwera: %s"
 
-#: methods/ftp.cc:897 methods/rsh.cc:322
+#: methods/ftp.cc:898 methods/rsh.cc:322
 msgid "Data socket timed out"
 msgstr "Przekroczony czas oczekiwania na dane"
 
-#: methods/ftp.cc:927
+#: methods/ftp.cc:928
 #, c-format
 msgid "Data transfer failed, server said '%s'"
 msgstr "Nie udało się przesłać danych, odpowiedź serwera: %s"
 
 #. Get the files information
-#: methods/ftp.cc:1004
+#: methods/ftp.cc:1005
 msgid "Query"
 msgstr "Info"
 
-#: methods/ftp.cc:1116
+#: methods/ftp.cc:1117
 msgid "Unable to invoke "
 msgstr "Nie można wywołać "
 
 #: methods/connect.cc:71
 #, c-format
 msgid "Connecting to %s (%s)"
-msgstr "Podłączanie do %s (%s)"
+msgstr "Łączenie z %s (%s)"
 
 #: methods/connect.cc:82
 #, c-format
@@ -2178,31 +2224,29 @@ msgid "Temporary failure resolving '%s'"
 msgstr "Tymczasowy błąd przy tłumaczeniu \"%s\""
 
 #: methods/connect.cc:196
-#, fuzzy, c-format
+#, c-format
 msgid "Something wicked happened resolving '%s:%s' (%i - %s)"
-msgstr "Coś niewłaściwego stało się przy tłumaczeniu \"%s:%s\" (%i)"
+msgstr "Coś niewłaściwego stało się przy tłumaczeniu \"%s:%s\" (%i - %s)"
 
 #: methods/connect.cc:243
-#, fuzzy, c-format
+#, c-format
 msgid "Unable to connect to %s:%s:"
-msgstr "Nie udało się połączyć z %s %s:"
+msgstr "Nie udało się połączyć z %s:%s:"
 
 #: methods/gpgv.cc:166
 msgid ""
 "Internal error: Good signature, but could not determine key fingerprint?!"
 msgstr ""
-"Błąd wewnętrzny: Prawidłowy podpis, ale nie nie udało się ustalić odcisku "
-"klucza?!"
+"Błąd wewnętrzny: Prawidłowy podpis, ale nie udało się ustalić odcisku klucza!"
 
 #: methods/gpgv.cc:171
 msgid "At least one invalid signature was encountered."
 msgstr "Napotkano przynajmniej jeden nieprawidłowy podpis."
 
 #: methods/gpgv.cc:175
-#, fuzzy
 msgid "Could not execute 'gpgv' to verify signature (is gpgv installed?)"
 msgstr ""
-"Nie udało się uruchomić \"%s\" by zweryfikować podpis (czy gpgv jest "
+"Nie udało się uruchomić gpgv by zweryfikować podpis (czy gpgv jest "
 "zainstalowane?)"
 
 #: methods/gpgv.cc:180
@@ -2292,7 +2336,7 @@ msgstr "Błędne dane nagłówka"
 
 #: methods/http.cc:1200 methods/http.cc:1255
 msgid "Connection failed"
-msgstr "Połączenie nie udało się"
+msgstr "Połączenie nie powiodło się"
 
 #: methods/http.cc:1347
 msgid "Internal error"
@@ -2303,9 +2347,9 @@ msgid "Can't mmap an empty file"
 msgstr "Nie można wykonać mmap na pustym pliku"
 
 #: apt-pkg/contrib/mmap.cc:89
-#, fuzzy, c-format
+#, c-format
 msgid "Couldn't duplicate file descriptor %i"
-msgstr "Nie udało się otworzyć potoku dla %s"
+msgstr "Nie udało się zduplikować deskryptora pliku %i"
 
 #: apt-pkg/contrib/mmap.cc:97 apt-pkg/contrib/mmap.cc:258
 #, c-format
@@ -2313,14 +2357,12 @@ msgid "Couldn't make mmap of %lu bytes"
 msgstr "Nie udało się wykonać mmap %lu bajtów"
 
 #: apt-pkg/contrib/mmap.cc:124
-#, fuzzy
 msgid "Unable to close mmap"
-msgstr "Nie można otworzyć %s"
+msgstr "Nie udało się zamknąć mmap"
 
 #: apt-pkg/contrib/mmap.cc:152 apt-pkg/contrib/mmap.cc:180
-#, fuzzy
 msgid "Unable to synchronize mmap"
-msgstr "Nie można wywołać "
+msgstr "Nie udało się zsynchronizować mmap"
 
 #: apt-pkg/contrib/mmap.cc:310
 #, c-format
@@ -2337,23 +2379,27 @@ msgid ""
 "Unable to increase the size of the MMap as the limit of %lu bytes is already "
 "reached."
 msgstr ""
+"Nie udało się zwiększyć rozmiaru MMap, ponieważ limit %lu bajtów został już "
+"osiągnięty."
 
 #: apt-pkg/contrib/mmap.cc:412
 msgid ""
 "Unable to increase size of the MMap as automatic growing is disabled by user."
 msgstr ""
+"Nie udało się zwiększyć rozmiaru MMap, ponieważ automatycznie powiększanie "
+"zostało wyłączone przez użytkownika."
 
 #. d means days, h means hours, min means minutes, s means seconds
 #: apt-pkg/contrib/strutl.cc:371
 #, c-format
 msgid "%lid %lih %limin %lis"
-msgstr "%lidni %lih %limin %lis"
+msgstr "%lidni %lig %limin %lis"
 
 #. h means hours, min means minutes, s means seconds
 #: apt-pkg/contrib/strutl.cc:378
 #, c-format
 msgid "%lih %limin %lis"
-msgstr "%lih %limin %lis"
+msgstr "%lig %limin %lis"
 
 #. min means minutes, s means seconds
 #: apt-pkg/contrib/strutl.cc:385
@@ -2367,7 +2413,7 @@ msgstr "%limin %lis"
 msgid "%lis"
 msgstr "%lis"
 
-#: apt-pkg/contrib/strutl.cc:1138
+#: apt-pkg/contrib/strutl.cc:1137
 #, c-format
 msgid "Selection %s not found"
 msgstr "Nie odnaleziono wyboru %s"
@@ -2419,10 +2465,10 @@ msgid "Syntax error %s:%u: Unsupported directive '%s'"
 msgstr "Błąd składniowy %s:%u: Nieobsługiwana dyrektywa \"%s\""
 
 #: apt-pkg/contrib/configuration.cc:790
-#, fuzzy, c-format
+#, c-format
 msgid "Syntax error %s:%u: clear directive requires an option tree as argument"
 msgstr ""
-"Błąd składniowy %s:%u: Dyrektywy mogą występować tylko na najwyższym poziomie"
+"Błąd składniowy %s:%u: czysta dyrektywa wymaga drzewa opcji jako argumentu"
 
 #: apt-pkg/contrib/configuration.cc:840
 #, c-format
@@ -2444,43 +2490,43 @@ msgstr "%c%s... Gotowe"
 msgid "Command line option '%c' [from %s] is not known."
 msgstr "Opcja linii poleceń \"%c\" [z %s] jest nieznana."
 
-#: apt-pkg/contrib/cmndline.cc:103 apt-pkg/contrib/cmndline.cc:111
-#: apt-pkg/contrib/cmndline.cc:119
+#: apt-pkg/contrib/cmndline.cc:101 apt-pkg/contrib/cmndline.cc:109
+#: apt-pkg/contrib/cmndline.cc:117
 #, c-format
 msgid "Command line option %s is not understood"
 msgstr "Niezrozumiała opcja linii poleceń %s"
 
-#: apt-pkg/contrib/cmndline.cc:124
+#: apt-pkg/contrib/cmndline.cc:122
 #, c-format
 msgid "Command line option %s is not boolean"
-msgstr "Opcja linii poleceń %s nie jest typu boolean"
+msgstr "Opcja linii poleceń %s nie jest typu logicznego"
 
-#: apt-pkg/contrib/cmndline.cc:165 apt-pkg/contrib/cmndline.cc:186
+#: apt-pkg/contrib/cmndline.cc:163 apt-pkg/contrib/cmndline.cc:184
 #, c-format
 msgid "Option %s requires an argument."
 msgstr "Opcja %s wymaga argumentu."
 
-#: apt-pkg/contrib/cmndline.cc:200 apt-pkg/contrib/cmndline.cc:206
+#: apt-pkg/contrib/cmndline.cc:197 apt-pkg/contrib/cmndline.cc:203
 #, c-format
 msgid "Option %s: Configuration item specification must have an =<val>."
 msgstr "Opcja %s: Specyfikacja elementu konfiguracji musi zawierać =<wartość>."
 
-#: apt-pkg/contrib/cmndline.cc:236
+#: apt-pkg/contrib/cmndline.cc:232
 #, c-format
 msgid "Option %s requires an integer argument, not '%s'"
 msgstr "Opcja %s wymaga argumentu typu całkowitego, nie \"%s\""
 
-#: apt-pkg/contrib/cmndline.cc:267
+#: apt-pkg/contrib/cmndline.cc:263
 #, c-format
 msgid "Option '%s' is too long"
 msgstr "Opcja \"%s\" jest zbyt długa"
 
-#: apt-pkg/contrib/cmndline.cc:300
+#: apt-pkg/contrib/cmndline.cc:295
 #, c-format
 msgid "Sense %s is not understood, try true or false."
-msgstr "Znaczenie %s jest nieznane, spróbuj true albo false."
+msgstr "Znaczenie %s jest nieznane, proszę spróbować true lub false."
 
-#: apt-pkg/contrib/cmndline.cc:350
+#: apt-pkg/contrib/cmndline.cc:345
 #, c-format
 msgid "Invalid operation %s"
 msgstr "Nieprawidłowa operacja %s"
@@ -2491,7 +2537,7 @@ msgid "Unable to stat the mount point %s"
 msgstr "Nie udało się wykonać operacji stat na punkcie montowania %s"
 
 #: apt-pkg/contrib/cdromutl.cc:175 apt-pkg/contrib/cdromutl.cc:209
-#: apt-pkg/acquire.cc:456 apt-pkg/acquire.cc:481 apt-pkg/clean.cc:39
+#: apt-pkg/acquire.cc:460 apt-pkg/acquire.cc:485 apt-pkg/clean.cc:39
 #: methods/mirror.cc:97
 #, c-format
 msgid "Unable to change to %s"
@@ -2525,89 +2571,94 @@ msgstr "Nie udało się uzyskać blokady %s"
 #, c-format
 msgid "List of files can't be created as '%s' is not a directory"
 msgstr ""
+"Lista plików nie może zostać stworzona, ponieważ \"%s\" nie jest katalogiem"
 
 #: apt-pkg/contrib/fileutl.cc:362
 #, c-format
 msgid "Ignoring '%s' in directory '%s' as it is not a regular file"
-msgstr ""
+msgstr "Ignorowanie \"%s\" w katalogu \"%s\", ponieważ nie jest to zwykły plik"
 
 #: apt-pkg/contrib/fileutl.cc:380
 #, c-format
 msgid "Ignoring file '%s' in directory '%s' as it has no filename extension"
 msgstr ""
+"Ignorowanie pliku \"%s\" w katalogu \"%s\", ponieważ nie ma on rozszerzenia "
+"pliku"
 
 #: apt-pkg/contrib/fileutl.cc:389
 #, c-format
 msgid ""
 "Ignoring file '%s' in directory '%s' as it has an invalid filename extension"
 msgstr ""
+"Ignorowanie pliku \"%s\" w katalogu \"%s\", ponieważ ma on nieprawidłowe "
+"rozszerzenie pliku"
 
-#: apt-pkg/contrib/fileutl.cc:679
+#: apt-pkg/contrib/fileutl.cc:690
 #, c-format
 msgid "Waited for %s but it wasn't there"
 msgstr "Oczekiwano na proces %s, ale nie było go"
 
-#: apt-pkg/contrib/fileutl.cc:691
+#: apt-pkg/contrib/fileutl.cc:702
 #, c-format
 msgid "Sub-process %s received a segmentation fault."
-msgstr "Podproces %s spowodował naruszenie segmentacji."
+msgstr "Podproces %s spowodował naruszenie ochrony pamięci."
 
-#: apt-pkg/contrib/fileutl.cc:693
+#: apt-pkg/contrib/fileutl.cc:704
 #, c-format
 msgid "Sub-process %s received signal %u."
-msgstr "Podproces %s dostał sygnał %u."
+msgstr "Podproces %s otrzymał sygnał %u."
 
-#: apt-pkg/contrib/fileutl.cc:697
+#: apt-pkg/contrib/fileutl.cc:708
 #, c-format
 msgid "Sub-process %s returned an error code (%u)"
 msgstr "Podproces %s zwrócił kod błędu (%u)"
 
-#: apt-pkg/contrib/fileutl.cc:699
+#: apt-pkg/contrib/fileutl.cc:710
 #, c-format
 msgid "Sub-process %s exited unexpectedly"
 msgstr "Podproces %s zakończył się niespodziewanie"
 
-#: apt-pkg/contrib/fileutl.cc:764 apt-pkg/indexcopy.cc:673
+#: apt-pkg/contrib/fileutl.cc:775 apt-pkg/indexcopy.cc:673
 #, c-format
 msgid "Could not open file %s"
 msgstr "Nie udało się otworzyć pliku %s"
 
-#: apt-pkg/contrib/fileutl.cc:781
-#, fuzzy, c-format
+#: apt-pkg/contrib/fileutl.cc:792
+#, c-format
 msgid "Could not open file descriptor %d"
-msgstr "Nie udało się otworzyć potoku dla %s"
+msgstr "Nie udało się otworzyć deskryptora pliku %d"
 
-#: apt-pkg/contrib/fileutl.cc:841
+#: apt-pkg/contrib/fileutl.cc:852
 #, c-format
 msgid "read, still have %lu to read but none left"
 msgstr "należało przeczytać jeszcze %lu, ale nic nie zostało"
 
-#: apt-pkg/contrib/fileutl.cc:874
+#: apt-pkg/contrib/fileutl.cc:885
 #, c-format
 msgid "write, still have %lu to write but couldn't"
 msgstr "należało zapisać jeszcze %lu, ale nie udało się to"
 
-#: apt-pkg/contrib/fileutl.cc:1010
-#, fuzzy, c-format
+#: apt-pkg/contrib/fileutl.cc:1021
+#, c-format
 msgid "Problem closing the gzip file %s"
-msgstr "Problem przy zamykaniu pliku"
+msgstr "Problem przy zamykaniu pliku gzip %s"
 
-#: apt-pkg/contrib/fileutl.cc:1013
-#, fuzzy, c-format
+#: apt-pkg/contrib/fileutl.cc:1024
+#, c-format
 msgid "Problem closing the file %s"
-msgstr "Problem przy zamykaniu pliku"
+msgstr "Problem przy zamykaniu pliku %s"
 
-#: apt-pkg/contrib/fileutl.cc:1018
-#, fuzzy, c-format
+#: apt-pkg/contrib/fileutl.cc:1029
+#, c-format
 msgid "Problem renaming the file %s to %s"
-msgstr "Problem przy zapisywaniu pliku na dysk"
+msgstr "Problem przy zapisywaniu pliku %s w %s"
 
-#: apt-pkg/contrib/fileutl.cc:1029
-#, fuzzy, c-format
+#: apt-pkg/contrib/fileutl.cc:1040
+#, c-format
 msgid "Problem unlinking the file %s"
-msgstr "Problem przy usuwaniu pliku"
+msgstr "Problem przy odlinkowywaniu pliku %s"
 
-#: apt-pkg/contrib/fileutl.cc:1042
+#: apt-pkg/contrib/fileutl.cc:1053
 msgid "Problem syncing the file"
 msgstr "Problem przy zapisywaniu pliku na dysk"
 
@@ -2638,7 +2689,7 @@ msgstr "Wymaga"
 
 #: apt-pkg/pkgcache.cc:299
 msgid "PreDepends"
-msgstr "PreWymaga"
+msgstr "Wymaga wstępnie"
 
 #: apt-pkg/pkgcache.cc:299
 msgid "Suggests"
@@ -2650,7 +2701,7 @@ msgstr "Poleca"
 
 #: apt-pkg/pkgcache.cc:300
 msgid "Conflicts"
-msgstr "Jest w konflikcie z"
+msgstr "W konflikcie z"
 
 #: apt-pkg/pkgcache.cc:300
 msgid "Replaces"
@@ -2658,11 +2709,11 @@ msgstr "Zastępuje"
 
 #: apt-pkg/pkgcache.cc:301
 msgid "Obsoletes"
-msgstr "Czyni zbędnym"
+msgstr "Dezaktualizuje"
 
 #: apt-pkg/pkgcache.cc:301
 msgid "Breaks"
-msgstr "Psuje"
+msgstr "Narusza zależności"
 
 #: apt-pkg/pkgcache.cc:301
 msgid "Enhances"
@@ -2725,29 +2776,31 @@ msgid "Unable to parse package file %s (2)"
 msgstr "Nie udało się zanalizować pliku pakietu %s (2)"
 
 #: apt-pkg/sourcelist.cc:92
-#, fuzzy, c-format
+#, c-format
 msgid "Malformed line %lu in source list %s ([option] unparseable)"
-msgstr "Nieprawidłowa linia %lu w liście źródeł %s (analiza dystrybucji)"
+msgstr ""
+"Nieprawidłowa linia %lu w liście źródeł %s ([opcja] nie dająca się sparsować)"
 
 #: apt-pkg/sourcelist.cc:95
-#, fuzzy, c-format
+#, c-format
 msgid "Malformed line %lu in source list %s ([option] too short)"
-msgstr "Nieprawidłowa linia %lu w liście źródeł %s (dystrybucja)"
+msgstr "Nieprawidłowa linia %lu w liście źródeł %s ([opcja] zbyt krótka)"
 
 #: apt-pkg/sourcelist.cc:106
-#, fuzzy, c-format
+#, c-format
 msgid "Malformed line %lu in source list %s ([%s] is not an assignment)"
-msgstr "Nieprawidłowa linia %lu w liście źródeł %s (analiza dystrybucji)"
+msgstr "Nieprawidłowa linia %lu w liście źródeł %s ([%s] nie jest przypisane)"
 
 #: apt-pkg/sourcelist.cc:112
-#, fuzzy, c-format
+#, c-format
 msgid "Malformed line %lu in source list %s ([%s] has no key)"
-msgstr "Nieprawidłowa linia %lu w liście źródeł %s (analiza dystrybucji)"
+msgstr "Nieprawidłowa linia %lu w liście źródeł %s ([%s] nie ma klucza)"
 
 #: apt-pkg/sourcelist.cc:115
-#, fuzzy, c-format
+#, c-format
 msgid "Malformed line %lu in source list %s ([%s] key %s has no value)"
-msgstr "Nieprawidłowa linia %lu w liście źródeł %s (analiza dystrybucji)"
+msgstr ""
+"Nieprawidłowa linia %lu w liście źródeł %s ([%s] klucz %s nie ma wartości)"
 
 #: apt-pkg/sourcelist.cc:128
 #, c-format
@@ -2794,12 +2847,15 @@ msgstr "Nieprawidłowa linia %u w liście źródeł %s (typ)"
 msgid "Type '%s' is not known on line %u in source list %s"
 msgstr "Typ \"%s\" jest nieznany w linii %u listy źródeł %s"
 
-#: apt-pkg/packagemanager.cc:335 apt-pkg/packagemanager.cc:623
+#: apt-pkg/packagemanager.cc:335 apt-pkg/packagemanager.cc:645
 #, c-format
 msgid ""
 "Could not perform immediate configuration on '%s'. Please see man 5 apt.conf "
 "under APT::Immediate-Configure for details. (%d)"
 msgstr ""
+"Nie udało się wykonać natychmiastowej konfiguracji %s. Proszę wykonać \"man "
+"5 apt.conf\" i zapoznać się z wpisem APT::Immediate-Configure aby dowiedzieć "
+"się więcej. (%d)"
 
 #: apt-pkg/packagemanager.cc:456
 #, c-format
@@ -2809,9 +2865,9 @@ msgid ""
 "you really want to do it, activate the APT::Force-LoopBreak option."
 msgstr ""
 "To uruchomienie programu będzie wymagało tymczasowego usunięcia istotnego "
-"pakietu %s z powodu pętli konfliktów/pre-zależności. Często nie oznacza to "
-"nic dobrego, ale jeśli naprawdę chcesz to zrobić, włącz opcję APT::Force-"
-"LoopBreak."
+"pakietu %s z powodu pętli konfliktów/wymagań wstępnych. Często jest to złe "
+"rozwiązanie, ale jeśli jest się pewnym swoich działań, należy włączyć opcję "
+"APT::Force-LoopBreak."
 
 #: apt-pkg/packagemanager.cc:501
 #, c-format
@@ -2819,6 +2875,9 @@ msgid ""
 "Could not perform immediate configuration on already unpacked '%s'. Please "
 "see man 5 apt.conf under APT::Immediate-Configure for details."
 msgstr ""
+"Nie udało się wykonać natychmiastowej konfiguracji rozpakowanego pakietu %s. "
+"Proszę wykonać \"man 5 apt.conf\" i zapoznać się z wpisem APT::Immediate-"
+"Configure aby dowiedzieć się więcej."
 
 #: apt-pkg/pkgrecords.cc:32
 #, c-format
@@ -2830,7 +2889,8 @@ msgstr "Plik indeksu typu \"%s\" nie jest obsługiwany"
 msgid ""
 "The package %s needs to be reinstalled, but I can't find an archive for it."
 msgstr ""
-"Pakiet %s ma zostać przeinstalowany, ale nie można znaleźć jego archiwum."
+"Pakiet %s ma zostać ponownie zainstalowany, ale nie można znaleźć jego "
+"archiwum."
 
 #: apt-pkg/algorithms.cc:1158
 msgid ""
@@ -2844,38 +2904,37 @@ msgstr ""
 msgid "Unable to correct problems, you have held broken packages."
 msgstr "Nie udało się naprawić problemów, zatrzymano uszkodzone pakiety."
 
-#: apt-pkg/algorithms.cc:1464 apt-pkg/algorithms.cc:1466
-#, fuzzy
+#: apt-pkg/algorithms.cc:1471 apt-pkg/algorithms.cc:1473
 msgid ""
 "Some index files failed to download. They have been ignored, or old ones "
 "used instead."
 msgstr ""
 "Nie udało się pobrać niektórych plików indeksu, zostały one zignorowane lub "
-"została użyta ich starsza wersja."
+"użyto ich starszej wersji."
 
 #: apt-pkg/acquire.cc:79
-#, fuzzy, c-format
+#, c-format
 msgid "List directory %spartial is missing."
 msgstr "Brakuje katalogu list %spartial."
 
 #: apt-pkg/acquire.cc:83
-#, fuzzy, c-format
+#, c-format
 msgid "Archives directory %spartial is missing."
 msgstr "Brakuje katalogu archiwów %spartial."
 
 #: apt-pkg/acquire.cc:91
-#, fuzzy, c-format
+#, c-format
 msgid "Unable to lock directory %s"
-msgstr "Nie udało się zablokować katalogu list"
+msgstr "Nie udało się zablokować katalogu %s"
 
 #. only show the ETA if it makes sense
 #. two days
-#: apt-pkg/acquire.cc:857
+#: apt-pkg/acquire.cc:861
 #, c-format
 msgid "Retrieving file %li of %li (%s remaining)"
-msgstr "Pobieranie pliku %li z %li (%s pozostało)"
+msgstr "Pobieranie pliku %li z %li (pozostało %s)"
 
-#: apt-pkg/acquire.cc:859
+#: apt-pkg/acquire.cc:863
 #, c-format
 msgid "Retrieving file %li of %li"
 msgstr "Pobieranie pliku %li z %li"
@@ -2895,12 +2954,12 @@ msgstr "Metoda %s nie uruchomiła się poprawnie"
 msgid "Please insert the disc labeled: '%s' in the drive '%s' and press enter."
 msgstr "Proszę włożyć do napędu \"%s\" dysk o nazwie: \"%s\" i nacisnąć enter."
 
-#: apt-pkg/init.cc:147
+#: apt-pkg/init.cc:146
 #, c-format
 msgid "Packaging system '%s' is not supported"
 msgstr "System pakietów \"%s\" nie jest obsługiwany"
 
-#: apt-pkg/init.cc:163
+#: apt-pkg/init.cc:162
 msgid "Unable to determine a suitable packaging system type"
 msgstr "Nie udało się określić odpowiedniego typu systemu pakietów"
 
@@ -2925,24 +2984,26 @@ msgstr "Należy uruchomić apt-get update aby naprawić te problemy."
 msgid "The list of sources could not be read."
 msgstr "Nie udało się odczytać list źródeł."
 
-#: apt-pkg/policy.cc:71
+#: apt-pkg/policy.cc:72
 #, c-format
 msgid ""
 "The value '%s' is invalid for APT::Default-Release as such a release is not "
 "available in the sources"
 msgstr ""
+"Wartość %s jest nieprawidłowa dla APT::Default-Release, ponieważ takie "
+"wydanie nie jest dostępne w źródłach"
 
-#: apt-pkg/policy.cc:389
+#: apt-pkg/policy.cc:390
 #, c-format
 msgid "Invalid record in the preferences file %s, no Package header"
 msgstr "Nieprawidłowe informacje w pliku ustawień %s, brak nagłówka Package"
 
-#: apt-pkg/policy.cc:411
+#: apt-pkg/policy.cc:412
 #, c-format
 msgid "Did not understand pin type %s"
 msgstr "Nierozpoznany typ przypinania %s"
 
-#: apt-pkg/policy.cc:419
+#: apt-pkg/policy.cc:420
 msgid "No priority (or zero) specified for pin"
 msgstr "Brak (lub zerowy) priorytet przypięcia"
 
@@ -2950,91 +3011,89 @@ msgstr "Brak (lub zerowy) priorytet przypięcia"
 msgid "Cache has an incompatible versioning system"
 msgstr "Magazyn podręczny ma niezgodny system wersji"
 
-#: apt-pkg/pkgcachegen.cc:187
+#: apt-pkg/pkgcachegen.cc:190
 #, c-format
 msgid "Error occurred while processing %s (NewPackage)"
 msgstr "Wystąpił błąd podczas przetwarzania %s (NewPackage)"
 
-#: apt-pkg/pkgcachegen.cc:204
+#: apt-pkg/pkgcachegen.cc:207
 #, c-format
 msgid "Error occurred while processing %s (UsePackage1)"
 msgstr "Wystąpił błąd podczas przetwarzania %s (UsePackage1)"
 
-#: apt-pkg/pkgcachegen.cc:242
+#: apt-pkg/pkgcachegen.cc:245
 #, c-format
 msgid "Error occurred while processing %s (NewFileDesc1)"
 msgstr "Wystąpił błąd podczas przetwarzania %s (NewFileDesc1)"
 
-#: apt-pkg/pkgcachegen.cc:274
+#: apt-pkg/pkgcachegen.cc:277
 #, c-format
 msgid "Error occurred while processing %s (UsePackage2)"
 msgstr "Wystąpił błąd podczas przetwarzania %s (UsePackage2)"
 
-#: apt-pkg/pkgcachegen.cc:278
+#: apt-pkg/pkgcachegen.cc:281
 #, c-format
 msgid "Error occurred while processing %s (NewFileVer1)"
 msgstr "Wystąpił błąd podczas przetwarzania %s (NewFileVer1)"
 
-#: apt-pkg/pkgcachegen.cc:295 apt-pkg/pkgcachegen.cc:305
-#: apt-pkg/pkgcachegen.cc:313
-#, fuzzy, c-format
+#: apt-pkg/pkgcachegen.cc:298 apt-pkg/pkgcachegen.cc:308
+#: apt-pkg/pkgcachegen.cc:316
+#, c-format
 msgid "Error occurred while processing %s (NewVersion%d)"
-msgstr "Wystąpił błąd podczas przetwarzania %s (NewVersion1)"
+msgstr "Wystąpił błąd podczas przetwarzania %s (NewVersion%d)"
 
-#: apt-pkg/pkgcachegen.cc:309
+#: apt-pkg/pkgcachegen.cc:312
 #, c-format
 msgid "Error occurred while processing %s (UsePackage3)"
 msgstr "Wystąpił błąd podczas przetwarzania %s (UsePackage3)"
 
-#: apt-pkg/pkgcachegen.cc:342
+#: apt-pkg/pkgcachegen.cc:345
 #, c-format
 msgid "Error occurred while processing %s (NewFileDesc2)"
 msgstr "Wystąpił błąd podczas przetwarzania %s (NewFileDesc2)"
 
-#: apt-pkg/pkgcachegen.cc:348
+#: apt-pkg/pkgcachegen.cc:351
 msgid "Wow, you exceeded the number of package names this APT is capable of."
-msgstr ""
-"Och, przekroczono liczbę pakietów, którą ten APT jest w stanie obsłużyć."
+msgstr "Przekroczono liczbę pakietów, którą ten APT jest w stanie obsłużyć."
 
-#: apt-pkg/pkgcachegen.cc:351
+#: apt-pkg/pkgcachegen.cc:354
 msgid "Wow, you exceeded the number of versions this APT is capable of."
-msgstr "Och, przekroczono liczbę wersji, którą ten APT jest w stanie obsłużyć."
+msgstr "Przekroczono liczbę wersji, którą ten APT jest w stanie obsłużyć."
 
-#: apt-pkg/pkgcachegen.cc:354
+#: apt-pkg/pkgcachegen.cc:357
 msgid "Wow, you exceeded the number of descriptions this APT is capable of."
-msgstr "Och, przekroczono liczbę opisów, którą ten APT jest w stanie obsłużyć."
+msgstr "Przekroczono liczbę opisów, którą ten APT jest w stanie obsłużyć."
 
-#: apt-pkg/pkgcachegen.cc:357
+#: apt-pkg/pkgcachegen.cc:360
 msgid "Wow, you exceeded the number of dependencies this APT is capable of."
-msgstr ""
-"Och, przekroczono liczbę zależności, którą ten APT jest w stanie obsłużyć."
+msgstr "Przekroczono liczbę zależności, którą ten APT jest w stanie obsłużyć."
 
-#: apt-pkg/pkgcachegen.cc:386
+#: apt-pkg/pkgcachegen.cc:389
 #, c-format
 msgid "Error occurred while processing %s (FindPkg)"
 msgstr "Wystąpił błąd podczas przetwarzania %s (FindPkg)"
 
-#: apt-pkg/pkgcachegen.cc:400
+#: apt-pkg/pkgcachegen.cc:403
 #, c-format
 msgid "Error occurred while processing %s (CollectFileProvides)"
 msgstr "Wystąpił błąd podczas przetwarzania %s (CollectFileProvides)"
 
-#: apt-pkg/pkgcachegen.cc:406
+#: apt-pkg/pkgcachegen.cc:409
 #, c-format
 msgid "Package %s %s was not found while processing file dependencies"
 msgstr ""
 "Pakiet %s %s nie został odnaleziony podczas przetwarzania zależności plików"
 
-#: apt-pkg/pkgcachegen.cc:960
+#: apt-pkg/pkgcachegen.cc:975
 #, c-format
 msgid "Couldn't stat source package list %s"
 msgstr "Nie udało się wykonać operacji stat na liście pakietów źródłowych %s"
 
-#: apt-pkg/pkgcachegen.cc:1065
+#: apt-pkg/pkgcachegen.cc:1080
 msgid "Collecting File Provides"
 msgstr "Zbieranie zapewnień plików"
 
-#: apt-pkg/pkgcachegen.cc:1259 apt-pkg/pkgcachegen.cc:1266
+#: apt-pkg/pkgcachegen.cc:1274 apt-pkg/pkgcachegen.cc:1281
 msgid "IO Error saving source cache"
 msgstr "Błąd wejścia/wyjścia przy zapisywaniu podręcznego magazynu źródeł"
 
@@ -3047,53 +3106,59 @@ msgstr "nie udało się zmienić nazwy, %s (%s -> %s)"
 msgid "MD5Sum mismatch"
 msgstr "Błędna suma MD5"
 
-#: apt-pkg/acquire-item.cc:900 apt-pkg/acquire-item.cc:1848
-#: apt-pkg/acquire-item.cc:1991
+#: apt-pkg/acquire-item.cc:900 apt-pkg/acquire-item.cc:1847
+#: apt-pkg/acquire-item.cc:1990
 msgid "Hash Sum mismatch"
 msgstr "Błędna suma kontrolna"
 
-#: apt-pkg/acquire-item.cc:1388
+#: apt-pkg/acquire-item.cc:1387
 #, c-format
 msgid ""
 "Unable to find expected entry '%s' in Release file (Wrong sources.list entry "
 "or malformed file)"
 msgstr ""
+"Nie udało się znaleźć oczekiwanego wpisu \"%s\" w pliku Release "
+"(nieprawidłowy wpis sources.list lub nieprawidłowy plik)"
 
 #: apt-pkg/acquire-item.cc:1403
-#, fuzzy, c-format
+#, c-format
 msgid "Unable to find hash sum for '%s' in Release file"
-msgstr "Nie udało się zanalizować pliku Release %s"
+msgstr "Nie udało się znaleźć sumy kontrolnej \"%s\" w pliku Release"
 
-#: apt-pkg/acquire-item.cc:1439
+#: apt-pkg/acquire-item.cc:1438
 msgid "There is no public key available for the following key IDs:\n"
 msgstr "Dla następujących identyfikatorów kluczy brakuje klucza publicznego:\n"
 
-#: apt-pkg/acquire-item.cc:1477
+#: apt-pkg/acquire-item.cc:1476
 #, c-format
 msgid ""
 "Release file for %s is expired (invalid since %s). Updates for this "
 "repository will not be applied."
 msgstr ""
+"Plik Release dla %s wygasnął (nieprawidłowy od %s). Aktualizacje z tego "
+"repozytorium nie będą wykonywane."
 
-#: apt-pkg/acquire-item.cc:1499
+#: apt-pkg/acquire-item.cc:1498
 #, c-format
 msgid "Conflicting distribution: %s (expected %s but got %s)"
-msgstr ""
+msgstr "Nieprawidłowa dystrybucja: %s (oczekiwano %s, a otrzymano %s)"
 
-#: apt-pkg/acquire-item.cc:1532
+#: apt-pkg/acquire-item.cc:1531
 #, c-format
 msgid ""
 "A error occurred during the signature verification. The repository is not "
 "updated and the previous index files will be used. GPG error: %s: %s\n"
 msgstr ""
+"Podczas weryfikacji podpisu wystąpił błąd. Nie zaktualizowano repozytorium i "
+"w dalszym ciągu będą używane poprzednie pliki indeksu. Błąd GPG %s: %s\n"
 
 #. Invalid signature file, reject (LP: #346386) (Closes: #627642)
-#: apt-pkg/acquire-item.cc:1542 apt-pkg/acquire-item.cc:1547
+#: apt-pkg/acquire-item.cc:1541 apt-pkg/acquire-item.cc:1546
 #, c-format
 msgid "GPG error: %s: %s"
-msgstr ""
+msgstr "Błąd GPG: %s: %s"
 
-#: apt-pkg/acquire-item.cc:1639
+#: apt-pkg/acquire-item.cc:1638
 #, c-format
 msgid ""
 "I wasn't able to locate a file for the %s package. This might mean you need "
@@ -3102,7 +3167,7 @@ msgstr ""
 "Nie udało się odnaleźć pliku dla pakietu %s. Może to oznaczać, że trzeba "
 "będzie ręcznie naprawić ten pakiet (z powodu brakującej architektury)."
 
-#: apt-pkg/acquire-item.cc:1698
+#: apt-pkg/acquire-item.cc:1697
 #, c-format
 msgid ""
 "I wasn't able to locate a file for the %s package. This might mean you need "
@@ -3111,21 +3176,21 @@ msgstr ""
 "Nie udało się odnaleźć pliku dla pakietu %s. Może to oznaczać, że trzeba "
 "będzie ręcznie naprawić ten pakiet."
 
-#: apt-pkg/acquire-item.cc:1753
+#: apt-pkg/acquire-item.cc:1752
 #, c-format
 msgid ""
 "The package index files are corrupted. No Filename: field for package %s."
 msgstr ""
 "Pliki indeksu pakietów są uszkodzone. Brak pola Filename: dla pakietu %s."
 
-#: apt-pkg/acquire-item.cc:1840
+#: apt-pkg/acquire-item.cc:1839
 msgid "Size mismatch"
 msgstr "Błędny rozmiar"
 
 #: apt-pkg/indexrecords.cc:53
 #, c-format
 msgid "Unable to parse Release file %s"
-msgstr "Nie udało się zanalizować pliku Release %s"
+msgstr "Nie udało się przeanalizować pliku Release %s"
 
 #: apt-pkg/indexrecords.cc:63
 #, c-format
@@ -3138,14 +3203,14 @@ msgid "No Hash entry in Release file %s"
 msgstr "Brak wpisu Hash w pliku Release %s"
 
 #: apt-pkg/indexrecords.cc:110
-#, fuzzy, c-format
+#, c-format
 msgid "Invalid 'Valid-Until' entry in Release file %s"
-msgstr "Brak wpisu Hash w pliku Release %s"
+msgstr "Nieprawidłowy wpis Valid-Until w pliku Release %s"
 
-#: apt-pkg/indexrecords.cc:125
-#, fuzzy, c-format
+#: apt-pkg/indexrecords.cc:129
+#, c-format
 msgid "Invalid 'Date' entry in Release file %s"
-msgstr "Brak wpisu Hash w pliku Release %s"
+msgstr "Nieprawidłowy wpis Date w pliku Release %s"
 
 #: apt-pkg/vendorlist.cc:71
 #, c-format
@@ -3158,8 +3223,8 @@ msgid ""
 "Using CD-ROM mount point %s\n"
 "Mounting CD-ROM\n"
 msgstr ""
-"Użycie %s jako punktu montowania CD-ROMu\n"
-"Montowanie CD-ROMu\n"
+"Użycie %s jako punktu montowania CD-ROM-u\n"
+"Montowanie CD-ROM-u\n"
 
 #: apt-pkg/cdrom.cc:534 apt-pkg/cdrom.cc:631
 msgid "Identifying.. "
@@ -3172,16 +3237,16 @@ msgstr "Etykieta: %s \n"
 
 #: apt-pkg/cdrom.cc:571 apt-pkg/cdrom.cc:847
 msgid "Unmounting CD-ROM...\n"
-msgstr "Odmontowanie CD-ROMu...\n"
+msgstr "Odmontowanie CD-ROM-u...\n"
 
 #: apt-pkg/cdrom.cc:591
 #, c-format
 msgid "Using CD-ROM mount point %s\n"
-msgstr "Użycie %s jako punktu montowania CD-ROMu\n"
+msgstr "Użycie %s jako punktu montowania CD-ROM-u\n"
 
 #: apt-pkg/cdrom.cc:609
 msgid "Unmounting CD-ROM\n"
-msgstr "Odmontowanie CD-ROMu\n"
+msgstr "Odmontowanie CD-ROM-u\n"
 
 #: apt-pkg/cdrom.cc:614
 msgid "Waiting for disc...\n"
@@ -3189,7 +3254,7 @@ msgstr "Oczekiwanie na płytę...\n"
 
 #: apt-pkg/cdrom.cc:623
 msgid "Mounting CD-ROM...\n"
-msgstr "Montowanie CD-ROMu...\n"
+msgstr "Montowanie CD-ROM-u...\n"
 
 #: apt-pkg/cdrom.cc:642
 msgid "Scanning disc for index files..\n"
@@ -3210,7 +3275,7 @@ msgid ""
 "wrong architecture?"
 msgstr ""
 "Nie można odnaleźć żadnych plików pakietów, być może nie jest to dysk "
-"Debiana lub inna architektura?"
+"Debiana lub jest to inna architektura?"
 
 #: apt-pkg/cdrom.cc:722
 #, c-format
@@ -3219,7 +3284,7 @@ msgstr "Znaleziono etykietę \"%s\"\n"
 
 #: apt-pkg/cdrom.cc:751
 msgid "That is not a valid name, try again.\n"
-msgstr "To nie jest prawidłowa nazwa, spróbuj ponownie.\n"
+msgstr "To nie jest prawidłowa nazwa, proszę spróbować ponownie.\n"
 
 #: apt-pkg/cdrom.cc:768
 #, c-format
@@ -3242,51 +3307,51 @@ msgstr "Zapisywanie nowej listy źródeł\n"
 msgid "Source list entries for this disc are:\n"
 msgstr "Źródła dla tej płyty to:\n"
 
-#: apt-pkg/indexcopy.cc:270 apt-pkg/indexcopy.cc:928
+#: apt-pkg/indexcopy.cc:270 apt-pkg/indexcopy.cc:927
 #, c-format
 msgid "Wrote %i records.\n"
 msgstr "Zapisano %i rekordów.\n"
 
-#: apt-pkg/indexcopy.cc:272 apt-pkg/indexcopy.cc:930
+#: apt-pkg/indexcopy.cc:272 apt-pkg/indexcopy.cc:929
 #, c-format
 msgid "Wrote %i records with %i missing files.\n"
 msgstr "Zapisano %i rekordów z %i brakującymi plikami.\n"
 
-#: apt-pkg/indexcopy.cc:275 apt-pkg/indexcopy.cc:933
+#: apt-pkg/indexcopy.cc:275 apt-pkg/indexcopy.cc:932
 #, c-format
 msgid "Wrote %i records with %i mismatched files\n"
 msgstr "Zapisano %i rekordów z %i niepasującymi plikami\n"
 
-#: apt-pkg/indexcopy.cc:278 apt-pkg/indexcopy.cc:936
+#: apt-pkg/indexcopy.cc:278 apt-pkg/indexcopy.cc:935
 #, c-format
 msgid "Wrote %i records with %i missing files and %i mismatched files\n"
 msgstr "Zapisano %i rekordów z %i brakującymi plikami i %i niepasującymi\n"
 
 #: apt-pkg/indexcopy.cc:537
-#, fuzzy, c-format
+#, c-format
 msgid "Skipping nonexistent file %s"
-msgstr "Otwieranie pliku konfiguracyjnego %s"
+msgstr "Pomijanie nieistniejącego pliku %s"
 
 #: apt-pkg/indexcopy.cc:543
 #, c-format
 msgid "Can't find authentication record for: %s"
-msgstr ""
+msgstr "Nie udało się znaleźć wpisu uwierzytelnienia dla: %s"
 
 #: apt-pkg/indexcopy.cc:549
-#, fuzzy, c-format
+#, c-format
 msgid "Hash mismatch for: %s"
-msgstr "Błędna suma kontrolna"
+msgstr "Błędna suma kontrolna dla: %s"
 
 #: apt-pkg/indexcopy.cc:677
 #, c-format
 msgid "File %s doesn't start with a clearsigned message"
-msgstr ""
+msgstr "Plik %s nie zaczyna się wiadomością podpisaną w trybie clearsign"
 
 #. TRANSLATOR: %s is the trusted keyring parts directory
 #: apt-pkg/indexcopy.cc:708
-#, fuzzy, c-format
+#, c-format
 msgid "No keyring installed in %s."
-msgstr "Przerywanie instalacji"
+msgstr "Brak zainstalowanej bazy kluczy w %s."
 
 #: apt-pkg/cacheset.cc:337
 #, c-format
@@ -3299,19 +3364,22 @@ msgid "Version '%s' for '%s' was not found"
 msgstr "Wersja \"%s\" dla \"%s\" nie została znaleziona"
 
 #: apt-pkg/cacheset.cc:447
-#, fuzzy, c-format
+#, c-format
 msgid "Couldn't find task '%s'"
-msgstr "Nie udało się odnaleźć zadania %s"
+msgstr "Nie udało się odnaleźć zadania \"%s\""
 
 #: apt-pkg/cacheset.cc:454
-#, fuzzy, c-format
+#, c-format
 msgid "Couldn't find any package by regex '%s'"
-msgstr "Nie udało się odnaleźć pakietu %s"
+msgstr ""
+"Nie udało się znaleźć żadnego pakietu według wyrażenia regularnego \"%s\""
 
 #: apt-pkg/cacheset.cc:467
 #, c-format
 msgid "Can't select versions from package '%s' as it is purely virtual"
 msgstr ""
+"Nie udało się wybrać wersji z pakietu \"%s\", ponieważ jest on czysto "
+"wirtualny"
 
 #: apt-pkg/cacheset.cc:475 apt-pkg/cacheset.cc:483
 #, c-format
@@ -3319,21 +3387,29 @@ msgid ""
 "Can't select installed nor candidate version from package '%s' as it has "
 "neither of them"
 msgstr ""
+"Nie udało się wybrać zainstalowanej ani kandydującej wersji pakietu \"%s\", "
+"ponieważ nie ma żadnej z nich"
 
 #: apt-pkg/cacheset.cc:491
 #, c-format
 msgid "Can't select newest version from package '%s' as it is purely virtual"
 msgstr ""
+"Nie udało się wybrać najnowszej wersji pakietu \"%s\", ponieważ jest on "
+"czysto wirtualny"
 
 #: apt-pkg/cacheset.cc:499
 #, c-format
 msgid "Can't select candidate version from package %s as it has no candidate"
 msgstr ""
+"Nie udało się wybrać wersji kandydującej pakietu %s, ponieważ nie ma "
+"kandydata"
 
 #: apt-pkg/cacheset.cc:507
 #, c-format
 msgid "Can't select installed version from package %s as it is not installed"
 msgstr ""
+"Nie udało się wybrać zainstalowanej wersji z pakietu %s, ponieważ nie jest "
+"zainstalowany"
 
 #: apt-pkg/deb/dpkgpm.cc:54
 #, c-format
@@ -3351,14 +3427,14 @@ msgid "Removing %s"
 msgstr "Usuwanie %s"
 
 #: apt-pkg/deb/dpkgpm.cc:57
-#, fuzzy, c-format
+#, c-format
 msgid "Completely removing %s"
-msgstr "Całkowicie usunięto %s"
+msgstr "Całkowite usuwanie %s"
 
 #: apt-pkg/deb/dpkgpm.cc:58
 #, c-format
 msgid "Noting disappearance of %s"
-msgstr ""
+msgstr "Proszę odnotować zniknięcie %s"
 
 #: apt-pkg/deb/dpkgpm.cc:59
 #, c-format
@@ -3372,14 +3448,14 @@ msgid "Directory '%s' missing"
 msgstr "Brakuje katalogu \"%s\""
 
 #: apt-pkg/deb/dpkgpm.cc:669 apt-pkg/deb/dpkgpm.cc:689
-#, fuzzy, c-format
+#, c-format
 msgid "Could not open file '%s'"
-msgstr "Nie udało się otworzyć pliku %s"
+msgstr "Nie udało się otworzyć pliku \"%s\""
 
 #: apt-pkg/deb/dpkgpm.cc:841
 #, c-format
 msgid "Preparing %s"
-msgstr "Przygotowanie %s"
+msgstr "Przygotowywanie %s"
 
 #: apt-pkg/deb/dpkgpm.cc:842
 #, c-format
@@ -3389,74 +3465,82 @@ msgstr "Rozpakowywanie %s"
 #: apt-pkg/deb/dpkgpm.cc:847
 #, c-format
 msgid "Preparing to configure %s"
-msgstr "Przygotowanie do konfiguracji %s"
+msgstr "Przygotowywanie do konfiguracji %s"
 
 #: apt-pkg/deb/dpkgpm.cc:849
 #, c-format
 msgid "Installed %s"
-msgstr "Zainstalowany %s"
+msgstr "Pakiet %s został zainstalowany"
 
 #: apt-pkg/deb/dpkgpm.cc:854
 #, c-format
 msgid "Preparing for removal of %s"
-msgstr "Przygotowanie do usunięcia %s"
+msgstr "Przygotowywanie do usunięcia %s"
 
 #: apt-pkg/deb/dpkgpm.cc:856
 #, c-format
 msgid "Removed %s"
-msgstr "Usunięto %s"
+msgstr "Pakiet %s został usunięty"
 
 #: apt-pkg/deb/dpkgpm.cc:861
 #, c-format
 msgid "Preparing to completely remove %s"
-msgstr "Przygotowanie do całkowitego usunięcia %s"
+msgstr "Przygotowywanie do całkowitego usunięcia %s"
 
 #: apt-pkg/deb/dpkgpm.cc:862
 #, c-format
 msgid "Completely removed %s"
-msgstr "Całkowicie usunięto %s"
+msgstr "Pakiet %s został całkowicie usunięty"
 
-#: apt-pkg/deb/dpkgpm.cc:1082
+#: apt-pkg/deb/dpkgpm.cc:1087
 msgid "Can not write log, openpty() failed (/dev/pts not mounted?)\n"
 msgstr ""
-"Nie można zapisać dziennika, openpty() nie powiodło się (/dev/pts nie "
+"Nie można zapisać dziennika, openpty() nie powiodło się (/dev/pts nie jest "
 "zamontowane?)\n"
 
-#: apt-pkg/deb/dpkgpm.cc:1113
+#: apt-pkg/deb/dpkgpm.cc:1118
 msgid "Running dpkg"
 msgstr "Uruchamianie dpkg"
 
-#: apt-pkg/deb/dpkgpm.cc:1338
+#: apt-pkg/deb/dpkgpm.cc:1344
 msgid "No apport report written because MaxReports is reached already"
-msgstr ""
+msgstr "Brak raportu programu apport, ponieważ osiągnięto limit MaxReports"
 
 #. check if its not a follow up error
-#: apt-pkg/deb/dpkgpm.cc:1343
+#: apt-pkg/deb/dpkgpm.cc:1349
 msgid "dependency problems - leaving unconfigured"
-msgstr ""
+msgstr "problemy z zależnościami - pozostawianie nieskonfigurowanego"
 
-#: apt-pkg/deb/dpkgpm.cc:1345
+#: apt-pkg/deb/dpkgpm.cc:1351
 msgid ""
 "No apport report written because the error message indicates its a followup "
 "error from a previous failure."
 msgstr ""
+"Brak raportu programu apport, ponieważ komunikat błędu wskazuje, że "
+"przyczyna niepowodzenia leży w poprzednim błędzie."
 
-#: apt-pkg/deb/dpkgpm.cc:1351
+#: apt-pkg/deb/dpkgpm.cc:1357
 msgid ""
 "No apport report written because the error message indicates a disk full "
 "error"
 msgstr ""
+"Brak raportu programu apport, ponieważ komunikat błędu wskazuje na "
+"przepełnienie dysku"
 
-#: apt-pkg/deb/dpkgpm.cc:1357
+#: apt-pkg/deb/dpkgpm.cc:1363
 msgid ""
 "No apport report written because the error message indicates a out of memory "
 "error"
 msgstr ""
+"Brak raportu programu apport, ponieważ komunikat błędu wskazuje na błąd "
+"braku wolnej pamięci"
 
-#: apt-pkg/deb/dpkgpm.cc:1364
+#: apt-pkg/deb/dpkgpm.cc:1370
 msgid ""
 "No apport report written because the error message indicates a dpkg I/O error"
 msgstr ""
+"Brak raportu programu apport, ponieważ komunikat błędu wskazuje na błąd "
+"wejścia/wyjścia dpkg"
 
 #: apt-pkg/deb/debsystem.cc:69
 #, c-format
@@ -3467,62 +3551,67 @@ msgstr ""
 "Nie udało się zablokować katalogu administracyjnego (%s), czy inny proces go "
 "używa?"
 
+# Musi pasować do su i sudo.
 #: apt-pkg/deb/debsystem.cc:72
 #, c-format
 msgid "Unable to lock the administration directory (%s), are you root?"
 msgstr ""
-"Nie udało się zablokować katalogu administracyjnego (%s), czy jesteś rootem?"
+"Nie udało się zablokować katalogu administracyjnego (%s), czy użyto "
+"uprawnień administratora?"
 
 #. TRANSLATORS: the %s contains the recovery command, usually
 #. dpkg --configure -a
 #: apt-pkg/deb/debsystem.cc:88
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "dpkg was interrupted, you must manually run '%s' to correct the problem. "
 msgstr ""
-"dpkg został przerwany, należy ręcznie uruchomić \"dpkg --configure -a\" aby "
-"naprawić problem."
+"dpkg został przerwany, należy wykonać ręcznie \"%s\", aby naprawić problem."
 
 #: apt-pkg/deb/debsystem.cc:106
 msgid "Not locked"
-msgstr "Nie zablokowany"
+msgstr "Niezablokowany"
 
 #. FIXME: fallback to a default mirror here instead
 #. and provide a config option to define that default
 #: methods/mirror.cc:260
 #, c-format
 msgid "No mirror file '%s' found "
-msgstr ""
+msgstr "Nie znaleziono pliku serwera lustrzanego \"%s\""
 
 #. FIXME: fallback to a default mirror here instead
 #. and provide a config option to define that default
 #: methods/mirror.cc:267
-#, fuzzy, c-format
+#, c-format
 msgid "Can not read mirror file '%s'"
-msgstr "Nie udało się otworzyć pliku %s"
+msgstr "Nie udało się otworzyć pliku serwera lustrzanego \"%s\""
 
 #: methods/mirror.cc:422
 #, c-format
 msgid "[Mirror: %s]"
-msgstr ""
+msgstr "[Serwer lustrzany: %s]"
 
-#: methods/rred.cc:503
+#: methods/rred.cc:506
 #, c-format
 msgid ""
 "Could not patch %s with mmap and with file operation usage - the patch seems "
 "to be corrupt."
 msgstr ""
+"Nie udało się nałożyć łatki %s przy użyciu mmap i operacji plikowej - łatka "
+"wygląda na uszkodzoną."
 
-#: methods/rred.cc:508
+#: methods/rred.cc:511
 #, c-format
 msgid ""
 "Could not patch %s with mmap (but no mmap specific fail) - the patch seems "
 "to be corrupt."
 msgstr ""
+"Nie udało się nałożyć łatki %s przy użyciu mmap, ale błąd nie pochodzi z "
+"mmap - łatka wygląda na uszkodzoną"
 
 #: methods/rsh.cc:330
 msgid "Connection closed prematurely"
-msgstr "Połączenie zostało zamknięte przedwcześnie"
+msgstr "Połączenie zostało przedwcześnie zamknięte"
 
 #~ msgid "Internal error, could not locate member"
 #~ msgstr "Błąd wewnętrzny, nie udało się odnaleźć składnika"
diff --git a/prepare-release b/prepare-release
new file mode 100755 (executable)
index 0000000..e02157b
--- /dev/null
@@ -0,0 +1,37 @@
+#!/bin/sh
+
+VERSION=$(dpkg-parsechangelog | sed -n -e '/^Version:/s/^Version: //p')
+DISTRIBUTION=$(dpkg-parsechangelog | sed -n -e '/^Distribution:/s/^Distribution: //p')
+
+if [ "$1" = 'pre-export' ]; then
+       if [ "$DISTRIBUTION" = 'sid' ]; then
+               echo >&2 '»sid« is not a valid distribution. Replace it with »unstable« for you'
+               sed -i -e 's/) sid; urgency=/) unstable; urgency=/' debian/changelog
+               DISTRIBUTION='unstable'
+       elif [ "$DISTRIBUTION" = 'UNRELEASED' ]; then
+               echo >&2 'WARNING: Remember to change to a valid distribution for release'
+               VERSION="$VERSION~$(date +%Y%m%d)"
+       fi
+
+       if [ "$(date +%Y-%m-%d)" != "$(grep --max-count=1 '^"POT-Creation-Date: .*\n"$' po/apt-all.pot | cut -d' ' -f 2)" -o \
+            "$(date +%Y-%m-%d)" != "$(grep --max-count=1 '^"POT-Creation-Date: .*\n"$' doc/po/apt-doc.pot | cut -d' ' -f 2)" ]; then
+               echo >&2 'POT files are not up-to-date. Execute »make update-po« for you…'
+               make update-po
+       fi
+
+       sed -i -e "s/^PACKAGE_VERSION=\".*\"$/PACKAGE_VERSION=\"${VERSION}\"/" configure.in
+elif [ "$1" = 'post-build' ]; then
+       if [ "$DISTRIBUTION" != "UNRELEASED" ]; then
+               echo >&2 "REMEMBER: Tag this release with »bzr tag ${VERSION}« if you are satisfied"
+       else
+               echo >&2 'REMEMBER: Change to a valid distribution before release'
+       fi
+else
+       echo >&1 "Usage:\t$0 pre-export
+\t$0 post-build
+
+If you use »bzr builddeb« you can leave this script alone as it will
+be run at the right places auto-magically. Otherwise you should use
+»pre-export« to update po and pot files as well as version numbering.
+»post-build« can be used to run some more or less useful checks later on."
+fi
index da0a49b0c8f497e6892fb826cbf0068333f8ab81..b42a90b25b1b743e759992c7d9665cf1e5f3623f 100644 (file)
@@ -6,8 +6,8 @@ ifndef NOISY
 .SILENT:
 endif
 
-.PHONY: headers library clean veryclean all binary program doc test
-all clean veryclean binary program dirs test:
+.PHONY: startup headers library clean veryclean all binary program doc test update-po
+startup all clean veryclean binary program dirs test update-po:
        $(MAKE) -C libapt $@
        $(MAKE) -C interactive-helper $@
 
index a738d27ccb4f610cb01710653ee2c00616cd63fd..0670d6a7818963e7298f723bb5fabbb4e7cacb52 100644 (file)
@@ -207,7 +207,9 @@ configdpkg() {
                                if [ "${ARCH}" != "${DPKGARCH}" ]; then dpkg --add-architecture ${ARCH}; fi
                        done
                        if [ "0" = "$(dpkg -l dpkg 2> /dev/null | grep '^i' | wc -l)" ]; then
-                               insertinstalledpackage 'dpkg' "all" '1.16.2~wipmultiarch~fake'
+                               # dpkg doesn't really check the version as long as it is fully installed,
+                               # but just to be sure we choose one above the required version
+                               insertinstalledpackage 'dpkg' "all" '1.16.2+fake'
                        fi
                fi
        fi
@@ -556,7 +558,7 @@ buildaptarchivefromfiles() {
                msgninfo "\t${line} file… "
                cat ${line} | gzip > ${line}.gz
                cat ${line} | bzip2 > ${line}.bz2
-               cat ${line} | lzma > ${line}.lzma
+               cat ${line} | xz --format=lzma > ${line}.lzma
                cat ${line} | xz > ${line}.xz
                msgdone "info"
        done
index bb1ac0e540787fe0dca22fbe9a6a42193f657d14..63883b38072e6864aa00749d00152cc64550d182 100755 (executable)
@@ -28,10 +28,10 @@ testaptgetupdate() {
 createemptyarchive() {
        find aptarchive/ \( -name "Packages*" -o -name "en*" \) -type f -delete
        if [ "en" = "$1" ]; then
-               echo -n "" | $COMPRESSOR > aptarchive/Packages.$COMPRESS
+               echo -n "" | $COMPRESSOR_CMD > aptarchive/Packages.$COMPRESS
        fi
        touch aptarchive/Packages
-       echo -n "" | $COMPRESSOR > aptarchive/${1}.$COMPRESS
+       echo -n "" | $COMPRESSOR_CMD > aptarchive/${1}.$COMPRESS
        generatereleasefiles
        signreleasefiles
        rm -f aptarchive/Packages
@@ -40,7 +40,7 @@ createemptyarchive() {
 createemptyfile() {
        find aptarchive/ \( -name "Packages*" -o -name "en*" \) -type f -delete
        if [ "en" = "$1" ]; then
-               echo -n "" | $COMPRESSOR > aptarchive/Packages.$COMPRESS
+               echo -n "" | $COMPRESSOR_CMD > aptarchive/Packages.$COMPRESS
        fi
        touch aptarchive/Packages aptarchive/${1}.$COMPRESS
        generatereleasefiles
@@ -50,6 +50,7 @@ createemptyfile() {
 
 setupcompressor() {
        COMPRESSOR="$1"
+       COMPRESSOR_CMD="$1"
        case $COMPRESSOR in
        gzip) COMPRESS="gz";;
        bzip2) COMPRESS="bz2";;
@@ -66,10 +67,13 @@ Dir::Bin::xz \"/does/not/exist\";" > rootdir/etc/apt/apt.conf.d/00compressor
                echo "Dir::Bin::${COMPRESSOR} \"/bin/${COMPRESSOR}\";" >> rootdir/etc/apt/apt.conf.d/00compressor
        elif [ -e "/usr/bin/${COMPRESSOR}" ]; then
                echo "Dir::Bin::${COMPRESSOR} \"/usr/bin/${COMPRESSOR}\";" >> rootdir/etc/apt/apt.conf.d/00compressor
+       elif [ "${COMPRESSOR}" = 'lzma' ]; then
+               echo "Dir::Bin::xz \"/usr/bin/xz\";" >> rootdir/etc/apt/apt.conf.d/00compressor
+               COMPRESSOR_CMD='xz --format=lzma'
        else
                msgtest "Test for availability of compressor" "${COMPRESSOR}"
                msgfail
-               exit 1
+               #exit 1
        fi
 }
 
index 2875d547adee4c9189868beec6ff905d08745e77..5820fb0dc1809472c673a325e7bcbf1cddcd0a50 100755 (executable)
@@ -16,7 +16,7 @@ Building dependency tree...
 Reading state information...
 The following package was automatically installed and is no longer required:
   libvtk5.4
-Use 'apt-get autoremove' to remove them.
+Use 'apt-get autoremove' to remove it.
 The following NEW packages will be installed:
   libavcodec52
 0 upgraded, 1 newly installed, 0 to remove and 1 not upgraded.
@@ -28,7 +28,7 @@ Building dependency tree...
 Reading state information...
 The following package was automatically installed and is no longer required:
   libvtk5.4
-Use 'apt-get autoremove' to remove them.
+Use 'apt-get autoremove' to remove it.
 The following extra packages will be installed:
   libavcodec52 libopenal-dev libvtk5.4
 The following NEW packages will be installed:
index 34cf38cbc37963f8f648ad83545093e92f4e55e1..7a08871ca9024c807bc37eec33d75563292f5172 100755 (executable)
@@ -22,7 +22,7 @@ testequal "Reading package lists...
 Building dependency tree...
 Reading state information...
 The following packages were automatically installed and are no longer required:
-  openoffice.org-officebean libreoffice-officebean
+  libreoffice-officebean openoffice.org-officebean
 Use 'apt-get autoremove' to remove them.
 The following extra packages will be installed:
   libreoffice-core libreoffice-officebean openoffice.org-officebean
index 25f0059699b2c7458a98f81aff28142054c1a7b2..4407fbd9d8274ffa8529b2f6d6b86167fd9ea643 100755 (executable)
@@ -19,10 +19,10 @@ testequal 'Reading package lists...
 Building dependency tree...
 The following packages will be upgraded:
   openjdk-6-jre openjdk-6-jre-headless openjdk-6-jre-lib
-3 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
   openjdk-6-jre-lib:i386 conflicts with openjdk-6-jre:i386
     openjdk-6-jre:i386 conflicts with openjdk-6-jre-headless:i386
       openjdk-6-jre-headless:i386 conflicts with openjdk-6-jre:i386
+3 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
 Remv openjdk-6-jre [6b16-1.8-0ubuntu1]
       openjdk-6-jre-headless:i386 conflicts with openjdk-6-jre-lib:i386
 Remv openjdk-6-jre-lib [6b16-1.8-0ubuntu1]
index 3ac9eccfbf3362b5f7da11eef348507173d922fc..99ea8bffa709093932d9175ab2b0e2940afc4d23 100755 (executable)
@@ -23,7 +23,7 @@ prepare() {
        find aptarchive -name 'Release' -delete
        cat aptarchive/Packages | gzip > aptarchive/Packages.gz
        cat aptarchive/Packages | bzip2 > aptarchive/Packages.bz2
-       cat aptarchive/Packages | lzma > aptarchive/Packages.lzma
+       cat aptarchive/Packages | xz --format=lzma > aptarchive/Packages.lzma
         # create Release file with incorret checksums
        cat > aptarchive/Release <<EOF
 Date: Fri, 05 Aug 2011 09:22:08 UTC
index 0a82930185fd6a620bac924f43c3c4e8bf04b488..29301d07d8fe673d8af5965f77c49fe8f35f9f8a 100755 (executable)
@@ -21,7 +21,7 @@ testequal "$(cat ${PKGFILE})
 cp ${PKGFILE}-new aptarchive/Packages
 cat aptarchive/Packages | gzip > aptarchive/Packages.gz
 cat aptarchive/Packages | bzip2 > aptarchive/Packages.bz2
-cat aptarchive/Packages | lzma > aptarchive/Packages.lzma
+cat aptarchive/Packages | xz --format=lzma > aptarchive/Packages.lzma
 rm -rf aptarchive/Packages.diff
 mkdir -p aptarchive/Packages.diff
 PATCHFILE="aptarchive/Packages.diff/$(date +%Y-%m-%d-%H%M.%S)"
index 4f65cfa3b384472d3142508d9bdbb6834abd69a4..d3ea91de5dabf0df430b40d8308927da5d845f53 100755 (executable)
@@ -24,7 +24,7 @@ prepare() {
        find aptarchive -name 'Release' -delete
        cat aptarchive/Packages | gzip > aptarchive/Packages.gz
        cat aptarchive/Packages | bzip2 > aptarchive/Packages.bz2
-       cat aptarchive/Packages | lzma > aptarchive/Packages.lzma
+       cat aptarchive/Packages | xz --format=lzma > aptarchive/Packages.lzma
        generatereleasefiles "$DATE"
 }
 
index a1b3600aad922662c9568cdb73da30560609a644..3f7feabcba95b52902236feffd603a8df37b1dfe 100644 (file)
@@ -21,8 +21,7 @@ bool ExtractMember(const char *File,const char *Member)
    if (Extract.Control == 0)
       return true;
    
-   write(STDOUT_FILENO,Extract.Control,Extract.Length);
-   return true;
+   return write(STDOUT_FILENO,Extract.Control,Extract.Length) != -1;
 }
 
 int main(int argc, const char *argv[])
index b96139fda60ce01ae7b3d38e3226e82771d6c572..10d1e44ece0d9617d1df8dcd065e1c0304e0f8a6 100644 (file)
@@ -11,28 +11,24 @@ SLIBS =
 SOURCE = mthdcat.cc
 include $(PROGRAM_H)
 
-# Version compare tester
-PROGRAM=testextract
-SLIBS = -lapt-pkg -lapt-inst
-LIB_MAKES = apt-pkg/makefile apt-inst/makefile
-SOURCE = testextract.cc
-include $(PROGRAM_H)
-
 # Program for testing the tar/deb extractor
 PROGRAM=testdeb
 SLIBS = -lapt-pkg -lapt-inst
+LIB_MAKES = apt-pkg/makefile apt-inst/makefile
 SOURCE = testdeb.cc
 include $(PROGRAM_H)
 
 # Program for testing tar extraction
 PROGRAM=extract-control
 SLIBS = -lapt-pkg -lapt-inst
+LIB_MAKES = apt-pkg/makefile apt-inst/makefile
 SOURCE = extract-control.cc
 include $(PROGRAM_H)
 
 # Program for testing udevcdrom
 PROGRAM=test_udevcdrom
-SLIBS = -lapt-pkg 
+SLIBS = -lapt-pkg
+LIB_MAKES = apt-pkg/makefile
 SOURCE = test_udevcdrom.cc
 include $(PROGRAM_H)
 
diff --git a/test/interactive-helper/testextract.cc b/test/interactive-helper/testextract.cc
deleted file mode 100644 (file)
index f7ddb72..0000000
+++ /dev/null
@@ -1,103 +0,0 @@
-#include <apt-pkg/dpkgdb.h>
-#include <apt-pkg/debfile.h>
-#include <apt-pkg/error.h>
-#include <apt-pkg/configuration.h>
-#include <apt-pkg/progress.h>
-#include <apt-pkg/extract.h>
-#include <apt-pkg/init.h>
-#include <apt-pkg/strutl.h>
-#include <apt-pkg/fileutl.h>
-#include <apt-pkg/pkgsystem.h>
-
-#include <stdio.h>
-#include <stdlib.h>
-
-using namespace std;
-
-bool Go(int argc,char *argv[])
-{
-   // Init the database
-   debDpkgDB Db;   
-   {
-      OpTextProgress Prog;
-
-      if (Db.ReadyPkgCache(Prog) == false)
-        return false;
-      Prog.Done();
-      
-      if (Db.ReadyFileList(Prog) == false)
-        return false;
-   }
-
-   for (int I = 1; I < argc; I++)
-   {
-      const char *Fake = 0;
-      for (unsigned J = 0; argv[I][J] != 0; J++)
-      {
-        if (argv[I][J] != ',')
-           continue;
-        Fake = argv[I] + J + 1;
-        argv[I][J] = 0;
-      }
-      
-      FileFd F(argv[I],FileFd::ReadOnly);
-      debDebFile Deb(F);
-
-      if (_error->PendingError() == true)
-        return false;
-      
-      if (Deb.ExtractControl(Db) == false)
-        return false;
-      cout << argv[I] << endl;
-      
-      pkgCache::VerIterator Ver = Deb.MergeControl(Db);
-      if (Ver.end() == true)
-        return false;
-      
-      cout << Ver.ParentPkg().Name() << ' ' << Ver.VerStr() << endl;
-      
-      pkgExtract Extract(Db.GetFLCache(),Ver);
-      
-      if (Fake != 0)
-      {
-        pkgExtract::Item Itm;
-        memset(&Itm,0,sizeof(Itm));
-        FILE *F = fopen(Fake,"r");
-        while (feof(F) == 0)
-        {
-           char Line[300];
-           fgets(Line,sizeof(Line),F);
-           Itm.Name = _strstrip(Line);
-           Itm.Type = pkgDirStream::Item::File;
-           if (Line[strlen(Line)-1] == '/')
-              Itm.Type = pkgDirStream::Item::Directory;
-
-           int Fd;
-           if (Extract.DoItem(Itm,Fd) == false) {
-              fclose(F);
-              return false;
-           }
-        }
-        fclose(F);
-      }
-      else
-        if (Deb.ExtractArchive(Extract) == false)
-           return false;
-   }
-   return true;
-}
-
-int main(int argc,char *argv[])
-{
-   pkgInitConfig(*_config);
-   pkgInitSystem(*_config,_system);
-   _config->Set("Dir::State::status","/tmp/testing/status");
-
-   Go(argc,argv);
-   
-   if (_error->PendingError() == true)
-   {
-      _error->DumpErrors();
-      return 0;
-   }
-}
index d4341412dd58212474921b9c5b3b42c15bb4f580..4ea9a916da944e2d1fec4eddff14a01bb9653f5d 100755 (executable)
@@ -68,8 +68,8 @@ do
                        "${tmppath}/ftp.de.debian.org_debian_dists_sid_main_i18n_Translation-ast_DE"
        elif [ $name = "HashSums${EXT}" ]; then
                TMP="$(readlink -f "./${0}")"
-               echo -n "Testing with \033[1;35m${name}\033[0m ... "
-               LD_LIBRARY_PATH=${LDPATH} ${testapp} $TMP $(md5sum $TMP | cut -d' ' -f 1) $(sha1sum $TMP | cut -d' ' -f 1) $(sha256sum $TMP | cut -d' ' -f 1) $(sha512sum $TMP | cut -d' ' -f 1) && echo "\033[1;32mOKAY\033[0m" || echo "\033[1;31mFAILED\033[0m"
+               echo -n "Testing with ${NAME} "
+               LD_LIBRARY_PATH=${LDPATH} ${testapp} $TMP $(md5sum $TMP | cut -d' ' -f 1) $(sha1sum $TMP | cut -d' ' -f 1) $(sha256sum $TMP | cut -d' ' -f 1) $(sha512sum $TMP | cut -d' ' -f 1) && echo "$TESTOKAY" || echo "$TESTFAIL"
                continue
        elif [ $name = "CompareVersion${EXT}" ]; then
                tmppath="${DIR}/versions.lst"