[Fedora-livecd-list] [PATCH] --addXdir , facility to easily add external directories to target sysrootfs OR isofs

Jeremy Katz katzj at redhat.com
Thu Jul 26 18:51:35 UTC 2007


On Thu, 2007-07-26 at 10:22 -0500, Douglas McClendon wrote:
> Jeremy Katz wrote:
> > A few thoughts...
> > 
> > On Wed, 2007-07-25 at 18:06 -0500, Douglas McClendon wrote:
> >> I know there may already be some similar functionality already in revisor, this 
> >> patch adds it to livecd-tools
> >>
> >> The two new options are
> >>
> >> --addidir=<directory>
> >> and
> >> --addsdir=<directory>
> > 
> > First off, at a glance, the options just look like gobbledy-gook to
> > me :-)  In cases like this, it's almost always better to spell out what
> > is meant rather than an abbreviation that isn't immediately obvious.
> 
> aesthetics.  rename however you like.

Yeah, definitely a minor quibble that's easy to resolve.

> > The second thing is that having this as command-line options leads to an
> > increased chance of the live image build not being reproducible.  As
> > much as possible, the movement has been to specifying things within the
> > kickstart config rather than having command line options for specifying
> > things.  
> 
> I think this is where ideals meet practicality.  But to work with you, would you 
> be happier with a patch, where say, instead of --addsdir, there was 
> --add-user-system-data, which behaved exactly the same, but the implementation 
> mechanism included rolling the directory into a dirt simple noarch rpm with 
> almost no data in the specfile?  I.e. do the rpmbuild -bs, rpmbuild --rebuild, 
> and createrepo for the user?

That doesn't really change anything, though.  It still fundamentally
means that the image can't be reproducibly created from its config.

> > In fact, I'd like to overall entirely deprecate the use of most of the
> > command-line arguments in favor of having them specified in the
> > kickstart config.  And at the same time, I also want to look at making
> > sure that we include the kickstart config on the image that's created so
> > that people can more easily see how the image was created, modify it,
> > and then create their own.  What do other people think of this?  The
> > things which really "matter" which aren't currently expressed in the
> > config are prelink and the uncompressed size of the rootfs.  The latter
> > is easy (we just add interpretation of part / --size ...).  Adding the
> > former is probably not terrible to do either.
> > 
> >> Both may be invoked any number of times.  The contents of the directories 
> >> specified, will be copied to the target livecd.  addsdir adds the contents to 
> >> the rootfs of the target, while addidir adds the contents to the iso9660fs of 
> >> the target.
> > 
> > Then when and what of these occurring seems fine.  Although I wonder if
> > we'd be better off just making it so that you could do %post --nochroot
> > and also moving %post to be run later
> 
> I just saw a mention on kickstart-list, about using just such a scenario, and 
> wondered if it was really possible.  Of course, as far as reproducability goes, 
> it is a bit wonky, as %post --nochroot seems to me to be just as much a supreme 
> breaking of reproducability as the --addsdir thing.  I.e. the environment 
> outside the chroot, is going to be entirely different for every build 
> (especially traditional anaconda kickstart usage, versus livecd-creator usage).

The difference is that you can at least keep it in mind and be doing,
eg, a wget to grab files.  Sure, it doesn't prevent you from doing
something like using a local file, but there's nothing now that stops
you from using a file:// repo.  

> Also, in my opinion, adding things to the isodir really has /nothing/ to do with 
> the system being defined in the kickstart, and really should be separate (maybe 
> even separate tool, 'livecd-repacker'?).  I mean, suppose you want to roll your 
> own mp3/ogg library on your CD.  Not the sort of thing that seems appropriate 
> for a kickstart.

But if I want to include a library of demos or videos about Fedora to
help educate a new user, I do want them there.  So yes, there are cases
why reproducibility might not matter.  But as a general case, it really
does matter quite a bit

Jeremy




More information about the livecd mailing list