diff options
Diffstat (limited to 'doc/pacman.conf.5.txt')
-rw-r--r-- | doc/pacman.conf.5.txt | 160 |
1 files changed, 160 insertions, 0 deletions
diff --git a/doc/pacman.conf.5.txt b/doc/pacman.conf.5.txt new file mode 100644 index 00000000..2a0f88ac --- /dev/null +++ b/doc/pacman.conf.5.txt @@ -0,0 +1,160 @@ +///// +vim:set ts=4 sw=4 syntax=asciidoc noet: +///// +pacman.conf(5) +============== + +Name +---- +pacman.conf - pacman package manager configuration file + + +Synopsis +-------- +{sysconfdir}/pacman.conf + + +Description +----------- +Pacman, using manlink:libalpm[3], will attempt to read pacman.conf each time it +is invoked. This configuration file is divided into sections or repositories. +Each section defines a package repository that pacman can use when searching +for packages in '\--sync' mode. The exception to this is the options section, +which defines global options. + + +Example +------- +-------- +# +# pacman.conf +# +[options] +NoUpgrade = etc/passwd etc/group etc/shadow +NoUpgrade = etc/fstab + +[current] +Include = /etc/pacman.d/current + +[custom] +Server = file:///home/pkgs +-------- + + +Options +------- +*RootDir =* path/to/root:: + Set the default root directory for pacman to install to. + +*DBPath =* path/to/db/dir:: + Overrides the default location of the toplevel database directory. + The default is ``/var/lib/pacman/''. + +*CacheDir =* path/to/cache/dir:: + Overrides the default location of the package cache directory. The default + is ``/var/cache/pacman/pkg/''. Multiple cache directories can be specified, + and they are tried in the order they are listed in the config file. If a + file is not found in any cache directory, it will be downloaded to the + first cache directory with write access. + +*LogFile =* '/path/to/file':: + Log actions directly to a file. Default is ``/var/log/pacman.log''. + +*HoldPkg =* package ...:: + If a user tries to '\--remove' a package that's listed in `HoldPkg`, + pacman will ask for confirmation before proceeding. + +*IgnorePkg =* package ...:: + Instructs pacman to ignore any upgrades for this package when performing + a '\--sysupgrade'. + +*IgnoreGroup =* group ...:: + Instructs pacman to ignore any upgrades for all packages in this + group when performing a '\--sysupgrade'. + +*Include =* path:: + Include another config file. This file can include repositories or + general configuration options. + +*XferCommand =* /path/to/command %u:: + If set, an external program will be used to download all remote files. + All instances of `%u` will be replaced with the download URL. If present, + instances of `%o` will be replaced with the local filename, plus a + ``.part'' extension, which allows programs like wget to do file resumes + properly. + + + This option is useful for users who experience problems with built-in + http/ftp support, or need the more advanced proxy support that comes with + utilities like wget. + +*NoPassiveFtp*:: + Disables passive ftp connections when downloading packages. (aka Active Mode) + +*NoUpgrade =* file ...:: + All files listed with a `NoUpgrade` directive will never be touched during + a package install/upgrade. Do not include the leading slash when specifying + files. + +*NoExtract =* file ...:: + All files listed with a `NoExtract` directive will never be extracted from + a package into the filesystem. This can be useful when you don't want part + of a package to be installed. For example, if your httpd root uses an + 'index.php', then you would not want the 'index.html' file to be extracted + from the 'apache' package. + +*UseSyslog*:: + Log action messages through syslog(). This will insert log entries into + ``/var/log/messages'' or equivalent. + +*ShowSize*:: + Display the size of individual packages for '\--sync' and '\--query' modes. + +*UseDelta*:: + Download delta files instead of complete packages if possible. Requires + the xdelta program to be installed. + +*TotalDownload*:: + When downloading, display the amount downloaded, download rate, ETA, + and completed percentage of the entire download list list rather + than the percent of each individual download target. The progress + bar is still based solely on the current file download. + +Repository Sections +------------------- +Each repository section defines a section name and at least one location where +the packages can be found. The section name is defined by the string within +square brackets (the two above are 'current' and 'custom'). Locations are +defined with the 'Server' directive and follow a URL naming structure. If you +want to use a local directory, you can specify the full path with a ``file://'' +prefix, as shown above. + +The order of repositories in the file matters; repositories listed first will +take precedence over those listed later in the file when packages in two +repositories have identical names, regardless of version number. + +Using Your Own Repository +------------------------- +If you have numerous custom packages of your own, it is often easier to generate +your own custom local repository than install them all with the '\--upgrade' +option. All you need to do is generate a compressed package database in the +directory with these packages so pacman can find it when run with '\--refresh'. + + repo-add /home/pkgs/custom.db.tar.gz /home/pkgs/*.pkg.tar.gz + +The above command will generate a compressed database named +'/home/pkgs/custom.db.tar.gz'. Note that the database must be of the form +'{treename}.db.tar.gz', where '{treename}' is the name of the section defined in +the configuration file. That's it! Now configure your custom section in the +configuration file as shown in the config example above. Pacman will now use your +package repository. If you add new packages to the repository, remember to +re-generate the database and use pacman's '\--refresh' option. + +For more information on the repo-add command, see ``repo-add \--help'' or +manlink:repo-add[8]. + + +See Also +-------- +manlink:pacman[8], manlink:libalpm[3] + +include::footer.txt[] |