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.
 
  20 quiet::NoUpdate "true"; // never update progress information - included in -q=1
 
  22 // Options for APT in general
 
  26   Architectures { "amd64"; "armel"; };
 
  27   Build-Essential "build-essential";
 
  29   NeverAutoRemove  { "linux-image.*";  };  // packages that should never
 
  30                                             // considered for autoRemove
 
  32   // Options for apt-get
 
  35      Host-Architecture "armel";
 
  37      AllowUnauthenticated "false";        // packages from unauthenticated
 
  38      AutomaticRemove "false";       
 
  39      HideAutoRemove "false";
 
  40      Download-Only "false";
 
  43      Force-Yes "false";             // I would never set this.
 
  46      Show-Upgraded "false";
 
  47      Show-Versions "false";
 
  60      Build-Dep-Automatic "true";
 
  61      Show-User-Simulation-Note "true";
 
  69      RecurseDepends "false";
 
  87      Pre-Invoke {"touch /var/lib/apt/pre-update-stamp"; };
 
  88      Post-Invoke {"touch /var/lib/apt/post-update-stamp"; };
 
  93      TrustCDROM "false";            // consider the CD-ROM always trusted
 
  96   // Some general options
 
  98   Clean-Installed "true";
 
  99   Immediate-Configure "true";      // DO NOT turn this off, see the man page
 
 100   Force-LoopBreak "false";         // DO NOT turn this on, see the man page
 
 101   Cache-Start "20971520";
 
 102   Cache-Grow "1048576";
 
 106   // consider Recommends, Suggests as important dependencies that should
 
 107   // be installed by default
 
 108   Install-Recommends "true";
 
 109   Install-Suggests "false";
 
 110   // reverse Recommends or Suggests prevent autoremoval
 
 111   AutoRemove::RecommendsImportant "true";
 
 112   AutoRemove::SuggestsImportant "true";
 
 114   // consider dependencies of packages in this section manual
 
 115   Never-MarkAuto-Sections {"metapackages"; "universe/metapackages"; };
 
 117   // Write progress messages on this fd (for stuff like base-config)
 
 119   // Keep the list of FDs open (normally apt closes all fds when it
 
 123   // control parameters for cron jobs by /etc/cron.daily/apt
 
 126     BackupArchiveInterval "0";
 
 127     // - Backup after n-days if archive contents changed.(0=disable)
 
 130     // - Backup level.(0=disable), 1 is invalid.
 
 132     // APT::Archives::MaxAge "0"; (old, deprecated)
 
 134     // - Set maximum allowed age of a cache package file. If a cache 
 
 135     //   package file is older it is deleted (0=disable)
 
 137     // APT::Archives::MinAge "2"; (old, deprecated)
 
 139     // - Set minimum age of a package file. If a file is younger it
 
 140     //   will not be deleted (0=disable). Useful to prevent races
 
 141     //   and to keep backups of the packages for emergency.
 
 143     // APT::Archives::MaxSize "0"; (old, deprecated)
 
 144     MaxSize "0"; // (new)
 
 145     // - Set maximum size of the cache in MB (0=disable). If the cache
 
 146     //   is bigger, cached package files are deleted until the size
 
 147     //   requirement is met (the oldest packages will be deleted 
 
 150     Update-Package-Lists "0";
 
 151     // - Do "apt-get update" automatically every n-days (0=disable)
 
 153     Download-Upgradeable-Packages "0";
 
 154     // - Do "apt-get upgrade --download-only" every n-days (0=disable)
 
 156     Unattended-Upgrade "0";
 
 157     // - Run the "unattended-upgrade" security upgrade script 
 
 158     //   every n-days (0=disabled)
 
 159     //   Requires the package "unattended-upgrades" and will write
 
 160     //   a log in /var/log/unattended-upgrades
 
 162     AutocleanInterval "0";
 
 163     // - Do "apt-get autoclean" every n-days (0=disable)
 
 166     // - Send report mail to root
 
 167     //   0:  no report             (or null string)
 
 168     //   1:  progress report       (actually any string)
 
 169     //   2:  + command outputs     (remove -qq, remove 2>/dev/null, add -d)
 
 174 // Options for the downloading routines
 
 177   Queue-Mode "host";       // host|access
 
 179   Source-Symlinks "true";
 
 180   ForceHash "sha256"; // hashmethod used for expected hash: sha256, sha1 or md5sum
 
 182   PDiffs "true";     // try to get the IndexFile diffs
 
 183   PDiffs::FileLimit "4"; // don't use diffs if we would need more than 4 diffs
 
 184   PDiffs::SizeLimit "50"; // don't use diffs if size of all patches excess
 
 185                           // 50% of the size of the original file
 
 187   Check-Valid-Until "true";
 
 188   Max-ValidTime "864000"; // 10 days
 
 189   Max-ValidTime::Debian-Security "604800"; // 7 days, label specific configuration
 
 191   // HTTP method configuration
 
 194     Proxy "http://127.0.0.1:3128";
 
 195     Proxy::http.us.debian.org "DIRECT";  // Specific per-host setting
 
 198     AllowRedirect  "true";
 
 200     // Cache Control. Note these do not work with Squid 2.0.2
 
 202     Max-Age "86400";     // 1 Day age on index files
 
 203     No-Store "false";    // Prevent the cache from storing archives    
 
 204     Dl-Limit "7";        // 7Kb/sec maximum download rate
 
 205     User-Agent "Debian APT-HTTP/1.3";
 
 210   // HTTPS method configuration: uses the http
 
 212   // - cache-control values
 
 213   // - Dl-Limit, Timout, ... values
 
 214   // if not set explicit for https
 
 216   // see /usr/share/doc/apt/examples/apt-https-method-example.conf.gz
 
 221         SslCert "/etc/apt/some.pem";
 
 222         CaPath  "/etc/ssl/certs";
 
 224         AllowRedirect  "true";
 
 227         AllowRedirect  "true";
 
 229         // Cache Control. Note these do not work with Squid 2.0.2
 
 231         Max-Age "86400";     // 1 Day age on index files
 
 232         No-Store "false";    // Prevent the cache from storing archives
 
 233         Dl-Limit "7";        // 7Kb/sec maximum download rate
 
 235         User-Agent "Debian APT-CURL/1.0";
 
 240     Proxy "ftp://127.0.0.1/";
 
 241     Proxy::http.us.debian.org "DIRECT"; // Specific per-host setting
 
 243     /* Required script to perform proxy login. This example should work
 
 247        "USER $(PROXY_USER)";
 
 248        "PASS $(PROXY_PASS)";
 
 249        "USER $(SITE_USER)@$(SITE):$(SITE_PORT)";
 
 255     /* Passive mode control, proxy, non-proxy and per-host. Pasv mode
 
 256        is preferred if possible */
 
 258     Proxy::Passive "true";
 
 259     Passive::http.us.debian.org "true"; // Specific per-host setting
 
 264     // do auto detection of the cdrom mountpoint
 
 266     // when auto-detecting, only look for cdrom/dvd. when this is false
 
 267     // it will support any removable device as a "cdrom" source
 
 270     // cdrom mountpoint (needs to be defined in fstab if AutoDetect is not used)
 
 273     // You need the trailing slash!
 
 283    Options {"--ignore-time-conflict";}  // not very useful on a normal system
 
 292     Order { "uncompressed"; "gz"; "lzma"; "bz2"; };
 
 304   // Location of the changelogs with the placeholder @CHANGEPATH@ (e.g. "main/a/apt/apt_1.1")
 
 305   Changelogs::URI::Origin::Debian "http://metadata.ftp-master.debian.org/changelogs/@CHANGEPATH@_changelog";
 
 311   // Location of the state dir
 
 315      status "/var/lib/dpkg/status";
 
 316      extended_states "extended_states";
 
 317      cdroms "cdroms.list";
 
 320   // Location of the cache dir
 
 321   Cache "var/cache/apt/" {
 
 322      Archives "archives/";
 
 323      // backup directory created by /etc/cron.daily/apt
 
 325      srcpkgcache "srcpkgcache.bin";
 
 326      pkgcache "pkgcache.bin";     
 
 334      Preferences "preferences";
 
 335      PreferencesParts "preferences.d";
 
 336      SourceList "sources.list";
 
 337      SourceParts "sources.list.d";
 
 338      VendorList "vendors.list";
 
 339      VendorParts "vendors.list.d";
 
 340      Trusted "trusted.gpg";
 
 341      TrustedParts "trusted.gpg.d";
 
 344   // Locations of binaries
 
 346      methods "/usr/lib/apt/methods/";
 
 349      dpkg "/usr/bin/dpkg";
 
 350      dpkg-source "/usr/bin/dpkg-source";
 
 351      dpkg-buildpackage "/usr/bin/dpkg-buildpackage";
 
 352      apt-get "/usr/bin/apt-get";
 
 353      apt-cache "/usr/bin/apt-cache";
 
 356   // Location of the logfile
 
 359         History "history.log";
 
 365         // Media AutoDetect mount path
 
 366         MountPath "/media/apt";
 
 372         // Media AutoDetect mount path
 
 373         MountPath "/media/apt";
 
 377 // Things that effect the APT dselect method
 
 380    Clean "auto";   // always|auto|prompt|never
 
 383    PromptAfterUpdate "no";
 
 389    // let apt aggressivly use dpkg triggers
 
 391    ConfigurePending "true";
 
 393    // Probably don't want to use force-downgrade..
 
 394    Options {"--force-overwrite";"--force-downgrade";}
 
 396    // Auto re-mounting of a readonly /usr
 
 397    Pre-Invoke {"mount -o remount,rw /usr";};
 
 398    Post-Invoke {"mount -o remount,ro /usr";};
 
 400    Chroot-Directory "/";
 
 402    // Prevents daemons from getting cwd as something mountable (default)
 
 405    // Build options for apt-get source --compile
 
 406    Build-Options "-b -uc";
 
 408    // Pre-configure all packages before they are installed using debconf.
 
 409    Pre-Install-Pkgs {"dpkg-preconfigure --apt --priority=low --frontend=dialog";};
 
 411    // Flush the contents of stdin before forking dpkg.
 
 414    // Control the size of the command line passed to dpkg.
 
 418    // controls if apt will apport on the first dpkg error or if it 
 
 419    // tries to install as many packages as possible
 
 423 /* Options you can set to see some debugging text They correspond to names
 
 424    of classes in the source code */
 
 427   pkgProblemResolver "false";
 
 428   pkgProblemResolver::ShowScores "false";
 
 429   pkgDepCache::AutoInstall "false"; // what packages apt install to satify dependencies
 
 430   pkgDepCache::Marker "false"; 
 
 433   pkgAcquire::Worker "false";
 
 434   pkgAcquire::Auth "false";
 
 436   pkgDPkgProgressReporting "false";
 
 437   pkgOrderList "false";
 
 438   pkgPackageManager "false"; // OrderList/Configure debugging
 
 439   pkgAutoRemove "false";   // show information about automatic removes
 
 441   pkgInitialize "false";   // This one will dump the configuration space
 
 443   Acquire::Ftp "false";    // Show ftp command traffic
 
 444   Acquire::Http "false";   // Show http command traffic
 
 445   Acquire::Https "false";   // Show https debug
 
 446   Acquire::gpgv "false";   // Show the gpgv traffic
 
 447   Acquire::cdrom "false";   // Show cdrom debug output
 
 448   aptcdrom "false";        // Show found package files
 
 450   acquire::netrc "false";  // netrc parser
 
 451   RunScripts "false";      // debug invocation of external scripts  
 
 454 pkgCacheGen::Essential "native"; // other modes: all, none, installed
 
 456 /* Whatever you do, do not use this configuration file!! Take out ONLY
 
 457    the portions you need! */
 
 458 This Is Not A Valid Config File