# Nomarchy **Nomarchy** is a professional-grade NixOS-based distribution monorepo that replicates and enhances the Wayland workflow. It is built on a strictly declarative Nix Flake setup, providing a unified aesthetic and robust functionality while allowing users complete freedom to customize their environment. ## 🚀 Key Features - **Purely Declarative:** Everything from system themes and fonts to wallpapers is managed via Nix. - **Intelligent Hardware Detection:** The installer automatically identifies your hardware (CPU vendor, specific laptop models like XPS, Framework, T2 Mac) and applies optimized `nixos-hardware` profiles. - **Modular Downstream Architecture:** Your personal customizations live in separate files (`system.nix`, `home.nix`), keeping the core "Nomarchy engine" clean and easily updatable. - **Robust Scripting:** 150+ utility scripts are bundled with explicitly wrapped dependencies, ensuring they work regardless of your global system state. - **Dynamic Theming:** Seamlessly switch between 20+ Base16 themes using `nomarchy-theme-selector` with automatic wallpaper and font synchronization. - **CI/CD Ready:** Automated ISO building via GitHub Actions ensures a verified installer is always available. ## 📦 Installation ### 1. Build the Installer ISO You can build the ISO locally using the provided script: ```bash ./bin/nomarchy-build-iso ``` Alternatively, download the latest ISO from the "Actions" tab in this repository. ### 2. Run the Installer Once booted into the Live ISO, run the interactive installer: ```bash /etc/install-nomarchy.sh ``` The installer will guide you through hardware detection, disk partitioning (Ext4 or Encrypted BTRFS), and user setup. ## 🛠️ Customization (Downstream) After installation, your configuration is located in `/etc/nixos/`. To customize your system without interfering with Nomarchy core: - **System-level:** Add NixOS modules or extra packages to `/etc/nixos/system.nix`. - **User-level:** Add Home Manager modules or dotfiles to `/etc/nixos/home.nix`. To apply changes: ```bash nomarchy-update ``` ## 🔄 Updating To pull the latest Nomarchy improvements and update your system: ```bash nomarchy-update ``` This script will update flake inputs, rebuild your NixOS system, and switch your Home Manager environment. ## 🎨 Controls - `Super + Alt + Space`: Theme Selector - `Super + Ctrl + Space`: Font Selector - `Super + Shift + Space`: Wallpaper Selector - `Super + Return`: Terminal (Alacritty) - `Super + Q`: Kill Active Window --- *Built with ❤️ using NixOS, Hyprland, and Stylix.*