1 /* This file is an index of all APT configuration directives. It should
 
   2    NOT actually be used as a real config file, though it is (except for the
 
   3    last line) a completely valid file. Most of the options have sane default
 
   4    values, unless you have specific needs you should NOT include arbitrary
 
   5    items in a custom configuration.
 
   7    In some instances involving filenames it is possible to set the default
 
   8    directory when the path is evaluated. This means you can use relative
 
   9    paths within the sub scope.
 
  11    The configuration directives are specified in a tree with {} designating
 
  12    a subscope relative to the tag before the {}. You can further specify
 
  13    a subscope using scope notation eg,
 
  14      APT::Architecture "i386";
 
  15    This is prefixed with the current scope. Scope notation must be used
 
  16    if an option is specified on the command line with -o.
 
  21 // Options for APT in general
 
  25   Build-Essential "build-essential";
 
  27   NeverAutoRemove  { "linux-image.*";  };  // packages that should never
 
  28                                             // considered for autoRemove
 
  30   // Options for apt-get
 
  34      AllowUnauthenticated "false";
 
  35      AutomaticRemove "false";       
 
  36      HideAutoRemove "false";
 
  37      Download-Only "false";
 
  40      Force-Yes "false";             // I would never set this.
 
  43      Show-Upgraded "false";
 
  44      Show-Versions "false";
 
  57      Build-Dep-Automatic "true";
 
  58      Show-User-Simulation-Note "true";
 
  66      RecurseDepends "false";
 
  84      Pre-Invoke {"touch /var/lib/apt/pre-update-stamp"; };
 
  85      Post-Invoke {"touch /var/lib/apt/post-update-stamp"; };
 
  90      TrustCDROM "false";            // consider the CDROM always trusted
 
  95      TrustedKeyring "/etc/apt/trusted.gpg";
 
  98   // Some general options
 
 100   Clean-Installed "true";
 
 101   Immediate-Configure "true";      // DO NOT turn this off, see the man page
 
 102   Force-LoopBreak "false";         // DO NOT turn this on, see the man page
 
 103   Cache-Limit "4194304";
 
 106   // consider Recommends, Suggests as important dependencies that should
 
 107   // be installed by default
 
 108   Install-Recommends "true";
 
 109   Install-Suggests "false";
 
 111   // consider dependencies of packages in this section manual
 
 112   Never-MarkAuto-Sections {"metapackages"; "universe/metapackages"; };
 
 114   // Write progress messages on this fd (for stuff like base-config)
 
 116   // Keep the list of FDs open (normally apt closes all fds when it
 
 120   // control parameters for cron jobs by /etc/cron.daily/apt
 
 123   BackupArchiveInterval "0";
 
 124   // - Backup after n-days if archive contents changed.(0=disable)
 
 127   // - Backup level.(0=disable), 1 is invalid.
 
 129   // APT::Archives::MaxAge "0"; (old, deprecated)
 
 131   // - Set maximum allowed age of a cache package file. If a cache 
 
 132   //   package file is older it is deleted (0=disable)
 
 134   // APT::Archives::MinAge "2"; (old, deprecated)
 
 136   // - Set minimum age of a package file. If a file is younger it
 
 137   //   will not be deleted (0=disable). Usefull to prevent races 
 
 138   //   and to keep backups of the packages for emergency.
 
 140   // APT::Archives::MaxSize "0"; (old, deprecated)
 
 141   MaxSize "0"; // (new)
 
 142   // - Set maximum size of the cache in MB (0=disable). If the cache
 
 143   //   is bigger, cached package files are deleted until the size
 
 144   //   requirement is met (the biggest packages will be deleted 
 
 147   Update-Package-Lists "0";
 
 148   // - Do "apt-get update" automatically every n-days (0=disable)
 
 150   Download-Upgradeable-Packages "0";
 
 151   // - Do "apt-get upgrade --download-only" every n-days (0=disable)
 
 153   Unattended-Upgrade "0";
 
 154   // - Run the "unattended-upgrade" security upgrade script 
 
 155   //   every n-days (0=disabled)
 
 156   //   Requires the package "unattended-upgrades" and will write
 
 157   //   a log in /var/log/unattended-upgrades
 
 159   AutocleanInterval "0";
 
 160   // - Do "apt-get autoclean" every n-days (0=disable)
 
 163   // - Send report mail to root
 
 164   //   0:  no report             (or null string)
 
 165   //   1:  progress report       (actually any string)
 
 166   //   2:  + command outputs     (remove -qq, remove 2>/dev/null, add -d)
 
 171 // Options for the downloading routines
 
 174   Queue-Mode "host";       // host|access
 
 176   Source-Symlinks "true";
 
 178   PDiffs "true";     // try to get the IndexFile diffs
 
 179   PDiffs::FileLimit "4"; // don't use diffs if we would need more than 4 diffs
 
 180   PDiffs::SizeLimit "50"; // don't use diffs if size of all patches excess
 
 181                           // 50% of the size of the original file
 
 183   // HTTP method configuration
 
 186     Proxy "http://127.0.0.1:3128";
 
 187     Proxy::http.us.debian.org "DIRECT";  // Specific per-host setting
 
 190     AllowRedirect  "true";
 
 192     // Cache Control. Note these do not work with Squid 2.0.2
 
 194     Max-Age "86400";     // 1 Day age on index files
 
 195     No-Store "false";    // Prevent the cache from storing archives    
 
 196     Dl-Limit "7";        // 7Kb/sec maximum download rate
 
 197     User-Agent "Debian APT-HTTP/1.3";
 
 202   // HTTPS method configuration: uses the http
 
 204   // - cache-control values
 
 205   // - Dl-Limit, Timout, ... values
 
 206   // if not set explicit for https
 
 208   // see /usr/share/doc/apt/examples/apt-https-method-example.conf.gz
 
 213         SslCert "/etc/apt/some.pem";
 
 214         CaPath  "/etc/ssl/certs";
 
 216         AllowRedirect  "true";
 
 219         AllowRedirect  "true";
 
 221         // Cache Control. Note these do not work with Squid 2.0.2
 
 223         Max-Age "86400";     // 1 Day age on index files
 
 224         No-Store "false";    // Prevent the cache from storing archives
 
 225         Dl-Limit "7";        // 7Kb/sec maximum download rate
 
 227         User-Agent "Debian APT-CURL/1.0";
 
 232     Proxy "ftp://127.0.0.1/";
 
 233     Proxy::http.us.debian.org "DIRECT"; // Specific per-host setting
 
 235     /* Required script to perform proxy login. This example should work
 
 239        "USER $(PROXY_USER)";
 
 240        "PASS $(PROXY_PASS)";
 
 241        "USER $(SITE_USER)@$(SITE):$(SITE_PORT)";
 
 247     /* Passive mode control, proxy, non-proxy and per-host. Pasv mode
 
 248        is preferred if possible */
 
 250     Proxy::Passive "true";
 
 251     Passive::http.us.debian.org "true"; // Specific per-host setting
 
 258     // You need the trailing slash!
 
 268    Options {"--ignore-time-conflict";}  // not very useful on a normal system
 
 277     Order { "gz"; "lzma"; "bz2"; };
 
 293   // Location of the state dir
 
 298      userstatus "status.user";
 
 299      status "/var/lib/dpkg/status";
 
 300      cdroms "cdroms.list";
 
 303   // Location of the cache dir
 
 304   Cache "var/cache/apt/" {
 
 305      Archives "archives/";
 
 306      // backup directory created by /etc/cron.daily/apt
 
 308      srcpkgcache "srcpkgcache.bin";
 
 309      pkgcache "pkgcache.bin";     
 
 317      Preferences "preferences";
 
 318      PreferencesParts "preferences.d";
 
 319      SourceList "sources.list";
 
 320      SourceParts "sources.list.d";
 
 321      VendorList "vendors.list";
 
 322      VendorParts "vendors.list.d";
 
 325   // Locations of binaries
 
 327      methods "/usr/lib/apt/methods/";
 
 330      dpkg "/usr/bin/dpkg";
 
 331      dpkg-source "/usr/bin/dpkg-source";
 
 332      dpkg-buildpackage "/usr/bin/dpkg-buildpackage";
 
 333      apt-get "/usr/bin/apt-get";
 
 334      apt-cache "/usr/bin/apt-cache";
 
 337   // Location of the logfile
 
 343 // Things that effect the APT dselect method
 
 346    Clean "auto";   // always|auto|prompt|never
 
 349    PromptAfterUpdate "no";
 
 355    // let apt aggressivly use dpkg triggers
 
 358    ConfigurePending "true";
 
 360    // Probably don't want to use force-downgrade..
 
 361    Options {"--force-overwrite";"--force-downgrade";}
 
 363    // Auto re-mounting of a readonly /usr
 
 364    Pre-Invoke {"mount -o remount,rw /usr";};
 
 365    Post-Invoke {"mount -o remount,ro /usr";};
 
 367    Chroot-Directory "/";
 
 369    // Prevents daemons from getting cwd as something mountable (default)
 
 372    // Build options for apt-get source --compile
 
 373    Build-Options "-b -uc";
 
 375    // Pre-configure all packages before they are installed using debconf.
 
 376    Pre-Install-Pkgs {"dpkg-preconfigure --apt --priority=low --frontend=dialog";};
 
 378    // Flush the contents of stdin before forking dpkg.
 
 381    // Control the size of the command line passed to dpkg.
 
 385    // controls if apt will apport on the first dpkg error or if it 
 
 386    // tries to install as many packages as possible
 
 390 /* Options you can set to see some debugging text They correspond to names
 
 391    of classes in the source code */
 
 394   pkgProblemResolver "false";
 
 395   pkgProblemResolver::ShowScores "false";
 
 396   pkgDepCache::AutoInstall "false"; // what packages apt install to satify dependencies
 
 397   pkgDepCache::Marker "false"; 
 
 399   pkgAcquire::Worker "false";
 
 400   pkgAcquire::Auth "false";
 
 402   pkgDPkgProgressReporting "false";
 
 403   pkgOrderList "false";
 
 404   pkgAutoRemove "false";   // show information about automatic removes
 
 406   pkgInitialize "false";   // This one will dump the configuration space
 
 408   Acquire::Ftp "false";    // Show ftp command traffic
 
 409   Acquire::Http "false";   // Show http command traffic
 
 410   Acquire::Https "false";   // Show https debug
 
 411   Acquire::gpgv "false";   // Show the gpgv traffic
 
 412   aptcdrom "false";        // Show found package files
 
 414   acquire::netrc "false";  // netrc parser
 
 418 /* Whatever you do, do not use this configuration file!! Take out ONLY
 
 419    the portions you need! */
 
 420 This Is Not A Valid Config File