[Nix-dev] NixOS installation on multi-boot system with GRUB
宋文武
iyzsong at gmail.com
Thu Aug 27 14:14:58 CEST 2015
Henning Thielemann <lemming at henning-thielemann.de> writes:
> I like to install NixOS it to an individual partition on my machine. I
> used the graphical installation DVD and the first problem I got is that
> the touchpad of my machine is ignored. Unfortunately I do not know how to
> control KDE/plasma with keys. An external USB mouse solved that problem
> for now.
>
> I continued with installation to the reserved partition on my hard disk.
> The NixOS installation guide says "You must set the option
> boot.loader.grub.device to specify on which disk the GRUB boot loader is
> to be installed. Without it, NixOS cannot boot." However, I already have a
> GRUB installed by Ubuntu and I want to leave it this way. I tried to add a
> grub entry for NixOS manually but when booting into NixOS this way NixOS
> stops with "/init not found" and the CAPS LOCK key LED blinks.
>
> Thus I should certainly find out how to properly set up NixOS on a
> multi-boot system with GRUB, first. I have partitions for Windows, Ubuntu,
> NixOS and the /home directory. Ubuntu installed and maintains GRUB. How
> can I add NixOS to the GRUB menu under this circumstance?
I think you can:
install NixOS's GRUB to its boot partitation, then add a 'chainloader'
menu entry to your main GRUB (installed into MBR by Ubuntu).
I did this with btrfs (ext4 did't work for me):
boot.loader.grub.device = "/dev/sdaX";
(sdaX is the boot or root partition)
# grub.cfg
menuentry 'NixOS' {
set root='(hd0,X)'
chainloader +1
}
install NixOS without GRUB, then add a 'configfile' menu entry to your
GRUB to load NixOS's grub.cfg.
I guess it look like:
boot.loader.grub.device = "nodev";
# grub.cfg
menuentry 'NixOS' {
set root='(hd0,X)'
configfile '/boot/grub/grub.cfg';
}
More information about the nix-dev
mailing list