jnsgruk's NixOS & Home Manager Configurations
This repository contains a Nix Flake for configuring my machines. As a general rule, my "server" machines track the latest stable release of NixOS, and my workstations/laptops track unstable
.
I use Hyprland as my tiling window manager, Alacritty as my terminal emulator, and I move between Neovim and Visual Studio Code for editing. All of my apps/system components are themed with the excellent Catppuccin theme where possible. I also rely on 1Password, Obsidian and Todoist in my daily work. At work, we use Google Workspace, so I use Google Chrome for work browsing and Firefox for home browsing. I use (and love) Tailscale to network my computers, phones and tablets.
My machines are partitioned with disko, and most are encrypted using the TPM to unlock the disks automatically on boot (I wrote about this on my blog). I tend toward btrfs for my machines - I've been using it for many years without issue. Machines are mostly named after characters or places in Norse mythology.
Hostname | Board | CPU | RAM | GPU | OS | Role | Desktop |
---|---|---|---|---|---|---|---|
dev |
Multipass VM | - | - | - | Ubuntu | Server | - |
freyja |
Thinkpad Z13 | AMD Ryzen 7 Pro 6860Z | 32GB | AMD Radeon 680M | NixOS | Laptop | Hyprland |
kara |
MSI MPG X670 Carbon | AMD Ryzen 9 7950X | 64GB | AMD Radeon RX 7900 XT | NixOS | Desktop | Hyprland |
thor |
Intel NUC6i7KYK | Intel Core i7-6770HQ | 16GB | Intel Iris Pro Graphics 580 | NixOS | Server | - |
volnir |
Raspberry Pi 4 | BCM2711 / Cortex A72 | 4GB | - | NixOS | Kiosk | Cage/Firefox |
- .github: ci/cd workflows for flake checks and version bumps
- home: my home-manager configurations
- host: host-specific configurations
- lib: custom libraries for host/home construction and theming
- overlays: package/configuration overlays
- pkgs: my custom package definitions
- scripts: helper scripts for machine setup
- secrets: secrets encrypted with age and agenix
Both host and home contain common
directories, which contain reusable piece of configuration
used across multiple machines.
The following is a list of the key elements of my setup, with links to their config:
Type | Details |
---|---|
Shell | zsh, starship, nvim, tmux, fastfetch, bat, fzf |
WM | hyprland, waybar, hyprlock, mako, gtk, rofi, swappy |
Apps | vscode, zathura, alacritty |
Services | home-assistant |