mirror of
https://github.com/donovanglover/nix-config.git
synced 2024-11-07 17:04:00 +01:00
My NixOS configuration with Nix Flakes, Home Manager, Stylix, and Hyprland.
2297fb41e3
Having to change the package list in two places was a bit redundant. We can also use `with` patterns now since nixd warns if there are escaping variables being used. Note that variables used in multiple places are kept to make it easier to recognize that those variables must be changed together. Also note that inherit (pkgs) inside of mkMerge are currently kept to reduce the diff. |
||
---|---|---|
.github | ||
assets | ||
containers | ||
example | ||
home | ||
hosts | ||
lib | ||
modules | ||
overlays | ||
packages | ||
specializations | ||
tests | ||
.gitignore | ||
cover.jpg | ||
flake.lock | ||
flake.nix | ||
LICENSE | ||
README.md |
nix-config
My NixOS configuration with Nix Flakes, Home Manager, Stylix, and Hyprland.
Background art: The market, In Bloom and Vertical cover book two screen by David Revoy − CC-BY 4.0.
Background art: Video game jam by David Revoy − CC-BY 4.0.
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.
- Specializations for easy switching between Hyprland, GNOME, and Plasma.
- 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!