This commit is contained in:
Melvin Ragusa
2026-02-02 17:48:30 +01:00
parent ab9333c25b
commit 86a1742168
2 changed files with 42 additions and 29 deletions

View File

@@ -1,6 +1,12 @@
# configuration.nix
# Main NixOS configuration - imports modular components
{ config, pkgs, inputs, lib, ... }:
{
config,
pkgs,
inputs,
lib,
...
}:
{
imports = [
@@ -8,18 +14,18 @@
./hardware-configuration.nix
# Modular configuration
./modules/desktop.nix # Portal, polkit, launcher, lock, wallpaper
./modules/gpu-amd.nix # AMD graphics, Vulkan, VA-API
./modules/audio.nix # Bluetooth, audio controls
./modules/gaming.nix # Steam, Gamemode, Lutris, etc.
./modules/apps.nix # User applications
./modules/dev.nix # Docker, dev tools
./modules/theming.nix # Fonts, themes, cursors
./modules/virtualization.nix # QEMU, KVM, virt-manager
./modules/power.nix # Power management, CPU governors
./modules/shell.nix # Fish shell configuration
./modules/services.nix # System services (fstrim, zram, avahi, psd)
./modules/navidrome.nix # Music streaming server
./modules/desktop.nix # Portal, polkit, launcher, lock, wallpaper
./modules/gpu-amd.nix # AMD graphics, Vulkan, VA-API
./modules/audio.nix # Bluetooth, audio controls
./modules/gaming.nix # Steam, Gamemode, Lutris, etc.
./modules/apps.nix # User applications
./modules/dev.nix # Docker, dev tools
./modules/theming.nix # Fonts, themes, cursors
./modules/virtualization.nix # QEMU, KVM, virt-manager
./modules/power.nix # Power management, CPU governors
./modules/shell.nix # Fish shell configuration
./modules/services.nix # System services (fstrim, zram, avahi, psd)
./modules/navidrome.nix # Music streaming server
];
# ═══════════════════════════════════════════════════════════════
@@ -31,12 +37,12 @@
# sched-ext scheduler for gaming performance
services.scx.enable = true;
services.scx.scheduler = "scx_lavd"; # Low-latency scheduler, good for gaming
services.scx.scheduler = "scx_lavd"; # Low-latency scheduler, good for gaming
# ═══════════════════════════════════════════════════════════════
# NETWORKING
# ═══════════════════════════════════════════════════════════════
networking.hostName = "atlas";
networking.hostName = "nix";
networking.networkmanager.enable = true;
# ═══════════════════════════════════════════════════════════════
@@ -81,7 +87,7 @@
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
jack.enable = true; # For pro audio apps
jack.enable = true; # For pro audio apps
};
# ═══════════════════════════════════════════════════════════════
@@ -114,20 +120,20 @@
isNormalUser = true;
description = "Melvin Ragusa";
extraGroups = [
"wheel" # Sudo access
"networkmanager" # Network configuration
"wheel" # Sudo access
"networkmanager" # Network configuration
# Additional groups are added by modules:
# - docker (dev.nix)
# - gamemode (gaming.nix)
# - corectrl (gpu-amd.nix)
];
shell = pkgs.fish; # Fish shell (migrated from Arch)
shell = pkgs.fish; # Fish shell (migrated from Arch)
};
# ═══════════════════════════════════════════════════════════════
# PROGRAMS
# ═══════════════════════════════════════════════════════════════
programs.zsh.enable = true; # Keep zsh available as fallback
programs.zsh.enable = true; # Keep zsh available as fallback
programs.yazi.enable = true;
programs.firefox.enable = true;
programs.niri.enable = true;
@@ -136,13 +142,19 @@
# NIX SETTINGS
# ═══════════════════════════════════════════════════════════════
nix.settings = {
experimental-features = [ "nix-command" "flakes" ];
experimental-features = [
"nix-command"
"flakes"
];
# Optimize storage
auto-optimise-store = true;
# Trust users for substituters
trusted-users = [ "root" "@wheel" ];
trusted-users = [
"root"
"@wheel"
];
};
# Garbage collection
@@ -165,7 +177,8 @@
curl
# Nix tools
nil # Nix LSP
nil # Nix LSP
nixd
# Wayland
xwayland-satellite

12
flake.lock generated
View File

@@ -110,11 +110,11 @@
"zon2nix": "zon2nix"
},
"locked": {
"lastModified": 1770004164,
"narHash": "sha256-viXsdAhYtEO19D2i3mgm09DuFDK6QF8s5weLoMjqVXg=",
"lastModified": 1770050267,
"narHash": "sha256-N+UhMktEVlCt9z9oaRhE5Hg42fXA52ljWUxJ/HwYTsQ=",
"owner": "ghostty-org",
"repo": "ghostty",
"rev": "1b7a15899ad40fba4ce020f537055d30eaf99ee8",
"rev": "8bc3cdcf7daeb0ea9d8eab44b6d11b0d2a04641e",
"type": "github"
},
"original": {
@@ -275,11 +275,11 @@
]
},
"locked": {
"lastModified": 1770044781,
"narHash": "sha256-YoFjMys2ChNUeppMTq1DugT6DfT4qoFG7e23OjmmPVs=",
"lastModified": 1770050462,
"narHash": "sha256-SvIR3FrTRJE77C0JUowvItVqX/GBm830hXziN8KgHeU=",
"owner": "anomalyco",
"repo": "opencode",
"rev": "06d63ca54cacfce5af7fdab216ffe7f35d778642",
"rev": "cf8b033be1cbe9f20bc0921d9920a66c0d95c704",
"type": "github"
},
"original": {