Can't select/install kernels in custom install.cfg - 6.1RC2
Paul Koch
paul.koch at statseeker.com
Sun May 14 01:30:26 UTC 2006
On Fri, 5 May 2006 05:33 pm, Paul Koch wrote:
> Hi,
>
> I have just upgraded some of our product build machines to 6.1RC2 and
> I am having a few problems getting a custom install.cfg to work with
> the way sysinstall now selects/installs kernels. I am trying to
> select a custom distribution set using something like the following:
>
> dists=base kernels
> distKernel=GENERIC SMP
> distSetCustom
>
> base gets installed fine but no kernels ever get installed. If I set
> any of the standard distribution sets (eg. distSetMinimal, or
> distSetEverything), then one or both of GENERIC/SMP kernels get
> installed.
>
> I am a bit lost. Did some googling, but couldn't fine anything
> relevent.
>
> Paul.
Managed to work this out by reading sysinstall code. It is quite
simple, but not so obvious from the manual page. There appears to be
two methods of selecting which dists to install:
1. Setting the distributions "by name" using something like:
...
dists=base lib32 GENERIC SMP
distSetCustom
...
installCommit
The kernels have now been separated from "base", into their own dist,
but you don't specify "dists=base kernels", instead you have to specify
the subdistribution names. Each of the dists values are looked up and
the appropriate bit set for the variables below.
2. Setting the distributions by setting several bit field environment
variables:
...
distMain=8193
distSRC=0
distX11=0
diskKernel=3
...
installCommit
The above variables are bit fields as per sysinstall/dist.h, but must be
converted to decimal because they are read using atoi(3).
Both methods work fine, but you can't select "all" within
subdistribution using method 1 without putting every subdistribution
name in (eg. for src - sbase scontrib scrypt ...), where as in method 2
you can just turn all bits on (eg. 0xFFFFF, but in decimal).
Best to refer to dist.h.
Paul.
More information about the freebsd-stable
mailing list