33 lines
1.4 KiB
Markdown
33 lines
1.4 KiB
Markdown
# saturnOS
|
|
|
|
this is the basis of the saturnOS operating system ( sorry guix enjoyers )
|
|
|
|
to check for syntax errors, run `nix repl replEval.nix` and once inside the repl, run `imported` to
|
|
check for syntax errors
|
|
|
|
# Setup for not nixos
|
|
Install nix on your system following the instructions here:
|
|
https://nixos.org/download.html
|
|
|
|
Add the nixos 22.11 channel to your system, since we're basing on the latest stable branch for now.
|
|
`nix-channel --add https://nixos.org/channels/nixos-22.11 nixos`
|
|
|
|
Enable flakes, as we're using a flake for our build process.
|
|
```
|
|
mkdir -p ~/.config/nix
|
|
echo "experimental-features = nix-command flakes" >> ~/.config/nix/nix.conf
|
|
```
|
|
|
|
## Building and Running
|
|
We are using the [nixos-generators](https://github.com/nix-community/nixos-generators) package to help coordinate builds.
|
|
### VM
|
|
To build the VM:
|
|
`nix run github:nix-community/nixos-generators -- -c default.nix -f vm -o result/vm`
|
|
This will build the VM, and register the result in the `result/vm` symlink.
|
|
|
|
To run the VM, use `sudo result/vm/bin/run-qemu-vm`. (sudo can probably be avoided if you are in the KVM group... I think. TODO Lambda look this up)
|
|
|
|
You can combine the two steps with the following: `sudo $(nix run github:nix-community/nixos-generators -- -c default.nix -f vm -o result/vm)`
|
|
|
|
Or to build and run without registering a link (Good if you want a throw away VM which can be garbage collected): `sudo $(nix run github:nix-community/nixos-generators -- -c default.nix -f vm)`
|