Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Remix Any Linux with JWM window manager HOW-TO #
- # This work is based off Ubuntu 16.04. May differ for others distros #
- # Written by Security XIII on 25 April 2016 #
- # I wanted to make small distro with presentation software to boot fast and start presentation out of the box
- # So I hope this will help those who are unaware of the process. Here are some useful links:
- # 1. LiveCD customization (a bit outdated, see above) - https://help.ubuntu.com/community/LiveCDCustomization
- # 2. Installing JWM - http://ubuntuforums.org/showthread.php?t=174188
- # Following is instructions themselves. Before start, grab your remix ISO from your source.
- # Let's say we have remixing iso in a directory ~/remix
- cd ~/remix
- mkdir mnt # Make directory to mount the ISO disk
- mount -o loop your-remix.iso mnt # Mount the disk to mnt dir
- mkdir extract-cd # Directory to unpack ISO
- sudo rsync -a mnt/ extract-cd # Copy ISO to our directory
- sudo unsquashfs mnt/casper/filesystem.squashfs # Unpack the squashfs
- sudo mv squashfs-root edit # Let's name our unpacked FS "edit" for convenience
- sudo cp /etc/resolv.conf edit/etc/ # Make the internet work in chroot
- sudo cp /etc/hosts edit/etc/
- sudo mount --bind /dev/ edit/dev # Mount the important filesystems
- sudo mount --bind /proc/ edit/proc
- sudo mount -o bind /run/ edit/run # Mount additional filesystems
- sudo chroot edit # Chroot inside the unpacked squashfs
- # WE ARE IN CHROOT NOW! #
- export HOME=/root
- export LC_ALL=C
- apt install xorg nano wget xz-utils build-essential libx11-dev gettext
- apt install libreoffice-impress
- cd home
- wget https://joewing.net/projects/jwm/releases/jwm-2.3.5.tar.xz --no-check-certificate
- tar xf jwm*.tar.xz
- cd jwm
- ./configure # Hope everything went okay here!
- make # Compilation should take few minutes or less
- make install # Let's install the JWM
- mkdir /usr/share/xsession
- nano /usr/share/xsession/jwm.desktop
- # Insert following text into the file - double check JWM exists, then save file Ctrl+O [enter]
- [Desktop Entry]
- Encoding=UTF-8
- Name=JWM
- Comment=This is the JWM window manager
- Exec=/usr/local/bin/jwm
- Type=Application
- # End of text file
- echo "exec /usr/local/bin/jwm" > ~/.xsession
- # Let's say we finished our changes. Cleaning up procedure (to make resulting ISO lighter)
- apt clean
- apt autoclean
- rm -rf /tmp/*
- rm /var/lib/dbus/machine-id
- umount /proc || umount -lf /proc # Start to unmount our filesystem
- umount /sys
- umount /dev/pts
- exit # Let's finally exist chroot and get back to our env
- # WE ARE NOT IN CHROOT NOW! Chroot has ended here. #
- sudo umount edit/dev
- sudo chmod +w extract-cd/casper/filesystem.manifest
- sudo su
- chroot edit dpkg-query -W --showformat='${Package} ${Version}\n' > extract-cd/casper/filesystem.manifest
- exit
- sudo cp extract-cd/casper/filesystem.manifest extract-cd/install/filesystem.manifest-desktop
- sudo sed -i '/ubiquity/d' extract-cd/casper/filesystem.manifest-desktop
- sudo sed -i '/casper/d' extract-cd/casper/filesystem.manifest-desktop
- sudo rm extract-cd/casper/filesystem.squashfs
- sudo mksquashfs edit extract-cd/casper/filesystem.squashfs
- sudo su
- printf $(du -sx --block-size=1 edit | cut -f1) > extract-cd/casper/filesystem.size
- exit
- sudo nano extract-cd/README.diskdefines # Edit DISKNAME here if you like
- cd extract-cd # Let's recreate all the MD5SUMs
- sudo rm md5sum.txt # We need to remove the old onces to start
- find -type f -print0 | sudo xargs -0 md5sum | grep -v isolinux/boot.cat | sudo tee md5sum.txt
- #
- # CONGRADULATIONS IF YOU GET HERE! NOW LET'S BUILD THE OUR VERY-OWN CUSTOM-CRAFTED ISO! #
- #
- sudo mkisofs -D -r -V "$IMAGE_NAME" -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o ../mytestrelease.iso .
- # If everything went well, you will have the "mytestrelease.iso" laying in the ~/remix folder.
- # Good luck in your own way! Contact me if needed at securityxiii at gmail dot com.
Add Comment
Please, Sign In to add comment