diff --git a/man1/prtsweep.1 b/man1/prtsweep.1 index df10fa5..6223868 100644 --- a/man1/prtsweep.1 +++ b/man1/prtsweep.1 @@ -13,7 +13,7 @@ prtsweep \- sweep old files from the ports directories .SH DESCRIPTION The \fIprtsweep\fP perl script sweeps port directories, deleting unneeded files. -"Unneeded" here means not listed in the .signatures file, and not the +"Unneeded" here means not listed in the .signature file, and not the built package .PP .nf @@ -22,7 +22,7 @@ built package .PP All other files are removed. If a traversal of the ports collections in automatic mode reveals an empty directory (or one of the arguments in [PORTDIR ...] is similarly missing -the required \fBPkgfile\fP), the directory can be removed with the \fI\-d\fP option. +the required \fB.signature\fP file), the directory can be removed with the \fI\-d\fP option. .SH OPTIONS The following options are supported: @@ -42,9 +42,9 @@ should not happen, even if you use prtsweep \-d / .fi .IP -To remove these moved ports completely you can run \fIprtsweep\fP twice: -the first pass removes everything under the directory of the dropped port, -the second pass removes the empty directory. +In practice, regular synchronization using \fBports(8)\fP eventually removes +such empty directories. This option is retained for backwards compatibility so that +non-interactive scripts can continue calling \fBprtsweep\fP the way they always have. .TP .I "\-p" Also removes the built package. @@ -54,10 +54,10 @@ Dry-run. Do not remove anything really. .TP .I "\-q" Quiet mode. Print messages only for the files that are deleted, not for the -file that are kept. Equivalent to \fBprtsweep [args] | grep -v "keeping"\fP. +files that are kept. Equivalent to \fBprtsweep [args] | grep -v "keeping"\fP. .SH ENVIRONMENT In automatic mode, \fBprtsweep\fP gets a list of active port collections -from /etc/ports/*.{rsync,httpup}, and for each collection descends into the +from /etc/ports/*.{rsync,httpup,git}, and for each collection descends into the individual port directories to read the associated .signature files. After reading .signature, \fBprtsweep\fP will be able to distinguish between needed sources and unneeded clutter. \fBprtsweep\fP then compares the contents @@ -71,11 +71,24 @@ ending in pkg.tar.*) are normally shielded from deletion, except when you pass t no matter how old. If you want to keep the current version of the built package but delete older versions, you can use the companion script \fBprtwash(1)\fP instead. .PP -After a real cleaning by \fBprtsweep\fP (not dry-run mode), each port -directory should contain only the Pkgfile, source files listed in .signature, -and the built package (if present, and option -p was not given on the command -line). - +After a real cleaning by \fBprtsweep\fP (not dry-run mode), each port directory should +contain nothing other than the mandatory port files (Pkgfile, .signature, .footprint), +source files listed in .signature, READMEs and pre-/post-install scripts, and the built +package (if present, and option -p was not given on the command line). +.SH COMPARISON WITH OTHER UTILITIES +The distinction between sources under CRUX version control (rsync, git, httpup) and tarballs +downloaded from upstream (ftp, http, https) is \fInot\fP recognized by \fBprtsweep\fP; all sources +needed to build the latest package are allowed to remain in the port's directory. The companion +script \fBprtwash(1)\fP allows you to delete the sources downloaded from upstream, yet keep the +patches and initscripts provided by CRUX maintainers. You might find \fBoldfiles(1)\fP more useful +if you have centralized directories for all downloaded sources and built packages; such a +configuration should leave your ports tree relatively uncluttered anyway. +.PP +Because \fBprtsweep\fP reads the location of port collections from version control files in +/etc/ports, any repository you curate yourself will not be detected in automatic mode. To clean +such a repository, you can run \fBprtwash(1)\fP in automatic mode (if that repository appears in a +\fIprtdir\fP line of \fI/etc/prt\-get.conf\fP), or pass the individual port directories to +\fBprtsweep\fP as command-line arguments. .SH EXAMPLES You can call \fIprtsweep\fP with one port: @@ -104,4 +117,4 @@ for all ports directories and cleans them automatically: .SH AUTHORS Martin Opel , John McQuah .SH "SEE ALSO" -prtwash(1) +prtwash(1), oldfiles(1)