Salix Live Xfce 13.37 RC1

User avatar
jayseye
Posts: 233
Joined: 24. Jul 2011, 17:22
Location: Brownsmead, Oregon (Center of the Universe)

Re: Salix Live Xfce 13.37 RC1

Post by jayseye »

Thanks Shador, looking forward to your results from testing Live Xfce 13.37 RC1 with SuperGrub2Disk.
Shador wrote:Actually I implemented and tested that file by that "standard definition". But possibly since then something changed in the other grub config files. I'll recheck.
Shador
Posts: 1295
Joined: 11. Jun 2009, 14:04
Location: Bavaria

Re: Salix Live Xfce 13.37 RC1

Post by Shador »

jayseye wrote:Thanks Shador, looking forward to your results from testing Live Xfce 13.37 RC1 with SuperGrub2Disk.
Shador wrote:Actually I implemented and tested that file by that "standard definition". But possibly since then something changed in the other grub config files. I'll recheck.
Nothing I can do about that. The loopback.cfg method has one small flaw. It uses the bootloader binaries of the SuperGrub2Disk or what other binaries where used in the first place and just loads the config files of the LiveCD. If those config files where written for a newer version of grub2 in our case 1.99 vs 1.98 on the SuperGrub2Disk, it may fail.

Therefor we can only guarantee that this way of booting the LiveCD works with the grub2 build included in the same version of Salix and it does. It's likely that it works with most 1.99 builds out there though. This is true for anything related to the LiveCD which relies on grub2 binaries installed on the local system (MBR, grub-install, ...). Other examples include update-grub2.sh included on the LiveCD (BTW I opt for a different name here, it's easily confused with the update-grub script in the grub2 package) or directly loading one of the other grub .cfg files with appropriate environment variables set.

So although it doesn't work for SG2D 1.98s, it's likely to work for a 1.99 release of SG2D, if there will ever be one.
Using an older version of grub2 is also no options as new features have been introduced, which we rely on for the LiveCD Boot Menu, and important bugs/problems have been fixed. (e.g. a workaround for a BIOS of mine which prevented earlier versions from booting. SG2D is still affected by that issue.) In any case you can still say you don't need the menu and just want the LiveCD, which the second approach down there is an example for

1. You could start using Salix' Grub2 and add the following to /etc/grub.d/40_custom:

Code: Select all

menuentry "Salix Live" {
  iso_path=/salixlive-xfce-13.37-32-rc1.iso
  export iso_path
  search --set --file $iso_path
  loopback loop $iso_path
  root=(loop)
  configfile /boot/grub/loopback.cfg
}
Adapt the path if necessary.

2. You could write a menuentry for any grub version that supports loopback, which loopback mounts the LiveCD and boots the kernel with the linux and initrd command. Look at boot/grub/boot.cfg on the LiveCD for appropriate kernel parameters.

3. You could explode the LiveCD to a partition root. Then run install-on-USB.sh (ATTENTION! This overwrites your existing MBR/bootloader!) or load the boot/grub2-linux.img from that partition like a linux kernel (no initrd and no parameters) with any bootloader (Important! Use the linux16 command with grub2).

EDIT:
Ok, here's a 4th method:
4. Do the following on a Salix 13.37 system with grub2 1.99 installed. Another distributions grub2 1.99 might work too, but I can't guarantee it. Create a file embed_loop.cfg with the following content:

Code: Select all

echo "Searching the device to boot from..."
set iso_path=/boot-isos/salixlive-xfce-13.37-32-rc1.iso
search --no-floppy --file --set=root $iso_path
loopback loop $iso_path
set root=loop
set prefix=($root)/boot/grub/i386-pc
echo "Using as root device: (${root})"
echo "Now loading the boot menu. This can take a while..."
Change iso_path if you intend to put it into a different directory or change the name of the iso.
Now in the directory where you saved embed_loop.cfg run this:

Code: Select all

grub-mkimage -p /boot/grub/i386-pc -o grub2-core.img -O i386-pc -C none -c embed_loop.cfg biosdisk ext2 fat iso9660 ntfs reiserfs xfs part_msdos part_gpt search echo loopback
cat /usr/lib/grub/i386-pc/lnxboot.img grub2-core.img > grub2-linux-loop.img # use lib64 for 64bit systems
Now you can load the grub2-linux-loop.img from any location with any bootloader like a linux kernel.
For grub2 e.g.:

Code: Select all

linux16 /grub2-linux-loop.img
boot
Alternatively if you stored the iso at "/boot-isos/salixlive-xfce-13.37-32-rc1.iso", you can use this prebuilt file: http://gaia.homelinux.org/misc/grub2-linux-loop.img
Image
ikke
Posts: 263
Joined: 5. Feb 2010, 22:47

Re: Salix Live Xfce 13.37 RC1

Post by ikke »

Thank you very much for providing this RC1. And congratulations to JRD and all the other people involved in preparing this new edition.

Have done a frugal install of the iso on an External USB HD and booted with grub1. (just as I did with the beta version!)

Have been working for a couple of hours with this new RC1. Almost everything is perfect! (as with with the beta version!!)

Anyway, do not see much difference with the Beta version.

The small problems I have been experiencing are still there : (see earlier posts)
1. Salix xfce and ext4 still do not go together for booting
2. the 'opera' module I made (opera + seamonkey libs) makes the desktop icons (and also some fileicons eg with gvim) and the desktop image disappear.

Once more, Salix xfce Live is great. And I am using it every day!

So final word : thank you!
User avatar
mimosa
Salix Warrior
Posts: 3311
Joined: 25. May 2010, 17:02
Contact:

Re: Salix Live Xfce 13.37 RC1

Post by mimosa »

It just hung during shutdown, with a message something like:

INIT No more processes to kill on this runlevel

I remember noticing that message before and thinking there was something odd about it - perhaps there is a slight pause - but this is the first time the shutdown has got stuck there. C-A-Backspace produced:

INIT Unable to run /sbin/shutdown

but I expect that's perfectly normal. Why would you shut down during shutdown, after all?

Otherwise, nothing to note except that it's great! :P

Oh yes, at the very beginning of boot, a message that "# is not a proper command" or something like that.
User avatar
JRD
Salix Warrior
Posts: 950
Joined: 7. Jun 2009, 22:52
Location: Lyon, France

Re: Salix Live Xfce 13.37 RC1

Post by JRD »

Thanks !

It was a lot of work and a live CD is something that needs more attention than other things because it is in directly relation to the hardware, bios and the like...

About "1. Salix xfce and ext4 still do not go together for booting", it's normal, you say you boot with grub1, and grub1 does not recognize ext4 partitions IIRC.
About the message "INIT No more processes to kill on this runlevel"...this is normal.
About the "hung"...this is not normal. It should wait a bit at this stage then unmount the rest and say "reboot" or "shutdown". It's not a big deal but if you would like mimosa, you can help me find why it hungs on your computer at this point (in private message)?
Image
User avatar
jayseye
Posts: 233
Joined: 24. Jul 2011, 17:22
Location: Brownsmead, Oregon (Center of the Universe)

Re: Salix Live Xfce 13.37 RC1

Post by jayseye »

Thanks for the detailed reply, Shador -

That will take some more time to fully digest. :ugeek: Meanwhile, some quick points:

In my case, and probably for other users, the most convenient way to test LiveCD beta/RC releases would be to just download the .ISO files, move them to an appropriate location on the hard drive, then reboot and choose the new image from a boot menu.

That would avoid the time, energy and, in the case of CDs, the minor expense, of burning a CD, or expanding the .ISO and copying to a USB stick or hard drive.

Ideally the boot loader installed on the hard drive would have this capability. In the case of Salix Fluxbox 13.37, that would at least require installing Grub2 and configuring it to replace the current LiLo setup.

So SuperGrub2Disk seemed like a good compromise, as it can be burned onto a CD, or loaded onto a USB stick, or even a floppy disk. Any of those would work without needing to replace LiLo, though I assume SuperGrub2Disk could also be installed as the bootloader on the main hard drive.

Unfortunately it's unclear whether those developers have the time, energy, and resources to update it for the latest version of Grub2, particularly with Berlios going down. So I'm seeking the next best solution.

So far in my reading of your post, all the solutions appear to be hard-coded for a specific .ISO file. Would it be practical, instead, to check for a loopback.cfg file inside each of the .ISOs found under the /boot-isos/ directory, and then present a menu of the matching ISOs?

In other words, could your current scheme be adapted to emulate that function of SuperGrub2Disk?

Thanks!
User avatar
JRD
Salix Warrior
Posts: 950
Joined: 7. Jun 2009, 22:52
Location: Lyon, France

Re: Salix Live Xfce 13.37 RC1

Post by JRD »

I think you could just install grub2 and copy the snipet of config for reading ISO in /boot-isos/. What else do you need we integrate ?
BTW, I think most people test some LiveCD with a VirtualMachine or on a USB key.
Image
Shador
Posts: 1295
Joined: 11. Jun 2009, 14:04
Location: Bavaria

Re: Salix Live Xfce 13.37 RC1

Post by Shador »

jayseye wrote:In my case, and probably for other users, the most convenient way to test LiveCD beta/RC releases would be to just download the .ISO files, move them to an appropriate location on the hard drive, then reboot and choose the new image from a boot menu.
I agree. I usually test images like that too and only install Salix this way.
jayseye wrote:Ideally the boot loader installed on the hard drive would have this capability. In the case of Salix Fluxbox 13.37, that would at least require installing Grub2 and configuring it to replace the current LiLo setup.
You don't necessarily need to replace it. By running the following grub doesn't actually get installed to the MBR:

Code: Select all

# grub-install --grub-setup=/bin/true /dev/sda
# cat /boot/grub/{lnxboot.img,core.img} > /boot/grub/core-linux.img
Now you just load /boot/grub/core-linux.img with any bootloader as a linux image (16bit linux boot protocol, i.e. linux16 with grub2) or load the core.img as multiboot kernel.
Put anything you want into /boot/grub/grub.cfg
jayseye wrote:So far in my reading of your post, all the solutions appear to be hard-coded for a specific .ISO file. Would it be practical, instead, to check for a loopback.cfg file inside each of the .ISOs found under the /boot-isos/ directory, and then present a menu of the matching ISOs?
No, unfortunately that's not possible, because core.img contains only a minimal environment. That means no if/for/... for the embed.cfg. The embed.cfg needs to find the iso image containing the complete grub environment and that's only possible if it knows the path.

I guess we could add the grub2-linux-loop.img to the LiveCD with a reasonable hard-coded default path and the possibility to recreate it with a different path by editing the embed_loop.cfg file and recreating the images with update-grub2-images.sh.

For the future I hope to find or implement a way how to pass one path to a core.img loaded as linux or multiboot image. But I'm unsure whether that's at all possible and if it would require changes to the core of grub2 (assembler eew). Or maybe I get an idea for a completely different solution.
Image
User avatar
mimosa
Salix Warrior
Posts: 3311
Joined: 25. May 2010, 17:02
Contact:

Re: Salix Live Xfce 13.37 RC1

Post by mimosa »

@ JRD

I do the same (this RC is on a USB, for instance) but would be interested in exploring the method Shador describes, especially for installations. It's one less time to copy the data and also no need to keep an empty USB handy just for installations. For *testing*, it also makes sense for the Live editions. I have my Salix Live 13.1 USB, and I will only replace it with 13.37 once the final release is made. Meanwhile, the RC1 is on a "spare" stick - actually, it had some other stuff on I decided I really didn't need.

So, some sort of cheatcode or menu option to boot off an .iso on hard disk would probably be useful especially for less experienced users.

Incidentally, I've successfully installed Ratpoison in the RC1. The only thing I needed to copy over to achieve vanilla functionality was the .ratmenu directory, as far as I can tell. And maybe it was exiting "the ratpoison way" that caused that glitch I described earlier where shutdown didn't complete. If I have time later I will test this theory, which means booting the stick two or three times ;) .
User avatar
mimosa
Salix Warrior
Posts: 3311
Joined: 25. May 2010, 17:02
Contact:

Re: Salix Live Xfce 13.37 RC1

Post by mimosa »

Another thing is that I currently have two users (one, with no password, and a new one with a password). I just got logged straight in to 'one'. Not sure if this happens every time; I also vaguely remember it from the past. I imagine it would be cured by either creating a password for one or deleting it. Still, ideally, if there is more than one user, you should get to choose which one to log in as. :)
Locked