What can I find here?

Rants and thoughts about PC's and Operating Systems, much of it drivel, some of it useful.

Remastering GRML

Thursday, May 20, 2010

It is recommended that you use grml-live to build your own disc.
I did this in Sid while booted to the grml kernel 2.6.33-grml64

Remastering grml isn't a great idea always.
This solution works if you need:
Live disc with support for YOUR hardware out of the box.
Simple remastering.
debootstrap new installations

I obtained this info here but some info is outdated and simply wrong:
http://wiki.grml.org/doku.php?id=remastering

Loop mount the iso image:
mkdir -p GRML/isomount
cd GRML
# mount -o loop /path/to/grml.iso isomount/


Create a local build directory excluding the original squashfs image - we'll create our own in a moment:
$ mkdir isonew
$ rsync -av --exclude=live/grml64-small.squashfs isomount/ isonew/


Loop mount the squash image itself:
$ mkdir squashmount unsquashed
# mount -o loop -t squashfs isomount/live/grml64-small.squashfs squashmount/
# cp -a squashmount/* unsquashed


Your build environment is complete at this point. Build:

# chroot ~/GRML/unsquashed /usr/bin/zsh
Mount proc and devpts
# mount -t proc none /proc
# mount -t devpts none /dev/pts
# dhclient wlan0
# apt-get update
# apt-get install BLAH BLAH BLAH
# apt-get dist-upgrade
(not recommended <- this will create problems.
# apt-get clean
Locales
# nano /etc/locale.gen (<- optional)
# apt-get install locales localepurge
# localegen
# localepurge

Create a new package list from chroot
# cd
# dpkg -l|grep ii > grml64-small-packages.txt

The new package list lives in unsquashed/root

Important that you umount /proc and /dev/pts prior to leaving chroot
# umount /proc /dev/pts
CTRL+D to leave chroot

mv unsquashed/root/grml64-small-packages.txt isonew/GRML/

Add your custom squashfs image to the build:
# mksquashfs-lzma ./unsquashed new-grml64-small.squashfs
# cp new-grml64-small.squashfs isonew/live/grml64-small.squashfs
# md5sum isonew/live/grml64-small.squashfs
# nano isonew/GRML/md5sums


- Change this line

9af7ef064b4c4a3c447b1ac21f16455d ../live/grml64-small.squashfs

# chmod 644 isonew/GRML/md5sums

Make the new iso image:
# mkisofs -pad -l -r -J -v -V "grml Custom-05.2010" -no-emul-boot -boot-load-size 4 -boot-info-table -b boot/isolinux/isolinux.bin -c boot/isolinux/boot.cat -hide-rr-moved -o grml-05.15.10.iso ./isonew


TIPS:
You can add a grml kernel to your system and boot it. This way you're working with the same kernel as in the remaster. Works on Sid.
deb http://deb.grml.org/ grml-testing main
You may wish to also install zsh on your remastering system to make this easier.

Change wallpaper here:
unsquashed/usr/share/grml/desktop.jpg
Just delete and reset the symlink
OR edit
unsquashed/etc/skel/.xinitrc.d/grml_wallpaper/

For user specific configuration, copy your custom .dotfiles to /etc/skel
 

1

live cd (1) remaster (1)

2

live cd (1) remaster (1)

3

live cd (1) remaster (1)