diff --git a/README.md b/README.md index 98b7f4d..6940c20 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,87 @@ # HakaseOS -HakaseOS is an opinionated NixOS configuration heavily inspired by OmarchyOS. + +A modular, flake-based NixOS configuration for a single host (`hakase`). ## Features -* Vim Keybindings -* Hardened Firefox +- **Hyprland** compositor with UWSM (systemd session management) +- **Stylix** for automatic system-wide theming from wallpaper colors +- **Hardened Firefox** with custom bookmarks and new tab page +- **Vim keybindings** throughout the system +- **SOPS** for encrypted secrets management +- **CachyOS kernel** via chaotic-nyx for performance optimizations + +## Structure + +``` +. +├── flake.nix # Flake inputs and NixOS configuration +├── config.nix # Central configuration values +├── hosts/ +│ └── hakase/ # Host-specific configuration +├── modules/ +│ ├── nixos/ # System-level modules (boot, kernel, services) +│ └── home/ # Home Manager modules +├── apps/ # Per-application configurations +│ ├── hyprland/ # Hyprland window manager +│ ├── waybar/ # Status bar +│ ├── firefox/ # Browser configuration +│ ├── ghostty/ # Terminal emulator +│ ├── neovim/ # Editor (via nixovim flake) +│ ├── walker/ # Application launcher +│ └── ... # And many more +├── secrets/ # SOPS encrypted secrets +└── assets/ # Wallpapers and other assets +``` + +## Usage + +### Rebuild System + +```bash +sudo nixos-rebuild switch --flake ~/.config/nixos/#hakase +``` + +Or use the configured alias: + +```bash +update +``` + +### Manage Secrets + +```bash +# Edit secrets +nix-shell -p sops --run "sops secrets/secrets.yaml" + +# Update keys +nix-shell -p sops --run "sops updatekeys secrets/secrets.yaml" +``` + +## Configuration + +Central configuration values are defined in `config.nix`: + +- `myConfig.nixos` - System settings (username, hostname, timezone) +- `myConfig.git` - Git configuration +- `myConfig.terminal` - Default terminal and aliases +- `myConfig.hyprland` - Monitor configuration and wallpaper +- `myConfig.firefox` - Bookmarks and new tab settings + +## Flake Inputs + +| Input | Description | +|-------|-------------| +| nixpkgs | NixOS unstable | +| home-manager | User environment management | +| hyprland | Wayland compositor | +| chaotic | CachyOS kernel and packages | +| sops-nix | Secrets management | +| nixovim | Neovim configuration | +| stylix | System-wide theming | +| walker | Application launcher | +| textfox | Firefox CSS theme | + +## License + +Personal configuration - use at your own discretion.