diff --git a/nixos/doc/manual/release-notes/rl-2009.xml b/nixos/doc/manual/release-notes/rl-2009.xml index e4e44c8405f..8231bf9842f 100644 --- a/nixos/doc/manual/release-notes/rl-2009.xml +++ b/nixos/doc/manual/release-notes/rl-2009.xml @@ -154,55 +154,50 @@ environment.systemPackages = [ ) ]; - The default php attribute hasn't lost any extensions - - the opcache extension was added there. + The default php attribute hasn't lost any + extensions. The opcache extension has been + added. All upstream PHP extensions are available under ]]>. - The updated php attribute is now easily customizable to your liking - by using extensions instead of writing config files or changing configure flags. - - Therefore we have removed the following configure flags: + All PHP config flags have been removed for + the following reasons: - PHP <literal>config</literal> flags that we don't read anymore: - config.php.argon2 - config.php.bcmath - config.php.bz2 - config.php.calendar - config.php.curl - config.php.exif - config.php.ftp - config.php.gd - config.php.gettext - config.php.gmp - config.php.imap - config.php.intl - config.php.ldap - config.php.libxml2 - config.php.libzip - config.php.mbstring - config.php.mysqli - config.php.mysqlnd - config.php.openssl - config.php.pcntl - config.php.pdo_mysql - config.php.pdo_odbc - config.php.pdo_pgsql - config.php.phpdbg - config.php.postgresql - config.php.readline - config.php.soap - config.php.sockets - config.php.sodium - config.php.sqlite - config.php.tidy - config.php.xmlrpc - config.php.xsl - config.php.zip - config.php.zlib + + + The updated php attribute is now easily + customizable to your liking by using + php.withExtensions or + php.buildEnv instead of writing config files + or changing configure flags. + + + + + The remaining configuration flags can now be set directly on + the php attribute. For example, instead of + + +php.override { + config.php.embed = true; + config.php.apxs2 = false; +} + + + you should now write + + +php.override { + embedSupport = true; + apxs2Support = false; +} + + + + diff --git a/pkgs/development/interpreters/php/default.nix b/pkgs/development/interpreters/php/default.nix index 2313f9fbcc4..33071b06d95 100644 --- a/pkgs/development/interpreters/php/default.nix +++ b/pkgs/development/interpreters/php/default.nix @@ -17,23 +17,22 @@ let , defaultPhpExtensions # Sapi flags - , cgiSupport ? config.php.cgi or true - , cliSupport ? config.php.cli or true - , fpmSupport ? config.php.fpm or true - , pearSupport ? config.php.pear or true - , pharSupport ? config.php.phar or true - , phpdbgSupport ? config.php.phpdbg or true - + , cgiSupport ? true + , cliSupport ? true + , fpmSupport ? true + , pearSupport ? true + , pharSupport ? true + , phpdbgSupport ? true # Misc flags - , apxs2Support ? config.php.apxs2 or (!stdenv.isDarwin) - , argon2Support ? config.php.argon2 or true - , cgotoSupport ? config.php.cgoto or false - , embedSupport ? config.php.embed or false - , ipv6Support ? config.php.ipv6 or true - , systemdSupport ? config.php.systemd or stdenv.isLinux - , valgrindSupport ? config.php.valgrind or true - , ztsSupport ? (config.php.zts or false) || (apxs2Support) + , apxs2Support ? !stdenv.isDarwin + , argon2Support ? true + , cgotoSupport ? false + , embedSupport ? false + , ipv6Support ? true + , systemdSupport ? stdenv.isLinux + , valgrindSupport ? true + , ztsSupport ? apxs2Support }@args: let self = generic args; diff --git a/pkgs/servers/http/unit/default.nix b/pkgs/servers/http/unit/default.nix index 1e3ddb4ad8f..f8992bf166b 100644 --- a/pkgs/servers/http/unit/default.nix +++ b/pkgs/servers/http/unit/default.nix @@ -18,12 +18,12 @@ with stdenv.lib; let phpConfig = { - config.php.embed = true; - config.php.apxs2 = false; - config.php.systemd = false; - config.php.phpdbg = false; - config.php.cgi = false; - config.php.fpm = false; + embedSupport = true; + apxs2Support = false; + systemdSupport = false; + phpdbgSupport = false; + cgiSupport = false; + fpmSupport = false; }; php72-unit = php72base.override phpConfig; diff --git a/pkgs/servers/uwsgi/default.nix b/pkgs/servers/uwsgi/default.nix index 29b807f1792..0f0d2c23e4c 100644 --- a/pkgs/servers/uwsgi/default.nix +++ b/pkgs/servers/uwsgi/default.nix @@ -8,8 +8,8 @@ }: let php-embed = php.override { - config.php.embed = true; - config.php.apxs2 = false; + embedSupport = true; + apxs2Support = false; }; pythonPlugin = pkg : lib.nameValuePair "python${if pkg.isPy2 then "2" else "3"}" { diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 9ad282149aa..678cb0d983a 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -332,48 +332,50 @@ mapAliases ({ pg_tmp = ephemeralpg; # added 2018-01-16 php-embed = throw '' - php*-embed has been dropped, you can build the same package by using - something similar with this following snippet: - (php74.override { config.php.embed = true; config.php.apxs2 = false; }) + php*-embed has been dropped, you can build something similar + with the following snippet: + php74.override { embedSupport = true; apxs2Support = false; } ''; # added 2020-04-01 php72-embed = php-embed; # added 2020-04-01 php73-embed = php-embed; # added 2020-04-01 php74-embed = php-embed; # added 2020-04-01 phpPackages-embed = throw '' - php*Packages-embed has been dropped, you can build the same package by using - something similar with this following snippet: - (php74.override { config.php.embed = true; config.php.apxs2 = false; }).packages + php*Packages-embed has been dropped, you can build something + similar with the following snippet: + (php74.override { embedSupport = true; apxs2Support = false; }).packages ''; # added 2020-04-01 php74Packages-embed = phpPackages-embed; php73Packages-embed = phpPackages-embed; php72Packages-embed = phpPackages-embed; php-unit = throw '' - php*-unit has been dropped, you can build the same package by using - something similar with this following snippet: - (php74.override { - config.php.embed = true; - config.php.apxs2 = false; - config.php.systemd = false; - config.php.phpdbg = false; - config.php.cgi = false; - config.php.fpm = false; }) + php*-unit has been dropped, you can build something similar with + the following snippet: + php74.override { + embedSupport = true; + apxs2Support = false; + systemdSupport = false; + phpdbgSupport = false; + cgiSupport = false; + fpmSupport = false; + } ''; # added 2020-04-01 php72-unit = php-unit; # added 2020-04-01 php73-unit = php-unit; # added 2020-04-01 php74-unit = php-unit; # added 2020-04-01 phpPackages-unit = throw '' - php*Packages-unit has been dropped, you can build the same package by using - something similar with this following snippet: + php*Packages-unit has been dropped, you can build something + similar with this following snippet: (php74.override { - config.php.embed = true; - config.php.apxs2 = false; - config.php.systemd = false; - config.php.phpdbg = false; - config.php.cgi = false; - config.php.fpm = false; }).packages + embedSupport = true; + apxs2Support = false; + systemdSupport = false; + phpdbgSupport = false; + cgiSupport = false; + fpmSupport = false; + }).packages ''; # added 2020-04-01 php74Packages-unit = phpPackages-unit; php73Packages-unit = phpPackages-unit;