summaryrefslogtreecommitdiff
path: root/hosts/poweredge
diff options
context:
space:
mode:
Diffstat (limited to 'hosts/poweredge')
-rw-r--r--hosts/poweredge/configuration.nix11
-rw-r--r--hosts/poweredge/immich.nix25
-rw-r--r--hosts/poweredge/jellyfin.nix20
-rw-r--r--hosts/poweredge/nvidia.nix22
4 files changed, 28 insertions, 50 deletions
diff --git a/hosts/poweredge/configuration.nix b/hosts/poweredge/configuration.nix
index 40803bf..d503fd1 100644
--- a/hosts/poweredge/configuration.nix
+++ b/hosts/poweredge/configuration.nix
@@ -8,6 +8,7 @@
./immich.nix
./jellyfin.nix
./networking.nix
+ ./nvidia.nix
#./notification-mailer.nix # TODO move some of this stuff to archetype
];
@@ -32,16 +33,6 @@
# Import zfs pools
boot.zfs.extraPools = [ "ingens" "memoria" ];
- # Enable nvidia
- hardware.nvidia = {
- modesetting.enable = true; # Required
- nvidiaSettings = false; # Don't need gui
- open = false;
- package = config.boot.kernelPackages.nvidiaPackages.legacy_580; # Support for P600
- powerManagement.enable = false; # Can cause bugs
- powerManagement.finegrained = false; # Only works on turing and newer
- };
-
# Enable user timmy
_users.timmy.enable = true;
diff --git a/hosts/poweredge/immich.nix b/hosts/poweredge/immich.nix
index 24b32c2..444a0f2 100644
--- a/hosts/poweredge/immich.nix
+++ b/hosts/poweredge/immich.nix
@@ -36,14 +36,12 @@ in {
};
config = { lib, pkgs, config, ... }: {
+ imports = [ ./nvidia.nix ];
+
# Network
networking.interfaces.eth0.useDHCP = true;
networking.firewall.allowedTCPPorts = [ 80 ]; # Caddy
- # Configure nixpkgs for nvidia/cuda
- nixpkgs.config.allowUnfree = true;
- nixpkgs.config.cudaSupport = true;
-
# Immich
services.immich = {
enable = true;
@@ -64,7 +62,7 @@ in {
# Enable the ML microservice with CUDA
machine-learning.enable = true;
};
- #environment.systemPackages = with pkgs; [ immich immich-cli ];
+ environment.systemPackages = with pkgs; [ immich immich-cli ];
# Reverse proxy
services.caddy = {
@@ -74,23 +72,6 @@ in {
'';
};
- # NVIDIA
- services.xserver.videoDrivers = [ "nvidia" ]; # xserver.videoDrivers does not imply X
- hardware.graphics.enable = true;
- hardware.nvidia = {
- modesetting.enable = true; # Required
- nvidiaSettings = false; # Don't need gui
- open = false;
- package = config.boot.kernelPackages.nvidiaPackages.legacy_580; # Must match host
- };
-
- # Packages
- environment.systemPackages = with pkgs; [
- immich
- immich-cli
- config.hardware.nvidia.package # nvidia-smi
- ];
-
system.stateVersion = "25.11";
};
};
diff --git a/hosts/poweredge/jellyfin.nix b/hosts/poweredge/jellyfin.nix
index 2fbdabd..761c3ae 100644
--- a/hosts/poweredge/jellyfin.nix
+++ b/hosts/poweredge/jellyfin.nix
@@ -32,13 +32,12 @@
};
config = { lib, config, pkgs, ... }: {
+ imports = [ ./nvidia.nix ];
+
# Network
networking.interfaces.eth0.useDHCP = true;
networking.firewall.allowedTCPPorts = [ 80 ]; # Caddy
- # Configure nixpkgs for nvidia/cuda
- nixpkgs.config.allowUnfree = true;
-
# Jellyfin
services.jellyfin = {
enable = true;
@@ -86,21 +85,6 @@
'';
};
- # NVIDIA
- services.xserver.videoDrivers = [ "nvidia" ]; # xserver.videoDrivers does not imply X
- hardware.graphics.enable = true;
- hardware.nvidia = {
- modesetting.enable = true; # Required
- nvidiaSettings = false; # Don't need gui
- open = false;
- package = config.boot.kernelPackages.nvidiaPackages.legacy_580; # Must match host
- };
-
- # Packages
- environment.systemPackages = with pkgs; [
- config.hardware.nvidia.package # nvidia-smi
- ];
-
system.stateVersion = "26.05";
};
};
diff --git a/hosts/poweredge/nvidia.nix b/hosts/poweredge/nvidia.nix
new file mode 100644
index 0000000..257a46c
--- /dev/null
+++ b/hosts/poweredge/nvidia.nix
@@ -0,0 +1,22 @@
+{ config, pkgs, ... }: {
+ # Configure nixpkgs for nvidia/cuda
+ nixpkgs.config.allowUnfree = true;
+ nixpkgs.config.cudaSupport = true;
+
+ # NVIDIA
+ services.xserver.videoDrivers = [ "nvidia" ]; # xserver.videoDrivers does not imply X
+ hardware.graphics.enable = true;
+ hardware.nvidia = {
+ modesetting.enable = true; # Required
+ nvidiaSettings = false; # Don't need gui
+ open = false;
+ package = config.boot.kernelPackages.nvidiaPackages.legacy_580; # Support for P600
+ powerManagement.enable = false; # Can cause bugs
+ powerManagement.finegrained = false; # Only works on turing and newer
+ };
+
+ # Packages
+ environment.systemPackages = with pkgs; [
+ config.hardware.nvidia.package # nvidia-smi
+ ];
+}