Tuesday 18 November 2014

Re: ISO with l10n preloaded + UEFI

Hi,

Here is my operation record for making Ubuntu 14.10 Japanese Remix ISO image.
I hope this is useful.


1. build iso image running ubuntu-defaults-image

In my case, the command and options are like as follows.

$ ubuntu-defaults-image --package
../ubuntu-defaults-ja_14.10-0ubuntu1~ja1_all.deb --release utopic
--components main,restricted,universe

binary.hybrid.iso is generated if successful. But this is not support
for UEFI booting.


2. mount official iso image and copy files and directories to binary dir

$ sudo mount -o loop ubuntu-14.10-desktop-amd64.iso /path/to/somewhere
$ cd /path/to/somewhere
$ sudo cp -ar EFI/ README.diskdefines boot/ dists/ pool/ preseed/
/path/to/binary/
$ sudo cp -a .disk/base_installable .disk/cd_type /path/to/binary/.disk/


3. create .disk/release_notes_url file

$ cd /path/to/binary/
$ sudo sh -c 'echo
"https://wiki.ubuntu.com/UtopicUnicorn/ReleaseNotes/Ja" >
.disk/release_notes_url'

Change the release note url of your language.


4. overwrite .disk/info

$ sudo sh -c 'echo "Ubuntu 14.10 \"Utopic Unicorn\" - Release amd64
(`date '+%Y%m%d.1'`)" > .disk/info'


5. open preseed/ubuntu.seed with editor and add language and keyboard
settings for installer.

$ sudo chmod +w preseed/ubuntu.seed
$ sudo vi preseed/ubuntu.seed

In my case, following lines are added.

d-i debian-installer/language string ja
d-i keyboard-configuration/layoutcode string jp
d-i keyboard-configuration/modelcode string jp106


6. open boot/grub/grub.cfg with editor and add language and keyboard
settings for installer.

$ sudo chmod +w boot/grub/grub.cfg
$ sudo vi boot/grub/grub.cfg

In my case, I changed menuentry as follows.

menuentry "Try Ubuntu without installing" {
set gfxpayload=keep
linux /casper/vmlinuz.efi file=/cdrom/preseed/ubuntu.seed
boot=casper quiet splash -- debian-installer/language=ja
keyboard-configuration/layoutcode?=jp
keyboard-configuration/modelcode?=jp106
initrd /casper/initrd.lz
}
menuentry "Install Ubuntu" {
set gfxpayload=keep
linux /casper/vmlinuz.efi file=/cdrom/preseed/ubuntu.seed
boot=casper only-ubiquity quiet splash -- debian-installer/language=ja
keyboard-configuration/layoutcode?=jp
keyboard-configuration/modelcode?=jp106
initrd /casper/initrd.lz
}
menuentry "OEM install (for manufacturers)" {
set gfxpayload=keep
linux /casper/vmlinuz.efi file=/cdrom/preseed/ubuntu.seed
boot=casper only-ubiquity quiet splash oem-config/enable=true --
debian-installer/language=ja keyboard-configuration/layoutcode?=jp
keyboard-configuration/modelcode?=jp106
initrd /casper/initrd.lz
}


7. make all files readable

$ sudo chmod -R +r .


8. rm SHA256SUMS and generate md5sum.txt

$ sudo rm SHA256SUMS
$ sudo find . -type f -exec md5sum {} \; |grep -v isolinux|grep -v
md5sum.txt|sudo tee md5sum.txt


9. create sort.txt including following lines.

100 boot/
90 EFI/
80 isolinux/
70 preseed/


10. execute xorriso with following options

$ cd ..
$ sudo xorriso \
-as mkisofs \
-volid "Ubuntu 14.10 ja amd64" \
-o ubuntu-ja-14.10-desktop-amd64-20141117.iso \
-rock -omit-version-number -disable-deep-relocation -joliet \
-isohybrid-mbr /usr/lib/syslinux/mbr/isohdpfx.bin \
-c isolinux/boot.cat \
-b isolinux/isolinux.bin \
-no-emul-boot -boot-load-size 4 -boot-info-table \
-eltorito-alt-boot \
-e boot/grub/efi.img \
-no-emul-boot \
-isohybrid-gpt-basdat \
-isohybrid-apm-hfsplus \
--sort-weight-patterns sort.txt \
binary/


Regards,
Jun Kobayashi

--
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel