diff --git a/flake.lock b/flake.lock
index 4cc7bcd..3883233 100755
--- a/flake.lock
+++ b/flake.lock
@@ -260,25 +260,6 @@
"type": "github"
}
},
- "edit": {
- "inputs": {
- "nixpkgs": "nixpkgs_2",
- "rust-overlay": "rust-overlay_4"
- },
- "locked": {
- "lastModified": 1749050246,
- "narHash": "sha256-1C6r6XTZTKOjdrJNDNPQvUW6Kh3TEBFuFs18uQn+d/Q=",
- "ref": "refs/heads/master",
- "rev": "b47344a028809b471f6106780fef6e8cd690d1ab",
- "revCount": 2,
- "type": "git",
- "url": "https://gitea.mjallen.dev/mjallen/ms-edit-nix"
- },
- "original": {
- "type": "git",
- "url": "https://gitea.mjallen.dev/mjallen/ms-edit-nix"
- }
- },
"flake-compat": {
"flake": false,
"locked": {
@@ -788,7 +769,7 @@
"nas-nixpkgs-stable"
],
"nixpkgs-stable": "nixpkgs-stable_3",
- "rust-overlay": "rust-overlay_5"
+ "rust-overlay": "rust-overlay_4"
},
"locked": {
"lastModified": 1750590485,
@@ -869,7 +850,7 @@
"nas-nixpkgs"
],
"pre-commit-hooks-nix": "pre-commit-hooks-nix_2",
- "rust-overlay": "rust-overlay_6"
+ "rust-overlay": "rust-overlay_5"
},
"locked": {
"lastModified": 1737639419,
@@ -889,7 +870,7 @@
"nas-nix-vscode-extensions": {
"inputs": {
"flake-utils": "flake-utils_3",
- "nixpkgs": "nixpkgs_3"
+ "nixpkgs": "nixpkgs_2"
},
"locked": {
"lastModified": 1749002682,
@@ -908,7 +889,7 @@
"nas-nixai": {
"inputs": {
"flake-utils": "flake-utils_4",
- "nixpkgs": "nixpkgs_4"
+ "nixpkgs": "nixpkgs_3"
},
"locked": {
"lastModified": 1749000216,
@@ -1110,7 +1091,7 @@
"inputs": {
"argononed": "argononed",
"nixos-images": "nixos-images",
- "nixpkgs": "nixpkgs_5"
+ "nixpkgs": "nixpkgs_4"
},
"locked": {
"lastModified": 1749156319,
@@ -1286,21 +1267,6 @@
}
},
"nixpkgs_2": {
- "locked": {
- "lastModified": 1749048037,
- "narHash": "sha256-bcugmD6yaFBzlmq7XmYJmQ/IpsJkIL/HBo7moDkTGQc=",
- "owner": "NixOS",
- "repo": "nixpkgs",
- "rev": "7569eca88e82f75c4ddb1ed2def9b2975844179a",
- "type": "github"
- },
- "original": {
- "owner": "NixOS",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
- "nixpkgs_3": {
"locked": {
"lastModified": 1744868846,
"narHash": "sha256-5RJTdUHDmj12Qsv7XOhuospjAjATNiTMElplWnJE9Hs=",
@@ -1316,7 +1282,7 @@
"type": "github"
}
},
- "nixpkgs_4": {
+ "nixpkgs_3": {
"locked": {
"lastModified": 1748693115,
"narHash": "sha256-StSrWhklmDuXT93yc3GrTlb0cKSS0agTAxMGjLKAsY8=",
@@ -1332,7 +1298,7 @@
"type": "github"
}
},
- "nixpkgs_5": {
+ "nixpkgs_4": {
"locked": {
"lastModified": 1748882666,
"narHash": "sha256-z2uanxifOXGEqdiprquIGZu0XaRYih3FHXDQwLc1xis=",
@@ -1348,7 +1314,7 @@
"type": "github"
}
},
- "nixpkgs_6": {
+ "nixpkgs_5": {
"locked": {
"lastModified": 1750506804,
"narHash": "sha256-VLFNc4egNjovYVxDGyBYTrvVCgDYgENp5bVi9fPTDYc=",
@@ -1479,7 +1445,7 @@
"pi5-nixpkgs"
],
"nixpkgs-stable": "nixpkgs-stable_6",
- "rust-overlay": "rust-overlay_7"
+ "rust-overlay": "rust-overlay_6"
},
"locked": {
"lastModified": 1749770917,
@@ -1745,7 +1711,6 @@
"desktop-nixpkgs": "desktop-nixpkgs",
"desktop-sops-nix": "desktop-sops-nix",
"desktop-steam-rom-manager": "desktop-steam-rom-manager",
- "edit": "edit",
"nas-authentik-nix": "nas-authentik-nix",
"nas-cosmic": "nas-cosmic",
"nas-crowdsec": "nas-crowdsec",
@@ -1851,27 +1816,6 @@
}
},
"rust-overlay_4": {
- "inputs": {
- "nixpkgs": [
- "edit",
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1749004659,
- "narHash": "sha256-zaZrcC5UwHPGkgfnhTPx5sZfSSnUJdvYHhgex10RadQ=",
- "owner": "oxalica",
- "repo": "rust-overlay",
- "rev": "c52e346aedfa745564599558a096e88f9a5557f9",
- "type": "github"
- },
- "original": {
- "owner": "oxalica",
- "repo": "rust-overlay",
- "type": "github"
- }
- },
- "rust-overlay_5": {
"inputs": {
"nixpkgs": [
"nas-cosmic",
@@ -1892,7 +1836,7 @@
"type": "github"
}
},
- "rust-overlay_6": {
+ "rust-overlay_5": {
"inputs": {
"nixpkgs": [
"nas-lanzaboote",
@@ -1913,7 +1857,7 @@
"type": "github"
}
},
- "rust-overlay_7": {
+ "rust-overlay_6": {
"inputs": {
"nixpkgs": [
"pi5-cosmic",
@@ -1934,7 +1878,7 @@
"type": "github"
}
},
- "rust-overlay_8": {
+ "rust-overlay_7": {
"inputs": {
"nixpkgs": [
"steamdeck-chaotic",
@@ -1955,7 +1899,7 @@
"type": "github"
}
},
- "rust-overlay_9": {
+ "rust-overlay_8": {
"inputs": {
"nixpkgs": [
"steamdeck-lanzaboote",
@@ -1981,8 +1925,8 @@
"flake-schemas": "flake-schemas_2",
"home-manager": "home-manager_2",
"jovian": "jovian_2",
- "nixpkgs": "nixpkgs_6",
- "rust-overlay": "rust-overlay_8"
+ "nixpkgs": "nixpkgs_5",
+ "rust-overlay": "rust-overlay_7"
},
"locked": {
"lastModified": 1750764101,
@@ -2085,7 +2029,7 @@
"steamdeck-nixpkgs"
],
"pre-commit-hooks-nix": "pre-commit-hooks-nix_3",
- "rust-overlay": "rust-overlay_9"
+ "rust-overlay": "rust-overlay_8"
},
"locked": {
"lastModified": 1737639419,
diff --git a/flake.nix b/flake.nix
index a64676b..845a119 100755
--- a/flake.nix
+++ b/flake.nix
@@ -283,8 +283,6 @@
# Common #
#####################################################
- edit.url = "git+https://gitea.mjallen.dev/mjallen/ms-edit-nix";
-
nixpkgs-unstable = {
url = "github:NixOS/nixpkgs/nixos-unstable";
};
@@ -358,7 +356,6 @@
nix-darwin,
# Common
- edit,
nixpkgs-unstable,
nixpkgs-stable,
}@inputs:
@@ -376,10 +373,16 @@
inherit inputs outputs;
};
modules = [
- ./base/base-nogui
- ./base/base-gui
+ ./hosts/base/base-nogui
+ ./hosts/base/base-gui
./hosts/desktop/configuration.nix
+
./modules/desktop-environments/gnome
+ ./modules/desktop-environments/cosmic/specialisation.nix
+ ./modules/desktop-environments/hyprland/specialisation.nix
+
+ ./modules/amd
+ ./modules/gaming
# Lanzaboote
desktop-lanzaboote.nixosModules.lanzaboote
@@ -389,7 +392,7 @@
# Impermanence
desktop-impermanence.nixosModules.impermanence
- ./share/impermanence
+ ./modules/impermanence
desktop-sops-nix.nixosModules.sops
@@ -403,13 +406,13 @@
{
imports = [
./hosts/desktop/home.nix
- ./share/home/defaults.nix
- ./share/home/git.nix
- ./share/home/gnome.nix
- ./share/home/librewolf.nix
- ./share/home/office.nix
- ./share/home/shell.nix
- ./share/home/vscode.nix
+ ./modules/home/defaults.nix
+ ./modules/home/git.nix
+ ./modules/home/gnome.nix
+ ./modules/home/librewolf.nix
+ ./modules/home/office.nix
+ ./modules/home/shell.nix
+ ./modules/home/vscode.nix
desktop-steam-rom-manager.homeManagerModules.default
desktop-sops-nix.homeManagerModules.sops
];
@@ -418,7 +421,7 @@
{ ... }:
{
imports = [
- ./share/root-user
+ ./modules/root-user
desktop-sops-nix.homeManagerModules.sops
];
};
@@ -442,10 +445,11 @@
inherit inputs outputs;
};
modules = [
- ./base/base-nogui
- ./base/base-gui
+ ./hosts/base/base-nogui
+ ./hosts/base/base-gui
./hosts/nas/configuration.nix
./modules/desktop-environments/cosmic
+ ./modules/nvidia
nas-lanzaboote.nixosModules.lanzaboote
@@ -465,11 +469,11 @@
{
imports = [
./hosts/nas/home.nix
- ./share/home/defaults.nix
- ./share/home/git.nix
- ./share/home/librewolf.nix
- ./share/home/shell.nix
- ./share/home/vscode.nix
+ ./modules/home/defaults.nix
+ ./modules/home/git.nix
+ ./modules/home/librewolf.nix
+ ./modules/home/shell.nix
+ ./modules/home/vscode.nix
nas-sops-nix.homeManagerModules.sops
# nas-nixai.homeManagerModules.x86_64-linux.default
];
@@ -478,7 +482,7 @@
{ ... }:
{
imports = [
- ./share/root-user
+ ./modules/root-user
nas-sops-nix.homeManagerModules.sops
];
};
@@ -518,8 +522,8 @@
};
system = "aarch64-linux";
modules = [
- ./base/base-nogui
- ./base/base-gui
+ ./hosts/base/base-nogui
+ ./hosts/base/base-gui
pi5-disko.nixosModules.disko
./hosts/pi5/disko.nix
pi5-cosmic.nixosModules.default
@@ -553,7 +557,7 @@
{ ... }:
{
imports = [
- ./share/root-user
+ ./modules/root-user
pi5-sops-nix.homeManagerModules.sops
];
};
@@ -569,9 +573,9 @@
};
system = "aarch64-linux";
modules = [
- ./base/base-nogui
+ ./hosts/base/base-nogui
pi4-disko.nixosModules.disko
- ./share/disko/pi-uefi-disko.nix
+ ./modules/disko/pi-uefi-disko.nix
pi4-nixos-hardware.nixosModules.raspberry-pi-4
{
# Hardware specific configuration, see section below for a more complete
@@ -603,7 +607,7 @@
{ ... }:
{
imports = [
- ./share/root-user
+ ./modules/root-user
pi4-sops-nix.homeManagerModules.sops
];
};
@@ -617,18 +621,18 @@
inherit inputs outputs;
};
modules = [
- ./base/base-nogui
- ./base/base-gui
+ ./hosts/base/base-nogui
+ ./hosts/base/base-gui
./hosts/deck/configuration.nix
./modules/desktop-environments/gnome
steamdeck-lanzaboote.nixosModules.lanzaboote
steamdeck-disko.nixosModules.disko
- ./share/disko/disko.nix
+ ./modules/disko/disko.nix
steamdeck-impermanence.nixosModules.impermanence
- ./share/impermanence
+ ./modules/impermanence
steamdeck-home-manager.nixosModules.home-manager
{
@@ -639,13 +643,13 @@
{
imports = [
./hosts/deck/home.nix
- ./share/home/defaults.nix
- ./share/home/git.nix
- ./share/home/gnome.nix
- ./share/home/librewolf.nix
- ./share/home/office.nix
- ./share/home/shell.nix
- ./share/home/vscode.nix
+ ./modules/home/defaults.nix
+ ./modules/home/git.nix
+ ./modules/home/gnome.nix
+ ./modules/home/librewolf.nix
+ ./modules/home/office.nix
+ ./modules/home/shell.nix
+ ./modules/home/vscode.nix
steamdeck-sops-nix.homeManagerModules.sops
steamdeck-steam-rom-manager.homeManagerModules.default
];
@@ -654,7 +658,7 @@
{ ... }:
{
imports = [
- ./share/root-user
+ ./modules/root-user
steamdeck-sops-nix.homeManagerModules.sops
];
};
diff --git a/hosts/base/base-gui/default.nix b/hosts/base/base-gui/default.nix
new file mode 100644
index 0000000..b4d14d9
--- /dev/null
+++ b/hosts/base/base-gui/default.nix
@@ -0,0 +1,8 @@
+{ ... }:
+{
+ imports = [
+ ./hardware.nix
+ ./programs.nix
+ ./services.nix
+ ];
+}
\ No newline at end of file
diff --git a/hosts/base/base-gui/hardware.nix b/hosts/base/base-gui/hardware.nix
new file mode 100644
index 0000000..1b3aa0a
--- /dev/null
+++ b/hosts/base/base-gui/hardware.nix
@@ -0,0 +1,11 @@
+{ lib, ... }:
+{
+ # Hardware configs
+ hardware = {
+ # Enable graphics
+ graphics = {
+ enable = lib.mkDefault true;
+ enable32Bit = lib.mkDefault true;
+ };
+ };
+}
\ No newline at end of file
diff --git a/base/base-gui/default.nix b/hosts/base/base-gui/programs.nix
similarity index 64%
rename from base/base-gui/default.nix
rename to hosts/base/base-gui/programs.nix
index 38d50f4..7d01242 100644
--- a/base/base-gui/default.nix
+++ b/hosts/base/base-gui/programs.nix
@@ -1,10 +1,8 @@
-{ pkgs, ... }:
+{ lib, pkgs, ... }:
{
- imports = [ ./services.nix ];
-
programs = {
nix-ld = {
- enable = true;
+ enable = lib.mkDefault true;
libraries = with pkgs; [
alsa-lib
bash
@@ -29,15 +27,5 @@
zlib
];
};
- seahorse.enable = true;
- };
-
- # Hardware configs
- hardware = {
- # Enable graphics
- graphics = {
- enable = true;
- enable32Bit = true;
- };
- };
-}
\ No newline at end of file
+ seahorse.enable = lib.mkDefault true;
+ };}
\ No newline at end of file
diff --git a/base/base-gui/services.nix b/hosts/base/base-gui/services.nix
similarity index 100%
rename from base/base-gui/services.nix
rename to hosts/base/base-gui/services.nix
diff --git a/base/base-nogui/boot.nix b/hosts/base/base-nogui/boot.nix
similarity index 100%
rename from base/base-nogui/boot.nix
rename to hosts/base/base-nogui/boot.nix
diff --git a/base/base-nogui/default.nix b/hosts/base/base-nogui/default.nix
similarity index 51%
rename from base/base-nogui/default.nix
rename to hosts/base/base-nogui/default.nix
index d2f2256..e17276f 100644
--- a/base/base-nogui/default.nix
+++ b/hosts/base/base-nogui/default.nix
@@ -6,43 +6,19 @@ in
imports = [
./boot.nix
./environment.nix
+ ./hardware.nix
./nix-settings.nix
+ ./programs.nix
./security.nix
./services.nix
- ../../share
];
- # Hardware configs
- hardware = {
- # Bluetooth
- bluetooth.enable = lib.mkDefault true;
-
- i2c.enable = true;
-
- # Enable all firmware
- enableAllFirmware = lib.mkForce true;
- };
-
# Time config
time = {
# Set your time zone.
timeZone = timezone;
};
- programs = {
- zsh.enable = lib.mkDefault true;
- gnupg.agent = {
- enable = lib.mkDefault true;
- enableSSHSupport = lib.mkDefault true;
- };
- command-not-found.enable = lib.mkForce false;
- nix-index = {
- enable = true;
- enableBashIntegration = false;
- enableZshIntegration = true;
- };
- };
-
fonts.packages = with pkgs; [
font-awesome
noto-fonts
diff --git a/base/base-nogui/environment.nix b/hosts/base/base-nogui/environment.nix
similarity index 100%
rename from base/base-nogui/environment.nix
rename to hosts/base/base-nogui/environment.nix
diff --git a/hosts/base/base-nogui/hardware.nix b/hosts/base/base-nogui/hardware.nix
new file mode 100644
index 0000000..f6c6ecd
--- /dev/null
+++ b/hosts/base/base-nogui/hardware.nix
@@ -0,0 +1,12 @@
+{ lib, ... }:
+{
+ hardware = {
+ # Bluetooth
+ bluetooth.enable = lib.mkDefault true;
+
+ i2c.enable = lib.mkDefault true;
+
+ # Enable all firmware
+ enableAllFirmware = lib.mkForce true;
+ };
+}
diff --git a/base/base-nogui/nix-settings.nix b/hosts/base/base-nogui/nix-settings.nix
similarity index 100%
rename from base/base-nogui/nix-settings.nix
rename to hosts/base/base-nogui/nix-settings.nix
diff --git a/hosts/base/base-nogui/programs.nix b/hosts/base/base-nogui/programs.nix
new file mode 100644
index 0000000..9bdba54
--- /dev/null
+++ b/hosts/base/base-nogui/programs.nix
@@ -0,0 +1,15 @@
+{ lib, ... }:
+{
+ programs = {
+ zsh.enable = lib.mkDefault true;
+ gnupg.agent = {
+ enable = lib.mkDefault true;
+ enableSSHSupport = lib.mkDefault true;
+ };
+ nix-index = {
+ enable = lib.mkDefault true;
+ enableBashIntegration = lib.mkDefault false;
+ enableZshIntegration = lib.mkDefault true;
+ };
+ };
+}
\ No newline at end of file
diff --git a/base/base-nogui/security.nix b/hosts/base/base-nogui/security.nix
similarity index 100%
rename from base/base-nogui/security.nix
rename to hosts/base/base-nogui/security.nix
diff --git a/base/base-nogui/services.nix b/hosts/base/base-nogui/services.nix
similarity index 100%
rename from base/base-nogui/services.nix
rename to hosts/base/base-nogui/services.nix
diff --git a/base/default.nix b/hosts/base/default.nix
similarity index 100%
rename from base/default.nix
rename to hosts/base/default.nix
diff --git a/base/options.nix b/hosts/base/options.nix
similarity index 100%
rename from base/options.nix
rename to hosts/base/options.nix
diff --git a/hosts/deck/configuration.nix b/hosts/deck/configuration.nix
index 9b39307..e7964ae 100755
--- a/hosts/deck/configuration.nix
+++ b/hosts/deck/configuration.nix
@@ -7,7 +7,6 @@
{
imports =
[
- ../default.nix
./boot.nix
./jovian.nix
./networking.nix
diff --git a/hosts/deck/home.nix b/hosts/deck/home.nix
index 0f88bac..b2bae0a 100755
--- a/hosts/deck/home.nix
+++ b/hosts/deck/home.nix
@@ -1,4 +1,4 @@
-{ lib, pkgs, ... }:
+{ pkgs, ... }:
let
shellAliases = {
update-boot = "sudo nixos-rebuild boot --max-jobs 10 --build-host admin@10.0.1.18";
diff --git a/hosts/default.nix b/hosts/default.nix
deleted file mode 100755
index 5a06e66..0000000
--- a/hosts/default.nix
+++ /dev/null
@@ -1,233 +0,0 @@
-{ lib, pkgs, outputs, ... }:
-let
- timezone = "America/Chicago";
-
- update-script = pkgs.writeScriptBin "update" ''
- #!/usr/bin/env bash
- set -euo pipefail
-
- # ===== Config =====
- REPO_DIR="/etc/nixos"
- HOST=$(hostname)
- FLAKE="$REPO_DIR#$HOST"
- PROFILE_DIR="/nix/var/nix/profiles/system-profiles"
-
- # ===== Parse arguments =====
- MODE=''${1:-"switch"}
- VALID_MODES=("boot" "switch" "test" "build")
- if [[ ! " ''${VALID_MODES[*]} " =~ " $MODE " ]]; then
- echo "❌ Invalid mode: '$MODE'. Use one of: $VALID_MODES[*]"
- exit 1
- fi
-
- # ===== Git status check =====
- cd "$REPO_DIR"
- DIRTY_TAG=
- if [[ -n "$(git status --porcelain)" ]]; then
- echo "⚠️ Git repo is dirty — rebuilding with dirty tag."
- DIRTY_TAG="dirty-"
- fi
-
- SHORT_HASH=$(git rev-parse --short HEAD)
- COMMIT_MSG=$(git log -1 --pretty=%s | tr ' ' '_' | tr -dc '[:alnum:]_-')
- TIMESTAMP=$(date -u +%Y%m%dT%H%M%SZ)
- PROFILE_NAME=$TIMESTAMP-$DIRTY_TAG$SHORT_HASH-$COMMIT_MSG
- echo "✅ Building profile: $PROFILE_NAME"
-
- # Use --profile-name only when MODE is 'switch' or 'boot'
- if [[ "$MODE" == "switch" || "$MODE" == "boot" ]]; then
- sudo nixos-rebuild "$MODE" --flake "$FLAKE" --profile-name "$PROFILE_NAME"
- else
- sudo nixos-rebuild "$MODE" --flake "$FLAKE"
- fi
- '';
-in
-{
- imports = [
- ../share
- ];
-
- # Enable nix flakes and nix-command tools
- nix = {
- settings = {
- substituters = [
- "https://nix-community.cachix.org"
- "https://cache.nixos.org/"
- ];
- trusted-public-keys = [
- "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
- ];
- warn-dirty = lib.mkForce false;
- experimental-features = lib.mkForce [
- "nix-command"
- "flakes"
- ];
- trusted-users = [ "@wheel" ];
- };
-
- # Garbage collect automatically every week
- gc.automatic = lib.mkDefault true;
- gc.options = lib.mkDefault "--delete-older-than 30d";
-
- optimise.automatic = lib.mkDefault true;
- };
-
- # Nixpkgs configuration
- nixpkgs = {
- # add unstable and stable overlays
- overlays = [
- outputs.overlays.nixpkgs-unstable
- outputs.overlays.nixpkgs-stable
- ];
- config = {
- allowUnfree = lib.mkForce true;
- permittedInsecurePackages = [
- # ...
- ];
- };
- };
-
- # Hardware configs
- hardware = {
- # Bluetooth
- bluetooth.enable = lib.mkDefault true;
-
- # Enable all firmware
- enableAllFirmware = lib.mkForce true;
- };
-
- # Services configs
- services = {
- openssh.enable = lib.mkDefault true;
-
- # Enable firmware updates
- fwupd.enable = lib.mkForce true;
-
- fstrim.enable = lib.mkDefault true;
-
- pcscd.enable = lib.mkDefault true;
-
- # Enable CUPS to print documents.
- printing.enable = lib.mkDefault true;
-
- # configure pipewire
- pipewire = {
- enable = lib.mkDefault true;
- alsa.enable = lib.mkDefault true;
- alsa.support32Bit = lib.mkDefault true;
- pulse.enable = lib.mkDefault true;
- };
-
- # Enable Avahi for .local hostname resolution
- avahi = {
- enable = lib.mkDefault true;
- nssmdns4 = lib.mkDefault true; # For modern systems, use nssmdns4 instead of nssmdns
- publish = {
- enable = lib.mkDefault true;
- addresses = lib.mkDefault true;
- domain = lib.mkDefault true;
- workstation = lib.mkDefault true;
- };
- };
- };
-
- # Time config
- time = {
- # Set your time zone.
- timeZone = timezone;
- };
-
- boot = {
- # Enable AppImage
- binfmt.registrations.appimage = {
- wrapInterpreterInShell = lib.mkDefault false;
- interpreter = "${pkgs.appimage-run}/bin/appimage-run";
- recognitionType = "magic";
- offset = 0;
- mask = "\\xff\\xff\\xff\\xff\\x00\\x00\\x00\\x00\\xff\\xff\\xff";
- magicOrExtension = "\\x7fELF....AI\\x02";
- };
- };
-
- programs = {
- zsh.enable = lib.mkDefault true;
- gnupg.agent = {
- enable = lib.mkDefault true;
- enableSSHSupport = lib.mkDefault true;
- };
- command-not-found.enable = lib.mkForce false;
- nix-index = {
- enable = true;
- enableBashIntegration = false;
- enableZshIntegration = true;
- };
- };
-
- environment.systemPackages = with pkgs; [
- uutils-coreutils
- uutils-diffutils
- uutils-findutils
- coreutils
- update-script
- nixd
- pinentry-curses
- ];
-
- # users.mutableUsers = lib.mkDefault false;
-
- # Security config
- security = {
-
- wrappers."mount.nfs" = {
- setuid = true;
- owner = "root";
- group = "root";
- source = "${pkgs.nfs-utils.out}/bin/mount.nfs";
- };
-
- rtkit.enable = lib.mkDefault true;
-
- # configure sudo
- sudo.enable = lib.mkDefault false;
- sudo-rs = {
- enable = lib.mkDefault true;
- extraRules = [
- {
- commands = [
- {
- command = "${pkgs.systemd}/bin/systemctl suspend";
- options = [ "NOPASSWD" ];
- }
- {
- command = "${pkgs.systemd}/bin/reboot";
- options = [ "NOPASSWD" ];
- }
- {
- command = "${pkgs.systemd}/bin/poweroff";
- options = [ "NOPASSWD" ];
- }
- ];
- groups = [ "wheel" ];
- }
- ];
- };
- };
-
- # This option defines the first version of NixOS you have installed on this particular machine,
- # and is used to maintain compatibility with application data (e.g. databases) created on older NixOS versions.
- #
- # Most users should NEVER change this value after the initial install, for any reason,
- # even if you've upgraded your system to a new NixOS release.
- #
- # This value does NOT affect the Nixpkgs version your packages and OS are pulled from,
- # so changing it will NOT upgrade your system.
- #
- # This value being lower than the current NixOS release does NOT mean your system is
- # out of date, out of support, or vulnerable.
- #
- # Do NOT change this value unless you have manually inspected all the changes it would make to your configuration,
- # and migrated your data accordingly.
- #
- # For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion .
- system.stateVersion = "23.11"; # Did you read the comment?
-}
diff --git a/hosts/desktop/configuration.nix b/hosts/desktop/configuration.nix
index a971db1..8fb3648 100755
--- a/hosts/desktop/configuration.nix
+++ b/hosts/desktop/configuration.nix
@@ -33,7 +33,6 @@ let
kdePackages.ksvg
memtest86-efi
memtest86plus
- # occt
os-prober
nil
qemu_full
@@ -50,57 +49,6 @@ let
unzip
winetricks
];
- lactConfig = ''
- daemon:
- log_level: info
- admin_groups:
- - wheel
- - sudo
- disable_clocks_cleanup: false
- apply_settings_timer: 5
- gpus:
- 1002:73BF-1002:0E3A-0000:03:00.0:
- fan_control_enabled: true
- fan_control_settings:
- mode: curve
- static_speed: 1.0
- temperature_key: edge
- interval_ms: 500
- curve:
- 30: 0.0
- 40: 0.2
- 50: 0.35
- 60: 0.5
- 70: 0.75
- 80: 1.0
- spindown_delay_ms: 0
- change_threshold: 0
- pmfw_options: {}
- power_cap: 293.0
- performance_level: auto
- voltage_offset: 0
- power_states: {}
- '';
- # occt = pkgs.stdenv.mkDerivation {
- # pname = "occt";
- # version = "14.0.10";
-
- # src = pkgs.fetchurl {
- # url = "https://www.ocbase.com/download-bin/edition:Personal/os:Linux";
- # sha256 = "sha256-AomQNi7ODGaznFaHqxlFUcrV36QeLNC65MoCV2y6HZ8=";
- # };
-
- # dontUnpack = true;
-
- # buildPhase = ''
- # mkdir -p $out/bin
- # cp $src $out/bin/OCCT
- # chmod +x $out/bin/OCCT
- # '';
-
-
- # installPhase = "true";
- # };
in
{
imports = [
@@ -112,10 +60,6 @@ in
./services.nix
./sops.nix
./users.nix
- ../default.nix
- ../../modules/desktop-environments/cosmic/specialisation.nix
- ../../modules/desktop-environments/hyprland/specialisation.nix
- ../../share/amd
];
nix = {
@@ -135,8 +79,6 @@ in
environment = {
systemPackages = systemPackages;
- # etc."lact/config.yaml".text = lactConfig;
-
variables = environmentVariables;
};
diff --git a/hosts/desktop/netboot.nix b/hosts/desktop/netboot.nix
deleted file mode 100644
index 4eb553c..0000000
--- a/hosts/desktop/netboot.nix
+++ /dev/null
@@ -1,206 +0,0 @@
-{ config, lib, pkgs, ... }:
-let
- pkgsVersion = pkgs; #.unstable;
- kernel = pkgs.linuxPackages_cachyos;
- environmentVariables = {
- STEAM_FORCE_DESKTOPUI_SCALING = "1.0";
- GDK_SCALE = "1";
- EDITOR = "${pkgs.vscodium}/bin/codium --wait";
- VISUAL = "${pkgs.vscodium}/bin/codium --wait";
- };
- systemPackages = with pkgsVersion; [
- aha
- aspell
- aspellDicts.en
- aspellDicts.en-computers
- aspellDicts.en-science
- borgbackup
- # brscan5
- efibootmgr
- kdePackages.ksvg
- memtest86-efi
- memtest86plus
- # occt
- os-prober
- nil
- qemu_full
- rclone
- rclone-browser
- restic
- restic-browser
- restic-integrity
- sane-frontends
- sbctl
- tpm2-tools
- tpm2-tss
- udisks2
- unzip
- winetricks
-
- edk2-uefi-shell
- ];
- lactConfig = ''
- daemon:
- log_level: info
- admin_groups:
- - wheel
- - sudo
- disable_clocks_cleanup: false
- apply_settings_timer: 5
- gpus:
- 1002:73BF-1002:0E3A-0000:03:00.0:
- fan_control_enabled: true
- fan_control_settings:
- mode: curve
- static_speed: 1.0
- temperature_key: edge
- interval_ms: 500
- curve:
- 30: 0.0
- 40: 0.2
- 50: 0.35
- 60: 0.5
- 70: 0.75
- 80: 1.0
- spindown_delay_ms: 0
- change_threshold: 0
- pmfw_options: {}
- power_cap: 293.0
- performance_level: auto
- voltage_offset: 0
- power_states: {}
- '';
-in
-{
- imports = [
- ./filesystems.nix
- ./networking.nix
- ./nix.nix
- ./services.nix
- ./sops.nix
- ./users.nix
- ../default.nix
- ../../share/amd
- ];
-
- nix = {
- settings = {
- substituters = [
- "https://cache.mjallen.dev"
- ];
- trusted-public-keys = [
- "cache.mjallen.dev-1:IzFmKCd8/gggI6lcCXsW65qQwiCLGFFN9t9s2iw7Lvc="
- ];
- };
- };
-
- chaotic.mesa-git.enable = true;
-
- # Environment configuration
- environment = {
- systemPackages = systemPackages;
-
- etc."lact/config.yaml".text = lactConfig;
-
- variables = environmentVariables;
- };
-
- # Hardware configuration
- hardware = {
- # Enable the QMK firmware flashing tool.
- keyboard = {
- qmk.enable = true;
- };
-
- # Enable Sane and Brother printer support.
- sane = {
- enable = true;
- brscan5.enable = false;
- # extraBackends = [ pkgsVersion.brscan5 ];
- };
- };
-
- # Common Configuration
- share = {
- gaming.enable = true;
- hardware.amd = {
- enable = lib.mkDefault true;
- lact.enable = lib.mkDefault true;
- };
- };
-
- programs.coolercontrol.enable = true;
-
- # Time configuration
- time = {
- hardwareClockInLocalTime = lib.mkDefault false;
- };
-
- # Virtualisation configuration
- virtualisation = {
- libvirtd.enable = lib.mkDefault true;
- waydroid.enable = lib.mkDefault true;
- };
-
- # Network boot specifics
- boot = {
- initrd = {
- network.enable = true;
- supportedFilesystems = [ "tmpfs" "squashfs" ];
- # extraFiles."/.ro-store".source = "${config.system.build.toplevel}";
- systemd.enable = true;
- availableKernelModules = [
- "xhci_pci"
- "nvme"
- "ahci"
- "usbhid"
- "uas"
- "usb_storage"
- "sd_mod"
- ];
- };
-
- loader = {
- grub.enable = lib.mkForce false;
- systemd-boot.enable = lib.mkForce false; # already replaced by lanzaboote; included explicitly for clarity
- generic-extlinux-compatible.enable = lib.mkForce true; # required for PXE NetBoot
- timeout = 0;
- efi.canTouchEfiVariables = lib.mkForce false;
- };
- kernelModules = [
- "nct6775"
- "kvm-amd"
- ];
- kernelParams = [
- "ip=dhcp"
- "boot.shell_on_fail"
- "quiet"
- "splash"
- # needed cause ssd powersaving is broken af I guess
- "nvme_core.default_ps_max_latency_us=0"
- "pcie_aspm=off"
- ];
-
- plymouth = {
- enable = true;
- };
- };
-
- zramSwap.enable = true;
-
- networking.hostName = lib.mkForce "matt-netboot";
-
- # Stateless filesystem (tmpfs)
- fileSystems = lib.mkForce {
- "/" = {
- device = "tmpfs";
- fsType = "tmpfs";
- options = [ "defaults" "size=25%" ];
- };
- # "/nix" = {
- # device = "/.ro-store";
- # fsType = "none";
- # options = [ "bind" "ro" ];
- # };
- };
-}
\ No newline at end of file
diff --git a/hosts/desktop/nix.nix b/hosts/desktop/nix.nix
index 479dc2e..9fdd262 100644
--- a/hosts/desktop/nix.nix
+++ b/hosts/desktop/nix.nix
@@ -7,12 +7,9 @@ in
settings = {
substituters = [
"https://cache.mjallen.dev/nas-cache"
- "https://nix-community.cachix.org"
- "https://cache.nixos.org/"
];
trusted-public-keys = [
"nas-cache:5ibTWOXJYlKBaoNtdDEPmvdLPtfnbwf9jvdnfwi5dUs="
- "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
];
warn-dirty = lib.mkForce false;
experimental-features = lib.mkForce [
diff --git a/hosts/nas/configuration.nix b/hosts/nas/configuration.nix
index cbf0e3b..ac7abdb 100755
--- a/hosts/nas/configuration.nix
+++ b/hosts/nas/configuration.nix
@@ -72,7 +72,6 @@
llama-cpp
ninja
inputs.nas-nixai.packages.x86_64-linux.nixai
- inputs.edit.packages.${pkgs.system}.edit
networkmanagerapplet
nmon
nut
diff --git a/hosts/pi4/configuration.nix b/hosts/pi4/configuration.nix
index 1c57ce0..b11e6c41 100755
--- a/hosts/pi4/configuration.nix
+++ b/hosts/pi4/configuration.nix
@@ -11,11 +11,9 @@ in
{
imports = [
./adguard.nix
- # ./argononed.nix
./boot.nix
./impermanence.nix
./networking.nix
- # ./pi4-hw.nix
./sops.nix
];
@@ -86,10 +84,6 @@ in
raspberrypiWirelessFirmware
raspberrypi-armstubs
];
- # etc = {
- # "ssh/ssh_host_ed25519_key".source = config.sops.secrets."pi4/sys-priv-key".path;
- # "ssh/ssh_host_ed25519_key.pub".source = config.sops.secrets."pi4/sys-public-key".path;
- # };
};
users = {
diff --git a/hosts/pi5/configuration.nix b/hosts/pi5/configuration.nix
index 1fc7cdb..fa25295 100755
--- a/hosts/pi5/configuration.nix
+++ b/hosts/pi5/configuration.nix
@@ -11,7 +11,6 @@ in
{
imports = [
./boot.nix
- # ./hardware-configuration.nix
./impermanence.nix
./networking.nix
./services.nix
diff --git a/share/amd/default.nix b/modules/amd/default.nix
similarity index 100%
rename from share/amd/default.nix
rename to modules/amd/default.nix
diff --git a/share/amd/options.nix b/modules/amd/options.nix
similarity index 100%
rename from share/amd/options.nix
rename to modules/amd/options.nix
diff --git a/modules/desktop-environments/hyprland/config/btop/default.nix b/modules/desktop-environments/hyprland/config/btop/default.nix
index b8ffb3e..d82f34f 100755
--- a/modules/desktop-environments/hyprland/config/btop/default.nix
+++ b/modules/desktop-environments/hyprland/config/btop/default.nix
@@ -1,6 +1,6 @@
{ pkgs, ... }:
let
- theme = import ../../theme.nix { inherit pkgs; };
+ settings = import ../../settings.nix { inherit pkgs; };
in
{
programs.btop = {
@@ -73,48 +73,48 @@ in
};
themes = {
nord = ''
- theme[main_bg]="${theme.nord.polarNight.nord0}"
- theme[main_fg]="${theme.nord.snowStorm.nord6}"
- theme[title]="${theme.nord.snowStorm.nord6}"
- theme[hi_fg]="${theme.nord.frost.nord7}"
- theme[selected_bg]="${theme.nord.polarNight.nord1}"
- theme[selected_fg]="${theme.nord.frost.nord7}"
- theme[inactive_fg]="${theme.nord.polarNight.nord2}"
- theme[graph_text]="${theme.nord.snowStorm.nord6}"
- theme[meter_bg]="${theme.nord.polarNight.nord1}"
- theme[proc_misc]="${theme.nord.snowStorm.nord6}"
- theme[cpu_box]="${theme.nord.aurora.nord15}"
- theme[mem_box]="${theme.nord.aurora.nord14}"
- theme[net_box]="${theme.nord.aurora.nord12}"
- theme[proc_box]="${theme.nord.aurora.nord11}"
- theme[div_line]="${theme.nord.polarNight.nord1}"
- theme[temp_start]="${theme.nord.aurora.nord14}"
- theme[temp_mid]="${theme.nord.aurora.nord13}"
- theme[temp_end]="${theme.nord.aurora.nord11}"
- theme[cpu_start]="${theme.nord.aurora.nord15}"
- theme[cpu_mid]="${theme.nord.aurora.nord12}"
- theme[cpu_end]="${theme.nord.aurora.nord11}"
- theme[free_start]="${theme.nord.aurora.nord14}"
- theme[free_mid]="${theme.nord.aurora.nord13}"
- theme[free_end]="${theme.nord.aurora.nord12}"
- theme[cached_start]="${theme.nord.aurora.nord14}"
- theme[cached_mid]="${theme.nord.aurora.nord13}"
- theme[cached_end]="${theme.nord.aurora.nord12}"
- theme[available_start]="${theme.nord.snowStorm.nord6}"
- theme[available_mid]="${theme.nord.aurora.nord11}"
- theme[available_end]="${theme.nord.aurora.nord11}"
- theme[used_start]="${theme.nord.aurora.nord14}"
- theme[used_mid]="${theme.nord.aurora.nord13}"
- theme[used_end]="${theme.nord.aurora.nord11}"
- theme[download_start]="${theme.nord.frost.nord8}"
- theme[download_mid]="${theme.nord.frost.nord8}"
- theme[download_end]="${theme.nord.aurora.nord12}"
- theme[upload_start]="${theme.nord.frost.nord7}"
- theme[upload_mid]="${theme.nord.frost.nord7}"
- theme[upload_end]="${theme.nord.aurora.nord12}"
- theme[process_start]="${theme.nord.aurora.nord15}"
- theme[process_mid]="${theme.nord.aurora.nord12}"
- theme[process_end]="${theme.nord.aurora.nord11}"
+ theme[main_bg]="${settings.nord.polarNight.nord0}"
+ theme[main_fg]="${settings.nord.snowStorm.nord6}"
+ theme[title]="${settings.nord.snowStorm.nord6}"
+ theme[hi_fg]="${settings.nord.frost.nord7}"
+ theme[selected_bg]="${settings.nord.polarNight.nord1}"
+ theme[selected_fg]="${settings.nord.frost.nord7}"
+ theme[inactive_fg]="${settings.nord.polarNight.nord2}"
+ theme[graph_text]="${settings.nord.snowStorm.nord6}"
+ theme[meter_bg]="${settings.nord.polarNight.nord1}"
+ theme[proc_misc]="${settings.nord.snowStorm.nord6}"
+ theme[cpu_box]="${settings.nord.aurora.nord15}"
+ theme[mem_box]="${settings.nord.aurora.nord14}"
+ theme[net_box]="${settings.nord.aurora.nord12}"
+ theme[proc_box]="${settings.nord.aurora.nord11}"
+ theme[div_line]="${settings.nord.polarNight.nord1}"
+ theme[temp_start]="${settings.nord.aurora.nord14}"
+ theme[temp_mid]="${settings.nord.aurora.nord13}"
+ theme[temp_end]="${settings.nord.aurora.nord11}"
+ theme[cpu_start]="${settings.nord.aurora.nord15}"
+ theme[cpu_mid]="${settings.nord.aurora.nord12}"
+ theme[cpu_end]="${settings.nord.aurora.nord11}"
+ theme[free_start]="${settings.nord.aurora.nord14}"
+ theme[free_mid]="${settings.nord.aurora.nord13}"
+ theme[free_end]="${settings.nord.aurora.nord12}"
+ theme[cached_start]="${settings.nord.aurora.nord14}"
+ theme[cached_mid]="${settings.nord.aurora.nord13}"
+ theme[cached_end]="${settings.nord.aurora.nord12}"
+ theme[available_start]="${settings.nord.snowStorm.nord6}"
+ theme[available_mid]="${settings.nord.aurora.nord11}"
+ theme[available_end]="${settings.nord.aurora.nord11}"
+ theme[used_start]="${settings.nord.aurora.nord14}"
+ theme[used_mid]="${settings.nord.aurora.nord13}"
+ theme[used_end]="${settings.nord.aurora.nord11}"
+ theme[download_start]="${settings.nord.frost.nord8}"
+ theme[download_mid]="${settings.nord.frost.nord8}"
+ theme[download_end]="${settings.nord.aurora.nord12}"
+ theme[upload_start]="${settings.nord.frost.nord7}"
+ theme[upload_mid]="${settings.nord.frost.nord7}"
+ theme[upload_end]="${settings.nord.aurora.nord12}"
+ theme[process_start]="${settings.nord.aurora.nord15}"
+ theme[process_mid]="${settings.nord.aurora.nord12}"
+ theme[process_end]="${settings.nord.aurora.nord11}"
'';
};
};
diff --git a/modules/desktop-environments/hyprland/config/hypr/default.nix b/modules/desktop-environments/hyprland/config/hypr/default.nix
index 2252a10..76097c3 100755
--- a/modules/desktop-environments/hyprland/config/hypr/default.nix
+++ b/modules/desktop-environments/hyprland/config/hypr/default.nix
@@ -1,7 +1,7 @@
{ pkgs, ... }:
let
- theme = import ../../theme.nix { inherit pkgs; };
- drawer = "nwg-drawer -fm nautilus -term kitty -mb 10 -mt 10 -ml 10 -mr 10 -pbuseicontheme -i ${theme.iconTheme}";
+ settings = import ../../settings.nix { inherit pkgs; };
+ drawer = "nwg-drawer -fm nautilus -term kitty -mb 10 -mt 10 -ml 10 -mr 10 -pbuseicontheme -i ${settings.iconTheme}";
in
{
wayland.windowManager.hyprland = {
@@ -33,7 +33,7 @@ in
# https://wiki.hyprland.org/Configuring/Binds/#mouse-buttons
bind = [
- "$mod, Return, exec, ${theme.defaultApps.terminal.pname}"
+ "$mod, Return, exec, ${settings.defaultApps.terminal.pname}"
"$mod, SPACE, exec, wofi --show drun"
"$mod, Q, killactive, "
"$mod, M, exec, wlogout --protocol layer-shell"
@@ -47,8 +47,8 @@ in
"$mod,F,exec,hyprctl dispatch fullscreen active"
"$mod SHIFT, E, exec, smile"
- "$mod, mouse:276, movecurrentworkspacetomonitor, ${theme.displayLeft.input}"
- "$mod, mouse:275, movecurrentworkspacetomonitor, ${theme.displayRight.input}"
+ "$mod, mouse:276, movecurrentworkspacetomonitor, ${settings.displayLeft.input}"
+ "$mod, mouse:275, movecurrentworkspacetomonitor, ${settings.displayRight.input}"
# alt-tab between workspaces on active monitor
"$mod, Tab, workspace, m+1"
@@ -91,7 +91,7 @@ in
"$mod SHIFT, k, movewindow, u"
"$mod SHIFT, j, movewindow, d"
- "$mod, b, exec, ${theme.defaultApps.browser.pname}"
+ "$mod, b, exec, ${settings.defaultApps.browser.pname}"
];
bindm = [
@@ -115,8 +115,8 @@ in
];
monitor = [
- "${theme.displayLeft.input},${theme.displayLeft.resolution}@${theme.displayLeft.refreshRate},0x0,1"
- "${theme.displayRight.input},${theme.displayRight.resolution}@${theme.displayRight.refreshRate},3840x0,1"
+ "${settings.displayLeft.input},${settings.displayLeft.resolution}@${settings.displayLeft.refreshRate},0x0,1"
+ "${settings.displayRight.input},${settings.displayRight.resolution}@${settings.displayRight.refreshRate},3840x0,1"
];
misc = {
@@ -180,9 +180,9 @@ in
};
workspace = [
- "name:firefox, monitor:${theme.displayRight.input}, default:false, special, class:(.*firefox.*)"
- "name:discord, monitor:${theme.displayRight.input}, default:true, special, title:(.*vesktop.*), title:(.*Apple Music.*)"
- "name:steam, monitor:${theme.displayLeft.input}, default:false, special, class:(.*[Ss]team.*)"
+ "name:firefox, monitor:${settings.displayRight.input}, default:false, special, class:(.*firefox.*)"
+ "name:discord, monitor:${settings.displayRight.input}, default:true, special, title:(.*vesktop.*), title:(.*Apple Music.*)"
+ "name:steam, monitor:${settings.displayLeft.input}, default:false, special, class:(.*[Ss]team.*)"
];
windowrule = [
@@ -194,6 +194,7 @@ in
"float, title:(.*[Ee]rror.*)"
"float, title:(.*[Ss]plash.*)"
"float, title:(.*[Cc]onfirmreset.*)"
+ "float, title:(.*[Ss]ign [Ii]n - .*)"
"float, title:(.*[Oo]pen [Ff]ile.*)"
"float, title:(.*branchdialog.*)"
"float, class:(.*pavucontrol.*)"
diff --git a/modules/desktop-environments/hyprland/config/kitty/default.nix b/modules/desktop-environments/hyprland/config/kitty/default.nix
index 3066fe9..14e3159 100755
--- a/modules/desktop-environments/hyprland/config/kitty/default.nix
+++ b/modules/desktop-environments/hyprland/config/kitty/default.nix
@@ -1,6 +1,6 @@
{ pkgs, ... }:
let
- theme = import ../../theme.nix { inherit pkgs; };
+ settings = import ../../settings.nix { inherit pkgs; };
in
{
programs.kitty = {
@@ -8,9 +8,9 @@ in
shellIntegration.enableZshIntegration = true;
font = {
- name = theme.fontName;
- package = theme.fontPackage;
- size = theme.fontSize;
+ name = settings.fontName;
+ package = settings.fontPackage;
+ size = settings.fontSize;
};
settings = {
@@ -24,77 +24,77 @@ in
background_opacity = "0.85";
# The basic colors
- foreground = theme.nord.snowStorm.nord6;
- background = theme.nord.polarNight.nord0;
- selection_foreground = theme.nord.polarNight.nord0;
- selection_background = theme.nord.aurora.nord15;
+ foreground = settings.nord.snowStorm.nord6;
+ background = settings.nord.polarNight.nord0;
+ selection_foreground = settings.nord.polarNight.nord0;
+ selection_background = settings.nord.aurora.nord15;
# Cursor colors
- cursor = theme.nord.aurora.nord15;
- cursor_text_color = theme.nord.polarNight.nord0;
+ cursor = settings.nord.aurora.nord15;
+ cursor_text_color = settings.nord.polarNight.nord0;
# URL underline color when hovering with mouse
- url_color = theme.nord.aurora.nord15;
+ url_color = settings.nord.aurora.nord15;
# Kitty window border colors
- active_border_color = theme.nord.frost.nord10;
- inactive_border_color = theme.nord.polarNight.nord1;
- bell_border_color = theme.nord.aurora.nord13;
+ active_border_color = settings.nord.frost.nord10;
+ inactive_border_color = settings.nord.polarNight.nord1;
+ bell_border_color = settings.nord.aurora.nord13;
# OS Window titlebar colors
- wayland_titlebar_color = theme.nord.polarNight.nord0;
- macos_titlebar_color = theme.nord.polarNight.nord0;
+ wayland_titlebar_color = settings.nord.polarNight.nord0;
+ macos_titlebar_color = settings.nord.polarNight.nord0;
# Tab bar colors
- active_tab_foreground = theme.nord.polarNight.nord3;
- active_tab_background = theme.nord.aurora.nord15;
- inactive_tab_foreground = theme.nord.snowStorm.nord6;
- inactive_tab_background = theme.nord.polarNight.nord1;
- tab_bar_background = theme.nord.polarNight.nord3;
+ active_tab_foreground = settings.nord.polarNight.nord3;
+ active_tab_background = settings.nord.aurora.nord15;
+ inactive_tab_foreground = settings.nord.snowStorm.nord6;
+ inactive_tab_background = settings.nord.polarNight.nord1;
+ tab_bar_background = settings.nord.polarNight.nord3;
# Colors for marks (marked text in the terminal)
- mark1_foreground = theme.nord.polarNight.nord0;
- mark1_background = theme.nord.frost.nord10;
- mark2_foreground = theme.nord.polarNight.nord0;
- mark2_background = theme.nord.aurora.nord15;
- mark3_foreground = theme.nord.polarNight.nord0;
- mark3_background = theme.nord.frost.nord8;
+ mark1_foreground = settings.nord.polarNight.nord0;
+ mark1_background = settings.nord.frost.nord10;
+ mark2_foreground = settings.nord.polarNight.nord0;
+ mark2_background = settings.nord.aurora.nord15;
+ mark3_foreground = settings.nord.polarNight.nord0;
+ mark3_background = settings.nord.frost.nord8;
# The 16 terminal colors
# black
- color0 = theme.nord.polarNight.nord0;
+ color0 = settings.nord.polarNight.nord0;
# Autosuggestion
- color8 = theme.nord.frost.nord10;
+ color8 = settings.nord.frost.nord10;
# red
- color1 = theme.nord.aurora.nord11;
- color9 = theme.nord.aurora.nord11;
+ color1 = settings.nord.aurora.nord11;
+ color9 = settings.nord.aurora.nord11;
# green
- color2 = theme.nord.aurora.nord14;
- color10 = theme.nord.aurora.nord14;
+ color2 = settings.nord.aurora.nord14;
+ color10 = settings.nord.aurora.nord14;
# yellow
- color3 = theme.nord.aurora.nord13;
- color11 = theme.nord.aurora.nord13;
+ color3 = settings.nord.aurora.nord13;
+ color11 = settings.nord.aurora.nord13;
# blue
- color4 = theme.nord.frost.nord10;
- color12 = theme.nord.frost.nord10;
+ color4 = settings.nord.frost.nord10;
+ color12 = settings.nord.frost.nord10;
# magenta
- color5 = theme.nord.aurora.nord15;
- color13 = theme.nord.aurora.nord15;
+ color5 = settings.nord.aurora.nord15;
+ color13 = settings.nord.aurora.nord15;
# cyan
- color6 = theme.nord.frost.nord8;
- color14 = theme.nord.frost.nord8;
+ color6 = settings.nord.frost.nord8;
+ color14 = settings.nord.frost.nord8;
# white
- color7 = theme.nord.snowStorm.nord5;
- color15 = theme.nord.snowStorm.nord4;
+ color7 = settings.nord.snowStorm.nord5;
+ color15 = settings.nord.snowStorm.nord4;
};
};
}
diff --git a/modules/desktop-environments/hyprland/config/mako/default.nix b/modules/desktop-environments/hyprland/config/mako/default.nix
index e645c51..b19c80c 100755
--- a/modules/desktop-environments/hyprland/config/mako/default.nix
+++ b/modules/desktop-environments/hyprland/config/mako/default.nix
@@ -1,12 +1,12 @@
{ pkgs, ... }:
let
- theme = import ../../theme.nix { inherit pkgs; };
+ settings = import ../../settings.nix { inherit pkgs; };
in
{
services.mako = {
enable = true;
settings = {
- font = theme.fontName;
+ font = settings.fontName;
icons = true;
ignore-timeout = true;
sort = "-time";
@@ -18,10 +18,10 @@ in
max-icon-size = 64;
default-timeout = 5000;
- background-color = theme.nord.polarNight.nord0;
- text-color = theme.nord.snowStorm.nord6;
- border-color = theme.nord.frost.nord10;
- progress-color = "over ${theme.nord.frost.nord8}";
+ background-color = settings.nord.polarNight.nord0;
+ text-color = settings.nord.snowStorm.nord6;
+ border-color = settings.nord.frost.nord10;
+ progress-color = "over ${settings.nord.frost.nord8}";
};
};
}
diff --git a/modules/desktop-environments/hyprland/config/nwg-dock/default.nix b/modules/desktop-environments/hyprland/config/nwg-dock/default.nix
index 0e865b6..4f3a4d9 100644
--- a/modules/desktop-environments/hyprland/config/nwg-dock/default.nix
+++ b/modules/desktop-environments/hyprland/config/nwg-dock/default.nix
@@ -1,16 +1,16 @@
{ pkgs, ... }:
let
- theme = import ../../theme.nix { inherit pkgs; };
+ settings = import ../../settings.nix { inherit pkgs; };
in
{
home.file = {
".config/nwg-dock-hyprland/drawer.css".text = ''
window {
- background: ${theme.nord.polarNight.nord0};
+ background: ${settings.nord.polarNight.nord0};
border-radius: 10px;
border-style: none;
border-width: 1px;
- border-color: ${theme.nord.aurora.nord15}b0
+ border-color: ${settings.nord.aurora.nord15}b0
}
#box {
@@ -21,14 +21,14 @@ in
active {
/* This is to underline the button representing the currently active window */
border-bottom: solid 1px;
- border-color: ${theme.nord.aurora.nord14}1a
+ border-color: ${settings.nord.aurora.nord14}1a
}
button, image {
background: none;
border-style: none;
box-shadow: none;
- color: ${theme.nord.frost.nord10}
+ color: ${settings.nord.frost.nord10}
}
button {
@@ -40,7 +40,7 @@ in
}
button:hover {
- background-color: ${theme.nord.polarNight.nord0}1a;
+ background-color: ${settings.nord.polarNight.nord0}1a;
border-radius: 2px;
}
diff --git a/modules/desktop-environments/hyprland/config/nwg-drawer/default.nix b/modules/desktop-environments/hyprland/config/nwg-drawer/default.nix
index 19a961d..a0cda85 100644
--- a/modules/desktop-environments/hyprland/config/nwg-drawer/default.nix
+++ b/modules/desktop-environments/hyprland/config/nwg-drawer/default.nix
@@ -1,18 +1,18 @@
{ pkgs, ... }:
let
- theme = import ../../theme.nix { inherit pkgs; };
+ settings = import ../../settings.nix { inherit pkgs; };
in
{
home.file = {
".config/nwg-drawer/drawer.css".text = ''
window {
- background-color: ${theme.nord.polarNight.nord0}bf;
- color: ${theme.nord.snowStorm.nord5}00
+ background-color: ${settings.nord.polarNight.nord0}bf;
+ color: ${settings.nord.snowStorm.nord5}00
}
/* search entry */
entry {
- background-color: ${theme.nord.polarNight.nord1}0f
+ background-color: ${settings.nord.polarNight.nord1}0f
}
button, image {
@@ -21,7 +21,7 @@ in
}
button:hover {
- background-color: ${theme.nord.frost.nord10}1a
+ background-color: ${settings.nord.frost.nord10}1a
}
/* in case you wanted to give category buttons a different look */
@@ -31,12 +31,12 @@ in
#pinned-box {
padding-bottom: 5px;
- border-bottom: 1px dotted ${theme.nord.polarNight.nord3}
+ border-bottom: 1px dotted ${settings.nord.polarNight.nord3}
}
#files-box {
padding: 5px;
- border: 1px dotted ${theme.nord.polarNight.nord3};
+ border: 1px dotted ${settings.nord.polarNight.nord3};
border-radius: 15px
}
'';
diff --git a/modules/desktop-environments/hyprland/config/nwg-panel/default.nix b/modules/desktop-environments/hyprland/config/nwg-panel/default.nix
index aa0b02a..421a690 100644
--- a/modules/desktop-environments/hyprland/config/nwg-panel/default.nix
+++ b/modules/desktop-environments/hyprland/config/nwg-panel/default.nix
@@ -1,6 +1,6 @@
{ pkgs, ... }:
let
- theme = import ../../theme.nix { inherit pkgs; };
+ settings = import ../../settings.nix { inherit pkgs; };
in
{
home.file = {
@@ -9,12 +9,12 @@ in
'';
".config/nwg-panel/preferred-apps.json".text = ''
{
- "\\.pdf$": "${theme.defaultApps.browser.pname}",
+ "\\.pdf$": "${settings.defaultApps.browser.pname}",
"\\.svg$": "inkscape",
- "\\.(jpg|png|tiff|gif)$": "${theme.defaultApps.imageViewer.pname}",
+ "\\.(jpg|png|tiff|gif)$": "${settings.defaultApps.imageViewer.pname}",
"\\.(mp3|ogg|flac|wav|wma)$": "audacious",
- "\\.(avi|mp4|mkv|mov|wav)$": "${theme.defaultApps.video.pname}",
- "\\.(doc|docx|xls|xlsx)$": "${theme.defaultApps.office.pname}"
+ "\\.(avi|mp4|mkv|mov|wav)$": "${settings.defaultApps.video.pname}",
+ "\\.(doc|docx|xls|xlsx)$": "${settings.defaultApps.office.pname}"
}
'';
};
diff --git a/modules/desktop-environments/hyprland/config/waybar/default.nix b/modules/desktop-environments/hyprland/config/waybar/default.nix
index d16dcc1..4082e38 100755
--- a/modules/desktop-environments/hyprland/config/waybar/default.nix
+++ b/modules/desktop-environments/hyprland/config/waybar/default.nix
@@ -1,6 +1,6 @@
{ pkgs, ... }:
let
- theme = import ../../theme.nix { inherit pkgs; };
+ settings = import ../../settings.nix { inherit pkgs; };
defaultOpacity = "opacity: 0.85;";
defaultBorderRadius = "border-radius: 1rem;";
@@ -209,10 +209,10 @@ in
calendar = {
mode = "month";
format = {
- months = "{}";
- days = "{}";
- weekdays = "{}";
- today = "{}";
+ months = "{}";
+ days = "{}";
+ weekdays = "{}";
+ today = "{}";
};
};
};
@@ -238,12 +238,12 @@ in
#waybar {
background: transparent;
- color: ${theme.nord.snowStorm.nord6};
+ color: ${settings.nord.snowStorm.nord6};
margin: 5px 5px;
}
#workspaces {
- background-color: ${theme.nord.polarNight.nord0};
+ background-color: ${settings.nord.polarNight.nord0};
${defaultBorderRadius}
${defaultOpacity}
${defaultCenterOptions}
@@ -251,44 +251,44 @@ in
}
#workspaces button {
- color: ${theme.nord.frost.nord10};
+ color: ${settings.nord.frost.nord10};
${defaultBorderRadius}
padding: 0.4rem;
}
#workspaces button.active {
- color: ${theme.nord.frost.nord8};
+ color: ${settings.nord.frost.nord8};
${defaultBorderRadius}
}
#workspaces button:hover {
- color: ${theme.nord.frost.nord7};
+ color: ${settings.nord.frost.nord7};
${defaultBorderRadius}
}
#workspaces button.focused {
- color: ${theme.nord.snowStorm.nord6};
- background: ${theme.nord.aurora.nord13};
+ color: ${settings.nord.snowStorm.nord6};
+ background: ${settings.nord.aurora.nord13};
${defaultBorderRadius}
}
#workspaces button.urgent {
- color: ${theme.nord.polarNight.nord0};
- background: ${theme.nord.snowStorm.nord6};
+ color: ${settings.nord.polarNight.nord0};
+ background: ${settings.nord.snowStorm.nord6};
${defaultBorderRadius}
}
#tooltip {
- background: ${theme.nord.polarNight.nord0};
- border-color: ${theme.nord.polarNight.nord0};
+ background: ${settings.nord.polarNight.nord0};
+ border-color: ${settings.nord.polarNight.nord0};
${defaultBorderRadius}
border-width: 1rem;
border-style: solid;
}
#window {
- color: ${theme.nord.aurora.nord15};
- background-color: ${theme.nord.polarNight.nord0};
+ color: ${settings.nord.aurora.nord15};
+ background-color: ${settings.nord.polarNight.nord0};
${defaultOpacity}
${defaultBorderRadius}
${defaultCenterOptions}
@@ -297,15 +297,15 @@ in
}
#custom-weather {
- color: ${theme.nord.frost.nord10};
- background-color: ${theme.nord.polarNight.nord0};
+ color: ${settings.nord.frost.nord10};
+ background-color: ${settings.nord.polarNight.nord0};
${defaultOpacity}
${borderRight}
}
#clock {
- color: ${theme.nord.frost.nord9};
- background-color: ${theme.nord.polarNight.nord0};
+ color: ${settings.nord.frost.nord9};
+ background-color: ${settings.nord.polarNight.nord0};
${defaultOpacity}
${borderLeft}
}
@@ -313,63 +313,63 @@ in
/* ------------- */
#bluetooth {
- color: ${theme.nord.frost.nord9};
- background-color: ${theme.nord.polarNight.nord0};
+ color: ${settings.nord.frost.nord9};
+ background-color: ${settings.nord.polarNight.nord0};
${defaultOpacity}
${borderRight}
}
#wireplumber.source {
- color: ${theme.nord.frost.nord8};
- background-color: ${theme.nord.polarNight.nord0};
+ color: ${settings.nord.frost.nord8};
+ background-color: ${settings.nord.polarNight.nord0};
${defaultOpacity}
${defaultCenterOptions}
border-radius: 0;
}
#wireplumber.sink {
- color: ${theme.nord.frost.nord7};
- background-color: ${theme.nord.polarNight.nord0};
+ color: ${settings.nord.frost.nord7};
+ background-color: ${settings.nord.polarNight.nord0};
${defaultOpacity}
${defaultCenterOptions}
border-radius: 0;
}
#keyboard-state.numlock {
- color: ${theme.nord.frost.nord8};
- background-color: ${theme.nord.polarNight.nord0};
+ color: ${settings.nord.frost.nord8};
+ background-color: ${settings.nord.polarNight.nord0};
${defaultOpacity}
${defaultCenterOptions}
border-radius: 0;
}
#keyboard-state.capslock {
- color: ${theme.nord.frost.nord9};
- background-color: ${theme.nord.polarNight.nord0};
+ color: ${settings.nord.frost.nord9};
+ background-color: ${settings.nord.polarNight.nord0};
${defaultOpacity}
${defaultCenterOptions}
border-radius: 0;
}
#temperature.gpu {
- color: ${theme.nord.frost.nord10};
- background-color: ${theme.nord.polarNight.nord0};
+ color: ${settings.nord.frost.nord10};
+ background-color: ${settings.nord.polarNight.nord0};
${defaultOpacity}
${defaultCenterOptions}
border-radius: 0;
}
#temperature {
- color: ${theme.nord.frost.nord9};
- background-color: ${theme.nord.polarNight.nord0};
+ color: ${settings.nord.frost.nord9};
+ background-color: ${settings.nord.polarNight.nord0};
${defaultOpacity}
${defaultCenterOptions}
border-radius: 0;
}
#custom-lights {
- color: ${theme.nord.frost.nord8};
- background-color: ${theme.nord.polarNight.nord0};
+ color: ${settings.nord.frost.nord8};
+ background-color: ${settings.nord.polarNight.nord0};
${defaultOpacity}
${borderLeft}
}
@@ -377,7 +377,7 @@ in
/* ------------- */
#tray {
- background-color: ${theme.nord.polarNight.nord0};
+ background-color: ${settings.nord.polarNight.nord0};
${defaultOpacity}
${defaultCenterOptions}
${defaultBorderRadius}
diff --git a/modules/desktop-environments/hyprland/config/wlogout/default.nix b/modules/desktop-environments/hyprland/config/wlogout/default.nix
index 6d4d3a2..a66d10f 100644
--- a/modules/desktop-environments/hyprland/config/wlogout/default.nix
+++ b/modules/desktop-environments/hyprland/config/wlogout/default.nix
@@ -1,6 +1,6 @@
{ pkgs, ... }:
let
- theme = import ../../theme.nix { inherit pkgs; };
+ settings = import ../../settings.nix { inherit pkgs; };
in
{
programs.wlogout = {
@@ -49,13 +49,13 @@ in
}
window {
- background-color: ${theme.nord.polarNight.nord0}f0
+ background-color: ${settings.nord.polarNight.nord0}f0
}
button {
margin: 8px;
- color: ${theme.nord.frost.nord7};
- background-color: ${theme.nord.polarNight.nord1};
+ color: ${settings.nord.frost.nord7};
+ background-color: ${settings.nord.polarNight.nord1};
border-style: solid;
border-width: 2px;
background-repeat: no-repeat;
@@ -66,8 +66,8 @@ in
button:active,
button:focus,
button:hover {
- color: ${theme.nord.frost.nord8};
- background-color: ${theme.nord.polarNight.nord2};
+ color: ${settings.nord.frost.nord8};
+ background-color: ${settings.nord.polarNight.nord2};
outline-style: none;
}
diff --git a/modules/desktop-environments/hyprland/config/wofi/default.nix b/modules/desktop-environments/hyprland/config/wofi/default.nix
index c09723c..f086a02 100755
--- a/modules/desktop-environments/hyprland/config/wofi/default.nix
+++ b/modules/desktop-environments/hyprland/config/wofi/default.nix
@@ -1,13 +1,13 @@
{ pkgs, ... }:
let
- theme = import ../../theme.nix { inherit pkgs; };
+ settings = import ../../settings.nix { inherit pkgs; };
in
{
programs.wofi = {
enable = true;
style = ''
* {
- font-family: "${theme.fontName}", monospace;
+ font-family: "${settings.fontName}", monospace;
font-size: 14px;
}
@@ -15,9 +15,9 @@ in
window {
margin: 0px;
padding: 10px;
- border: 0.16em solid ${theme.nord.aurora.nord15};
+ border: 0.16em solid ${settings.nord.aurora.nord15};
border-radius: 0.1em;
- background-color: ${theme.nord.polarNight.nord0};
+ background-color: ${settings.nord.polarNight.nord0};
}
/* Inner Box */
@@ -25,7 +25,7 @@ in
margin: 5px;
padding: 10px;
border: none;
- background-color: ${theme.nord.polarNight.nord0};
+ background-color: ${settings.nord.polarNight.nord0};
}
/* Outer Box */
@@ -33,7 +33,7 @@ in
margin: 5px;
padding: 10px;
border: none;
- background-color: ${theme.nord.polarNight.nord0};
+ background-color: ${settings.nord.polarNight.nord0};
}
/* Scroll */
@@ -41,7 +41,7 @@ in
margin: 0px;
padding: 10px;
border: none;
- background-color: ${theme.nord.polarNight.nord0};
+ background-color: ${settings.nord.polarNight.nord0};
}
/* Input */
@@ -50,46 +50,46 @@ in
padding: 10px;
border: none;
border-radius: 0.1em;
- color: ${theme.nord.snowStorm.nord6};
- background-color: ${theme.nord.polarNight.nord0};
+ color: ${settings.nord.snowStorm.nord6};
+ background-color: ${settings.nord.polarNight.nord0};
}
#input image {
border: none;
- color: ${theme.nord.aurora.nord11};
+ color: ${settings.nord.aurora.nord11};
}
#input * {
- outline: 4px solid ${theme.nord.aurora.nord11}!important;
+ outline: 4px solid ${settings.nord.aurora.nord11}!important;
}
/* Text */
#text {
margin: 5px;
border: none;
- color: ${theme.nord.snowStorm.nord6};
+ color: ${settings.nord.snowStorm.nord6};
}
#entry {
- background-color: ${theme.nord.polarNight.nord0};
+ background-color: ${settings.nord.polarNight.nord0};
}
#entry arrow {
border: none;
- color: ${theme.nord.aurora.nord15};
+ color: ${settings.nord.aurora.nord15};
}
/* Selected Entry */
#entry:selected {
- border: 0.11em solid ${theme.nord.aurora.nord15};
+ border: 0.11em solid ${settings.nord.aurora.nord15};
}
#entry:selected #text {
- color: ${theme.nord.frost.nord7};
+ color: ${settings.nord.frost.nord7};
}
#entry:drop(active) {
- background-color: ${theme.nord.aurora.nord15}!important;
+ background-color: ${settings.nord.aurora.nord15}!important;
}
'';
};
diff --git a/modules/desktop-environments/hyprland/default.nix b/modules/desktop-environments/hyprland/default.nix
index 47f7b3e..684f5d6 100755
--- a/modules/desktop-environments/hyprland/default.nix
+++ b/modules/desktop-environments/hyprland/default.nix
@@ -1,6 +1,6 @@
{ pkgs, lib, ... }:
let
- theme = import ./theme.nix { inherit pkgs; };
+ settings = import ./settings.nix { inherit pkgs; };
bing-wallpaper = pkgs.writeScriptBin "bing-wallpaper" ''
# Directory to store wallpapers
@@ -19,19 +19,19 @@ in
./environment.nix
];
- home-manager.users.matt = import ./home.nix;
+ home-manager.users."${settings.user}" = import ./home.nix;
services = {
displayManager = {
sddm = {
enable = true;
package = pkgs.kdePackages.sddm;
- extraPackages = [ theme.sddm.package ];
- theme = theme.sddm.themeName;
+ extraPackages = [ settings.sddm.package ];
+ theme = settings.sddm.themeName;
wayland.enable = true;
settings = {
Theme = {
- ThemeDir = "${theme.sddm.package}/share/sddm/themes";
+ ThemeDir = "${settings.sddm.package}/share/sddm/themes";
};
};
};
@@ -89,19 +89,19 @@ in
};
};
};
- user.services.polkit-gnome-authentication-agent-1 = {
- description = "polkit-gnome-authentication-agent-1";
- wantedBy = [ "graphical-session.target" ];
- wants = [ "graphical-session.target" ];
- after = [ "graphical-session.target" ];
- serviceConfig = {
- Type = "simple";
- ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1";
- Restart = "on-failure";
- RestartSec = 1;
- TimeoutStopSec = 10;
- };
- };
+ # user.services.polkit-gnome-authentication-agent-1 = {
+ # description = "polkit-gnome-authentication-agent-1";
+ # wantedBy = [ "graphical-session.target" ];
+ # wants = [ "graphical-session.target" ];
+ # after = [ "graphical-session.target" ];
+ # serviceConfig = {
+ # Type = "simple";
+ # ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1";
+ # Restart = "on-failure";
+ # RestartSec = 1;
+ # TimeoutStopSec = 10;
+ # };
+ # };
extraConfig = ''
DefaultTimeoutStopSec=10s
'';
diff --git a/modules/desktop-environments/hyprland/environment.nix b/modules/desktop-environments/hyprland/environment.nix
index 98631cd..fe391f4 100755
--- a/modules/desktop-environments/hyprland/environment.nix
+++ b/modules/desktop-environments/hyprland/environment.nix
@@ -20,6 +20,7 @@
hyprcursor
hyprland
hyprshot
+ hyprsysteminfo
kdePackages.qtmultimedia
libnotify
mako
diff --git a/modules/desktop-environments/hyprland/home.nix b/modules/desktop-environments/hyprland/home.nix
index 4899a9e..a2e6908 100755
--- a/modules/desktop-environments/hyprland/home.nix
+++ b/modules/desktop-environments/hyprland/home.nix
@@ -1,6 +1,6 @@
{ lib, pkgs, ... }:
let
- theme = import ./theme.nix { inherit pkgs; };
+ settings = import ./settings.nix { inherit pkgs; };
wallpaper = "/run/wallpaper.jpg";
in
{
@@ -63,7 +63,7 @@ in
", edge:r:l, workspace, +1"
# swipe up from bottom edge
- ", edge:d:u, exec, ${theme.defaultApps.browser.pname}"
+ ", edge:d:u, exec, ${settings.defaultApps.browser.pname}"
# swipe down from left edge
", edge:l:d, exec, pactl set-sink-volume @DEFAULT_SINK@ -4%"
@@ -93,13 +93,14 @@ in
};
services = {
+ hyprpolkitagent.enable = true;
hyprpaper = {
enable = true;
settings = {
preload = [ "/run/wallpaper.jpg" wallpaper ];
wallpaper = [
- "${theme.displayLeft.input}, /run/wallpaper.jpg"
- "${theme.displayRight.input}, /run/wallpaper.jpg"
+ "${settings.displayLeft.input}, /run/wallpaper.jpg"
+ "${settings.displayRight.input}, /run/wallpaper.jpg"
];
splash = false;
};
@@ -121,16 +122,16 @@ in
# on-resume = "brightnessctl -r"; # monitor backlight restore.
# }
{
- timeout = theme.lockScreenTimer;
+ timeout = settings.lockScreenTimer;
on-timeout = "loginctl lock-session"; # lock screen when timeout has passed
}
{
- timeout = theme.screenOffTimer;
+ timeout = settings.screenOffTimer;
on-timeout = "hyprctl dispatch dpms off"; # screen off when timeout has passed
on-resume = "hyprctl dispatch dpms on"; # screen on when activity is detected after timeout has fired.
}
{
- timeout = theme.suspendTimer;
+ timeout = settings.suspendTimer;
on-timeout = "systemctl suspend"; # suspend pc
}
];
@@ -162,7 +163,7 @@ in
{
size = "200, 50";
position = "0, -80";
- monitor = theme.displayLeft.input;
+ monitor = settings.displayLeft.input;
dots_center = true;
fade_on_empty = true;
font_color = "rgb(202, 211, 245)";
@@ -181,16 +182,16 @@ in
home = {
sessionVariables = {
- BROWSER = "${theme.defaultApps.browser.pname}";
+ BROWSER = "${settings.defaultApps.browser.pname}";
CLUTTER_BACKEND = "wayland";
- EDITOR = "${theme.defaultApps.editor.pname}";
- VISUAL = "${theme.defaultApps.visual.pname}";
- ICON_THEME = theme.iconTheme;
+ EDITOR = "${settings.defaultApps.editor.pname}";
+ VISUAL = "${settings.defaultApps.visual.pname}";
+ ICON_THEME = settings.iconTheme;
GTK_CSD = "0";
- GTK_THEME = theme.gtkTheme;
+ GTK_THEME = settings.gtkTheme;
GTK_USE_PORTAL = "1";
- HYPRCURSOR_THEME = theme.cursorTheme;
- HYPRCURSOR_SIZE = theme.cursorSize;
+ HYPRCURSOR_THEME = settings.cursorTheme;
+ HYPRCURSOR_SIZE = settings.cursorSize;
MOZ_ENABLE_WAYLAND = "1";
NIXOS_OZONE_WL = "1";
NIXOS_XDG_OPEN_USE_PORTAL = "1";
@@ -200,9 +201,9 @@ in
QT_SCALE_FACTOR = "1";
QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
SDL_VIDEODRIVER = "wayland";
- TERMINAL = "${theme.defaultApps.terminal.pname}";
- XCURSOR_THEME = theme.cursorTheme;
- XCURSOR_SIZE = theme.cursorSize;
+ TERMINAL = "${settings.defaultApps.terminal.pname}";
+ XCURSOR_THEME = settings.cursorTheme;
+ XCURSOR_SIZE = settings.cursorSize;
XDG_CACHE_HOME = "\${HOME}/.cache";
XDG_CONFIG_HOME = "\${HOME}/.config";
XDG_CURRENT_DESKTOP = "Hyprland";
@@ -213,21 +214,21 @@ in
pointerCursor = {
gtk.enable = true;
- package = theme.cursorThemePkg;
- name = theme.cursorTheme;
- size = theme.cursorSize;
+ package = settings.cursorThemePkg;
+ name = settings.cursorTheme;
+ size = settings.cursorSize;
};
- packages = theme.requiredPkgs;
+ packages = settings.requiredPkgs;
};
dconf = {
enable = true;
settings = {
"org/gnome/desktop/interface".color-scheme = "prefer-dark";
- "org/gnome/desktop/interface".cursor-theme = theme.cursorTheme;
- "org/gnome/desktop/interface".gtk-theme = theme.gtkTheme;
- "org/gnome/desktop/interface".icon-theme = theme.iconTheme;
+ "org/gnome/desktop/interface".cursor-theme = settings.cursorTheme;
+ "org/gnome/desktop/interface".gtk-theme = settings.gtkTheme;
+ "org/gnome/desktop/interface".icon-theme = settings.iconTheme;
};
};
@@ -235,18 +236,18 @@ in
enable = true;
cursorTheme = {
- name = theme.cursorTheme;
- package = theme.cursorThemePkg;
+ name = settings.cursorTheme;
+ package = settings.cursorThemePkg;
};
theme = {
- name = theme.gtkTheme;
- package = theme.gtkThemePkg;
+ name = settings.gtkTheme;
+ package = settings.gtkThemePkg;
};
iconTheme = {
- name = theme.iconTheme;
- package = theme.iconThemePkg;
+ name = settings.iconTheme;
+ package = settings.iconThemePkg;
};
gtk3.extraConfig = {
@@ -258,9 +259,9 @@ in
};
font = {
- name = theme.fontName;
- package = theme.fontPackage;
- size = theme.fontSize;
+ name = settings.fontName;
+ package = settings.fontPackage;
+ size = settings.fontSize;
};
};
}
diff --git a/modules/desktop-environments/hyprland/theme.nix b/modules/desktop-environments/hyprland/settings.nix
similarity index 99%
rename from modules/desktop-environments/hyprland/theme.nix
rename to modules/desktop-environments/hyprland/settings.nix
index a068a45..ccb2aec 100644
--- a/modules/desktop-environments/hyprland/theme.nix
+++ b/modules/desktop-environments/hyprland/settings.nix
@@ -15,6 +15,9 @@ let
};
in
{
+ # Username
+ user = "matt";
+
# Displays
displayLeft = {
input = "DP-1";
diff --git a/share/disko/disko.nix b/modules/disko/disko.nix
similarity index 100%
rename from share/disko/disko.nix
rename to modules/disko/disko.nix
diff --git a/share/disko/pi-uefi-disko.nix b/modules/disko/pi-uefi-disko.nix
similarity index 100%
rename from share/disko/pi-uefi-disko.nix
rename to modules/disko/pi-uefi-disko.nix
diff --git a/share/gaming/default.nix b/modules/gaming/default.nix
similarity index 100%
rename from share/gaming/default.nix
rename to modules/gaming/default.nix
diff --git a/share/gaming/options.nix b/modules/gaming/options.nix
similarity index 100%
rename from share/gaming/options.nix
rename to modules/gaming/options.nix
diff --git a/share/home/defaults.nix b/modules/home/defaults.nix
similarity index 100%
rename from share/home/defaults.nix
rename to modules/home/defaults.nix
diff --git a/share/home/git.nix b/modules/home/git.nix
similarity index 100%
rename from share/home/git.nix
rename to modules/home/git.nix
diff --git a/share/home/gnome.nix b/modules/home/gnome.nix
similarity index 100%
rename from share/home/gnome.nix
rename to modules/home/gnome.nix
diff --git a/share/home/librewolf.nix b/modules/home/librewolf.nix
similarity index 100%
rename from share/home/librewolf.nix
rename to modules/home/librewolf.nix
diff --git a/share/home/office.nix b/modules/home/office.nix
similarity index 100%
rename from share/home/office.nix
rename to modules/home/office.nix
diff --git a/share/home/shell.nix b/modules/home/shell.nix
similarity index 100%
rename from share/home/shell.nix
rename to modules/home/shell.nix
diff --git a/share/home/vscode.nix b/modules/home/vscode.nix
similarity index 100%
rename from share/home/vscode.nix
rename to modules/home/vscode.nix
diff --git a/share/impermanence/default.nix b/modules/impermanence/default.nix
similarity index 100%
rename from share/impermanence/default.nix
rename to modules/impermanence/default.nix
diff --git a/share/nvidia/default.nix b/modules/nvidia/default.nix
similarity index 100%
rename from share/nvidia/default.nix
rename to modules/nvidia/default.nix
diff --git a/share/nvidia/options.nix b/modules/nvidia/options.nix
similarity index 100%
rename from share/nvidia/options.nix
rename to modules/nvidia/options.nix
diff --git a/share/root-user/default.nix b/modules/root-user/default.nix
similarity index 100%
rename from share/root-user/default.nix
rename to modules/root-user/default.nix
diff --git a/share/default.nix b/share/default.nix
deleted file mode 100755
index e22b739..0000000
--- a/share/default.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ ... }:
-{
- imports = [
- # ./amd
- ./nvidia
- ./gaming
- ];
-}
diff --git a/test.sh b/test.sh
deleted file mode 100755
index ebf77de..0000000
--- a/test.sh
+++ /dev/null
@@ -1,85 +0,0 @@
- #!/usr/bin/env bash
-
- # Pull latest changes if in a git repo
- if [ -d .git ]; then
- git pull || echo "Warning: Could not pull latest changes"
- fi
-
- # echo "Starting build of matt-nixos at $(date)"
- # # if nix flake update desktop-nixpkgs desktop-chaotic desktop-home-manager desktop-impermanence desktop-lanzaboote desktop-nixos-hardware desktop-sops-nix desktop-steam-rom-manager nixpkgs-unstable nixpkgs-stable nix-darwin; then
- # # echo "matt-nixos flake updated successfully at $(date)"
- # # else
- # # echo "matt-nixos failed to build at $(date)"
- # # fi
- # if nix build .\#nixosConfigurations.matt-nixos.config.system.build.toplevel --no-link; then
- # echo "matt-nixos built successfully at $(date)"
- # # sudo -u admin -g jallen-nas git add .
- # # sudo -u admin -g jallen-nas git commit -m "Desktop Updates $(date)"
- # else
- # echo "matt-nixos failed to build at $(date)"
- # # sudo -u admin -g jallen-nas git reset --hard
- # fi
-
- # echo "Starting build of steamdeck at $(date)"
- # # if nix flake update steamdeck-nixpkgs steamdeck-chaotic steamdeck-home-manager steamdeck-impermanence steamdeck-jovian steamdeck-lanzaboote steamdeck-nixos-hardware steamdeck-sops-nix steamdeck-steam-rom-manager; then
- # # echo "steamdeck flake updated successfully at $(date)"
- # # else
- # # echo "steamdeck flake failed to update at $(date)"
- # # git reset --hard
- # # fi
- # if nix build .\#nixosConfigurations.steamdeck.config.system.build.toplevel --no-link; then
- # echo "steamdeck built successfully at $(date)"
- # # sudo -u admin -g jallen-nas git add .
- # # sudo -u admin -g jallen-nas git commit -m "Dteamdeck Updates $(date)"
- # else
- # echo "steamdeck failed to build at $(date)"
- # # sudo -u admin -g jallen-nas git reset --hard
- # fi
-
- echo "Starting build of pi4 at $(date)"
- # if nix flake update pi4-nixpkgs pi4-home-manager pi4-impermanence pi4-sops-nix pi4-nixos-hardware pi4-nixos-raspberrypi pi4-disko; then
- # echo "pi4 flake updated successfully at $(date)"
- # else
- # echo "pif flake failed to update at $(date)"
- # fi
- if nix build .\#nixosConfigurations.pi4.config.system.build.toplevel --no-link --impure; then
- echo "pi4 built successfully at $(date)"
- # sudo -u admin -g jallen-nas git add .
- # sudo -u admin -g jallen-nas git commit -m "Pi4 Updates $(date)"
- else
- echo "pi4 failed to build at $(date)"
- # sudo -u admin -g jallen-nas git reset --hard
- fi
-
- echo "Starting build of pi5 at $(date)"
- # if nix flake update pi5-nixpkgs pi5-home-manager pi5-impermanence pi5-nixos-hardware pi5-sops-nix nixos-raspberrypi; then
- # echo "pi5 flake updated successfully at $(date)"
- # else
- # echo "pi5 flake failed to update at $(date)"
- # fi
- if nix build .\#nixosConfigurations.pi5.config.system.build.toplevel --no-link; then
- echo "pi5 built successfully at $(date)"
- # sudo -u admin -g jallen-nas git add .
- # sudo -u admin -g jallen-nas git commit -m "Pi5 Updates $(date)"
- else
- echo "pi5 failed to build at $(date)"
- # sudo -u admin -g jallen-nas git reset --hard
- fi
-
- echo "Starting build of jallen-nas at $(date)"
- # if nix flake update nas-nixpkgs nas-authentik-nix nas-cosmic nas-crowdsec nas-home-manager nas-impermanence nas-lanzaboote nas-nixos-hardware nas-sops-nix; then
- # echo "jallen-nas flake updated successfully at $(date)"
- # else
- # echo "jallen-nas flake failed to update at $(date)"
- # fi
- export NIXPKGS_ALLOW_UNFREE=1
- if nix build .\#nixosConfigurations.jallen-nas.config.system.build.toplevel --no-link --impure; then
- echo "jallen-nas built successfully at $(date)"
- # sudo -u admin -g jallen-nas git add .
- # sudo -u admin -g jallen-nas git commit -m "Jallen-NAS Updates $(date)"
- else
- echo "jallen-nas failed to build at $(date)"
- # sudo -u admin -g jallen-nas git reset --hard
- fi
-
- # git push
\ No newline at end of file