This repository contains my NixOS configuration for various machines together with my home-manager configuration.
Feel free to utilize my code in your own configuration.
The flake.nix a bunch of different NixOS systems
- nas, My main server for media, hot backups and other related stuff.
- vaasanas, My secondary server.
- t480, My daily-driver laptop with home-manager
.
├── hosts
│ ├── nas
│ ├── t480
│ └── vaasanas
├── images
├── lib
├── modules
│ ├── system
│ │ ├── common
│ │ ├── gui
│ │ ├── hardware
│ │ ├── services
│ │ └── virtualisation
│ └── user
│ ├── programs
│ │ └── neomutt
│ └── services
└── secrets
- /hosts contains hosts-specific configuration
- /lib contains the
mkHost
helper function - /modules/system contains system configuration
- /modules/user contains home-manager configuration
I use agenix for secret management both with and without the home-manager integration, depending on the system.
My Neovim configuration is probably the single largest component of this repository. I use Nixvim for configuring it.
It features:
- Finnish spell-checking with Voikko
- LSP-configuration
- Testaustime-plugin
- and a bunch of other things
I've recently adopted the Niri tiling and scrolling Wayland compositor. I configure it through the niri-flake.
I use Neomutt as my primary email client. My [neomutt configuration] together with my home-manager accounts configuration is quite sophisticated. It supports multiple accounts well and allows authenticating to servers with oauth. Helpers for adding outlook and gmail accounts are provided. Support for PGP is also included.
I use my YubiKey for signing commits, authenticating through SSH, decrypting my passwords and even for logging into my computer.
I run Transmission in a separate network namespace as configured in the pia-nix flake.
I have configured Jellyfin to be able to play live-tv through tvheadend.