README: extend

This commit is contained in:
Jörg Thalheim 2022-11-22 21:46:43 +01:00
parent ef1e3ea2c2
commit 4e957c8768

View File

@ -1,7 +1,24 @@
# nixos-remote - install nixos everywhere via ssh
nixos-remote makes it possible to install nixos from Linux machines reachable via ssh.
Under the hood uses a [kexec image](https://github.com/nix-community/nixos-images#kexec-tarballs) to boot
into a NixOS installer from a running Linux system.
It then uses [disko](https://github.com/nix-community/disko) to partition and
format the disks on the target system before it installs the user provided nixos
configuration.
## Requirements
- x86_64 Linux system with kexec support (most x86_64 machine do have kexec support)
- At least 2.5GB RAM (swap does not count). If you do not have enough RAM you
will see failures unpacking the initrd), this is because kexec needs to load
the whole nixos into memory.
- DHCP: Currently nixos-remote requires that the network of the machine, offers DHCP for
dynamic address configuration or else the booted nixos will not have any
network set up.
## Usage
Needs a repo with your configurations with flakes. for a minimal example checkout https://github.com/Lassulus/flakes-testing.
Needs a repo with your configurations with flakes. For a minimal example checkout https://github.com/Lassulus/flakes-testing.
Your NixOS configuration will also need a [disko](https://github.com/nix-community/disko) configuration as we can see in
our [example](https://github.com/Lassulus/flakes-testing/blob/216b3023c01581359599f5bc9ae48eeee2617627/flake.nix#L13)
@ -14,7 +31,3 @@ Afterwards you can just run:
The parameter passed to `--flake` should point to your nixos configuration
exposed in your flake (`nixosConfigurations.your-system` in the example above).
Currently nixos-remote requires that the network of the machine, offers DHCP for
dynamic address configuration or else the booted nixos will not have any
network set up.