do not crash on SIGPIPE in pkgDPkgPM::RunScriptsWithPkgs()
[apt.git] / doc / examples / configure-index
index 0bab8e0f8567cb639c9ac89bc33bc3c3eb1fad43..df6bbb1e3d71e0e531084627e198cecd6633f3d6 100644 (file)
@@ -1,4 +1,3 @@
-// $Id: configure-index,v 1.10 2004/07/17 19:37:16 mdz Exp $
 /* This file is an index of all APT configuration directives. It should
    NOT actually be used as a real config file, though it is (except for the
    last line) a completely valid file. Most of the options have sane default
 */
 
 quiet "0";
+quiet::NoUpdate "true"; // never update progress information - included in -q=1
 
 // Options for APT in general
 APT 
 {
   Architecture "i386";
+  Architectures { "amd64"; "armel"; };
   Build-Essential "build-essential";
 
-  NeverAutoRemove  { "linux-kernel.*";  };  // packages that should never
+  NeverAutoRemove  { "linux-image.*";  };  // packages that should never
                                             // considered for autoRemove
 
   // Options for apt-get
   Get 
   {
+     Host-Architecture "armel";
      Arch-Only "false";
+     AllowUnauthenticated "false";
      AutomaticRemove "false";       
      HideAutoRemove "false";
      Download-Only "false";
@@ -55,6 +58,7 @@ APT
      Diff-Only "false";
      Tar-Only "false";
      Build-Dep-Automatic "true";
+     Show-User-Simulation-Note "true";
   };
 
   Cache 
@@ -86,12 +90,7 @@ APT
 
   Authentication
   {
-     TrustCDROM "false";            // consider the CDROM always trusted
-  };
-
-  GPGV
-  {
-     TrustedKeyring "/etc/apt/trusted.gpg";
+     TrustCDROM "false";            // consider the CD-ROM always trusted
   };
 
   // Some general options
@@ -99,12 +98,14 @@ APT
   Clean-Installed "true";
   Immediate-Configure "true";      // DO NOT turn this off, see the man page
   Force-LoopBreak "false";         // DO NOT turn this on, see the man page
-  Cache-Limit "4194304";
+  Cache-Start "20971520";
+  Cache-Grow "1048576";
+  Cache-Limit "0";
   Default-Release "";
 
   // consider Recommends, Suggests as important dependencies that should
   // be installed by default
-  Install-Recommends "false";
+  Install-Recommends "true";
   Install-Suggests "false";
 
   // consider dependencies of packages in this section manual
@@ -116,54 +117,62 @@ APT
   // does a ExecFork)
   Keep-Fds {};
 
+  Changelogs
+  {
+    // server the provides the changelogs, the code will assume
+    // the changlogs are in the pool/ under a srcpkg_ver directory 
+    // with the name "changelog"
+    Server "http://packages.debian.org/changelogs";
+  }:
+
   // control parameters for cron jobs by /etc/cron.daily/apt
   Periodic
   {
-  BackupArchiveInterval "0";
-  // - Backup after n-days if archive contents changed.(0=disable)
-
-  BackupLevel "3";
-  // - Backup level.(0=disable), 1 is invalid.
-
-  // APT::Archives::MaxAge "0"; (old, deprecated)
-  MaxAge "0"; // (new)
-  // - Set maximum allowed age of a cache package file. If a cache 
-  //   package file is older it is deleted (0=disable)
-
-  // APT::Archives::MinAge "2"; (old, deprecated)
-  MinAge "2"; // (new)
-  // - Set minimum age of a package file. If a file is younger it
-  //   will not be deleted (0=disable). Usefull to prevent races 
-  //   and to keep backups of the packages for emergency.
-
-  // APT::Archives::MaxSize "0"; (old, deprecated)
-  MaxSize "0"; // (new)
-  // - Set maximum size of the cache in MB (0=disable). If the cache
-  //   is bigger, cached package files are deleted until the size
-  //   requirement is met (the biggest packages will be deleted 
-  //   first).
-
-  Update-Package-Lists "0";
-  // - Do "apt-get update" automatically every n-days (0=disable)
-  //   
-  Download-Upgradeable-Packages "0";
-  // - Do "apt-get upgrade --download-only" every n-days (0=disable)
-  //
-  Unattended-Upgrade "0";
-  // - Run the "unattended-upgrade" security upgrade script 
-  //   every n-days (0=disabled)
-  //   Requires the package "unattended-upgrades" and will write
-  //   a log in /var/log/unattended-upgrades
-  //
-  AutocleanInterval "0";
-  // - Do "apt-get autoclean" every n-days (0=disable)
-
-  Verbose "0";
-  // - Send report mail to root
-  //   0:  no report             (or null string)
-  //   1:  progress report       (actually any string)
-  //   2:  + command outputs     (remove -qq, remove 2>/dev/null, add -d)
-  //   3:  + trace on            
+    BackupArchiveInterval "0";
+    // - Backup after n-days if archive contents changed.(0=disable)
+
+    BackupLevel "3";
+    // - Backup level.(0=disable), 1 is invalid.
+
+    // APT::Archives::MaxAge "0"; (old, deprecated)
+    MaxAge "0"; // (new)
+    // - Set maximum allowed age of a cache package file. If a cache 
+    //   package file is older it is deleted (0=disable)
+
+    // APT::Archives::MinAge "2"; (old, deprecated)
+    MinAge "2"; // (new)
+    // - Set minimum age of a package file. If a file is younger it
+    //   will not be deleted (0=disable). Useful to prevent races
+    //   and to keep backups of the packages for emergency.
+
+    // APT::Archives::MaxSize "0"; (old, deprecated)
+    MaxSize "0"; // (new)
+    // - Set maximum size of the cache in MB (0=disable). If the cache
+    //   is bigger, cached package files are deleted until the size
+    //   requirement is met (the biggest packages will be deleted 
+    //   first).
+
+    Update-Package-Lists "0";
+    // - Do "apt-get update" automatically every n-days (0=disable)
+    //   
+    Download-Upgradeable-Packages "0";
+    // - Do "apt-get upgrade --download-only" every n-days (0=disable)
+    //
+    Unattended-Upgrade "0";
+    // - Run the "unattended-upgrade" security upgrade script 
+    //   every n-days (0=disabled)
+    //   Requires the package "unattended-upgrades" and will write
+    //   a log in /var/log/unattended-upgrades
+    //
+    AutocleanInterval "0";
+    // - Do "apt-get autoclean" every n-days (0=disable)
+
+    Verbose "0";
+    // - Send report mail to root
+    //   0:  no report             (or null string)
+    //   1:  progress report       (actually any string)
+    //   2:  + command outputs     (remove -qq, remove 2>/dev/null, add -d)
+    //   3:  + trace on            
   };
 };
 
@@ -173,9 +182,17 @@ Acquire
   Queue-Mode "host";       // host|access
   Retries "0";
   Source-Symlinks "true";
+  ForceHash "sha256"; // hashmethod used for expected hash: sha256, sha1 or md5sum
 
   PDiffs "true";     // try to get the IndexFile diffs
-  
+  PDiffs::FileLimit "4"; // don't use diffs if we would need more than 4 diffs
+  PDiffs::SizeLimit "50"; // don't use diffs if size of all patches excess
+                         // 50% of the size of the original file
+
+  Check-Valid-Until "true";
+  Max-ValidTime "864000"; // 10 days
+  Max-ValidTime::Debian-Security "604800"; // 7 days, label specific configuration
+
   // HTTP method configuration
   http 
   {
@@ -183,24 +200,44 @@ Acquire
     Proxy::http.us.debian.org "DIRECT";  // Specific per-host setting
     Timeout "120";
     Pipeline-Depth "5";
-    
+    AllowRedirect  "true";
+
     // Cache Control. Note these do not work with Squid 2.0.2
     No-Cache "false";
     Max-Age "86400";     // 1 Day age on index files
     No-Store "false";    // Prevent the cache from storing archives    
     Dl-Limit "7";        // 7Kb/sec maximum download rate
+    User-Agent "Debian APT-HTTP/1.3";
   };
 
-  // HTTPS method configuration:
-  // - uses the http proxy config 
-  // - uses the http cache-control values
-  // - uses the http Dl-Limit values
-  https 
+
+
+  // HTTPS method configuration: uses the http
+  // - proxy config
+  // - cache-control values
+  // - Dl-Limit, Timout, ... values
+  // if not set explicit for https
+  //
+  // see /usr/share/doc/apt/examples/apt-https-method-example.conf.gz
+  // for more examples
+  https
   {
        Verify-Peer "false";
        SslCert "/etc/apt/some.pem";
-        CaPath  "/etc/ssl/certs";
-        Verify-Host" "2";
+       CaPath  "/etc/ssl/certs";
+       Verify-Host "true";
+       AllowRedirect  "true";
+
+       Timeout "120";
+       AllowRedirect  "true";
+
+       // Cache Control. Note these do not work with Squid 2.0.2
+       No-Cache "false";
+       Max-Age "86400";     // 1 Day age on index files
+       No-Store "false";    // Prevent the cache from storing archives
+       Dl-Limit "7";        // 7Kb/sec maximum download rate
+
+       User-Agent "Debian APT-CURL/1.0";
   };
 
   ftp
@@ -229,6 +266,13 @@ Acquire
   
   cdrom
   {
+    // do auto detection of the cdrom mountpoint
+    AutoDetect "true";   
+    // when auto-detecting, only look for cdrom/dvd. when this is false
+    // it will support any removable device as a "cdrom" source
+    CdromOnly "true";
+    
+    // cdrom mountpoint (needs to be defined in fstab if AutoDetect is not used)
     mount "/cdrom";
 
     // You need the trailing slash!
@@ -243,6 +287,24 @@ Acquire
   {
    Options {"--ignore-time-conflict";} // not very useful on a normal system
   };
+
+  CompressionTypes
+  {
+    bz2 "bzip2";
+    lzma "lzma";
+    gz "gzip";
+
+    Order { "uncompressed"; "gz"; "lzma"; "bz2"; };
+  };
+
+  Languages
+  {
+     "environment";
+     "de";
+     "en";
+     "none";
+     "fr";
+  };
 };
 
 // Directory layout
@@ -252,9 +314,8 @@ Dir "/"
   State "var/lib/apt/" 
   {
      Lists "lists/";
-     xstatus "xstatus";
-     userstatus "status.user";
      status "/var/lib/dpkg/status";
+     extended_states "extended_states";
      cdroms "cdroms.list";
   };
   
@@ -269,10 +330,17 @@ Dir "/"
   
   // Config files
   Etc "etc/apt/" {
-     SourceList "sources.list";
      Main "apt.conf";
-     Preferences "preferences";     
+     Netrc "auth.conf";
      Parts "apt.conf.d/";
+     Preferences "preferences";
+     PreferencesParts "preferences.d";
+     SourceList "sources.list";
+     SourceParts "sources.list.d";
+     VendorList "vendors.list";
+     VendorParts "vendors.list.d";
+     Trusted "trusted.gpg";
+     TrustedParts "trusted.gpg.d";
   };
   
   // Locations of binaries
@@ -290,6 +358,21 @@ Dir "/"
   // Location of the logfile
   Log "var/log/apt" {
        Terminal "term.log";
+       History "history.log";
+  };
+
+  // Media 
+  Media 
+  {
+       // Media AutoDetect mount path
+       MountPath "/media/apt";
+  };
+
+  // Media 
+  Media 
+  {
+       // Media AutoDetect mount path
+       MountPath "/media/apt";
   };
 };
 
@@ -303,18 +386,24 @@ DSelect
    CheckDir "no";
 }
 
-DPkg 
+DPkg
 {
+   // let apt aggressivly use dpkg triggers
+   NoTriggers "true";
+   ConfigurePending "true";
+
    // Probably don't want to use force-downgrade..
    Options {"--force-overwrite";"--force-downgrade";}
-   
+
    // Auto re-mounting of a readonly /usr
    Pre-Invoke {"mount -o remount,rw /usr";};
    Post-Invoke {"mount -o remount,ro /usr";};
-   
+
+   Chroot-Directory "/";
+
    // Prevents daemons from getting cwd as something mountable (default)
    Run-Directory "/";
-   
+
    // Build options for apt-get source --compile
    Build-Options "-b -uc";
 
@@ -338,13 +427,17 @@ DPkg
 Debug 
 {
   pkgProblemResolver "false";
+  pkgProblemResolver::ShowScores "false";
   pkgDepCache::AutoInstall "false"; // what packages apt install to satify dependencies
+  pkgDepCache::Marker "false"; 
+  pkgCacheGen "false";
   pkgAcquire "false";
   pkgAcquire::Worker "false";
   pkgAcquire::Auth "false";
   pkgDPkgPM "false";
   pkgDPkgProgressReporting "false";
   pkgOrderList "false";
+  pkgPackageManager "false"; // OrderList/Configure debugging
   pkgAutoRemove "false";   // show information about automatic removes
   BuildDeps "false";
   pkgInitialize "false";   // This one will dump the configuration space
@@ -353,11 +446,15 @@ Debug
   Acquire::Http "false";   // Show http command traffic
   Acquire::Https "false";   // Show https debug
   Acquire::gpgv "false";   // Show the gpgv traffic
+  Acquire::cdrom "false";   // Show cdrom debug output
   aptcdrom "false";        // Show found package files
   IdentCdrom "false";
-  
+  acquire::netrc "false";  // netrc parser
+  RunScripts "false";      // debug invocation of external scripts  
 }
 
+pkgCacheGen::Essential "native"; // other modes: all, none, installed
+
 /* Whatever you do, do not use this configuration file!! Take out ONLY
    the portions you need! */
 This Is Not A Valid Config File