diff --git a/flake.nix b/flake.nix index 407b316..ca7f80d 100644 --- a/flake.nix +++ b/flake.nix @@ -15,9 +15,10 @@ sysDarwin = "aarch64-darwin"; sysLinuxAarch = "aarch64-linux"; - wrapPkgsSystem = { system }: + wrapPkgsSystem = { system, cudaSupport ? false }: let config = { + inherit cudaSupport; allowUnfree = true; }; in @@ -53,8 +54,8 @@ }); - pkgsLinuxX64 = wrapPkgsSystem { system = sysLinuxX64; }; - utilsLinuxX64 = wrapUtils { system = sysLinuxX64; pkgs = pkgsLinuxX64; }; + pkgsLinuxX64Cuda = wrapPkgsSystem { system = sysLinuxX64; cudaSupport = true; }; + utilsLinuxX64Cuda = wrapUtils { system = sysLinuxX64; pkgs = pkgsLinuxX64Cuda; }; pkgsLinuxAarch = wrapPkgsSystem { system = sysLinuxAarch; }; utilsLinuxAarch = wrapUtils { system = sysLinuxAarch; pkgs = pkgsLinuxAarch; }; @@ -64,14 +65,14 @@ in { nixosConfigurations = { - architect = utilsLinuxX64.host.mkHost { + architect = utilsLinuxX64Cuda.host.mkHost { name = "architect"; users = [{ user = "giulio"; roles = [ ]; }]; }; - gAluminum = utilsLinuxX64.host.mkHost { + gAluminum = utilsLinuxX64Cuda.host.mkHost { name = "gAluminum"; users = [{ user = "giulio"; @@ -90,11 +91,11 @@ name = "giulio"; roles = [ "ssh" ]; }; - giulioX64 = utilsLinuxX64.user.mkHMUser { + giulioX64 = utilsLinuxX64Cuda.user.mkHMUser { name = "giulio"; roles = [ "ssh" "go" ]; }; - giulioX64NoSSH = utilsLinuxX64.user.mkHMUser { + giulioX64NoSSH = utilsLinuxX64Cuda.user.mkHMUser { name = "giulio"; roles = [ "go" ]; };