Initial commit: Nomarchy NixOS configuration

An opinionated NixOS configuration with Hyprland, featuring:

- Modular flake-based architecture
- Parameterized user configuration (username, timezone, locale, etc.)
- Classical/antiquity theme with Thomas Cole wallpapers
- Full Hyprland setup with waybar, rofi, swaync
- Custom utility scripts (screenshots, screen recording, WiFi QR)
- Neovim with LSP support
- Interactive installer for existing NixOS systems
- ISO builder for fresh installations

Flake outputs:
- nixosConfigurations.example - Test configuration
- nixosConfigurations.installer - ISO installer
- packages.iso - Bootable ISO image
- apps.default - Interactive installer
- lib.mkHost - Host builder function
- templates.default - Starter template

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-02-15 02:44:33 -05:00
commit 58e4232f2f
50 changed files with 3853 additions and 0 deletions

37
modules/core/hardware.nix Normal file
View File

@@ -0,0 +1,37 @@
# Hardware configuration
{
config,
lib,
pkgs,
nomarchyConfig,
...
}: {
# Bluetooth
hardware.bluetooth = lib.mkIf (nomarchyConfig.enableBluetooth or true) {
enable = true;
powerOnBoot = true;
};
services.blueman.enable = nomarchyConfig.enableBluetooth or true;
# Graphics - hardware acceleration
hardware.graphics = {
enable = true;
enable32Bit = true;
};
# Audio - PipeWire (modern audio stack)
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
# Bluetooth audio support
environment.systemPackages = lib.mkIf (nomarchyConfig.enableBluetooth or true) (with pkgs; [
blueman
bluez
bluez-tools
]);
}