help-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Devuan replaced grub and runs before Guix


From: Youni Git
Subject: Re: Devuan replaced grub and runs before Guix
Date: Sun, 09 Jan 2022 16:05:22 +0000
User-agent: Zoho Mail

Some clever developer from debian said me the easiest way.

1. I just enter grub command line while grub generated by Devuan appeared (with 
button 'c')

2. found grub.cfg on guix disk here:

ls (hd0,gpt2)/boot/grub/grub.cfg

3. And used it to run grub with this menu config file like this:

configfile (hd0,gpt2)/boot/grub/grub.cfg

4. Guix grub menu showed with its backgrund. And I booted to Guix OS

5. Then I just copied Guix menuentry from that grub.cfg file to my Devuan grub:

# vim /etc/grub.d/40_custom:



menuentry "GNU with Linux-Libre 5.13.13 (#33, 2021-09-04 17:57)" {
  search --file --set 
/gnu/store/y0dz7jdw78q3kgcjc8xy8zncxyl31k5p-linux-libre-5.13.13/bzImage
  linux /gnu/store/y0dz7jdw78q3kgcjc8xy8zncxyl31k5p-linux-libre-5.13.13/bzImage 
--root=/dev/sda2 --system=/var/guix/profiles/system-33-link 
--load=/var/guix/profiles/system-33-link/boot 
modprobe.blacklist=pcspkr,snd_pcsp,bluetooth,btusb,ath3k
  initrd /gnu/store/ccvhwm8h7h5xijab6gi65bjirz3nyxbv-raw-initrd/initrd.cpio.gz
}



# update-grub2



And now I sure boot to Guix from Devuan's grub menu entry. This is the easiest 
and may be reliable way. Just need to update grub menu entry when generate new 
system with 'guix system reconfigure config.scm'.

Nice!



---- On Sun, 09 Jan 2022 12:54:15 +0000 Youni Git <git@youni.world> wrote ----





I had this Guix grub entry in Guix OS:

https://ibb.co/Btq1pV7

I created this grub menu entry in devuan:
https://ibb.co/WH7hggw

vim /etc/grub.d/40_custom

menuentry "Guix" {
  search --set=root --fs-uuid 24c6dcca-d831-4f0a-ad59-efa1035be093
  search --file --set 
/gnu/store/y0dz7jdw78q3kgcjc8xy8zncxyl31k5p-linux-libre-5.13.13/bzImage
  linux /gnu/store/y0dz7jdw78q3kgcjc8xy8zncxyl31k5p-linux-libre-5.13.13/bzImage 
--root=/dev/sda2 --system=var/guixprofiles/system-33-link 
--load=/var/guix/profiles/system-33-link/boot 
modprobe.blacklist=pcspkr,snd_pcsp,bluetooth,btusb,ath3k
  initrd /gnu/store/ccvhwm8h7h5xijab6gi65bjirz3nyxbv-raw-initrd/initrd.cpio.gz
}

update-grub





But I got Guix OS stops on here:
https://ibb.co/JRZmCFK



I found kernel, initrd and parameters like you advised. But actually hash 
differs from that guix is using in parameters.

And I don't know why it does not boot stopping on usb-bluetooth mouse 
detection. I also tried to remove modprobe.blacklist and boot but also Guix 
stops on mouse detection. I just added 'search --set=root' line is that a 
reason? May be I need to use --root UUID instead of /dev/sda2 ?



find /gnu/store -maxdepth 1 -name '*-system'

...many entries ...-guix-system

/gnu/store/vxzzh5rz9isqfx5krn3iq5ygzxbafbdi-system



ls /gnu/store/vxzzh5rz9isqfx5krn3iq5ygzxbafbdi-system
activate  boot  channels.scm  configuration.scm  etc  initrd  kernel  locale  
parameters  profile  provenance


root@antelope ~# ls -l /gnu/store/vxzzh5rz9isqfx5krn3iq5ygzxbafbdi-system/kernel
lrwxrwxrwx 2 root root 51 Jan  1  1970 
/gnu/store/vxzzh5rz9isqfx5krn3iq5ygzxbafbdi-system/kernel -> 
/gnu/store/b64c0c8hw526b5742w75xii0ny0i4009-profile




root@antelope ~# ls -l 
/gnu/store/b64c0c8hw526b5742w75xii0ny0i4009-profile/bzImage 
lrwxrwxrwx 2 root root 73 Jan  1  1970 
/gnu/store/b64c0c8hw526b5742w75xii0ny0i4009-profile/bzImage -> 
/gnu/store/8xfrsfgdbfs1hyr49apzgmg66ggc5khf-linux-module-database/bzImage


root@antelope ~# ls -l 
/gnu/store/vxzzh5rz9isqfx5krn3iq5ygzxbafbdi-system/initrd 
lrwxrwxrwx 2 root root 69 Jan  1  1970 
/gnu/store/vxzzh5rz9isqfx5krn3iq5ygzxbafbdi-system/initrd -> 
/gnu/store/ccvhwm8h7h5xijab6gi65bjirz3nyxbv-raw-initrd/initrd.cpio.gz


root@antelope ~# cat /gnu/store/87vv0rknchgwghm3j2bqqpk2rqv2lxqx-parameters
(boot-parameters (version 0) (label "GNU with Linux-Libre 5.13.13") 
(root-device "/dev/sda2") (kernel 
"/gnu/store/y0dz7jdw78q3kgcjc8xy8zncxyl31k5p-linux-libre-5.13.13/bzImage") 
(kernel-arguments ("modprobe.blacklist=pcspkr,snd_pcsp,bluetooth,btusb,ath3k")) 
(initrd 
"/gnu/store/ccvhwm8h7h5xijab6gi65bjirz3nyxbv-raw-initrd/initrd.cpio.gz") 
(bootloader-name grub-efi) (bootloader-menu-entries ((menu-entry (version 0) 
(label "Devuan") (device #f) (device-mount-point #f) (linux 
"(hd1,gpt2)/vmlinuz") (linux-arguments ("root=/dev/sdb2")) (initrd 
"(hd1,gpt2)/initrd.img")))) (locale "en_US.utf8") (store (device #f) 
(mount-point "/") (directory-prefix #f) (crypto-devices ())))root@antelope ~# 







---- On Wed, 29 Dec 2021 01:11:37 +0100 raingloom <mailto:raingloom@riseup.net> 
wrote ----



On Mon, 27 Dec 2021 00:32:18 +0100 
Youni Git <mailto:git@youni.world> wrote: 
 
> Hello, dear developers! Merry Christmas and Happy New year!I would 
> like to ask questions I did not dug in the web, I hope there are 
> short answers.I had Guix OS installed on /dev/sda and i had grub 
> bootloader there configured to run guix and devuan from another sdd, 
> my 
> config:https://gitgud.io/youni/guix-configs/-/blob/master/config-wpa2-wlp5-wf-blacklist--my-desktop-services--isp.conf#L91Everything
>  
> worked fine, i could boot to Guix or choose Devuan from the grub menu 
> controlled by Guix.But i made Devuan 3 to Devuan 4 upgrades. And 
> Devuan replaced grub and now i have no guix in the menu.I think i can 
> add Guix to devuan grub menu, but I'm not sure I can find /vmlinuz 
> and /initrd files in the Guix partitions.I have 3 questions:1. How to 
> boot Guix manually from grub command line?2. How can I add Guix OS to 
> devuan grub menu, which files i need to use for linux image and 
> initrd, where to find them on Guix?3. Can I easy replace back grub by 
> Guix making guix controls grub again?Thank you. 
 
Oh heck, I used to manually kexec Guix, but it was on a different drive 
with its own GRUB install. 
/run/current-system seems to point to store entries ending in -system. 
So to find the store item: 
find /gnu/store -maxdepth 1 -name '*-system' 
Within the store item: 
kernel/bzImage: this is the kernel image to boot. 
initrd: this is the initramfs 
 
That should be enough info to build a GRUB menu entry. There are 
some other options like modprobe.blacklist but I'm not sure where 
they are in the store. 
 
Oh there is also the init binary. Uh. Not sure where that is. 
 
But I think this is a good enough starting point, hopefully you can 
figure out the rest. 
 
Alternatively, maybe try chrooting into the Guix partition and running 
reconfigure again? 
 
In any case, good luck!


reply via email to

[Prev in Thread] Current Thread [Next in Thread]