From a9bef2637aa9027a4a65473043aa831ef1ce8cdc Mon Sep 17 00:00:00 2001 From: emmatherock Date: Sat, 4 Jul 2026 00:11:05 -0300 Subject: [PATCH] feat: add flatpak service configuration and integrate with OBS plugins and Steam --- flake.lock | 59 ++++++++++++++++++++++------------ flake.nix | 4 +++ home/emmatherock/obs.nix | 14 -------- hosts/miku-homelab/default.nix | 1 + modules/services/flatpak.nix | 22 +++++++++++++ modules/system/gaming.nix | 1 - 6 files changed, 65 insertions(+), 36 deletions(-) delete mode 100644 home/emmatherock/obs.nix create mode 100644 modules/services/flatpak.nix diff --git a/flake.lock b/flake.lock index 7cd61e3..1ae7265 100644 --- a/flake.lock +++ b/flake.lock @@ -14,11 +14,11 @@ "sf-pro": "sf-pro" }, "locked": { - "lastModified": 1781881853, - "narHash": "sha256-JawESccafFrnpr1YPYc2Xd7WaBJvbE+4FLZzWY3AfJU=", + "lastModified": 1782587760, + "narHash": "sha256-I9PRLePA5QNKEyDFsN5eIVk0dxFRGAL0Z/LjOWnA75Y=", "owner": "Lyndeno", "repo": "apple-fonts.nix", - "rev": "bb4d5244052c1f6cae543baea793bf44f3f8bfb4", + "rev": "ce044f6829c6b3ccde9624116577ba2c173ca49d", "type": "github" }, "original": { @@ -98,11 +98,11 @@ ] }, "locked": { - "lastModified": 1778446047, - "narHash": "sha256-oQvcadh2BCkrog+SGrG6YffKJrveYpjj3TdQJWaKhaM=", + "lastModified": 1782772816, + "narHash": "sha256-s9BuFv0mRuZx9C1MF8qPHRdcAK14ONi0A5m6E2wqOoM=", "owner": "nix-community", "repo": "bun2nix", - "rev": "f2bc12af1a6369648aac41041ceeaa0b866599c6", + "rev": "5a39d717029e94163ac223aee8d5c9946cafed1c", "type": "github" }, "original": { @@ -179,11 +179,11 @@ ] }, "locked": { - "lastModified": 1782522538, - "narHash": "sha256-CvOaUvJ+mXlxU3m2cPWKcOAhtKETsPUYhq+Xa5ewBp4=", + "lastModified": 1782881387, + "narHash": "sha256-HvlS1KDGXDjd1bNzzPvH1mkDJATlDAfVYfTh//wJBEA=", "owner": "nix-community", "repo": "home-manager", - "rev": "8d8a6cc50ddc60748791a14ee1163c865ec57635", + "rev": "d32537981c036473cf6990ae03176a5d84c43b29", "type": "github" }, "original": { @@ -202,11 +202,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1782464540, - "narHash": "sha256-xBvJ+sX/7xOoUrjEzglL5B4nH0YgvYTGPIaj9iLeAws=", + "lastModified": 1782869010, + "narHash": "sha256-4OWJdeCsT1AbqYis6GyCjcO+tiJ0G5GTPP9rfl2mMuQ=", "owner": "numtide", "repo": "llm-agents.nix", - "rev": "05f2ea6072427bfd8b334342a0816b96fef27c3b", + "rev": "36bc6d09f3b7f9a4c9837bcf2092e3e7bb85f6a6", "type": "github" }, "original": { @@ -215,16 +215,32 @@ "type": "github" } }, + "nix-flatpak": { + "locked": { + "lastModified": 1767983141, + "narHash": "sha256-7ZCulYUD9RmJIDULTRkGLSW1faMpDlPKcbWJLYHoXcs=", + "owner": "gmodena", + "repo": "nix-flatpak", + "rev": "440818969ac2cbd77bfe025e884d0aa528991374", + "type": "github" + }, + "original": { + "owner": "gmodena", + "ref": "latest", + "repo": "nix-flatpak", + "type": "github" + } + }, "nix-vscode-extensions": { "inputs": { "nixpkgs": "nixpkgs_3" }, "locked": { - "lastModified": 1782447048, - "narHash": "sha256-+aCWNX45SyrPfy+SV1R8ClH1jh8X0MTpnPZCllqGn7o=", + "lastModified": 1782879771, + "narHash": "sha256-CEm+X6hosGyxp32UMt01xxa+Ei0c0NiIP2VqgxFDSwM=", "owner": "nix-community", "repo": "nix-vscode-extensions", - "rev": "486c8f5ac6f43bfec630e3a6f426ab10fce3e5f2", + "rev": "956507929a1cc152ec509e91765efe77f54297b5", "type": "github" }, "original": { @@ -251,11 +267,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1782118813, - "narHash": "sha256-BnbXO5s5EhV89lLXMAGCzPdEN5a6vNqvMk71obeTEUw=", + "lastModified": 1782760764, + "narHash": "sha256-N66fYdUuZ9hpdM7jsQ7CUWtLJduqGDyTGCaLR62CXaQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b3c092d3c36d91e2f61f3dfb39a159f180a56659", + "rev": "7a1a64774a5fd0b0cd39ac95d0e170ace8b266a0", "type": "github" }, "original": { @@ -283,11 +299,11 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1782467914, - "narHash": "sha256-pGvFkM8N0xEkIIXDe5YYfbEAvHrk4IxBrjB/x8OomhE=", + "lastModified": 1782723713, + "narHash": "sha256-oPXCU/SSUokcGaJREHibG1CBX3+s/W7orDWQOZDsEeQ=", "owner": "nixos", "repo": "nixpkgs", - "rev": "e73de5be04e0eff4190a1432b946d469c794e7b4", + "rev": "b5aa0fbd538984f6e3d201be0005b4463d8b09f8", "type": "github" }, "original": { @@ -328,6 +344,7 @@ "apple-fonts": "apple-fonts", "home-manager": "home-manager", "llm-agents": "llm-agents", + "nix-flatpak": "nix-flatpak", "nix-vscode-extensions": "nix-vscode-extensions", "nixpkgs": "nixpkgs_4", "sidra": "sidra", diff --git a/flake.nix b/flake.nix index 0004838..db260c8 100644 --- a/flake.nix +++ b/flake.nix @@ -12,6 +12,9 @@ url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; + nix-flatpak = { + url = "github:gmodena/nix-flatpak/?ref=latest"; + }; vscode-server.url = "github:nix-community/nixos-vscode-server"; llm-agents.url = "github:numtide/llm-agents.nix"; nix-vscode-extensions.url = "github:nix-community/nix-vscode-extensions"; @@ -26,6 +29,7 @@ modules = [ ./hosts/miku-homelab home-manager.nixosModules.home-manager + inputs.nix-flatpak.nixosModules.nix-flatpak vscode-server.nixosModules.default { nixpkgs.overlays = [ diff --git a/home/emmatherock/obs.nix b/home/emmatherock/obs.nix deleted file mode 100644 index b189941..0000000 --- a/home/emmatherock/obs.nix +++ /dev/null @@ -1,14 +0,0 @@ -{ pkgs, ... }: -{ - home.packages = [ - (pkgs.wrapOBS { - plugins = with pkgs.obs-studio-plugins; [ - obs-pipewire-audio-capture - obs-vkcapture - obs-composite-blur - obs-aitum-multistream - obs-vertical-canvas - ]; - }) - ]; -} diff --git a/hosts/miku-homelab/default.nix b/hosts/miku-homelab/default.nix index a22a076..34e66d8 100644 --- a/hosts/miku-homelab/default.nix +++ b/hosts/miku-homelab/default.nix @@ -5,6 +5,7 @@ ./hardware-configuration.nix ../../modules/security/secureboot.nix ../../modules/services/maintenance.nix + ../../modules/services/flatpak.nix ../../modules/system/audio.nix ../../modules/system/fonts.nix ../../modules/system/gaming.nix diff --git a/modules/services/flatpak.nix b/modules/services/flatpak.nix new file mode 100644 index 0000000..a87bca4 --- /dev/null +++ b/modules/services/flatpak.nix @@ -0,0 +1,22 @@ +{ + services.flatpak = { + enable = true; + + remotes = [ + { + name = "flathub"; + location = "https://dl.flathub.org/repo/flathub.flatpakrepo"; + } + ]; + + packages = [ + "com.obsproject.Studio" + "com.obsproject.Studio.Plugin.OBSVkCapture" + "com.obsproject.Studio.Plugin.VerticalCanvas" + "com.obsproject.Studio.Plugin.AitumMultistream" + "com.obsproject.Studio.Plugin.CompositeBlur" + "org.freedesktop.Platform.VulkanLayer.OBSVkCapture//25.08" + "com.valvesoftware.Steam" + ]; + }; +} diff --git a/modules/system/gaming.nix b/modules/system/gaming.nix index dbdeb21..3dc2dce 100644 --- a/modules/system/gaming.nix +++ b/modules/system/gaming.nix @@ -1,6 +1,5 @@ { programs = { gamemode.enable = true; - steam = { enable = true; remotePlay.openFirewall = true; }; }; }