On Fri, 2007-04-27 at 16:02 -0400, John (J5) Palmieri wrote:
On Fri, 2007-04-27 at 15:56 -0400, Jeremy Katz wrote:
> On Tue, 2007-04-24 at 15:01 -0400, John (J5) Palmieri wrote:
> > In the pilgrim tool it is fairly easy to inherit from "stream" files
> > just expand a base image into a newer image. This means I can create a
> > base description for an image, with all the required rpms and %post
> > processing and then define another image description which adds more
> > rpms and does more post processing. We can even override hooks and
> > files in the child description. For instance our liveCD SDK has added
> > gnome packages but does not download the ondisk html library to save
> > space. This allows me to make changes to the base image which is
> > automatically reflected in the livecd image builds.
> > The real reason we need this is for country builds. I know that the
> > livecd tools already have the ability to take an iso and add to it but I
> > also need the ability to do a build from scratch. First can the current
> > kickstart file format handle this and second how can we support this if
> > it does not?
> So there's the answer we have now, and then there's the longer term
> answer that's been discussed a tiny bit.
> The now answer is that you use %include and with that can do a
> substantial amount of what you're looking for. Basically, you could
> have your base config and then a country build could be
> %include /path/to/base.cfg
> lang fr_FR.UTF-8
> (or something like that). And that should work to let you get at
> least some simple inheritance.
> For more complex needs, we've talked a little in the past (where we is
> mostly clumens and I, but a few others also at various points) on ways
> to get a better concept of inheritance with the kickstart configs. The
> idea being that you parse one config, then the next, then the next.
> Mostly what's needed there is just a little work in pykickstart to
> ensure that doing a second parse pass doesn't blow up the world plus
> defining the syntax of how you say "inherit from foo"
Does this also pick up post scripts and run them in the right order?
I think the former does, but am not 100% sure without trying. The more
complex and not done part definitely should when the code is written :-)