Skip to content

Conversation

@kamilion
Copy link
Owner

@kamilion kamilion commented Sep 2, 2015

Working from my past local improvements to ubuntu-builder, I've ported them to customizer, as I prefer python.
https://github.com/kamilion/kamikazi-deploy/blob/master/resources/buildscripts/Build.patched-for-xen

Fixes in this commit:
If EFI is determined to be in use, vmlinuz will be hardlinked to vmlinuz.efi, saving a few megs on the ISO.
If found, a Xen kernel will be added to the media in the correct place. Same for ipxe and memtest86+ soon?
As a fix for ubuntu-mini-remix's integrity check, a SHA256SUMS file will be regenerated if found.
This should shore up UMR in respect to #76, outside of the memtest86+ issue, which we can fix.
Compression parameters are now separated from mksquashfs, and a default blocksize of ~1MB is applied.
Editing this can be added to the GUI later, for now, xz's branch-call-jump filters were enabled for x86 code.
In addition, Many comments were added to clarify sections of the ISO rebuild code.

Working from my past local improvements to ubuntu-builder, I've ported them to customizer, as I prefer python.
https://github.com/kamilion/kamikazi-deploy/blob/master/resources/buildscripts/Build.patched-for-xen

Fixes in this commit:
If EFI is determined to be in use, vmlinuz will be hardlinked to vmlinuz.efi, saving a few megs on the ISO.
If found, a Xen kernel will be added to the media in the correct place. Same for ipxe and memtest86+ soon?
As a fix for ubuntu-mini-remix's integrity check, a SHA256SUMS file will be regenerated if found.
This should shore up UMR in respect to #76, outside of the memtest86+ issue, which we can fix.
Compression parameters are now separated from mksquashfs, and a default blocksize of ~1MB is applied.
Editing this can be added to the GUI later, for now, xz's branch-call-jump filters were enabled for x86 code.
In addition, Many comments were added to clarify sections of the ISO rebuild code.
@kamilion
Copy link
Owner Author

kamilion commented Sep 2, 2015

Incidentally, Everything is working for wily/15.10 when I try to rebuild Lubuntu from the beta1 amd64 image.
https://github.com/kamilion/kamikazi-deploy/tree/master/resources/buildscripts/wily
A customizer hook script is provided to automate the build process and verify my changes.

Simply download lubuntu-15.10-beta1-desktop-amd64.iso from
http://cdimage.ubuntu.com/lubuntu/releases/15.10/beta-1/
Install it into a VM, follow customizer's install instructions, and

wget https://raw.githubusercontent.com/kamilion/kamikazi-deploy/master/resources/buildscripts/wily/autobuild.customizer.hook.sh

to get the autobuild hook. Customizer will take it from there.

The hardlinked EFI kernel, -Xbcj, & blocksize change brings me from 732MB to 654MB, with improved decompression times due to the truncated x64 branchs, calls, and jumps. If the calls can't be truncated, xz simply skips them.

Will also include EFI copies of ipxe and xen if found,
but editing /isolinux/txt.cfg or /boot/grub/grub.cfg & /boot/grub/loopback.cfg is up to you.
@kamilion kamilion mentioned this pull request Sep 2, 2015
@ghost
Copy link

ghost commented Sep 2, 2015

@kamilion
Hi, there! Thanks for your pull request. Before making a merge, I 'd like to test with UMR 14.04 ISO image on my side to confirm the fixes (in particular, on 32-bit machine).

Meanwhile, you can still do minor fixes before the merging. Also, if there's any response from other contributors, feel free to leave comment below.

@ghost
Copy link

ghost commented Sep 2, 2015

Ah, now only I realized why integrity-check doesn't work with newer UMR!

See the screenshot in this comment of issue #76, that shows the contents of UMR 12.04 and 14.04 images. The newer UMR 14.04 contains SHA256SUMS file, but is useless when booting as Live CD. Because, the integrity-check requires md5sum (which must be saved as md5sum.txt file. I have checked inside Xubuntu 12.04 and 14.04 official ISO images: all contained md5sum.txt file.

@kamilion
I have clarified that this pull request won't fix the integrity-check issue for UMR ISO images (14.04 and newer). You may issue another pull request, if you wish to fix this later.

And since you have tested on 64-bit, plus I have also tested (the changes made to codes in rebuild.py) on 32-bit system, I will just proceed to merge for now.

ghost pushed a commit that referenced this pull request Sep 2, 2015
Altered the way the rebuild script handled kernels and checksums.
@ghost ghost merged commit 75210cf into kamilion:master Sep 2, 2015
This pull request was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant