meta: Add network example

This is a working example of using the modules in our existing
configuration to start a network of virtual machines with
nixos-build-vms. Note that VMs take longer to start up in this case than
nixos-rebuild build-vm, and that said VMs may lack certain functionality
(such as dynamic resolution in GNOME) that would otherwise be present
with build-vm.

Although networks are certainly cute (and I'm glad that I feel familiar
with them thanks to my better understanding of Nix), they do seem less
convenient than nixos-rebuild build-vm and don't appear to support Nix
flakes. Networks therefore seem more useful for running multiple one-off
services that couldn't otherwise be ran in a container.
This commit is contained in:
Donovan Glover
2023-06-18 08:06:26 -04:00
parent 168134bcf3
commit bd7c1d553b
5 changed files with 52 additions and 24 deletions

View File

@@ -10,5 +10,12 @@
./starship.nix
./stylix.nix
./thunar.nix
./user.nix
];
virtualisation.vmVariant = {
imports = [
./virtualization.nix
];
};
}

12
modules/user.nix Normal file
View File

@@ -0,0 +1,12 @@
let VARIABLES = import ../src/variables.nix; in {
users = {
mutableUsers = false;
users."${VARIABLES.username}" = {
isNormalUser = true;
uid = 1000;
password = "user";
extraGroups = [ "wheel" "networkmanager" ];
};
};
}

View File

@@ -0,0 +1,17 @@
{
virtualisation = {
memorySize = 8192;
cores = 4;
};
virtualisation.qemu.options = [
"-device virtio-vga-gl"
"-display sdl,gl=on,show-cursor=off"
"-full-screen"
"-audio pa,model=hda"
];
environment.sessionVariables = {
WLR_NO_HARDWARE_CURSORS = "1";
};
}