Update documentation
This commit is contained in:
parent
c090c722a8
commit
68d9233e01
136
README.md
136
README.md
|
@ -10,6 +10,8 @@ sudo apt-get install \
|
||||||
squashfs-tools \
|
squashfs-tools \
|
||||||
genisoimage \
|
genisoimage \
|
||||||
syslinux \
|
syslinux \
|
||||||
|
syslinux-utils \
|
||||||
|
imagemagick \
|
||||||
isolinux
|
isolinux
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -258,7 +260,139 @@ sudo umount $HOME/live-ubuntu-from-scratch/chroot/run
|
||||||
```
|
```
|
||||||
sudo cp /usr/lib/ISOLINUX/isolinux.bin image/isolinux/
|
sudo cp /usr/lib/ISOLINUX/isolinux.bin image/isolinux/
|
||||||
|
|
||||||
sudo cp /usr/lib/syslinux/modules/bios/ldlinux.c32 image/isolinux/
|
sudo cp /usr/lib/syslinux/modules/bios/{chain,gfxboot,ldlinux,libutil,libcom32,vesamenu}.c32 image/isolinux/
|
||||||
|
|
||||||
sudo cp chroot/boot/memtest86+.bin image/install/memtest
|
sudo cp chroot/boot/memtest86+.bin image/install/memtest
|
||||||
```
|
```
|
||||||
|
## Boot Instructions
|
||||||
|
|
||||||
|
1. Access build directory
|
||||||
|
```
|
||||||
|
cd $HOME/live-ubuntu-from-scratch
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Create image/isolinux.txt
|
||||||
|
```
|
||||||
|
cat <<EOF > image/isolinux.txt
|
||||||
|
splash.rle
|
||||||
|
************************************************************************
|
||||||
|
|
||||||
|
This is an Ubuntu from scratch Live CD.
|
||||||
|
|
||||||
|
For the default live system, enter "live". To run memtest86+, enter "memtest"
|
||||||
|
|
||||||
|
************************************************************************
|
||||||
|
EOF
|
||||||
|
```
|
||||||
|
|
||||||
|
## Splash screen
|
||||||
|
|
||||||
|
1. Access build directory
|
||||||
|
```
|
||||||
|
cd $HOME/live-ubuntu-from-scratch
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Create image 640x480 in png format (splash.png)
|
||||||
|
|
||||||
|
3. Convert png image to ppm (indexed 16 colors)
|
||||||
|
```
|
||||||
|
convert +dither -colors 16 splash.png splash.ppm
|
||||||
|
```
|
||||||
|
|
||||||
|
4. Convert ppm to rle
|
||||||
|
```
|
||||||
|
ppmtolss16 '#ffffff=7' < splash.ppm > splash.rle
|
||||||
|
```
|
||||||
|
|
||||||
|
5. Move image
|
||||||
|
```
|
||||||
|
sudo mv splash.rle image/
|
||||||
|
```
|
||||||
|
|
||||||
|
## Boot-loader configuration
|
||||||
|
|
||||||
|
1. Access build directory
|
||||||
|
```
|
||||||
|
cd $HOME/live-ubuntu-from-scratch
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Create image/isolinux.cfg
|
||||||
|
```
|
||||||
|
cat <<EOF > image/isolinux.cfg
|
||||||
|
path
|
||||||
|
include menu.cfg
|
||||||
|
default vesamenu.c32
|
||||||
|
prompt 0
|
||||||
|
timeout 50
|
||||||
|
EOF
|
||||||
|
```
|
||||||
|
3. Create image/menu.cfg
|
||||||
|
```
|
||||||
|
cat <<EOF > image/menu.cfg
|
||||||
|
menu hshift 13
|
||||||
|
menu width 49
|
||||||
|
menu margin 8
|
||||||
|
|
||||||
|
menu title Installer boot menu
|
||||||
|
include txt.cfg
|
||||||
|
```
|
||||||
|
|
||||||
|
4. Create image/txt.cfg
|
||||||
|
```
|
||||||
|
cat <<EOF > image/txt.cfg
|
||||||
|
default live
|
||||||
|
label live
|
||||||
|
menu label ^Try Ubuntu from scratch without installing
|
||||||
|
kernel /casper/vmlinuz
|
||||||
|
append file=/cdrom/preseed/ubuntu.seed boot=casper initrd=/casper/initrd quiet splash ---
|
||||||
|
label live-install
|
||||||
|
menu label ^Install Ubuntu from scratch
|
||||||
|
kernel /casper/vmlinuz
|
||||||
|
append file=/cdrom/preseed/ubuntu.seed boot=casper only-ubiquity initrd=/casper/initrd quiet splash ---
|
||||||
|
label check
|
||||||
|
menu label ^Check disc for defects
|
||||||
|
kernel /casper/vmlinuz
|
||||||
|
append boot=casper integrity-check initrd=/casper/initrd quiet splash ---
|
||||||
|
label memtest
|
||||||
|
menu label Test ^memory
|
||||||
|
kernel /install/memtest
|
||||||
|
EOF
|
||||||
|
```
|
||||||
|
|
||||||
|
## Create manifest
|
||||||
|
|
||||||
|
1. Access build directory
|
||||||
|
```
|
||||||
|
cd $HOME/live-ubuntu-from-scratch
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Generate manifest
|
||||||
|
```
|
||||||
|
sudo chroot chroot dpkg-query -W --showformat='${Package} ${Version}\n' | sudo tee image/casper/filesystem.manifest
|
||||||
|
|
||||||
|
sudo cp -v image/casper/filesystem.manifest image/casper/filesystem.manifest-desktop
|
||||||
|
|
||||||
|
REMOVE='ubiquity ubiquity-frontend-gtk ubiquity-frontend-kde casper lupin-casper live-initramfs user-setup discover1 xresprobe os-prober libdebian-installer4'
|
||||||
|
|
||||||
|
for i in $REMOVE
|
||||||
|
do
|
||||||
|
sudo sed -i "/${i}/d" image/casper/filesystem.manifest-desktop
|
||||||
|
done
|
||||||
|
```
|
||||||
|
|
||||||
|
## Compress the chroot
|
||||||
|
|
||||||
|
1. Access build directory
|
||||||
|
```
|
||||||
|
cd $HOME/live-ubuntu-from-scratch
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Create squashfs
|
||||||
|
```
|
||||||
|
sudo mksquashfs chroot image/casper/filesystem.squashfs
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Write the filesystem.size
|
||||||
|
```
|
||||||
|
printf $(sudo du -sx --block-size=1 chroot | cut -f1) > image/casper/filesystem.size
|
||||||
|
```
|
Loading…
Reference in New Issue