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

12
flake.lock generated
View File

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