Zanoni's Desktop Configs
Welcome to my dotfiles! This repository contains my desktop environment setup for both NixOS and Ubuntu. It's built with Nix Flakes and Home Manager.
Got NixOS from the installer? Perfect. Here's how to deploy this flake:
Quick Start for: ❄️ NixOS Users
cd ~
git clone https://github.com/castrozan/.dotfiles.git
cd .dotfilesReplace your_host with your machine's identifier (e.g., dellg15):
sudo nixos-generate-config --dir hosts/your_host/configs- Copy and modify a user directory from
users/(usezanonias template) - Update
flake.nixto add your configuration innixosConfigurations
sudo nixos-rebuild switch --flake .#your_user- Restart your system (recommended)
- Enjoy your new setup! 🎉
Don't wanna go full NixOS for now? No worries! You can still use the flake with Home Manager to manage your dotfiles:
Quick Start for: 🐧 Ubuntu/Non-NixOS systems
cd ~
git clone https://github.com/castrozan/.dotfiles.git
cd .dotfilescurl -L https://nixos.org/nix/install | sh -s -- --daemon# For the lucas.zanoni configuration (adjust username as needed)
nix run home-manager/release-25.11 -- --flake .#lucas.zanoni@x86_64-linux switch -b "backup-$(date +%Y-%m-%d-%H-%M-%S)"📦 mermaid
Here's how everything fits together:
graph TD
subgraph "flake.nix"
Flake["Entry Point<br/>defines configs"]
end
subgraph "NixOS Configuration"
NixOS["nixosConfigurations.zanoni"]
Host["hosts/dellg15<br/>hardware config"]
UserNixOS["users/zanoni/nixos.nix"]
end
subgraph "Home Manager Configuration"
HomeStandalone["homeConfigurations<br/>lucas.zanoni@x86_64-linux"]
UserHome["users/*/home.nix"]
Modules["home/modules/*<br/>app configs"]
end
subgraph "External Inputs"
Nixpkgs["nixpkgs-25.11"]
Unstable["nixpkgs-unstable"]
HM["home-manager"]
end
Flake --> NixOS
Flake --> HomeStandalone
NixOS --> Host
NixOS --> UserNixOS
NixOS --> HM
HomeStandalone --> UserHome
UserHome --> Modules
Flake --> Nixpkgs
Flake --> Unstable
style Flake fill:#f38ba8,color:#1e1e2e
style NixOS fill:#a6e3a1,color:#1e1e2e
style HomeStandalone fill:#89b4fa,color:#1e1e2e
style Nixpkgs fill:#f9e2af,color:#1e1e2e
style HM fill:#cba6f7,color:#1e1e2e
📂 Structure
.dotfiles/
├── .bashrc # Main shell configuration (i'm using fish with bass)
├── .config/ # Application configs (hypr, kitty, tmux, nvim, etc.)
├── .shell_env_vars # Local environment variables (git-ignored)
├── bin/ # Custom shell scripts & utilities
├── home/ # Home Manager shared modules
├── hosts/ # NixOS hosts configuration
├── nixos/ # NixOS shared system modules
├── shell/ # Shell configurations (bash, fish)
├── users/ # User-specific configurations
│ ├── lucas.zanoni/ # Home Manager standalone config (Ubuntu/non-NixOS)
│ └── zanoni/ # Full NixOS system config
├── flake.nix # Nix Flakes entry point
├── Makefile # Helper commands
└── README.md # This file!
Explore options for configurations directly from the repl so it is up to date with the rebuild command.
nix replThen in the REPL:
:lf .#homeConfigurations.lucas.zanoni@x86_64-linux
builtins.attrNames config.options.xdg.desktopEntries.type.getSubOptionsOr to see option descriptions:
config.options.xdg.desktopEntries.descriptionPre-generated, AI-consumable codebase documentation lives in docs/ai-context/. These docs are designed for AI agents to quickly understand the repository without reading all source files.
# Full regeneration (all doc types)
~/openclaw/monster/projects/codewiki/generate.sh ~/.dotfiles
# Partial — only specific areas
~/openclaw/monster/projects/codewiki/generate.sh --focus architecture,modules ~/.dotfiles
# Auto-detect from git diff
~/openclaw/monster/projects/codewiki/generate.sh --diff ~/.dotfilesRegenerate after large refactors, new modules, or directory reorganization. Minor changes don't need regeneration.
This setup is inspired by and borrows from:
- ryan4yin/nix-config - Excellent complex Nix configurations
- OfflineBot/nixos - Clean NixOS setup
- The amazing NixOS and Home Manager communities
- And countless other dotfiles repos I've stumbled upon at 3 AM 🌙
- NixOS Manual - Official documentation
- Home Manager Manual - Home Manager docs
- Nix Pills - Learn Nix the fun way
- NixOS & Flakes Book - Comprehensive guide
Enjoy ricing and happy hacking! If you like this setup, consider giving it a ⭐





