diff --git a/fediversity/pixelfed.nix b/fediversity/pixelfed.nix index 1edc914..1c1646d 100644 --- a/fediversity/pixelfed.nix +++ b/fediversity/pixelfed.nix @@ -59,7 +59,4 @@ lib.mkIf (config.fediversity.enable && config.fediversity.pixelfed.enable) { after = [ "ensure-garage.service" ]; }; - services.pixelfed.package = pkgs.pixelfed.overrideAttrs (old: { - patches = (old.patches or [ ]) ++ [ ./pixelfed-group-permissions.patch ]; - }); } diff --git a/flake.nix b/flake.nix index 737ad31..ed9ae3f 100644 --- a/flake.nix +++ b/flake.nix @@ -5,21 +5,50 @@ nixpkgs.url = "github:radvendii/nixpkgs/nixos_rebuild_tests"; }; - outputs = { self, nixpkgs }: + outputs = inputs@{ self, nixpkgs }: let system = "x86_64-linux"; pkgs = nixpkgs.legacyPackages.${system}; in { + packages.${system} = { + pixelfed = pkgs.pixelfed.overrideAttrs (old: { + patches = (old.patches or [ ]) ++ [ ./fediversity/pixelfed-group-permissions.patch ]; + }); + }; + nixosModules = { ## Fediversity modules - fediversity = import ./fediversity; + fediversity = { pkgs, ... }: { + imports = [ ./fediversity ]; + services.pixelfed.package = self.packages.${pkgs.stdenv.hostPlatform.system}.pixelfed; + }; ## VM-specific modules - interactive-vm = import ./vm/interactive-vm.nix; - mastodon-vm = import ./vm/mastodon-vm.nix; - peertube-vm = import ./vm/peertube-vm.nix; - pixelfed-vm = import ./vm/pixelfed-vm.nix; + interactive-vm = { + imports = [ + ./vm/interactive-vm.nix + self.nixosModules.fediversity + ]; + }; + mastodon-vm = { + imports = [ + ./vm/mastodon-vm.nix + self.nixosModules.fediversity + ]; + }; + peertube-vm = { + imports = [ + ./vm/peertube-vm.nix + self.nixosModules.fediversity + ]; + }; + pixelfed-vm = { + imports = [ + ./vm/pixelfed-vm.nix + self.nixosModules.fediversity + ]; + }; }; nixosConfigurations = { diff --git a/vm/mastodon-vm.nix b/vm/mastodon-vm.nix index ea17f27..4b28492 100644 --- a/vm/mastodon-vm.nix +++ b/vm/mastodon-vm.nix @@ -1,7 +1,6 @@ { modulesPath, lib, config, ... }: { imports = [ - ../fediversity (modulesPath + "/virtualisation/qemu-vm.nix") ]; diff --git a/vm/peertube-vm.nix b/vm/peertube-vm.nix index 5f40f4f..b701682 100644 --- a/vm/peertube-vm.nix +++ b/vm/peertube-vm.nix @@ -1,7 +1,6 @@ { pkgs, modulesPath, ... }: { imports = [ - ../fediversity (modulesPath + "/virtualisation/qemu-vm.nix") ]; diff --git a/vm/pixelfed-vm.nix b/vm/pixelfed-vm.nix index 8f97180..3510d0b 100644 --- a/vm/pixelfed-vm.nix +++ b/vm/pixelfed-vm.nix @@ -1,7 +1,6 @@ { pkgs, modulesPath, ... }: { imports = [ - ../fediversity (modulesPath + "/virtualisation/qemu-vm.nix") ];