feat(nixos): add multi-arch support and refactor system configs
- add aarch64-linux to supported systems (flake + pkgs) - refactor host definitions into tty/desktop/laptop configurations - introduce sharedModules to reduce duplication - split system modules into base, gui, and laptop groups - add headless (tty) configuration feat(fish): add Ctrl+Delete and Alt+Delete bindings - Ctrl+Delete → kill-word - Alt+Delete → kill-token chore(hosts): remove explicit hostname from aesthetic chore(services): remove forced disable of speechd
This commit is contained in:
+23
-14
@@ -1,28 +1,37 @@
|
||||
let
|
||||
desktop = [
|
||||
./core/boot.nix
|
||||
# Base system - common for all configurations
|
||||
base = [
|
||||
./core/default.nix
|
||||
|
||||
./hardware/graphics.nix
|
||||
./hardware/fwupd.nix
|
||||
|
||||
./network/default.nix
|
||||
|
||||
./programs
|
||||
|
||||
./services
|
||||
./services/docker.nix
|
||||
./services/greetd.nix
|
||||
./services/pipewire.nix
|
||||
./services/xdg-portal-fix.nix
|
||||
];
|
||||
|
||||
laptop =
|
||||
desktop
|
||||
++ [
|
||||
./hardware/bluetooth.nix
|
||||
./services/power.nix
|
||||
];
|
||||
# GUI-specific modules (display manager, GPU, pipewire)
|
||||
gui = [
|
||||
./core/boot.nix # plymouth boot splash
|
||||
./hardware/graphics.nix # GPU drivers
|
||||
./services/greetd.nix # display manager
|
||||
./services/pipewire.nix # audio
|
||||
];
|
||||
|
||||
# Laptop-specific modules (battery, bluetooth)
|
||||
laptop = [
|
||||
./hardware/bluetooth.nix
|
||||
./services/power.nix
|
||||
];
|
||||
in {
|
||||
inherit desktop laptop;
|
||||
# TTY: desktop headless (no GUI)
|
||||
tty = base;
|
||||
|
||||
# Desktop: desktop with GUI
|
||||
desktop = base ++ gui;
|
||||
|
||||
# Laptop: laptop with GUI + battery + bluetooth
|
||||
laptop = base ++ gui ++ laptop;
|
||||
}
|
||||
|
||||
@@ -11,7 +11,6 @@
|
||||
|
||||
irqbalance.enable = true;
|
||||
thermald.enable = true;
|
||||
speechd.enable = lib.mkForce false;
|
||||
};
|
||||
|
||||
# Use in place of hypridle's before_sleep_cmd, since systemd does not wait for
|
||||
|
||||
Reference in New Issue
Block a user