diff --git a/nixos/modules/services/web-apps/dolibarr.nix b/nixos/modules/services/web-apps/dolibarr.nix index 136720ef67b4..877490652989 100644 --- a/nixos/modules/services/web-apps/dolibarr.nix +++ b/nixos/modules/services/web-apps/dolibarr.nix @@ -312,7 +312,7 @@ in systemd.services."phpfpm-dolibarr".after = mkIf cfg.database.createLocally [ "mysql.service" ]; services.phpfpm.pools.dolibarr = { inherit (cfg) user group; - phpPackage = pkgs.php.buildEnv { + phpPackage = pkgs.php83.buildEnv { extensions = { enabled, all }: enabled ++ [ all.calendar ]; # recommended by dolibarr web application extraConfig = '' @@ -339,13 +339,17 @@ in description = "dolibarr configuration file management via NixOS"; wantedBy = [ "multi-user.target" ]; - script = '' - # extract the 'main instance unique id' secret that the dolibarr installer generated for us, store it in a file for use by our own NixOS generated configuration file - ${pkgs.php}/bin/php -r "include '${cfg.stateDir}/conf.php'; file_put_contents('${cfg.stateDir}/dolibarr_main_instance_unique_id', \$dolibarr_main_instance_unique_id);" + script = + let + php = lib.getExe config.services.phpfpm.pools.dolibarr.phpPackage; + in + '' + # extract the 'main instance unique id' secret that the dolibarr installer generated for us, store it in a file for use by our own NixOS generated configuration file + ${php} -r "include '${cfg.stateDir}/conf.php'; file_put_contents('${cfg.stateDir}/dolibarr_main_instance_unique_id', \$dolibarr_main_instance_unique_id);" - # replace configuration file generated by installer with the NixOS generated configuration file - install -m 440 ${mkConfigFile "conf.php" cfg.settings} '${cfg.stateDir}/conf.php' - ''; + # replace configuration file generated by installer with the NixOS generated configuration file + install -m 440 ${mkConfigFile "conf.php" cfg.settings} '${cfg.stateDir}/conf.php' + ''; serviceConfig = { Type = "oneshot";