From 9046d3108e8136904bae75e789bdac665d3bfddd Mon Sep 17 00:00:00 2001 From: Lukas Wurzinger Date: Sun, 19 Jan 2025 00:22:44 +0100 Subject: [PATCH] work --- hosts/headful/work/php.nix | 56 ------------------------------------- hosts/headful/work/phps.nix | 48 +++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+), 56 deletions(-) delete mode 100644 hosts/headful/work/php.nix create mode 100644 hosts/headful/work/phps.nix diff --git a/hosts/headful/work/php.nix b/hosts/headful/work/php.nix deleted file mode 100644 index b90581b..0000000 --- a/hosts/headful/work/php.nix +++ /dev/null @@ -1,56 +0,0 @@ -{ - inputs, - pkgs, - ... -}: let - supportedPhps = [ - "php72" - "php73" - "php74" - "php80" - "php81" - "php82" - "php83" - "php84" - ]; -in { - nix.settings = { - substituters = ["https://fossar.cachix.org/"]; - trusted-public-keys = ["fossar.cachix.org-1:Zv6FuqIboeHPWQS7ysLCJ7UT7xExb4OE8c4LyGb5AsE="]; - }; - - environment.systemPackages = - map ( - phpName: - pkgs.writeShellApplication { - name = "with-${phpName}"; - runtimeInputs = let - php = inputs.phps.packages.${pkgs.system}.${phpName}.buildEnv { - extensions = { - enabled, - all, - }: - enabled ++ [all.xdebug all.amqp]; - extraConfig = '' - display_errors = On - error_reporting = E_ALL - - memory_limit = -1 - - xdebug.mode = develop,coverage,gcstats,profile,debug,trace - xdebug.discover_client_host = 1 - xdebug.client_host = localhost - ''; - }; - in [ - php - php.packages.composer - pkgs.symfony-cli - ]; - text = '' - exec "$@" - ''; - } - ) - supportedPhps; -} diff --git a/hosts/headful/work/phps.nix b/hosts/headful/work/phps.nix new file mode 100644 index 0000000..bfa9ed4 --- /dev/null +++ b/hosts/headful/work/phps.nix @@ -0,0 +1,48 @@ +{ + lib, + inputs, + pkgs, + ... +}: let + supportedPhps = [ + "php72" + "php73" + "php74" + "php80" + "php81" + "php82" + "php83" + "php84" + ]; + + extraConfig = '' + memory_limit = -1 + + xdebug.mode = develop,coverage,gcstats,profile,debug,trace + xdebug.discover_client_host = 1 + xdebug.client_host = localhost + ''; + + phps = lib.genAttrs supportedPhps ( + phpName: + inputs.phps.packages.${pkgs.system}.${phpName}.buildEnv { + extensions = { + enabled, + all, + }: + enabled ++ [all.xdebug all.amqp]; + inherit extraConfig; + } + ); +in { + nix.settings = { + substituters = ["https://fossar.cachix.org/"]; + trusted-public-keys = ["fossar.cachix.org-1:Zv6FuqIboeHPWQS7ysLCJ7UT7xExb4OE8c4LyGb5AsE="]; + }; + + systemd.tmpfiles.settings.php = + builtins.mapAttrs (name: drv: { + "/var/lib/phps/${name}"."L+".argument = drv.outPath; + }) + phps; +}