Installing from Linux: Difference between revisions

imported>Kim Bruning
m shorter
m change iso url
 
(8 intermediate revisions by 5 users not shown)
Line 1: Line 1:
You already have a running linux with GRUB on your primary partition and you don't want to waste a CD-R?
== Why? ==
Right. We also assume that you have a spare partition where to install NixOS ready.
 
For 'normal' NixOS installations, you'd use the instructions from https://nixos.org/manual/nixos/stable/index.html#sec-installation
 
However, you can install 'directly from Linux' if:
 
* You already have a running linux distro
* You don't want to waste a CD-R (and can't boot from USB)
* You have a spare partition where to install NixOS ready.
 
One method is described in the manual at https://nixos.org/manual/nixos/stable/#sec-installing-from-other-distro. For an alternative method, see below.
 
== How? ==


To simplify, we will be using these abbreviations:
To simplify, we will be using these abbreviations:
Line 59: Line 70:
Next we have to edit the target system init script to start a bash session instead of systemd. As that is the last thing the script does, adding an interactive program does not pose a problem.
Next we have to edit the target system init script to start a bash session instead of systemd. As that is the last thing the script does, adding an interactive program does not pose a problem.
<syntaxhighlight lang="console">
<syntaxhighlight lang="console">
# sed -i "s,exec systemd,exec /$BASH," $INIT
# sed -i "s,exec /.*systemd,exec /$BASH," $INIT
</syntaxhighlight>
</syntaxhighlight>


Line 83: Line 94:
# (chroot) mount /dev/sda3 /mnt
# (chroot) mount /dev/sda3 /mnt
# (chroot) nixos-generate-config --root /mnt
# (chroot) nixos-generate-config --root /mnt
# (chroot) nano /etc/nixos/configuration.nix
# (chroot) nano /mnt/etc/nixos/configuration.nix
</syntaxhighlight>
</syntaxhighlight>


Line 112: Line 123:


<syntaxhighlight lang="console">
<syntaxhighlight lang="console">
# wget https://d3g5gsiof5omrk.cloudfront.net/nixos/17.03/nixos-17.03.1449.2e983f14f6/nixos-minimal-17.03.1449.2e983f14f6-x86_64-linux.iso # get the latest iso (URL might change!)
# wget https://channels.nixos.org/nixos-24.05/latest-nixos-minimal-x86_64-linux.iso # get the latest iso (URL might change!)
# modprobe loop
# modprobe loop
# mount -o loop nixos-minimal-17.03.1449.2e983f14f6-x86_64-linux.iso ~/inst
# mount -o loop latest-nixos-minimal-x86_64-linux.iso ~/inst
# # mount /dev/sda1 # mount the /boot partition if you have it
# # mount /dev/sda1 # mount the /boot partition if you have it
# cp ~/inst/boot/bzImage /boot/nixos-livecd-bzImage
# cp ~/inst/boot/bzImage /boot/nixos-livecd-bzImage
Line 177: Line 188:
Thats it. Now follow the manual (Alt-F8), mount /dev/sda3 as /mnt, do
Thats it. Now follow the manual (Alt-F8), mount /dev/sda3 as /mnt, do
nixos-option and so on.
nixos-option and so on.
[[Category:Tutorial]]