.\" man page for prt-get.conf .\" Johannes Winkelmann, jw@tks6.net .PU .TH prt-get.conf 5 .SH "NAME" .LP prt-get.conf - Configuration file for prt-get .SH "DESCRIPTION" This file, by default .IR /etc/prt-get.conf , is read by prt-get and prt-cache (see prt-get(8) and prt-cache(8)) .LP It might look like this: .IP .nf ### # prt-get.conf # root directories prtdir /usr/ports/core prtdir /usr/ports/opt prtdir /usr/ports/contrib prtdir /usr/ports/unofficial # use mutt and yafc from local build directory prtdir /home/jw/build:mutt, yafc # change default location of cache file cachefile /tmp/port-cache # write a log file writelog enabled logmode append logfile /tmp/log/%n.log # show compact readme information readme compact .fi .LP This example configures a few values: the location where to look for the ports, the location of the cache file, some log options, and how to notify the user about README files. If you don't specify the cache file, the default location is .B /var/lib/pkg/prt-get.cache .LP Every line can contain one configuration option. The format of each line is .B . The keys that accept arbitrary strings as their value are .B prtdir, .B cachefile, .B logfile, and the .B *command keys (see below). Every other key must be given a value from a predetermined set (e.g., yes|no). The value for .B prtdir is a directory; the value for .B cachefile is the file to be used as cache. .SH Boolean keys .B runscripts if set to yes, execute pre- and post-install scripts .B preferhigher if set to yes, prt-get will parse version strings and prefer the higher one, even if the one found in the ports tree is lower. Will influence diff, quickdiff and sysup .B useregex if set to yes, prt-get will interpret search and filter patterns in list, listinst, printf, search, dsearch and fsearch as regular expressions. .B softdeps if set to yes, during an update operation prt-get will perform a greedy search of the dependency graph, visiting any \fBinstalled\fP optional dependency of the ports specified on the command line and recursing until either a leaf node is found (port that doesn't depend on anything else) or a cycle is created. If a cycle is \fBnot\fP created by following a soft dependency, then this dependency relationship is added to the list of edges, and topological sort of the resulting graph can proceed as usual. The default is \fBsoftdeps no\fP, which means prt-get will only consider hard dependencies when walking the directed graph. .SH Overriding default commands .B makecommand, .B addcommand, .B removecommand, and .B runscriptcommand can be given to override the defaults ('pkgmk' for the makecommand, 'pkgadd' for the addcommand, 'pkgrm' for the removecommand and 'sh' for the interpreter of pre- and post-install scripts). These are expert options which should not be used in general; when used the wrong way, they can completely break prt-get's original functionality. .SH Keys that control logging .B writelog which can be set to 'enabled' or 'disabled' .B logmode which can be set to 'append' or 'overwrite' .B rmlog_on_success which can be set to 'yes' or 'no'; when set to yes, log files of successful builds will be removed .B logfile a template for the path where logs get saved. All occurences of %n in logfile are replaced with the port name and all occurences of %p are replaced with the port's path, e.g. for port gcc in core, %p would be .B /usr/ports/core and %n would be .B gcc. This allows you to have separate log files per port. Separate log files for each version and release can be achieved using the placeholders %v and %r, respectively. But if you want to enable \fBrmlog_on_uninst\fP, it is best to avoid %p, %v, and %r when specifying \fBlogfile\fP (as explained below). .B rmlog_on_uninst which can be set to 'yes' or 'no'; when set to yes, uninstalling a package will also try to delete its build log. Replacements in the template \fBlogfile\fP will be made using the \fIcurrent values\fP from the database of installed packages, and from the active repositories. If log files exist with different values of %p, %v, or %r than what the database and repositories provide, then the pattern substitutions will fail to match the names of those logs, and this feature will be a no-op. For example, suppose you specify the logfile pattern \(dq%p/.buildlogs/%n-%v-%r.log\(dq, and you have a package installed on your system through many versions, or after it has been moved from opt to contrib. Uninstalling that package would leave behind all the build logs except the latest. This pattern is also fragile with respect to repository purges; if one of your installed ports is dropped from the official repos, then either \(dq%p\(dq will expand to the path of your personal overlay (you did make a copy, right?), or it will not expand at all! See the EXAMPLES section of \fBprt\-get(8)\fP for an alternative way to tidy up your directory of build logs. .B readme can be set to 'disabled', to suppress the notification after installing a port with a README file; 'compact', to collect all the READMEs into one post-transaction output; or 'verbose', to print separate information about each port with a README file. See .B prt-get(8) and especially the readme command how to read those README files using prt-get. .LP The order of the prtdir options is important: if a port is in multiple directories, prt-get will use the one found first (directories listed first have precedence). .LP If you want to restrict the ports used from one prtdir, you can append a comma separated list of ports to be used after the path, using a colon (':') character to separate the two components .B path:package1, package2,... Note that this slows down prt-get a lot if you list a lot of packages. If you become aware of speed problems due to this feature, create a separate ports directory instead and fill it with symlinks to the ports you want. .LP You can write comments after a '#' character. If you have '#' characters in your paths, there's no way to escape them (likewise there is no way to escape ':' characters). Complain to the author if this is a problem :-) .SH "AUTHORS" Johannes Winkelmann , John McQuah .SH "SEE ALSO" prt-get(8), pkgmk(8) pkgadd(8), ports(8)