diff --git a/flake.lock b/flake.lock index 44c95be..0d7379c 100644 --- a/flake.lock +++ b/flake.lock @@ -98,6 +98,45 @@ "type": "github" } }, + "flake-parts": { + "inputs": { + "nixpkgs-lib": "nixpkgs-lib" + }, + "locked": { + "lastModified": 1701473968, + "narHash": "sha256-YcVE5emp1qQ8ieHUnxt1wCZCC3ZfAS+SRRWZ2TMda7E=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "34fed993f1674c8d06d58b37ce1e0fe5eebcb9f5", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "flake-parts_2": { + "inputs": { + "nixpkgs-lib": [ + "nixtheplanet", + "hercules-ci-effects", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1696343447, + "narHash": "sha256-B2xAZKLkkeRFG5XcHHSXXcP7To9Xzr59KXeZiRf4vdQ=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "c9afaba3dfa4085dbd2ccb38dfade5141e33d9d4", + "type": "github" + }, + "original": { + "id": "flake-parts", + "type": "indirect" + } + }, "flake-schemas": { "locked": { "lastModified": 1697467827, @@ -167,6 +206,25 @@ "type": "github" } }, + "hercules-ci-effects": { + "inputs": { + "flake-parts": "flake-parts_2", + "nixpkgs": "nixpkgs_3" + }, + "locked": { + "lastModified": 1701009247, + "narHash": "sha256-GuX16rzRze2y7CsewJLTV6qXkXWyEwp6VCZXi8HLruU=", + "owner": "hercules-ci", + "repo": "hercules-ci-effects", + "rev": "31b6cd7569191bfcd0a548575b0e2ef953ed7d09", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "hercules-ci-effects", + "type": "github" + } + }, "home-manager": { "inputs": { "nixpkgs": [ @@ -300,6 +358,24 @@ "url": "https://flakehub.com/f/NixOS/nixpkgs/0.1.0.tar.gz" } }, + "nixpkgs-lib": { + "locked": { + "dir": "lib", + "lastModified": 1701253981, + "narHash": "sha256-ztaDIyZ7HrTAfEEUt9AtTDNoCYxUdSd6NrRHaYOIxtk=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e92039b55bcd58469325ded85d4f58dd5a4eaf58", + "type": "github" + }, + "original": { + "dir": "lib", + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgs-stable": { "locked": { "lastModified": 1673800717, @@ -348,6 +424,59 @@ "type": "github" } }, + "nixpkgs_3": { + "locked": { + "lastModified": 1697723726, + "narHash": "sha256-SaTWPkI8a5xSHX/rrKzUe+/uVNy6zCGMXgoeMb7T9rg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "7c9cc5a6e5d38010801741ac830a3f8fd667a7a0", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_4": { + "locked": { + "lastModified": 1701718080, + "narHash": "sha256-6ovz0pG76dE0P170pmmZex1wWcQoeiomUZGggfH9XPs=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "2c7f3c0fb7c08a0814627611d9d7d45ab6d75335", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixtheplanet": { + "inputs": { + "flake-parts": "flake-parts", + "hercules-ci-effects": "hercules-ci-effects", + "nixpkgs": "nixpkgs_4", + "osx-kvm": "osx-kvm" + }, + "locked": { + "lastModified": 1702232935, + "narHash": "sha256-dLDkdeDPA7BZl15Xg6YGC8Y3r3F+oFJ9zhL3i4CZC7c=", + "owner": "matthewcroughan", + "repo": "nixtheplanet", + "rev": "dbd17cc421e0935b5c18ad5754e292057be395c9", + "type": "github" + }, + "original": { + "owner": "matthewcroughan", + "repo": "nixtheplanet", + "type": "github" + } + }, "nur": { "locked": { "lastModified": 1702237445, @@ -363,6 +492,22 @@ "type": "github" } }, + "osx-kvm": { + "flake": false, + "locked": { + "lastModified": 1701316418, + "narHash": "sha256-Sk8LYhFovoMX1ln7DWYArJQphW2a4h8Xg7/ZEZXwZv4=", + "owner": "kholia", + "repo": "OSX-KVM", + "rev": "09daff670a7eb9ff616073df329586c5995623a9", + "type": "github" + }, + "original": { + "owner": "kholia", + "repo": "OSX-KVM", + "type": "github" + } + }, "plasma-manager": { "inputs": { "home-manager": [ @@ -426,6 +571,7 @@ "nixos-unstable": "nixos-unstable", "nixpkgs": "nixpkgs_2", "nixpkgs-unstable": "nixpkgs-unstable", + "nixtheplanet": "nixtheplanet", "nur": "nur", "plasma-manager": "plasma-manager" } diff --git a/flake.nix b/flake.nix index 0036a38..4aefe60 100644 --- a/flake.nix +++ b/flake.nix @@ -50,6 +50,7 @@ url = "github:Mic92/nix-ld"; inputs.nixpkgs.follows = "nixpkgs"; }; + nixtheplanet.url = "github:matthewcroughan/nixtheplanet"; }; outputs = @@ -57,6 +58,7 @@ , nixpkgs , nixpkgs-unstable , nixos-unstable + , nixtheplanet , home-manager , emacs-overlay , nur @@ -105,6 +107,7 @@ nur.nixosModules.nur inputs.nix-ld.nixosModules.nix-ld chaotic.nixosModules.default + nixtheplanet.nixosModules.macos-ventura ]; args = { inherit self; diff --git a/os-mods/amdgpu/default.nix b/os-mods/amdgpu/default.nix index 2038645..d607255 100644 --- a/os-mods/amdgpu/default.nix +++ b/os-mods/amdgpu/default.nix @@ -14,8 +14,8 @@ gpuOverclock.enable = true; }; - services.xserver.videoDrivers = [ "amdgpu" ]; - #services.xserver.videoDrivers = lib.mkDefault [ "modesetting" ]; + # services.xserver.videoDrivers = [ "amdgpu" ]; + services.xserver.videoDrivers = lib.mkDefault [ "modesetting" ]; systemd.tmpfiles.rules = [ "L+ /opt/rocm/hip - - - - ${pkgs.rocmPackages.clr}" @@ -23,7 +23,7 @@ hardware.opengl = { driSupport = true; driSupport32Bit = true; - extraPackages = with pkgs; [ + extraPackages = with pkgs.unstable-os; [ amdvlk rocmPackages.rocm-runtime rocm-opencl-icd @@ -34,11 +34,16 @@ obs-studio-plugins.obs-vaapi # TODO check if obs is enabled gst_all_1.gstreamer gst_all_1.gst-vaapi + vulkan-tools + libva-utils ]; - extraPackages32 = with pkgs; [ + extraPackages32 = with pkgs.unstable-os; [ driversi686Linux.amdvlk driversi686Linux.vaapiVdpau driversi686Linux.libvdpau-va-gl ]; }; + + # Force radv + environment.variables.AMD_VULKAN_ICD = "RADV"; } diff --git a/os-mods/mac-vm/default.nix b/os-mods/mac-vm/default.nix new file mode 100644 index 0000000..a559f97 --- /dev/null +++ b/os-mods/mac-vm/default.nix @@ -0,0 +1,15 @@ +{ pkgs +, config +, lib +, inputs +, ... +}: { + services.macos-ventura = { + enable = true; + openFirewall = true; + vncListenAddr = "0.0.0.0"; + threads = 8; + cores = 4; + mem = "8G"; + }; +} diff --git a/systems/nixos-desk/default.nix b/systems/nixos-desk/default.nix index c972fca..d1e7de9 100644 --- a/systems/nixos-desk/default.nix +++ b/systems/nixos-desk/default.nix @@ -15,6 +15,7 @@ ../../os-mods/desktop/audio.nix ../../os-mods/desktop/gaming.nix ../../os-mods/desktop/printing.nix + # ../../os-mods/mac-vm ../../os-mods/netdata ../../os-mods/network ../../os-mods/virt