switching discs during install

James Strother jstrother9109 at gmail.com
Sat Sep 6 11:13:14 UTC 2008

I just completed an install of FreeBSD 7.0 and couldn't help but wonder why
it was necessary for me to switch discs back and forth so much while
installing ported applications.  I've used FreeBSD on and off for a number
of years and this issue has always irked me a just a little bit.  It means
that I have to babysit the installation and it really does increase the time
required to perform the installation.

This is, of course, a minor issue in the grand scheme of things but it seems
easy enough to remedy.  I assume that as packages are installed the
dependencies are checked, and then required packages are installed as
necessary.  When a required package is on a different disc, then the
installer prompts the user to switch discs.  However, it should be necessary
to organize packages on the discs and during the installation such that this
never occurs.

In case this isn't obvious, let me give a quick supporting argument.  If you
were to perform an installation in which every package was installed, then
the installer would eventually resolve all dependencies and produce an
ordering in which every package could be installed without violating its
dependencies.  If we removed a package that was not required by any other
package, then clearly the same ordering could still be used to install the
remaining packages without violating any dependencies.  By extension, any
number of packages could be removed and the ordering would remain valid
provided that the remaining packages did not depend on a removed package.
So, if the packages are placed on the discs in this order and the installer
attempts to install packages in this order, then the dependencies will
always be satisfied and the user will never have to switch discs.  (As an
aside, this is really only to say that the dependency tree is a directional
acyclic graph and it has a topological sort).  There multiple orderings
which satisfy this condition.  Perhaps the easiest is to calculate is the
ordering in which packages are sorted by the number of packages that require
it.  This ordering would also tend to aggregate the most common packages on
the first discs.

Is there a reason that this wouldn't work.  Something I'm not thinking

More information about the freebsd-questions mailing list