PDA

View Full Version : Scripts to make KNOPPIX->custom easier . . .



teverettak
05-10-2003, 01:19 AM
I've been developing my own custom KNOPPIX-based images because I had requirements that weren't met by any of the existing images (hyper-recent kernel support, smb support, man pages 'cause I can't remember anything, etc.) and didn't have requirements that some of the others had (I don't need X, in particular).

It occurred to me that at some point in the future, I might need to take an even more recent KNOPPIX image and customize it again, and that life would be far easier if I documented the whole process. Or, rather, scripted it. So what I'm _planning_ to do is this:

Write Perl scripts that, with a modicum of user intervention, allow a user to take a knoppix_base directory (that has the contents of KNOPPIX/KNOPPIX in it) and a knoppix_custom directory and generate a "transform" file - lists of packages to remove, packages to add, files to remove (for things not covered by packages), files to add or modify, etc.

Then I plan to write more scripts that, with somewhat more user intervention, will make it possible to replay these transforms against a newer KNOPPIX image. Of course, since the roster of packages in KNOPPIX will have changed, along with dependencies and all of that, the replay system will be designed to anticipate all of the potential problems and to alert the user to them so that the transforms can be properly modified to deal with the update KNOPPIX stuff.

Before I do all this, though, I thought I'd ask if anyone has done this. It seems stupid to reinvent the wheel. Also, if I do all of this, do you think anyone would ever use them (assuming I provided some sort of minimal documentation, at least as detailed as, if not more than, the KnoppixRemasteringHowto)? There's nothing I hate worse than spending a whole bunch of time documenting something and trying to make it friendlier for others than to discover that I'm the only person in the world with my needs and that I've wasted my time trying to help people who don't need or want helping (see half of my Perl modules - some of them are getting used, though, and every time someone tells me).

Also, any hints on how I should go about this? I have a pretty good general idea, but if anyone knows of tricks or traps in talking to dpkg from Perl, please let me know!

--Toby Everett

teverettak
05-10-2003, 01:22 AM
I forgot to add, although it might be obvious, that I'm doing this from the perspective of making images that are seriously pared down (i.e. business card sized). KNOPPIX out of the box has almost everything I need, except that it doesn't fit in my wallet, and I can't stick another 650MB of stuff on the CD if I need to!

--Toby Everett

garyng
05-10-2003, 12:03 PM
Yes, I like the idea. However, may be Morphix is a better base to work on. I like its idea of multiple clooped modules as well as translucency which make local upgrade possible(don't know how stable the translucency driver is though).

Ghandalfar
05-10-2003, 11:44 PM
teverettak: I'd be interested.. I'm currently writing my own for exactly the same purpose.

I'm using bash and knx-remaster python scripts [1].

Currently I can apply custom KDE theme, rip off the packages I don't need and add my own. Scripts are basicly frontends to knx-remaster not very much work has been done but I have the idea what I want to achieve.

If you are going to work on this project I would be very interested in helping with testing/suggestion and hopefully contributing.

[1] http://homepage.hispeed.ch/py430/knoppix/

teverettak
05-12-2003, 11:39 PM
Come to think of it, there's nothing in these scripts that would be Knoppix specific. The scripts should be capable of taking any dpkg based image and comparing it with another. With that in mind, it should work fine with Morphix. As for knx-remaster, I'm looking at that right now, but it doesn't address a number of my big issues:
* ability to take already customized image and compare it to the Knoppix source
* ability to verify a replay against a new image

It looks, however, like the two of them can work hand-in-hand. That is to say, use knx-remaster to create your new custom image, hand-tweak it as you desire, and then say, "Oh, I need to figure out how to replay that against the latest rev of Knoppix - let me compare the images, generate a replay, etc., etc."

With that in mind, I will forge on:)

--Toby Everett

probono
05-13-2003, 07:25 AM
Is there any progress in this project yet?

Ghandalfar
05-15-2003, 03:52 PM
teverettak:

if you look at howtos they basicly tell you what to do in chrooted enviroment and how to tweak certain system files. Writing script for that shouldn't be too much of a problem.

But how do you plan to compare two images?

I guess you could compare package list and and certain files that you mannualy changed.. but nothing more?