Welcome to my personal NixOS flake! This is where I keep all my desktop configuration organized and reproducible. Because who doesn't love declarative system management? π
This is my NixOS configuration for my home desktop setup. It's a flake-based configuration that manages both my system-level stuff (NixOS) and user-level dotfiles (Home Manager). Think of it as my digital home's blueprint!
- System Config: All the low-level system stuff in
hosts/desktop/
- Home Manager: My personal dotfiles and user programs in
home/
- Programs: Individual program configurations in
home/programs/
- Shared Utilities: Common stuff in
lib/
-
Clone this:
git clone <your-repo-url> ~/.config/nixos-config cd ~/.config/nixos-config
-
Check if everything looks good:
nix flake check
-
Apply the system configuration:
sudo nixos-rebuild switch --flake .#nixos
-
Apply the home configuration:
home-manager switch --flake .#sid
After tweaking any configs, just run the appropriate command:
- System changes:
sudo nixos-rebuild switch --flake .#nixos
- Home changes:
home-manager switch --flake .#sid
- Test before applying: Add
--dry-run
to see what would change
.
βββ flake.nix # Main flake configuration
βββ hosts/
β βββ desktop/ # System-specific configs
βββ home/
β βββ desktop.nix # Main home config
β βββ programs/ # Individual program configs
βββ lib/ # Shared utilities
- Gaming Ready: Steam, GameMode, and all the good stuff
- Development Setup: Neovim, Git, Docker, and development tools
- GNOME Desktop: With useful extensions and tweaks
- Hardware Optimized: NVIDIA drivers and hardware acceleration
- Dotfiles Management: All my configs in one place
Want to make this your own? Here's what you'll probably want to change:
- User Info: Update username and home directory in
home/desktop.nix
- Hostname: Change the hostname in
hosts/desktop/configuration.nix
- Programs: Add/remove programs in the respective config files
- Hardware: Update
hardware-configuration.nix
for your system
- Build fails? Run
nix flake check
to see what's wrong - Home Manager issues? Make sure you're using the right username in the flake
- System won't boot? You can always rollback with the systemd-boot menu
- This config is tailored for my specific hardware (NVIDIA GPU, specific drives, etc.)
- Feel free to steal anything useful, but you'll need to adapt it to your setup
- The configuration assumes you're comfortable with NixOS basics
Happy Nixing! π