Friday 1 September 2017

New version of ISO respin script released

Now that my script supports updates to rolling kernels and target processors I've improved the naming of the respun ISO to better reflect how it was created. The key change is to include the kernel version in the name of the respun ISO when respinning upgrades the original version together with the name of the target processor if respun using that option.

The new version (7.3.3) of 'isorespin.sh' is now available for download.

Any issues or improvement suggestions are welcome.

Please donate if you find the script useful using the following link http://goo.gl/nXWSGf.

25 comments:

Unknown said...

Hello.
I've been using your ISO's for a while, and they are great (depending on the device BTW), but once installed I don't know the process to upgraade to a rolling kernel. I've tried a couple but always broke something (last goodix support in 4.13 rc6) and more related to your patches BT support (cherry trail tablet Chuwi Hi12)
Thanks

Unknown said...

Can You upload a "cooked" *.iso ? Please.

Sin said...

+1

7ric said...

Good Job, I try on my 2-1 tablet Lenovo Miix 310-101cr.
On ubuntu 17.10 beta 1 power, wifi, Lte, screen and sound works. I rotate the screen and the touchscreen with this script :
$ xrandr -o right
$ xinput --set-prop 'FTSC1000:00 2808:1015' 'Coordinate Transformation Matrix' 0 1 0 -1 0 1 0 0 1
The bluetooth adapter is actually not detected.

Mr Trueno said...

anyone knows if the backlight problem with chuqivi10 plus is resolved?
(can't change the screen brightness)

Linuxium said...

Once you have installed the ISO you just upgrade using any of the standard processes which include using apt update/upgrade, adding the relevant repos and upgrading/installing a specific kernel or downloading a prebuilt kernel from Canonical.

Linuxium said...

Yes but it depends also on whether you can get the version of Linux to install and as it is very device dependent that is why my script helps when a standard install fails.

Linuxium said...

Okay but it will be in a couple of days.

Linuxium said...

There was a regression for AP6255 wifi with v4.13 however a patch is currently being processed to fix this both for v4.14 and v4.13.1.

Linuxium said...

Bluetooth probably needs an 'ID' adding but unfortunately I don't have this device to check.

7ric said...

How I can find this ID ?

Linuxium said...

Start by looking in your ACPI table.

Djhg2000 said...

I see the script requires sudo. I do not want sudo on my machine and I only use su for privilege escalation. If you could, please check for working sudo (for example with $(sudo 'echo $UID')) and use "su -c" instead where root is absolutely required.

For instance, running wget as root seems to be a can of worms. External servers can (and should be assumed to be) evil, especially when doing stuff as root. It would be better to run wget as the script invoking user and then chown+mv the resulting file.

One way to do this is to first of all accept that the lock file can be removed by the user and protect it with "chmod 000" instead. Then make a best effort attempt to do everything that doesn't explicitly require root (like wget) before spawning a single subshell to the dangerous stuff.

That way you would only require sudo/su once and, with a bit of clever work, you could either bake this part into a different mode of the same script (like checking $UID at the top of the file, if 0 then do just the root things) or by progressively building a temporary script file to be executed at the end.

I do realize this is a major change and I'm not expecting this to be fixed overnight, but please keep it in mind for version 8. I'd be happy to help out if you want.

Another suggestion would be to use base64 encoding when concatenating the zip file at the end of the script (just pipe it through "base64 -d" between sed and tee when separating the archive). Some editors have major issues dealing with invalid characters.

Clive McCarthy said...

I'm trying to install Linux Mint 18.2 on a Kaby Lake based machine (i7-7700HQ) however the Kaby Lake processors require Kernel 4.10. and 18.2 only has a 4.8 kernel. so the installation fails with a blank screen.

I'd like to make an 18.2 ISO CD but patch it with the 4.10. kernel. Can your script do this?

Linuxium said...

Yes. Just respin the Linux Mint 18.2 ISO with the '-k v4.10.16' option (the latest v4.10 kernel from 'http://kernel.ubuntu.com/~kernel-ppa/mainline/?C=M;O=D'). Alternatively use the '-u' option to get the latest kernel (currently v4.13.4) if you prefer.

Clive McCarthy said...

As you can see, from below, the script fails almost immediately with rsync. What am I doing wrong?


clive@i7-7700HQ ~/Desktop $ sudo ./isorespin.sh -i 64bit.iso -k v4.10.16
Extracting ISO ...
rsync: read errors mapping "/home/clive/Desktop/isorespin/mnt/casper/filesystem.size": Input/output error (5)
rsync: read errors mapping "/home/clive/Desktop/isorespin/mnt/casper/filesystem.size": Input/output error (5)
ERROR: casper/filesystem.size failed verification -- update discarded.
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1183) [sender=3.1.1]
Parallel unsquashfs: Using 8 processors
Read on filesystem failed because Input/output error
read_uids_guids: failed to read id index table
FATAL ERROR:failed to uid/gid table
mv: cannot stat 'squashfs-root': No such file or directory
Extracting isorespin files ...
Updating bootloader/bootmanager ...
mv: cannot stat 'iso-chroot/dev': No such file or directory
cp: cannot stat 'iso-chroot/dev.linuxium': No such file or directory
mv: cannot stat 'iso-chroot/run': No such file or directory
cp: cannot stat 'iso-chroot/run.linuxium': No such file or directory
mv: cannot stat 'iso-chroot/tmp': No such file or directory
cp: cannot stat 'iso-chroot/tmp.linuxium': No such file or directory
cp: cannot create regular file 'iso-chroot/etc/': No such file or directory
mv: cannot stat 'iso-chroot/etc/apt/sources.list': No such file or directory
tee: iso-chroot/etc/apt/sources.list: No such file or directory
sed: can't read iso-chroot/etc/apt/sources.list.linuxium: No such file or directory
chroot: cannot change root directory to 'iso-chroot': No such file or directory
chroot: cannot change root directory to 'iso-chroot': No such file or directory
mount: mount point iso-chroot/dev does not exist
umount: iso-chroot/dev: mountpoint not found
mv: cannot stat 'iso-chroot/etc/apt/sources.list.linuxium': No such file or directory
mv: cannot stat 'iso-chroot/dev.linuxium': No such file or directory
mv: cannot stat 'iso-chroot/run.linuxium': No such file or directory
mv: cannot stat 'iso-chroot/tmp.linuxium': No such file or directory
mv: cannot stat 'iso-chroot/usr/src/grub-efi-ia32-bin*.deb': No such file or directory
mv: cannot stat 'iso-chroot/usr/src/grub-efi-ia32*.deb': No such file or directory
chroot: cannot change root directory to 'iso-chroot': No such file or directory
chroot: cannot change root directory to 'iso-chroot': No such file or directory
grep: iso-chroot/etc/default/grub: No such file or directory
Fetching mainline kernel packages ...
Installing mainline kernel packages ...
cp: target 'iso-chroot/usr/src/' is not a directory
cp: cannot create regular file 'iso-chroot/usr/src/': No such file or directory
mv: cannot stat 'iso-chroot/dev': No such file or directory
cp: cannot stat 'iso-chroot/dev.linuxium': No such file or directory
mv: cannot stat 'iso-chroot/run': No such file or directory
cp: cannot stat 'iso-chroot/run.linuxium': No such file or directory
mv: cannot stat 'iso-chroot/tmp': No such file or directory
cp: cannot stat 'iso-chroot/tmp.linuxium': No such file or directory
cp: cannot create regular file 'iso-chroot/etc/': No such file or directory
mount: mount point iso-chroot/dev does not exist
umount: iso-chroot/dev: mountpoint not found
mv: cannot stat 'iso-chroot/dev.linuxium': No such file or directory
mv: cannot stat 'iso-chroot/run.linuxium': No such file or directory
mv: cannot stat 'iso-chroot/tmp.linuxium': No such file or directory
./isorespin.sh: Cannot find mainline kernel.

Clive McCarthy said...

It looks like this is the problem:
mount: /dev/loop1 is write-protected, mounting read-only

Clive McCarthy said...

found my problem: I renamed the ISO

Linuxium said...

Good to hear it now works.

Fugitive said...

I am using a tablet Linx 12x64 and using the iso you provide for download Ubuntu 18. The only way I can get it to work is by using nomodeset in grub. Is this a matter of not having NVRAM Sync or is it something else. At the same time audio is not working even though I downloaded the script and used it. Script runs but does nothing. Also the grep VGA shows that there is a intel gpu but device is unclaimed. Any help appreciated.

Linuxium said...

The 'nomodeset' is normally required when there are graphics driver issues. Have you tried respinning Ubuntu 18.10 (cosmic) without it as this uses the v4.18 kernel and has a lot of patches including for audio that might work on your device ... respin with "isorespin.sh -i cosmic.iso --atom' or similar if the audio initially doesn't work.

Unknown said...

downloaded ubuntu 18.10 and used "isorespin.sh -i cosmic.iso --atom''. Nothing working. lshw / grep video lists display unclaimed. As a matter of fact all hardware is listed as unclaimed. Am I doing something wrong? Any help appreciated. Beer is on me if we can find a way to solve it...

Linuxium said...

Try with the latest kernel as in 'isorespin.sh -i cosmic.iso --atom -u'.

Unknown said...

updated to 4.19 with uku. is it diff to making new iso?. still only working in nomodeset.

Linuxium said...

If v4.19.1 doesn't help then using the new userland with cosmic (i.e. respinning with 'isorespin.sh -i cosmic.iso --atom -k v4.19.1') is my only other suggestion.

Post a Comment