summary refs log tree commit diff
path: root/nixos
diff options
context:
space:
mode:
authorEric Sagnes <eric.sagnes@gmail.com>2016-06-22 21:24:25 +0900
committerEric Sagnes <eric.sagnes@gmail.com>2016-06-22 21:24:25 +0900
commitff074ec7a4833e4db104423827001c28c6dd2074 (patch)
tree6e79b7775841c06ab22a77282dad2bcc661d83e0 /nixos
parentd254e4dee323ab73d47212913c59cfd58ee88e6e (diff)
downloadnixlib-ff074ec7a4833e4db104423827001c28c6dd2074.tar
nixlib-ff074ec7a4833e4db104423827001c28c6dd2074.tar.gz
nixlib-ff074ec7a4833e4db104423827001c28c6dd2074.tar.bz2
nixlib-ff074ec7a4833e4db104423827001c28c6dd2074.tar.lz
nixlib-ff074ec7a4833e4db104423827001c28c6dd2074.tar.xz
nixlib-ff074ec7a4833e4db104423827001c28c6dd2074.tar.zst
nixlib-ff074ec7a4833e4db104423827001c28c6dd2074.zip
apache-httpd: add phpPackage option
Diffstat (limited to 'nixos')
-rw-r--r--nixos/modules/services/web-servers/apache-httpd/default.nix15
1 files changed, 13 insertions, 2 deletions
diff --git a/nixos/modules/services/web-servers/apache-httpd/default.nix b/nixos/modules/services/web-servers/apache-httpd/default.nix
index 9844e3c435d1..397857ea0858 100644
--- a/nixos/modules/services/web-servers/apache-httpd/default.nix
+++ b/nixos/modules/services/web-servers/apache-httpd/default.nix
@@ -12,7 +12,9 @@ let
 
   httpdConf = mainCfg.configFile;
 
-  php = pkgs.php.override { apacheHttpd = httpd.dev; /* otherwise it only gets .out */ };
+  php = mainCfg.phpPackage.override { apacheHttpd = httpd.dev; /* otherwise it only gets .out */ };
+
+  phpMajorVersion = head (splitString "." php.version);
 
   getPort = cfg: if cfg.port != 0 then cfg.port else if cfg.enableSSL then 443 else 80;
 
@@ -338,7 +340,7 @@ let
           concatMap (svc: svc.extraModulesPre) allSubservices
           ++ map (name: {inherit name; path = "${httpd}/modules/mod_${name}.so";}) apacheModules
           ++ optional mainCfg.enableMellon { name = "auth_mellon"; path = "${pkgs.apacheHttpdPackages.mod_auth_mellon}/modules/mod_auth_mellon.so"; }
-          ++ optional enablePHP { name = "php5"; path = "${php}/modules/libphp5.so"; }
+          ++ optional enablePHP { name = "php${phpMajorVersion}"; path = "${php}/modules/libphp${phpMajorVersion}.so"; }
           ++ concatMap (svc: svc.extraModules) allSubservices
           ++ extraForeignModules;
       in concatMapStrings load allModules
@@ -554,6 +556,15 @@ in
         description = "Whether to enable the PHP module.";
       };
 
+      phpPackage = mkOption {
+        type = types.package;
+        default = pkgs.php;
+        defaultText = "pkgs.php";
+        description = ''
+          Overridable attribute of the PHP package to use.
+        '';
+      };
+
       phpOptions = mkOption {
         type = types.lines;
         default = "";