60 lines
2.5 KiB
Markdown
60 lines
2.5 KiB
Markdown
# 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.*
|