OtherInstalls v11 - generate grub2 boot entries

Under development: PCMCIA, wireless, etc.

Moderator: Forum moderators

User avatar
rcrsn51
Posts: 1390
Joined: Sun Aug 23, 2020 4:26 pm
Been thanked: 357 times

Re: OtherInstalls - generate grub2 boot entries

Post by rcrsn51 »

Here's a thought. Someone should try the Deblive Multi Installer to see how it actually works.

You can even run it from Puppy.

gyrog
Posts: 644
Joined: Thu Oct 01, 2020 8:17 am
Location: Australia
Has thanked: 16 times
Been thanked: 231 times
Contact:

Re: OtherInstalls - generate grub2 boot entries

Post by gyrog »

@mikeslr,
Thanks for all that you are doing to support this project.

User avatar
fredx181
Posts: 3110
Joined: Tue Dec 03, 2019 1:49 pm
Location: holland
Has thanked: 378 times
Been thanked: 1329 times
Contact:

Re: OtherInstalls - generate grub2 boot entries

Post by fredx181 »

For info: All 'Dog' ISO's (and "Starter Kit" ISO) have in common that it includes "initrd1.xz" (inside "live" folder EDIT: Or in 'casper' folder for Ubuntudogs).

gyrog
Posts: 644
Joined: Thu Oct 01, 2020 8:17 am
Location: Australia
Has thanked: 16 times
Been thanked: 231 times
Contact:

Re: OtherInstalls - generate grub2 boot entries

Post by gyrog »

rcrsn51 wrote: Tue Jun 08, 2021 7:30 pm

Here's a thought. Someone should try the Deblive Multi Installer to see how it actually works.

You can even run it from Puppy.

A url would be helpful.

gyrog
Posts: 644
Joined: Thu Oct 01, 2020 8:17 am
Location: Australia
Has thanked: 16 times
Been thanked: 231 times
Contact:

Re: OtherInstalls - generate grub2 boot entries

Post by gyrog »

fredx181 wrote: Tue Jun 08, 2021 7:35 pm

For info: All 'Dog' ISO's (and "Starter Kit" ISO) have in common that it includes "initrd1.xz" (inside "live" folder).

Don't UbuntuDogs have a "casper" folder, with "initrd1.xz" inside it.

User avatar
fredx181
Posts: 3110
Joined: Tue Dec 03, 2019 1:49 pm
Location: holland
Has thanked: 378 times
Been thanked: 1329 times
Contact:

Re: OtherInstalls - generate grub2 boot entries

Post by fredx181 »

gyrog wrote: Tue Jun 08, 2021 7:40 pm
fredx181 wrote: Tue Jun 08, 2021 7:35 pm

For info: All 'Dog' ISO's (and "Starter Kit" ISO) have in common that it includes "initrd1.xz" (inside "live" folder).

Don't UbuntuDogs have a "casper" folder, with "initrd1.xz" inside it.

Yes, that's right.

User avatar
rcrsn51
Posts: 1390
Joined: Sun Aug 23, 2020 4:26 pm
Been thanked: 357 times

Re: OtherInstalls - generate grub2 boot entries

Post by rcrsn51 »

gyrog wrote: Tue Jun 08, 2021 7:36 pm
rcrsn51 wrote: Tue Jun 08, 2021 7:30 pm

Here's a thought. Someone should try the Deblive Multi Installer to see how it actually works.

You can even run it from Puppy.

A url would be helpful.

Dog House > Debiandogs > Bullseye Starter Kit

gyrog
Posts: 644
Joined: Thu Oct 01, 2020 8:17 am
Location: Australia
Has thanked: 16 times
Been thanked: 231 times
Contact:

Re: OtherInstalls - generate grub2 boot entries

Post by gyrog »

@fredx181 thanks.

@rcrsn51 thanks.
I found it. I'll download and have a little play.
Strangely I found there the boot parameter to use for direct .iso booting, "iso-scan/filename=$isopath".
The example grub2 boot-entries are informative.
Later:
I also got 'deblive-multi-installer.tar.gz', looks very interesting.

User avatar
mikeslr
Posts: 2975
Joined: Mon Jul 13, 2020 11:08 pm
Has thanked: 179 times
Been thanked: 926 times

Re: OtherInstalls - generate grub2 boot entries

Post by mikeslr »

rcrsn51 wrote: Tue Jun 08, 2021 7:30 pm

Here's a thought. Someone should try the Deblive Multi Installer to see how it actually works.

You can even run it from Puppy.

I had the same thought. Got as far as downloading it. Then, with severe thunderstorms in the area, The Wife suggested turning off non-essential appliances, computer, tv, air conditioner. Decided to sit in the easy-chair by a window and read. Fell asleep instead. :roll: Just woke up and see that you guys have been busy. :thumbup2:

gyrog
Posts: 644
Joined: Thu Oct 01, 2020 8:17 am
Location: Australia
Has thanked: 16 times
Been thanked: 231 times
Contact:

Re: OtherInstalls - generate grub2 boot entries

Post by gyrog »

Some interesting progress:

I downloaded 'deblive-multi-installer.tar.gz' and 'DebLive_Bullseye-amd64-6.iso'.
Extracted 'deblive-multi-installer'
With "Debian-Live Multi Installer->Install", I installed 'DebLive_Bullseye-amd64-6.iso'
Pasted the grub4dos boot entry into 'menu.lst'
With "Debian-Live Multi Installer->Convert", I converted 'menu.lst' to 'grub2.txt'
I then copied this boot entry into the appropriate 'grub.cfg'
re-booted the drive and selected "DebLive_Bullseye-amd64-6 on sdc3" on the grub2 boot menu.
Lo, it booted to the desktop.

This is a promising start.
Afer some sleep, I will try:
Use "f2StickPup" to install a Puppy on a usb stick. This produces 2 partitions, 1st is small fat32, and the 2nd is large linux (f2fs).
Follow the process above to install 'DebLive_Bullseye-amd64-6.iso' to the 2nd (f2fs) partition on the usb stick.
Then boot the usb stick, selecting the boot entry converted by "Debian-Live Multi Installer->Convert".
If there is a problem with f2fs, during this process, I will do it again with an ext4 2nd partition and install Puppy with "DiskPup".

FYI. The converted boot entry that worked:

Code: Select all

menuentry "DebLive_Bullseye-amd64-6 on sdc3" {
  search --no-floppy --fs-uuid --set=root a83a265f-2683-4daf-88e8-83ff07aab8cc
  linux /dl-bull64/live/vmlinuz1 edd=off noauto from=UUID:a83a265f-2683-4daf-88e8-83ff07aab8cc/dl-bull64 changes=UUID:a83a265f-2683-4daf-88e8-83ff07aab8cc/dl-bull64
  initrd /dl-bull64/live/initrd1.xz
}

Instead of editing this boot entry directly into 'grub.cfg', I could have edited it into '/etc/grub.d/40_custom', so that it would remain, even after using "FrugalPup->Boot" to replace the 'grub.cfg' file.

I assume that "Debian-Live Multi Installer->Ubuntu" can install a UbuntuDog, right??

gyrog
Posts: 644
Joined: Thu Oct 01, 2020 8:17 am
Location: Australia
Has thanked: 16 times
Been thanked: 231 times
Contact:

Re: OtherInstalls - generate grub2 boot entries

Post by gyrog »

Test process:
1. Run 'deblive-multi-installer'.
2. "Install" 'DebLive_Bullseye-amd64-6.iso' to '/mnt/sdc2/frugals/dd-bull'
3. "Convert" '/mnt/sdc2/frugals/dd-bull/grubmenu.txt'
4. "Quit".
5. Edit '/mnt/sdc1/grub.cfg', inserting the contents of '/mnt/sdc2/frugals/dd-bull/grub2.txt'
6. Boot the usb stick

The process works with ext4 sdc2.

I temporarily edited 'deblive-multi-installer' so it would recognise an f2fs partition as suitable for "Install".
The test process worked, until step 6.
The "DebLive_Bullseye-amd64-6" boot failed during "initrd" processing.
It would appear that "DebLive_Bullseye-amd64-6" does not support booting on an f2fs partition.

Note1: Step 5. could be replaced by:
5. Append ''/mnt/sdc2/frugals/dd-bull/grub2.txt' to '/etc/grub.d/40_custom,
and run "FrugalPup->Boot" to replace the 'grub.cfg' on sdc1.

Note2: I'm working on a script that will scan a selected directory and it's immediate sub-directories for "grubmenu.txt" files.
It will then convert the grub4dos boot-entry, contained in the file, into a grub2 boot-entry and append it to '/etc/grub.d/40_custom'.
The result should be, that if a DebianDog/UbuntuDog is installed via @rcrsn51 's 'deblive-multi-installer', they can be integrated into a FrugalPup managed grub2.

User avatar
rcrsn51
Posts: 1390
Joined: Sun Aug 23, 2020 4:26 pm
Been thanked: 357 times

Re: OtherInstalls - generate grub2 boot entries

Post by rcrsn51 »

gyrog wrote: Wed Jun 09, 2021 3:14 pm

It would appear that "DebLive_Bullseye-amd64-6" does not support booting on an f2fs partition.

In my experience, unjournaled ext4 is an OK alternative to f2fs on flash drives and is fully supported by gparted.

User avatar
rcrsn51
Posts: 1390
Joined: Sun Aug 23, 2020 4:26 pm
Been thanked: 357 times

Re: OtherInstalls - generate grub2 boot entries

Post by rcrsn51 »

@mikeslr : Now that gyrog has confirmed that the Dog family does have an installer app, you should correct your post where you stated otherwise.

User avatar
fredx181
Posts: 3110
Joined: Tue Dec 03, 2019 1:49 pm
Location: holland
Has thanked: 378 times
Been thanked: 1329 times
Contact:

Re: OtherInstalls - generate grub2 boot entries

Post by fredx181 »

rcrsn51 wrote: Wed Jun 09, 2021 5:18 pm
gyrog wrote: Wed Jun 09, 2021 3:14 pm

It would appear that "DebLive_Bullseye-amd64-6" does not support booting on an f2fs partition.

In my experience, unjournaled ext4 is an OK alternative to f2fs on flash drives and is fully supported by gparted.

Yes, and to "unjournal" existing ext4 partition from command line for e.g. sdb1 :
tune2fs -O ^has_journal /dev/sdb1
edit: not sure if needed afterwards, anyway could do no harm:
e2fsck -f -y /dev/sdb1

gyrog
Posts: 644
Joined: Thu Oct 01, 2020 8:17 am
Location: Australia
Has thanked: 16 times
Been thanked: 231 times
Contact:

Re: OtherInstalls - generate grub2 boot entries

Post by gyrog »

rcrsn51 wrote: Wed Jun 09, 2021 5:18 pm

In my experience, unjournaled ext4 is an OK alternative to f2fs on flash drives and is fully supported by gparted.

Thanks for that info, I hope I will remenber that if I ever want to actually install a DebianDog or UbuntuDog on a usb stick.

For now I think I've pretty much done enough playing with a DebianDog on a usb stick, to establish that indeed 'deblive-multi-installer' is a working installer, and (perhaps more importantly for my current project), I now have the first draft of a script that can populate '/etc/grub.d/40_custom' using the output from 'deblive-multi-installer', i.e. the 'grubmenu.txt' file.

gyrog
Posts: 644
Joined: Thu Oct 01, 2020 8:17 am
Location: Australia
Has thanked: 16 times
Been thanked: 231 times
Contact:

Re: OtherInstalls - generate grub2 boot entries

Post by gyrog »

Having installed 'DebLive_Bullseye-amd64-6.iso' using 'deblive-multi-installer', then running my test script, I end up with,

Code: Select all

menuentry "DebLive_Bullseye-amd64-6 on sdc2" {
  search --no-floppy --fs-uuid --set=root e723194e-0445-49ed-b690-7c6327dbc43d
  linux /other/dd-bull/live/vmlinuz1 edd=off noauto from=UUID:e723194e-0445-49ed-b690-7c6327dbc43d/other/dd-bull changes=UUID:e723194e-0445-49ed-b690-7c6327dbc43d/other/dd-bull
  initrd /other/dd-bull/live/initrd1.xz
}

in '/etc/grub.d/42_deblive'.
Using FrugalPup->Boot to replace the 'grub.cfg', means this "DebLive_Bullseye" boot entry is included in 'grub.cfg'.
When I then boot the usb stick "sdc", it boots to the desktop.
(sdc2 is an ext4 partition.)

But, if I run my next version of OtherInstalls to generate a DebianDog boot-entry to directly boot the .iso file, I get the following boot-entry:

Code: Select all

menuentry "DebLive_Bullseye-amd64-6.iso (sdb2)" {
  insmod ext2
  search --no-floppy --fs-uuid --set=root "0db94719-cdf1-44b7-9766-23db62fb85a5"
  set isofile="/isos/DebLive_Bullseye-amd64-6.iso"
  loopback loop $isofile
  set root=(loop)
  linux (loop)/live/vmlinuz1 boot=live iso-scan/filename=$isofile noeject noprompt splash --
  initrd (loop)/live/initrd1.xz
}

when I select this boot-entry in grub2, it fails to boot.
The kernel and initrd load, but it complains that it's on an unsupported device, and I should copy 'live' to a HD.
(sdb2 is an ext4 partition, with plenty of space.)
Any suggestions as to why this could be failing?

User avatar
rcrsn51
Posts: 1390
Joined: Sun Aug 23, 2020 4:26 pm
Been thanked: 357 times

Re: OtherInstalls - generate grub2 boot entries

Post by rcrsn51 »

Code: Select all

linux (loop)/live/vmlinuz1 boot=live iso-scan/filename=$isofile noeject noprompt splash --

Those options are for booting an Ubuntu-style OS. They mean nothing to a Porteus boot.

gyrog
Posts: 644
Joined: Thu Oct 01, 2020 8:17 am
Location: Australia
Has thanked: 16 times
Been thanked: 231 times
Contact:

Re: OtherInstalls - generate grub2 boot entries

Post by gyrog »

rcrsn51 wrote: Thu Jun 10, 2021 11:48 am

Code: Select all

linux (loop)/live/vmlinuz1 boot=live iso-scan/filename=$isofile noeject noprompt splash --

Those options are for booting an Ubuntu-style OS. They mean nothing to a Porteus boot.

I based this line on examples viewtopic.php?p=4587#p4587.
Please point me to an appropriate example.

User avatar
rcrsn51
Posts: 1390
Joined: Sun Aug 23, 2020 4:26 pm
Been thanked: 357 times

Re: OtherInstalls - generate grub2 boot entries

Post by rcrsn51 »

Code: Select all

linux (loop)/live/vmlinuz1 edd=off noauto from=UUID:0db94719-cdf1-44b7-9766-23db62fb85a/$isofile
gyrog
Posts: 644
Joined: Thu Oct 01, 2020 8:17 am
Location: Australia
Has thanked: 16 times
Been thanked: 231 times
Contact:

Re: OtherInstalls - generate grub2 boot entries

Post by gyrog »

rcrsn51 wrote: Thu Jun 10, 2021 1:52 pm

Code: Select all

linux (loop)/live/vmlinuz1 edd=off noauto from=UUID:0db94719-cdf1-44b7-9766-23db62fb85a/$isofile

Thankyou, thankyou.
I'll definitely give that a go.

User avatar
rcrsn51
Posts: 1390
Joined: Sun Aug 23, 2020 4:26 pm
Been thanked: 357 times

Re: OtherInstalls - generate grub2 boot entries

Post by rcrsn51 »

Code: Select all

menuentry "DebLive_Bullseye-amd64-6.iso" {
  set isofile="/isos/DebLive_Bullseye-amd64-6.iso"
  set uuid="0db94719-cdf1-44b7-9766-23db62fb85a5"
  search --no-floppy --fs-uuid --set=root $uuid
  loopback loop $isofile
  set root=(loop)
  linux (loop)/live/vmlinuz1 edd=off noauto copy2ram from=UUID:$uuid/$isofile
  initrd (loop)/live/initrd1.xz
}
gyrog
Posts: 644
Joined: Thu Oct 01, 2020 8:17 am
Location: Australia
Has thanked: 16 times
Been thanked: 231 times
Contact:

Re: OtherInstalls - generate grub2 boot entries

Post by gyrog »

@rcrsn51,
Thankyou.
The linux line without "copy2ram" worked, booted to desktop.
But I will add the "copy2ram" and give it another go.

gyrog
Posts: 644
Joined: Thu Oct 01, 2020 8:17 am
Location: Australia
Has thanked: 16 times
Been thanked: 231 times
Contact:

Re: OtherInstalls - generate grub2 boot entries

Post by gyrog »

@rcrsn51,
Yes, as expected it booted to the desktop, with no mounted disks.

So, the next OtherInstalls will include support for directly booting .iso files from the Dog family. :thumbup2:

gyrog
Posts: 644
Joined: Thu Oct 01, 2020 8:17 am
Location: Australia
Has thanked: 16 times
Been thanked: 231 times
Contact:

Re: OtherInstalls - generate grub2 boot entries

Post by gyrog »

I now have a new version of OtherInstall that seems to be able to boot DebianDog and UbuntuDog .iso files,
and detect and generate a boot-entry for a frugal install of DebianDog and UbuntuDog.
Well at least for my huge collection of test subjects, i.e. 'DebLive_Bullseye-amd64-6.iso', yes, just 1.
So I'm keen to get it out there so others might test it against a wider range.

But, there is just 1 thing that's bugging me.
When I generate a boot-entry from a DebianDog frugal install, I can't find a nice name anywhere in the install directory,
so I'm currrently using the name of the install directory, which on my 1 install is "dd-bull", which seems a bit pathetic for the title of a grub2 menu entry.

On Puppy I could just mount the 'puppy...sfs' file and look in '/etc/DISTRO_SPECS'.
Is there an equivalent for DebianDog?

User avatar
fredx181
Posts: 3110
Joined: Tue Dec 03, 2019 1:49 pm
Location: holland
Has thanked: 378 times
Been thanked: 1329 times
Contact:

Re: OtherInstalls - generate grub2 boot entries

Post by fredx181 »

gyrog wrote:

But, there is just 1 thing that's bugging me.
When I generate a boot-entry from a DebianDog frugal install, I can't find a nice name anywhere in the install directory
....
On Puppy I could just mount the 'puppy...sfs' file and look in '/etc/DISTRO_SPECS'.
Is there an equivalent for DebianDog?

There is not, some version info showing though in e.g. /etc/debian_version, /etc/issue, /etc/issue.net, but not very useful I think.
So perhaps best to get the title from the ISO-name ?

Fred

gyrog
Posts: 644
Joined: Thu Oct 01, 2020 8:17 am
Location: Australia
Has thanked: 16 times
Been thanked: 231 times
Contact:

Re: OtherInstalls - generate grub2 boot entries

Post by gyrog »

fredx181 wrote: Fri Jun 11, 2021 10:08 am

So perhaps best to get the title from the ISO-name ?

Just one little problem, my script has just found an install directory, that's all I have to work with, I would be surprised to find the .iso file there.

gyrog
Posts: 644
Joined: Thu Oct 01, 2020 8:17 am
Location: Australia
Has thanked: 16 times
Been thanked: 231 times
Contact:

Re: OtherInstalls - generate grub2 boot entries

Post by gyrog »

I have attached 'OtherInstalls_7.sfs.gz', gunzip to produce 'OtherInstalls_7.sfs'.

This version adds DebianDog and UbuntuDog to supported .iso files, and to supported frugal installs.
It works for me for all my humungus list of DebianDog/UbuntuDog installs, 1. So I guess it's fair to say that it's had only minimal testing.

If it's a frugal install done using 'deblive-multi-installer' then the boot-entry will have a "pretty" title,
since OtherInstalls is just converting the grub4dos boot-entry in 'grubmenu.txt' in the install directory.
If 'grubmenu.txt' is not found, the boot-entry is directly generated by OtherInstall code.
This still produces a working boot-entry, but it's title is just the filename of the install directory, very ordinary.

Thankyou to all the folk who have contributed to this project. You have enabled me to kind of sort this thing out.
But a special thanks to @rcrsn51 since I "borrowed" some of his code.

I guess this project can never end, there will always be more non-Puppy OS's that could be included,
but being able to include the "Dog" family, is an important milestone.

OtherInstalls_7.sfs.gz
gunzip to produce OtherInstalls_7.sfs
(5.05 KiB) Downloaded 87 times
tosim
Posts: 482
Joined: Thu Jul 23, 2020 1:13 pm
Has thanked: 933 times
Been thanked: 60 times

Re: OtherInstalls - generate grub2 boot entries

Post by tosim »

gyrog-Thanks for this update.

gyrog
Posts: 644
Joined: Thu Oct 01, 2020 8:17 am
Location: Australia
Has thanked: 16 times
Been thanked: 231 times
Contact:

Re: OtherInstalls - generate grub2 boot entries

Post by gyrog »

I have attached 'OtherInstalls_8.sfs.gz', gunzip to produce 'OtherInstalls_8.sfs'.

Apparently the way 'OtherInstalls' and 'FrugalPup' use '/etc/grub.d/40_custom' is incompatible with grub2,
so installing grub2, mucks-up the 'grub.cfg' generated by 'FrugalPup'.

So, this version 8 of 'OtherInstalls' writes to '/var/local/otherinstalls.d/boot-entries' instead.
A new 'FrugalPup v34' will read files from the '/var/local/otherinstalls.d' directory.

OtherInstalls_8.sfs.gz
gunzip to produce 'OtherInstalls_8.sfs'
(5.05 KiB) Downloaded 89 times
gyrog
Posts: 644
Joined: Thu Oct 01, 2020 8:17 am
Location: Australia
Has thanked: 16 times
Been thanked: 231 times
Contact:

Re: OtherInstalls v9 - generate grub2 boot entries

Post by gyrog »

I have attached 'OtherInstalls_9.sfs.gz', gunzip to produce 'OtherInstalls_9.sfs'.

This version adds support for loading a CPU microcode file called 'ucode.cpio' as the first "initrd" file, if it exists, for frugal installs.

It also remmoves the "All" button from the "partition" dialog.

OtherInstalls_9.sfs.gz
gunzip to produce 'Otherinstalls_9.sfs
(5.05 KiB) Downloaded 72 times
Post Reply

Return to “Cutting Edge”