# Nimmo's NixOS Configurations ## The Philosophy The goal of this repository is to maintain a unified, reproducible computing environment across multiple high-performance machines. By leveraging **NixOS Flakes**, I ensure that my workflow—from development tools to desktop aesthetics—remains consistent whether I'm on my primary workstation or a mobile 2-in-1. ### Core Intentions 1. **Reproducibility**: Use Flakes and specific Git pins to ensure that "it works on my machine" means it works on *every* machine. 2. **Shared Experience**: The `common/` directory defines a single source of truth for my user account, Plasma 6 desktop environment, and application suite. 3. **Hardware Optimization**: While the experience is unified, the configuration is not generic. Each host contains specific tuning for its hardware (e.g., Framework 16 specialisations vs. Lenovo 2-in-1 sensor support). 4. **Security & Accessibility**: Integrating hardware-level security (Fingerprint) with daily convenience (SDDM Numlock, Plasma 6 Wayland) for a "premium" Linux experience. --- ## The Fleet | Host | Status | Intent | | :--- | :--- | :--- | | **[Electra](hosts/electra/README.md)** | Active | **Powerhouse.** Used for gaming, LLM development, and high-performance tasks. Features deep NVIDIA integration and Strix Point optimizations. | | **[Lena](hosts/lena/README.md)** | Deploying | **Versatility.** A convertible 2-in-1 for travel and tablet use. Optimized for battery life and touch interaction. | --- ## Documentation Index - **[Installation Guide](INSTALL.md)**: The "How-To" for setting up a new machine or re-installing a host. - **[Host Documentation](hosts/)**: Specific quirks, BIOS settings, and hardware identifiers for each machine. - **`common/`**: The heart of the config. If you want to add an app or change a setting globally, look here. --- ## Key Technologies * **Desktop**: KDE Plasma 6 (Wayland) * **Filesystem**: Btrfs with ZSTD compression * **Virtualization**: Rootless Docker * **Shell/Tools**: Standardized CLI utilities across all nodes.