(Extreme...) Puppy remastering: Making multiboot LiveCDs

How to do things, solutions, recipes, tutorials
Post Reply
Message
Author
JohnRoberts
Posts: 145
Joined: Thu 30 Nov 2006, 00:04
Location: Greece

(Extreme...) Puppy remastering: Making multiboot LiveCDs

#1 Post by JohnRoberts »

Having used Dougal's remaster script on many occasions - to make new ISOs - I recently wondered about something:

During the script process, a temporary directory named "puppylivecdbuild" is created on the chosen location. All necessary files to rebuild the ISO are gathered in the directory... But since the ISO creation is only the last step of the (interactive) process and the script pauses before this last step, what would happen if I decided to add other, Puppy-unrelated files to this directory?
:!: Yep, they will end up being included in the new ISO!!! So it would be easy to easily embed in the ISO any directory/file as long as it does not conflict with Puppy's file names!!!

Using this process, it seemed an interesting idea, worthwhile to test, if it would be possible to make a multi-boot LiveCD using the script...

The test subject was DRBL-Live,
a powerful hard disk backup/restore/cloning LiveCD. I downloaded the ISO and prior of starting Dougal's script, I extracted all the material (in their original directory structure...) from the DRBL ISO to a directory on my HDD (using ISOmaster...). After that I started Dougal's script and normally proceeded through the remastering steps, until I reached the moment of truth, just prior of the new ISO creation. I minimized the script window and manually moved all the DRBL material from the directory it was on, to "puppylivecdbuild". And here is the only tricky part (I suggest reading prior to actually doing this, the isolinux documentation...). Isolinux searches for the configuration file EITHER on the root OR in the "isolinux" directory, not both. Since DRBL uses the second approach and it has an "isolinux" directory, it should be renamed to something else (like "isolnx") and the contained material moved to the root instead, to go along with Puppy. Careful here!. DRBL has its own isolinux.cfg, initrd.gz and vmlinuz files that are different from Puppy's files! Be careful not to overwrite Puppy's files... You must change their names to something related, like initrd1.gz and vmlinuz1...
Final steps to edit boot.msg to show available boot options (since it is no longer a pure-Puppy LiveCD) and naturally to edit isolinux.cfg. Looking into DRBL's own isolinux.cfg file it is easy to deduct that an expression group must be appended to Puppy's file, in the form:
label DRBL
kernel vmlinuz1
append initrd=initrd1.gz boot=casper ip=frommedia vga=788
(...to use the initrd1.gz - vmlinuz1 variation)

That's all there is to it... To finalize things, the remaster script can then be allowed to complete the process, and the new multi boot ISO is ready! :wink:

This whole process can also be executed in a manual, console-driven fashion (according to the Linux-Zen way :) ) using the "mkisofs" command (that is also used in the script to make the ISO). Dougal's script
seems rather friendlier I think, especially for the less experienced.

------------------------------------------------------------------------------------
Edit:
------------------------------------------------------------------------------------
1. And how about a Puppy 2.17 / Puppy 2.03CE / Puppy 2.15 CE / DRBL
multi-boot CD? :lol: Yes, absolutely feasible, just keep in mind that renaming initrd.gz & vmlinuz would break remastering and media installation (it would only be possible to remaster and install the
non-renamed version...)

2. Before repeating above procedure it is a good idea to carefully read through the isolinux documentation in order to understand how to construct the isolinux.cfg file that is the cornerstone to get good operation.
Looking into DRBL's own boot structure is very interesting as well, if someone would like a more fancy, GUI-driven boot menu (it uses a newer and broader set of tools from isolinux/syslinux)
-------------------------------------------------------------------------------------

P.S.: My warmest thanks to Dougal, Barry and Steven Shiau
Help M$ become a Linux distro maintainer...
Force-feed them with Open-Source faster than they can produce patents

User avatar
Dougal
Posts: 2502
Joined: Wed 19 Oct 2005, 13:06
Location: Hell more grotesque than any medieval woodcut

Re: (Extreme...) Puppy remastering: Making multiboot LiveCDs

#2 Post by Dougal »

JohnRoberts wrote:what would happen if I decided to add other, Puppy-unrelated files to this directory?
Doesn't the dialog actually suggest that you can do so? I've just made myself a 555MB Puppy iso -- just added a "extras" directory containing lots of apps that can be installed.
What's the ugliest part of your body?
Some say your nose
Some say your toes
But I think it's your mind

JohnRoberts
Posts: 145
Joined: Thu 30 Nov 2006, 00:04
Location: Greece

#3 Post by JohnRoberts »

...indeed it does...but going through the screens of the script during a typical remastering process (e.g. like creating a custom Puppy with more applications and user settings) - especially for GUI-addicts (like me; I must remember every night to reiterate 1000 times while snoozing: "command line, command line..." :lol: ), does not provide adequate incentive to actually read carefully (mea culpa) and pause to contemplate possible implications and further possibilities :oops: It did not occur to me that remastering could go as far as that...
Help M$ become a Linux distro maintainer...
Force-feed them with Open-Source faster than they can produce patents

JohnRoberts
Posts: 145
Joined: Thu 30 Nov 2006, 00:04
Location: Greece

#4 Post by JohnRoberts »

...for anyone interested in some (very simple) boot message formating and isolinux.cfg on the above procedure, here they are:
Attachments
customize.tar.gz
(2 KiB) Downloaded 488 times
Help M$ become a Linux distro maintainer...
Force-feed them with Open-Source faster than they can produce patents

Post Reply