# poudlist-all.sh
## Description
A small script to generate a list of all ports installed, excluding leaf ports which you don't want to be rebuilt in conjunction of others.
The author created this script because `poudriere bulk -a -j jailname` forces rebuilding ALL ports, which any of ports they depends on are updated, regardless it's too time-consuming or not.
## Usage
No command line arguments.Simply run it as a bourne shell script.
Once the resulting list is generated (default: /poudriere/pkglist.all), you can run `poudriere bulk -f /poudriere/pkglist.all -j jailname` and rebuild too huge monster leaves once it finishes.
## Configuing the script
No configuration files are supported.
You need to edit the script and set variables in it.
### Variables for configuration
#### BLOCKLISTS
ports origins you want to block from building.
Each origins must be the form poudriere can accept.
Note that poudriere does not block building listed ports if it is depended upon by any non-listed ports.
Beware! If the origin is NOT a leaf ports, you must specify ALL origins of the ports/pkgs which depends on it, for example, japanese/libreoffice as the actual leaf of editors/libreoffice must be specified in conjunction with editors/libreoffice.
#### PORTSDIR
The directory where ports tree to be used exists.
Default is where vanilla FreeBSD expects: /usr/ports
#### LISTDIR
The directory where the list is generated.
Default is: /poudriere
#### LISTFILE
The file name of the list to be generated.
Default is: pkglist.all
#### TMPDIR
The directory where temporary working file is generated.
Requires Read/Write permission for the user running this script.
#### TMPFILE
The file name of the temporary working file to be used.
Default is the string of LISTFILE appended uid, date and time.
So would be no need to modify.