mirror of
https://github.com/donovanglover/nix-config.git
synced 2024-11-22 16:23:57 +01:00
My NixOS configuration with Nix Flakes, Home Manager, Stylix, and Hyprland.
f8d5b35464
Networks are a way to start multiple NixOS virtual machines at the same time. Although cute, networks seem to be used more for "test scripts" and ultimately don't support Nix flakes. This results in package versions being outdated and the inability to use our existing home-manager input and other flakes. Multiple nixosConfigurations, on the other hand, enable us to setup entire computers that don't *have* to be virtual machines, but can be virtual machines if we want them to be. Additionally, it becomes trivial to only run the configurations you want to run, without having to worry about everything being tied to everything else. Finally, persistence is optional and the resulting .qcow2 file is quite small. Ultimately, Nix flakes are a more flexible solution to the older nixos-build-vms command, and should be preferred over it in pretty much all cases. To reiterate, if you're using flakes, there's no reason to use the outdated nixos-build-vms command, which won't have the same package versions as the ones in your flake. |
||
---|---|---|
assets | ||
containers | ||
home | ||
modules | ||
overlays | ||
packages | ||
patches | ||
specializations | ||
src | ||
tests | ||
.gitignore | ||
flake.lock | ||
flake.nix | ||
LICENSE | ||
README.md | ||
treefmt.toml |
nix-config
My NixOS configuration with Nix Flakes, Home Manager, Stylix, and Hyprland.
Features
- Clean, readable code that can be easily modified to add/remove things as needed.
- Fully reproducible and declarative environment thanks to NixOS.
- Reasonably secure containers isolated from your personal files and network.
- Nix Flakes + Home Manager + Btrfs on LUKS.
- Simple yet effective Neovim setup with nvim-lspconfig.
- Modern Wayland support with Hyprland and the master-stack layout.
- Full Japanese support with fonts, input method, and wine covered.
- A universal color scheme inherited by all applications.
Usage
git clone https://github.com/donovanglover/nix-config && cd nix-config
nixos-rebuild build-vm --flake .#nixos
./result/bin/run-nixos-vm
The code base is designed to be small so it's easy to adjust things as needed. Have fun!