From c2cee3f76e7aa6fcac9e6e8af24201b7edbb00be Mon Sep 17 00:00:00 2001 From: Elis Hirwing Date: Tue, 24 May 2022 21:05:50 +0200 Subject: [PATCH 01/19] php.extensions.apcu_bc: Deinit due to broken in all attributes after php74 deprecation --- .../php-packages/apcu_bc/default.nix | 24 ------------------- pkgs/top-level/php-packages.nix | 2 -- 2 files changed, 26 deletions(-) delete mode 100644 pkgs/development/php-packages/apcu_bc/default.nix diff --git a/pkgs/development/php-packages/apcu_bc/default.nix b/pkgs/development/php-packages/apcu_bc/default.nix deleted file mode 100644 index e487a075dbde..000000000000 --- a/pkgs/development/php-packages/apcu_bc/default.nix +++ /dev/null @@ -1,24 +0,0 @@ -{ buildPecl, lib, pcre2, php }: - -buildPecl { - pname = "apcu_bc"; - - version = "1.0.5"; - sha256 = "0ma00syhk2ps9k9p02jz7rii6x3i2p986il23703zz5npd6y9n20"; - - peclDeps = [ php.extensions.apcu ]; - - buildInputs = [ pcre2 ]; - - postInstall = '' - mv $out/lib/php/extensions/apc.so $out/lib/php/extensions/apcu_bc.so - ''; - - meta = with lib; { - description = "APCu Backwards Compatibility Module"; - license = licenses.php301; - homepage = "https://pecl.php.net/package/apcu_bc"; - maintainers = teams.php.members; - broken = versionAtLeast php.version "8"; - }; -} diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix index 3637a7a4bcf1..e28817ac17cd 100644 --- a/pkgs/top-level/php-packages.nix +++ b/pkgs/top-level/php-packages.nix @@ -196,8 +196,6 @@ lib.makeScope pkgs.newScope (self: with self; { apcu = callPackage ../development/php-packages/apcu { }; - apcu_bc = callPackage ../development/php-packages/apcu_bc { }; - ast = callPackage ../development/php-packages/ast { }; blackfire = pkgs.callPackage ../development/tools/misc/blackfire/php-probe.nix { inherit php; }; From 00fa9e195eb2d747447f89b8bde3a24a54e647b7 Mon Sep 17 00:00:00 2001 From: Elis Hirwing Date: Tue, 24 May 2022 21:06:42 +0200 Subject: [PATCH 02/19] php.extensions.php_excel: Deinit due to broken in all attributes after php74 deprecation --- .../php-packages/php_excel/default.nix | 30 ------------------- pkgs/top-level/php-packages.nix | 2 -- 2 files changed, 32 deletions(-) delete mode 100644 pkgs/development/php-packages/php_excel/default.nix diff --git a/pkgs/development/php-packages/php_excel/default.nix b/pkgs/development/php-packages/php_excel/default.nix deleted file mode 100644 index 0930926a06e0..000000000000 --- a/pkgs/development/php-packages/php_excel/default.nix +++ /dev/null @@ -1,30 +0,0 @@ -{ buildPecl, fetchurl, lib, libxl, php }: -let - pname = "php_excel"; - phpVersion = "php7"; - version = "1.0.2"; -in -buildPecl { - inherit pname version; - - src = fetchurl { - url = "https://github.com/iliaal/php_excel/releases/download/Excel-1.0.2-PHP7/excel-${version}-${phpVersion}.tgz"; - sha256 = "0dpvih9gpiyh1ml22zi7hi6kslkilzby00z1p8x248idylldzs2n"; - }; - - buildInputs = [ libxl ]; - - configureFlags = [ - "--with-excel" - "--with-libxl-incdir=${libxl}/include_c" - "--with-libxl-libdir=${libxl}/lib" - ]; - - meta = with lib; { - description = "PHP Extension interface to the Excel writing/reading library"; - license = licenses.php301; - homepage = "https://github.com/iliaal/php_excel"; - maintainers = lib.teams.php.members; - broken = lib.versionAtLeast php.version "8.0"; - }; -} diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix index e28817ac17cd..91e6da336ba8 100644 --- a/pkgs/top-level/php-packages.nix +++ b/pkgs/top-level/php-packages.nix @@ -258,8 +258,6 @@ lib.makeScope pkgs.newScope (self: with self; { pdo_sqlsrv = callPackage ../development/php-packages/pdo_sqlsrv { }; - php_excel = callPackage ../development/php-packages/php_excel { }; - pinba = callPackage ../development/php-packages/pinba { }; protobuf = callPackage ../development/php-packages/protobuf { }; From d6ec38508d1f0c1b6318b3788c45f86aac75e860 Mon Sep 17 00:00:00 2001 From: Elis Hirwing Date: Wed, 25 May 2022 18:27:05 +0200 Subject: [PATCH 03/19] unit: Drop PHP 7.4 support --- pkgs/servers/http/unit/default.nix | 5 ----- 1 file changed, 5 deletions(-) diff --git a/pkgs/servers/http/unit/default.nix b/pkgs/servers/http/unit/default.nix index 4db762ec40d4..43617f405760 100644 --- a/pkgs/servers/http/unit/default.nix +++ b/pkgs/servers/http/unit/default.nix @@ -1,7 +1,6 @@ { lib, stdenv, fetchFromGitHub, nixosTests, which , pcre2 , withPython3 ? true, python3, ncurses -, withPHP74 ? false, php74 , withPHP80 ? true, php80 , withPerl532 ? false, perl532 , withPerl534 ? true, perl534 @@ -24,7 +23,6 @@ let fpmSupport = false; }; - php74-unit = php74.override phpConfig; php80-unit = php80.override phpConfig; in stdenv.mkDerivation rec { @@ -42,7 +40,6 @@ in stdenv.mkDerivation rec { buildInputs = [ pcre2.dev ] ++ optionals withPython3 [ python3 ncurses ] - ++ optional withPHP74 php74-unit ++ optional withPHP80 php80-unit ++ optional withPerl532 perl532 ++ optional withPerl534 perl534 @@ -60,12 +57,10 @@ in stdenv.mkDerivation rec { ++ optional withDebug "--debug"; # Optionally add the PHP derivations used so they can be addressed in the configs - usedPhp74 = optionals withPHP74 php74-unit; usedPhp80 = optionals withPHP80 php80-unit; postConfigure = '' ${optionalString withPython3 "./configure python --module=python3 --config=python3-config --lib-path=${python3}/lib"} - ${optionalString withPHP74 "./configure php --module=php74 --config=${php74-unit.unwrapped.dev}/bin/php-config --lib-path=${php74-unit}/lib"} ${optionalString withPHP80 "./configure php --module=php80 --config=${php80-unit.unwrapped.dev}/bin/php-config --lib-path=${php80-unit}/lib"} ${optionalString withPerl532 "./configure perl --module=perl532 --perl=${perl532}/bin/perl"} ${optionalString withPerl534 "./configure perl --module=perl534 --perl=${perl534}/bin/perl"} From 4580a63bc4385e48f27a9e85923b20a4c8ec5a1f Mon Sep 17 00:00:00 2001 From: Elis Hirwing Date: Wed, 25 May 2022 18:31:45 +0200 Subject: [PATCH 04/19] nixos/grocy: Upgrade to PHP 8.0 --- nixos/modules/services/web-apps/grocy.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/nixos/modules/services/web-apps/grocy.nix b/nixos/modules/services/web-apps/grocy.nix index be2de638dd96..a77fddf1f2f4 100644 --- a/nixos/modules/services/web-apps/grocy.nix +++ b/nixos/modules/services/web-apps/grocy.nix @@ -115,9 +115,9 @@ in { user = "grocy"; group = "nginx"; - # PHP 7.4 is the only version which is supported/tested by upstream: - # https://github.com/grocy/grocy/blob/v3.0.0/README.md#how-to-install - phpPackage = pkgs.php74; + # PHP 8.0 is the only version which is supported/tested by upstream: + # https://github.com/grocy/grocy/blob/v3.3.0/README.md#how-to-install + phpPackage = pkgs.php80; inherit (cfg.phpfpm) settings; From c53c34ee72fa0f1e216c0251572d9cbf2511378b Mon Sep 17 00:00:00 2001 From: Elis Hirwing Date: Wed, 25 May 2022 18:34:42 +0200 Subject: [PATCH 05/19] nixos/postfixadmin: Upgrade to PHP 8.1 --- nixos/modules/services/mail/postfixadmin.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/services/mail/postfixadmin.nix b/nixos/modules/services/mail/postfixadmin.nix index a0846ad52902..8adae3c1a013 100644 --- a/nixos/modules/services/mail/postfixadmin.nix +++ b/nixos/modules/services/mail/postfixadmin.nix @@ -177,7 +177,7 @@ in services.phpfpm.pools.postfixadmin = { user = user; - phpPackage = pkgs.php74; + phpPackage = pkgs.php81; phpOptions = '' error_log = 'stderr' log_errors = on From f822b894c5ac8a7acc049c7fa41c047ba4a530f7 Mon Sep 17 00:00:00 2001 From: Elis Hirwing Date: Wed, 25 May 2022 18:36:38 +0200 Subject: [PATCH 06/19] nixos/dokuwiki: Upgrade to PHP 8.1 They seem to run tests against 8.1 since this commit: https://github.com/splitbrain/dokuwiki/commit/7aee97ee813f0e08e339a6f29e554d52bc4ef9d3 --- nixos/modules/services/web-apps/dokuwiki.nix | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/nixos/modules/services/web-apps/dokuwiki.nix b/nixos/modules/services/web-apps/dokuwiki.nix index 1f8ca742db95..d8fc978774e4 100644 --- a/nixos/modules/services/web-apps/dokuwiki.nix +++ b/nixos/modules/services/web-apps/dokuwiki.nix @@ -293,9 +293,7 @@ in inherit user; group = webserver.group; - # Not yet compatible with php 8 https://www.dokuwiki.org/requirements - # https://github.com/splitbrain/dokuwiki/issues/3545 - phpPackage = pkgs.php74; + phpPackage = pkgs.php81; phpEnv = { DOKUWIKI_LOCAL_CONFIG = "${dokuwikiLocalConfig hostName cfg}"; DOKUWIKI_PLUGINS_LOCAL_CONFIG = "${dokuwikiPluginsLocalConfig hostName cfg}"; From a69ba21a2973b17df7986a7b1bd5a376591edc35 Mon Sep 17 00:00:00 2001 From: Elis Hirwing Date: Wed, 25 May 2022 18:46:58 +0200 Subject: [PATCH 07/19] nixos/invoiceplan: Upgrade to PHP 8.1 They seem to be working to get PHP 8.1 support: https://github.com/InvoicePlane/InvoicePlane/issues/798 --- nixos/modules/services/web-apps/invoiceplane.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/nixos/modules/services/web-apps/invoiceplane.nix b/nixos/modules/services/web-apps/invoiceplane.nix index 095eec36dec3..527e248f65b0 100644 --- a/nixos/modules/services/web-apps/invoiceplane.nix +++ b/nixos/modules/services/web-apps/invoiceplane.nix @@ -236,7 +236,7 @@ in }; services.phpfpm = { - phpPackage = pkgs.php74; + phpPackage = pkgs.php81; pools = mapAttrs' (hostName: cfg: ( nameValuePair "invoiceplane-${hostName}" { inherit user; @@ -302,4 +302,3 @@ in ]); } - From d0862b0ed9e20bbfad4af5c4d323ce4732e8c113 Mon Sep 17 00:00:00 2001 From: Elis Hirwing Date: Wed, 25 May 2022 18:47:56 +0200 Subject: [PATCH 08/19] nixos/nextcloud: Upgrade to PHP 8.0 --- nixos/modules/services/web-apps/nextcloud.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/modules/services/web-apps/nextcloud.nix b/nixos/modules/services/web-apps/nextcloud.nix index dd2f2479f4e9..e0aaafd46333 100644 --- a/nixos/modules/services/web-apps/nextcloud.nix +++ b/nixos/modules/services/web-apps/nextcloud.nix @@ -157,7 +157,7 @@ in { }; phpPackage = mkOption { type = types.package; - relatedPackages = [ "php74" "php80" "php81" ]; + relatedPackages = [ "php80" "php81" ]; defaultText = "pkgs.php"; description = '' PHP package to use for Nextcloud. @@ -632,7 +632,7 @@ in { services.nextcloud.datadir = mkOptionDefault config.services.nextcloud.home; services.nextcloud.phpPackage = - if versionOlder cfg.package.version "21" then pkgs.php74 + if versionOlder cfg.package.version "24" then pkgs.php80 # FIXME: Use PHP 8.1 with Nextcloud 24 and higher, once issues like this one are fixed: # # https://github.com/nextcloud/twofactor_totp/issues/1192 From d7f000b98be30912436356834aa2995e0d6846d2 Mon Sep 17 00:00:00 2001 From: Elis Hirwing Date: Wed, 25 May 2022 18:49:11 +0200 Subject: [PATCH 09/19] nixos/moodle: Upgrade to PHP 8.1 --- nixos/modules/services/web-apps/moodle.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/services/web-apps/moodle.nix b/nixos/modules/services/web-apps/moodle.nix index 19f3e754691e..55e5ac9281e7 100644 --- a/nixos/modules/services/web-apps/moodle.nix +++ b/nixos/modules/services/web-apps/moodle.nix @@ -56,7 +56,7 @@ let mysqlLocal = cfg.database.createLocally && cfg.database.type == "mysql"; pgsqlLocal = cfg.database.createLocally && cfg.database.type == "pgsql"; - phpExt = pkgs.php74.withExtensions + phpExt = pkgs.php81.withExtensions ({ enabled, all }: with all; [ iconv mbstring curl openssl tokenizer xmlrpc soap ctype zip gd simplexml dom intl json sqlite3 pgsql pdo_sqlite pdo_pgsql pdo_odbc pdo_mysql pdo mysqli session zlib xmlreader fileinfo filter opcache ]); in { From da19e4ae97416618259bf7e5a3d5e0b96f01db1c Mon Sep 17 00:00:00 2001 From: Elis Hirwing Date: Wed, 25 May 2022 18:51:06 +0200 Subject: [PATCH 10/19] nixos/snipe-it: Upgrade to PHP 8.1 They state that they support PHP 8.1: https://snipe-it.readme.io/docs/requirements --- nixos/modules/services/web-apps/snipe-it.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/services/web-apps/snipe-it.nix b/nixos/modules/services/web-apps/snipe-it.nix index f14171d02f35..842e0715c025 100644 --- a/nixos/modules/services/web-apps/snipe-it.nix +++ b/nixos/modules/services/web-apps/snipe-it.nix @@ -344,7 +344,7 @@ in { services.phpfpm.pools.snipe-it = { inherit user group; - phpPackage = pkgs.php74; + phpPackage = pkgs.php81; phpOptions = '' post_max_size = ${cfg.maxUploadSize} upload_max_filesize = ${cfg.maxUploadSize} From 8c28c83800c50f82c2d11bd30a452cef4af507fe Mon Sep 17 00:00:00 2001 From: Elis Hirwing Date: Wed, 25 May 2022 18:53:56 +0200 Subject: [PATCH 11/19] arcanist: Upgrade to PHP 8.1 --- pkgs/top-level/all-packages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 73693bab099b..8dbc8ebf60ef 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1782,7 +1782,7 @@ with pkgs; }) arangodb_3_3 arangodb_3_4 arangodb_3_5; arangodb = arangodb_3_4; - arcanist = callPackage ../development/tools/misc/arcanist { php = php74; }; + arcanist = callPackage ../development/tools/misc/arcanist { php = php81; }; arduino = arduino-core.override { withGui = true; }; From fa4acb76598f665895c6a32d2f61645b44c7d893 Mon Sep 17 00:00:00 2001 From: Elis Hirwing Date: Wed, 25 May 2022 18:54:21 +0200 Subject: [PATCH 12/19] engelsystem: Upgrade to PHP 8.1 --- pkgs/servers/web-apps/engelsystem/default.nix | 2 +- pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/web-apps/engelsystem/default.nix b/pkgs/servers/web-apps/engelsystem/default.nix index d154b1cee11c..eee76b1bf594 100644 --- a/pkgs/servers/web-apps/engelsystem/default.nix +++ b/pkgs/servers/web-apps/engelsystem/default.nix @@ -2,7 +2,7 @@ let phpExt = php.withExtensions - ({ enabled, all }: with all; [ json filter mysqlnd mysqli pdo pdo_mysql ]); + ({ enabled, all }: with all; [ filter mysqlnd mysqli pdo pdo_mysql ]); in stdenv.mkDerivation rec { pname = "engelsystem"; version = "3.1.0"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 8dbc8ebf60ef..ed09a26b7191 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -21713,7 +21713,7 @@ with pkgs; dspam = callPackage ../servers/mail/dspam { }; - engelsystem = callPackage ../servers/web-apps/engelsystem { php = php74; }; + engelsystem = callPackage ../servers/web-apps/engelsystem { php = php81; }; envoy = callPackage ../servers/http/envoy { jdk = openjdk11_headless; From 506bcd905ee582b78629e91d463612acb61698e7 Mon Sep 17 00:00:00 2001 From: Elis Hirwing Date: Wed, 25 May 2022 18:54:40 +0200 Subject: [PATCH 13/19] lsp-plugins: Upgrade to PHP 8.1 --- pkgs/top-level/all-packages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ed09a26b7191..8ba232b05b92 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -27891,7 +27891,7 @@ with pkgs; lrzsz = callPackage ../tools/misc/lrzsz { }; - lsp-plugins = callPackage ../applications/audio/lsp-plugins { php = php74; }; + lsp-plugins = callPackage ../applications/audio/lsp-plugins { php = php81; }; ltex-ls = callPackage ../tools/text/ltex-ls { }; From 42b3cedbb5b880e035258b86b2565a9341d4413b Mon Sep 17 00:00:00 2001 From: Elis Hirwing Date: Wed, 25 May 2022 18:56:23 +0200 Subject: [PATCH 14/19] php.extensions.oci8: Drop 2.2.0 for older PHP packages --- pkgs/development/php-packages/oci8/default.nix | 6 +++++- pkgs/top-level/php-packages.nix | 8 +------- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/pkgs/development/php-packages/oci8/default.nix b/pkgs/development/php-packages/oci8/default.nix index eb65b5a27cda..2657a67d38ba 100644 --- a/pkgs/development/php-packages/oci8/default.nix +++ b/pkgs/development/php-packages/oci8/default.nix @@ -1,4 +1,8 @@ -{ buildPecl, lib, version, sha256, oracle-instantclient }: +{ buildPecl, lib, oracle-instantclient }: +let + version = "3.0.1"; + sha256 = "108ds92620dih5768z19hi0jxfa7wfg5hdvyyvpapir87c0ap914"; +in buildPecl { pname = "oci8"; diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix index 91e6da336ba8..a1079243f246 100644 --- a/pkgs/top-level/php-packages.nix +++ b/pkgs/top-level/php-packages.nix @@ -224,13 +224,7 @@ lib.makeScope pkgs.newScope (self: with self; { mongodb = callPackage ../development/php-packages/mongodb { }; - oci8 = callPackage ../development/php-packages/oci8 ({ - version = "2.2.0"; - sha256 = "0jhivxj1nkkza4h23z33y7xhffii60d7dr51h1czjk10qywl7pyd"; - } // lib.optionalAttrs (lib.versionAtLeast php.version "8.0") { - version = "3.0.1"; - sha256 = "108ds92620dih5768z19hi0jxfa7wfg5hdvyyvpapir87c0ap914"; - }); + oci8 = callPackage ../development/php-packages/oci8 { }; openswoole = callPackage ../development/php-packages/openswoole { }; From 5d409065a48faaf0e2c9d1c43b8ac2b3ebfbe014 Mon Sep 17 00:00:00 2001 From: Elis Hirwing Date: Wed, 25 May 2022 18:57:48 +0200 Subject: [PATCH 15/19] nixos/uwsgi: Drop optionalstring based on PHP version --- pkgs/servers/uwsgi/default.nix | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/pkgs/servers/uwsgi/default.nix b/pkgs/servers/uwsgi/default.nix index e8bfed1ab89b..d24c482a8895 100644 --- a/pkgs/servers/uwsgi/default.nix +++ b/pkgs/servers/uwsgi/default.nix @@ -97,9 +97,7 @@ stdenv.mkDerivation rec { substituteInPlace "$f" \ --replace pkg-config "$PKG_CONFIG" done - ${lib.optionalString (lib.versionAtLeast php.version "8") '' - sed -e "s/ + php_version//" -i plugins/php/uwsgiplugin.py - ''} + sed -e "s/ + php_version//" -i plugins/php/uwsgiplugin.py ''; configurePhase = '' From 1cd3f3f1fe531c897d9508ef1cc6eb337d2a7314 Mon Sep 17 00:00:00 2001 From: Elis Hirwing Date: Wed, 25 May 2022 19:03:59 +0200 Subject: [PATCH 16/19] php: Drop declarations of internalDeps for json --- pkgs/development/php-packages/couchbase/default.nix | 1 - pkgs/development/php-packages/ds/default.nix | 2 -- pkgs/development/php-packages/redis/default.nix | 2 -- 3 files changed, 5 deletions(-) diff --git a/pkgs/development/php-packages/couchbase/default.nix b/pkgs/development/php-packages/couchbase/default.nix index 84f307204319..d87985ab1217 100644 --- a/pkgs/development/php-packages/couchbase/default.nix +++ b/pkgs/development/php-packages/couchbase/default.nix @@ -16,7 +16,6 @@ buildPecl { configureFlags = [ "--with-couchbase" ]; buildInputs = [ libcouchbase zlib ]; - internalDeps = lib.optionals (lib.versionOlder php.version "8.0") [ php.extensions.json ]; patches = [ (substituteAll { diff --git a/pkgs/development/php-packages/ds/default.nix b/pkgs/development/php-packages/ds/default.nix index c6417fd5513a..2552a5bee3b6 100644 --- a/pkgs/development/php-packages/ds/default.nix +++ b/pkgs/development/php-packages/ds/default.nix @@ -8,8 +8,6 @@ buildPecl { buildInputs = [ pcre2 ]; - internalDeps = lib.optionals (lib.versionOlder php.version "8.0") [ php.extensions.json ]; - meta = with lib; { description = "An extension providing efficient data structures for PHP"; license = licenses.mit; diff --git a/pkgs/development/php-packages/redis/default.nix b/pkgs/development/php-packages/redis/default.nix index e4b16dd991a7..b54d85b73ecb 100644 --- a/pkgs/development/php-packages/redis/default.nix +++ b/pkgs/development/php-packages/redis/default.nix @@ -8,8 +8,6 @@ buildPecl { internalDeps = with php.extensions; [ session - ] ++ lib.optionals (lib.versionOlder php.version "8.0") [ - json ]; meta = with lib; { From 125ad85c09bbf4d612f6a01eda3ed9c9b6f7faed Mon Sep 17 00:00:00 2001 From: Elis Hirwing Date: Wed, 25 May 2022 19:04:55 +0200 Subject: [PATCH 17/19] php: Drop broken declarations for old versions --- pkgs/development/php-packages/grumphp/default.nix | 1 - pkgs/development/php-packages/phpmd/default.nix | 1 - 2 files changed, 2 deletions(-) diff --git a/pkgs/development/php-packages/grumphp/default.nix b/pkgs/development/php-packages/grumphp/default.nix index e9b88d8155e2..eb74c5ad0419 100644 --- a/pkgs/development/php-packages/grumphp/default.nix +++ b/pkgs/development/php-packages/grumphp/default.nix @@ -22,7 +22,6 @@ mkDerivation rec { ''; meta = with lib; { - broken = versionOlder php.version "8.0"; description = "A PHP code-quality tool"; homepage = "https://github.com/phpro/grumphp"; license = licenses.mit; diff --git a/pkgs/development/php-packages/phpmd/default.nix b/pkgs/development/php-packages/phpmd/default.nix index 228fd25ea553..575d4ec7b460 100644 --- a/pkgs/development/php-packages/phpmd/default.nix +++ b/pkgs/development/php-packages/phpmd/default.nix @@ -29,6 +29,5 @@ mkDerivation { license = licenses.bsd3; homepage = "https://phpmd.org/"; maintainers = teams.php.members; - broken = versionOlder php.version "7.4"; }; } From 9ec41c8875c00d230f2461f3dce1d16e24070015 Mon Sep 17 00:00:00 2001 From: Elis Hirwing Date: Wed, 25 May 2022 19:05:55 +0200 Subject: [PATCH 18/19] php: Drop special cases for versions below 8.0 --- pkgs/top-level/php-packages.nix | 31 ++++--------------------------- 1 file changed, 4 insertions(+), 27 deletions(-) diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix index a1079243f246..41c507a1aed6 100644 --- a/pkgs/top-level/php-packages.nix +++ b/pkgs/top-level/php-packages.nix @@ -335,13 +335,6 @@ lib.makeScope pkgs.newScope (self: with self; { configureFlags = [ "--with-iconv${lib.optionalString stdenv.isDarwin "=${libiconv}"}" ]; - patches = lib.optionals (lib.versionOlder php.version "8.0") [ - # Header path defaults to FHS location, preventing the configure script from detecting errno support. - (fetchpatch { - url = "https://github.com/fossar/nix-phps/raw/263861a8c9bdafd7abe44db6db4ef0179643680c/pkgs/iconv-header-path.patch"; - sha256 = "7GHnEUu+hcsQ4h3itDwk6p46ZKfib9JZ2XpWlXrdn6E="; - }) - ]; doCheck = false; } { @@ -355,7 +348,6 @@ lib.makeScope pkgs.newScope (self: with self; { name = "intl"; buildInputs = [ icu64 ]; } - { name = "json"; enable = lib.versionOlder php.version "8.0"; } { name = "ldap"; buildInputs = [ openldap cyrus_sasl ]; @@ -371,9 +363,7 @@ lib.makeScope pkgs.newScope (self: with self; { } { name = "mbstring"; - buildInputs = [ oniguruma ] ++ lib.optionals (lib.versionAtLeast php.version "8.0") [ - pcre2 - ]; + buildInputs = [ oniguruma pcre2 ]; doCheck = false; } { @@ -406,11 +396,9 @@ lib.makeScope pkgs.newScope (self: with self; { '') ]; } - # oci8 (7.4, 7.3, 7.2) - # odbc (7.4, 7.3, 7.2) { name = "opcache"; - buildInputs = [ pcre2 ] ++ lib.optionals (!stdenv.isDarwin && lib.versionAtLeast php.version "8.0") [ + buildInputs = [ pcre2 ] ++ lib.optionals (!stdenv.isDarwin) [ valgrind.dev ]; zendExtension = true; @@ -433,14 +421,12 @@ lib.makeScope pkgs.newScope (self: with self; { enable = (!stdenv.isDarwin); doCheck = false; } - # pdo_firebird (7.4, 7.3, 7.2) { name = "pdo_mysql"; internalDeps = with php.extensions; [ pdo mysqlnd ]; configureFlags = [ "--with-pdo-mysql=mysqlnd" "PHP_MYSQL_SOCK=/run/mysqld/mysqld.sock" ]; doCheck = false; } - # pdo_oci (7.4, 7.3, 7.2) { name = "pdo_odbc"; internalDeps = [ php.extensions.pdo ]; @@ -490,7 +476,7 @@ lib.makeScope pkgs.newScope (self: with self; { ''; doCheck = false; } - { name = "session"; doCheck = lib.versionOlder php.version "8.0"; } + { name = "session"; doCheck = false; } { name = "shmop"; } { name = "simplexml"; @@ -548,15 +534,6 @@ lib.makeScope pkgs.newScope (self: with self; { "--enable-xmlreader" ]; } - { - name = "xmlrpc"; - buildInputs = [ libxml2 libiconv ]; - # xmlrpc was unbundled in 8.0 https://php.watch/versions/8.0/xmlrpc - enable = lib.versionOlder php.version "8.0"; - configureFlags = [ - "--with-xmlrpc" - ]; - } { name = "xmlwriter"; buildInputs = [ libxml2 ]; @@ -567,7 +544,7 @@ lib.makeScope pkgs.newScope (self: with self; { { name = "xsl"; buildInputs = [ libxslt libxml2 ]; - doCheck = lib.versionOlder php.version "8.0"; + doCheck = false; configureFlags = [ "--with-xsl=${libxslt.dev}" ]; } { name = "zend_test"; } From e91811bbe107b7dad31075254344a3ec57cfa4de Mon Sep 17 00:00:00 2001 From: Elis Hirwing Date: Wed, 25 May 2022 19:06:58 +0200 Subject: [PATCH 19/19] php74: Drop PHP 7.4 and add aliases throwing an error --- doc/languages-frameworks/php.section.md | 4 +- .../from_md/release-notes/rl-2211.section.xml | 6 +++ .../manual/release-notes/rl-2211.section.md | 2 + nixos/tests/all-tests.nix | 1 - pkgs/development/interpreters/php/7.4.nix | 52 ------------------- pkgs/top-level/aliases.nix | 4 ++ pkgs/top-level/all-packages.nix | 7 --- 7 files changed, 14 insertions(+), 62 deletions(-) delete mode 100644 pkgs/development/interpreters/php/7.4.nix diff --git a/doc/languages-frameworks/php.section.md b/doc/languages-frameworks/php.section.md index 5977363323f1..8600e49d4570 100644 --- a/doc/languages-frameworks/php.section.md +++ b/doc/languages-frameworks/php.section.md @@ -9,7 +9,7 @@ wide variety of extensions and libraries available. The different versions of PHP that nixpkgs provides are located under attributes named based on major and minor version number; e.g., -`php74` is PHP 7.4. +`php81` is PHP 8.1. Only versions of PHP that are supported by upstream for the entirety of a given NixOS release will be included in that release of @@ -23,7 +23,7 @@ NixOS - not necessarily the latest major release from upstream. All available PHP attributes are wrappers around their respective binary PHP package and provide commonly used extensions this way. The real PHP 7.4 package, i.e. the unwrapped one, is available as -`php74.unwrapped`; see the next section for more details. +`php81.unwrapped`; see the next section for more details. Interactive tools built on PHP are put in `php.packages`; composer is for example available at `php.packages.composer`. diff --git a/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml index 5c29f98b28df..5219c1329e36 100644 --- a/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml +++ b/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml @@ -108,6 +108,12 @@ (with foo; isPower && is32bit && isBigEndian). + + + PHP 7.4 is no longer supported due to upstream not supporting + this version for the entire lifecycle of the 22.11 release. + +
diff --git a/nixos/doc/manual/release-notes/rl-2211.section.md b/nixos/doc/manual/release-notes/rl-2211.section.md index 624bde2c83d7..0f04eff7c045 100644 --- a/nixos/doc/manual/release-notes/rl-2211.section.md +++ b/nixos/doc/manual/release-notes/rl-2211.section.md @@ -45,6 +45,8 @@ In addition to numerous new and upgraded packages, this release has the followin - The `isPowerPC` predicate, found on `platform` attrsets (`hostPlatform`, `buildPlatform`, `targetPlatform`, etc) has been removed in order to reduce confusion. The predicate was was defined such that it matches only the 32-bit big-endian members of the POWER/PowerPC family, despite having a name which would imply a broader set of systems. If you were using this predicate, you can replace `foo.isPowerPC` with `(with foo; isPower && is32bit && isBigEndian)`. +- PHP 7.4 is no longer supported due to upstream not supporting this + version for the entire lifecycle of the 22.11 release. diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 1064d62da930..6d2525732da0 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -422,7 +422,6 @@ in { pgjwt = handleTest ./pgjwt.nix {}; pgmanage = handleTest ./pgmanage.nix {}; php = handleTest ./php {}; - php74 = handleTest ./php { php = pkgs.php74; }; php80 = handleTest ./php { php = pkgs.php80; }; php81 = handleTest ./php { php = pkgs.php81; }; pict-rs = handleTest ./pict-rs.nix {}; diff --git a/pkgs/development/interpreters/php/7.4.nix b/pkgs/development/interpreters/php/7.4.nix deleted file mode 100644 index 823002978785..000000000000 --- a/pkgs/development/interpreters/php/7.4.nix +++ /dev/null @@ -1,52 +0,0 @@ -{ callPackage, lib, stdenv, ... }@_args: - -let - base = callPackage ./generic.nix (_args // { - version = "7.4.29"; - sha256 = "sha256-fd5YoCsiXCUTDG4q4su6clS7A0D3/hcpFHgXbYZvlII="; - }); - -in -base.withExtensions ({ all, ... }: with all; ([ - bcmath - calendar - curl - ctype - dom - exif - fileinfo - filter - ftp - gd - gettext - gmp - iconv - intl - json - ldap - mbstring - mysqli - mysqlnd - opcache - openssl - pcntl - pdo - pdo_mysql - pdo_odbc - pdo_pgsql - pdo_sqlite - pgsql - posix - readline - session - simplexml - sockets - soap - sodium - sqlite3 - tokenizer - xmlreader - xmlwriter - zip - zlib -] ++ lib.optionals (!stdenv.isDarwin) [ imap ])) diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 1fc44abf1ab8..30702ade0fbf 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1011,6 +1011,10 @@ mapAliases ({ phwmon = throw "phwmon has been removed: abandoned by upstream"; # Added 2022-04-24 # Obsolete PHP version aliases + php74 = throw "php74 has been dropped due to the lack of maintanence from upstream for future releases"; # Added 2022-05-24 + php74Packages = php74; # Added 2022-05-24 + php74Extensions = php74; # Added 2022-05-24 + php73 = throw "php73 has been dropped due to the lack of maintanence from upstream for future releases"; # Added 2021-06-03 php73Packages = php73; # Added 2021-06-03 php73Extensions = php73; # Added 2021-06-03 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 8ba232b05b92..d3bfe0189536 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -14409,13 +14409,6 @@ with pkgs; php80Extensions = recurseIntoAttrs php80.extensions; php80Packages = recurseIntoAttrs php80.packages; - # Import PHP74 interpreter, extensions and packages - php74 = callPackage ../development/interpreters/php/7.4.nix { - stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv; - }; - php74Extensions = recurseIntoAttrs php74.extensions; - php74Packages = recurseIntoAttrs php74.packages; - picoc = callPackage ../development/interpreters/picoc {};