My NixOS configuration with Nix Flakes, Home Manager, Stylix, and Hyprland.
Go to file
Donovan Glover 2297fb41e3
treewide: Drop usage of inherit (pkgs)
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.
2024-08-07 16:40:58 -04:00
.github Revert "ci: Add nixd / nixf-tidy" 2024-08-03 20:08:09 -04:00
assets ironbar: Update to latest commit 2024-08-04 11:34:40 -04:00
containers treewide: Drop usage of inherit (pkgs) 2024-08-07 16:40:58 -04:00
example example: Format with nixfmt-rfc-style 2024-08-03 14:31:14 -04:00
home treewide: Drop usage of inherit (pkgs) 2024-08-07 16:40:58 -04:00
hosts packages: Drop pinephone-toolkit 2024-08-03 21:12:32 -04:00
lib treewide: Format remaining files with nixfmt-rfc-style 2024-08-03 14:49:00 -04:00
modules chore: Update to latest nixos-unstable release 2024-08-03 19:44:23 -04:00
overlays ironbar: Update to latest commit 2024-08-04 11:34:40 -04:00
packages packages: Drop pinephone-toolkit 2024-08-03 21:12:32 -04:00
specializations treewide: Drop usage of inherit (pkgs) 2024-08-07 16:40:58 -04:00
tests chore: Format with nix fmt 2024-08-03 15:27:04 -04:00
.gitignore Update .gitignore 2023-05-10 22:19:36 -04:00
cover.jpg docs: Add new cover image 2023-09-12 16:09:08 -04:00
flake.lock mobile-nixos: Update kernel from 6.9.7 to 6.9.10 2024-08-04 15:35:46 -04:00
flake.nix chore: Update to latest nixos-unstable release 2024-08-03 19:44:23 -04:00
LICENSE chore: Update LICENSE 2024-01-02 18:19:51 -05:00
README.md docs: Change link to new official NixOS wiki 2024-05-17 22:21:15 -04:00

nix-config

My NixOS configuration with Nix Flakes, Home Manager, Stylix, and Hyprland.

A screenshot of Pepper looking earnestly at declaratively configured Git abbreviations for the fish shell, written in Nix. Background art: The market, In Bloom and Vertical cover book two screen by David Revoy CC-BY 4.0.

A screenshot of a Rust programming environment with Neovim, kitty, and bacon. 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!