From bec3651b4bbd9002b0f80f6825f55ee0090b3c79 Mon Sep 17 00:00:00 2001 From: h7x4 Date: Fri, 29 Mar 2024 01:40:43 +0100 Subject: [PATCH] packages: init simplesamlphp --- flake.nix | 2 ++ packages/simplesamlphp/default.nix | 35 ++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+) create mode 100644 packages/simplesamlphp/default.nix diff --git a/flake.nix b/flake.nix index 5fecdef..0e38e50 100644 --- a/flake.nix +++ b/flake.nix @@ -131,6 +131,8 @@ inherit (pkgs.darwin.apple_sdk.frameworks) CoreFoundation Security SystemConfiguration; autoreconfHook = pkgs.buildPackages.autoreconfHook269; }; + + simplesamlphp = pkgs.callPackage ./packages/simplesamlphp { }; } // nixlib.genAttrs allMachines (machine: self.nixosConfigurations.${machine}.config.system.build.toplevel); }; diff --git a/packages/simplesamlphp/default.nix b/packages/simplesamlphp/default.nix new file mode 100644 index 0000000..8f38742 --- /dev/null +++ b/packages/simplesamlphp/default.nix @@ -0,0 +1,35 @@ +{ lib +, php +, writeText +, fetchFromGitHub +, extra_files ? { } + +}: + +php.buildComposerProject rec { + pname = "simplesamlphp"; + version = "2.2.1"; + + src = fetchFromGitHub { + owner = "simplesamlphp"; + repo = "simplesamlphp"; + rev = "v${version}"; + hash = "sha256-jo7xma60M4VZgeDgyFumvJp1Sm+RP4XaugDkttQVB+k="; + }; + + composerStrictValidation = false; + + vendorHash = "sha256-n6lJ/Fb6xI124PkKJMbJBDiuISlukWQcHl043uHoBb4="; + + # TODO: metadata could be fetched automagically with these: + # - https://simplesamlphp.org/docs/contrib_modules/metarefresh/simplesamlphp-automated_metadata.html + # - https://idp.pvv.ntnu.no/simplesaml/saml2/idp/metadata.php + postPatch = lib.pipe extra_files [ + (lib.mapAttrsToList (target_path: source_path: ''install -Dm444 "${source_path}" "${target_path}"'')) + (lib.concatStringsSep "\n") + ]; + + postInstall = '' + ln -sr $out/share/php/simplesamlphp/vendor/simplesamlphp/simplesamlphp-assets-base $out/share/php/simplesamlphp/public/assets/base + ''; +}