The automated installation of a port may prove difficult if it
is interactive and does not support make BATCH=YES
install
. For a few ports the interaction is nothing more
than typing yes
when asked to accept some license.
If the answer is read from standard input, simply pipe the
appropriate answers to the installation command (e.g. yes |
make install
. For other ports you need to investigate
where exactly the interactive command is located and deal with it
appropriately. See the examples above for
print/acroread8
and
java/jdk16
.
You should also be aware of upgrade issues for config files.
In general you do not know when and if the format or contents of a
config file changes. A new group may be added to
/etc/group
, or /etc/passwd
may gain another field. All of this has happened in the past. Simply
copying a config file from the old to the new system may be enough
most of the time, but in these cases it was not. If you update a
system the canonical way (by overwriting the old files) you are
expected to use mergemaster
to deal with changes
where you effectively want to merge your local config with
potentially new items. Unfortunately, mergemaster
is only available for base system files, not for anything installed
by ports. Some third party software seems to be especially designed
to keep me on my toes by changing the config file format every
fortnight. To detect such silent changes, I keep a copy of the
modified config files in the same place where I keep
stage_3.mk
and compare the result with a
make rule, e.g. for
apache's httpd.conf
in target config_apache
with
If the diff is innocuous I can make the message go away with
cp /usr/local/etc/apache2/httpd.conf
httpd.conf
.
I have used FreeBSD From Scratch several times to update a
7-CURRENT
to 7-CURRENT
and
8-CURRENT
to 8-CURRENT
, i.e.
I have never tried to install a 8-CURRENT
from
a 7-CURRENT
system or vice versa. Due to the
number of changes between different major release numbers I would
expect this process to be a bit more involved. Using FreeBSD From Scratch
for upgrades within the realm of a STABLE
branch
should work painlessly (although I have not yet tried it.)
This, and other documents, can be downloaded from http://ftp.FreeBSD.org/pub/FreeBSD/doc/
For questions about FreeBSD, read the
documentation before
contacting <questions@FreeBSD.org>.
For questions about this documentation, e-mail <doc@FreeBSD.org>.