2841137177 | ||
---|---|---|
.. | ||
README.md | ||
config |
README.md
Nixos Jail Template
Disclaimer
Experimental. Using nixos in this setup hasn't been extensively tested and has known issues.
Setup
Check out the config template file. You may provide it when asked during ./jlmkr.py create
or, if you have the template file stored on your NAS, you may provide it directly by running ./jlmkr.py create --start --config /mnt/tank/path/to/nixos/config mynixosjail
.
Manual Setup
# Create the jail without starting
./jlmkr.py create --distro=nixos --release=24.05 nixos --network-bridge=br1 --resolv-conf=bind-host --bind-ro=./lxd.nix:/etc/nixos/lxd.nix
# Create empty nix module to satisfy import in default lxc configuration.nix
echo '{ ... }:{}' > ./jails/nixos/lxd.nix
# Start the nixos jail
./jlmkr.py start nixos
sleep 90
# Network should be up by now
./jlmkr.py shell nixos /bin/sh -c 'ifconfig'
# Try to rebuild the system
./jlmkr.py shell nixos /bin/sh -c 'nixos-rebuild switch'
Known Issues
Environment jlmkr exec
Running ./jlmkr.py exec mynixosjail ifconfig
doesn't work because the shell environment isn't setup properly. You can run ./jlmkr.py shell mynixosjail /bin/sh -c 'ifconfig'
or ./jlmkr.py exec mynixosjail /bin/sh -c '. /etc/bashrc; ifconfig'
instead.
Bridge networking only
This setup has NOT been tested with macvlan networking.