1{ lib, pkgs, ... }:
2
3{
4 imports = [
5 ../../../modules/virtualisation/lxd-virtual-machine.nix
6 ];
7
8 virtualisation.lxc.templates.nix = {
9 enable = true;
10 target = "/etc/nixos/lxd.nix";
11 template = ./nix.tpl;
12 when = [
13 "create"
14 "copy"
15 ];
16 };
17
18 # copy the config for nixos-rebuild
19 system.activationScripts.config =
20 let
21 config = pkgs.replaceVars ./lxd-virtual-machine-image-inner.nix {
22 stateVersion = lib.trivial.release;
23 };
24 in
25 ''
26 if [ ! -e /etc/nixos/configuration.nix ]; then
27 install -m 0644 -D ${config} /etc/nixos/configuration.nix
28 fi
29 '';
30
31 # Network
32 networking = {
33 dhcpcd.enable = false;
34 useDHCP = false;
35 useHostResolvConf = false;
36 };
37
38 systemd.network = {
39 enable = true;
40 networks."50-enp5s0" = {
41 matchConfig.Name = "enp5s0";
42 networkConfig = {
43 DHCP = "ipv4";
44 IPv6AcceptRA = true;
45 };
46 linkConfig.RequiredForOnline = "routable";
47 };
48 };
49}