!jngDrdMgndWibPCYsR:nixos.org

Nix PHP

73 Members
A room for PHP developers running on Nix21 Servers

Load older messages


SenderMessageTime
10 Jul 2023
@shyim:matrix.orgShyim * Did someone discovered too that php-fpm is ignoring signals? We didn't updated I guess for 1-2 months our flake.lock. It's hard to find what causes it 😅16:36:35
@drupol:matrix.orgPolWow... no clue16:43:05
@shyim:matrix.orgShyimokay it was devenv related 😅 https://github.com/cachix/devenv/pull/71217:47:25
23 Jul 2023
@drupol:matrix.orgPolHey, I've got a weird behavior in a Nix project of mine. The project aim to maintain old versions of the PHP language. For some reason, the builds running on Darwin are picking the newest version of OpenSSL (3), not the old one (1) despite the fact that we are doing it (https://github.com/fossar/nix-phps/blob/9d00fd85709bcd48c80530cc71fbace99c375038/pkgs/package-overrides.nix#L510). See the Github actions run, almost all the Darwin builds are failing for the same reason: https://github.com/loophp/nix-shell/actions/runs/5635189875 Do you have a clue what it could be?07:56:08
@drupol:matrix.orgPolI was not having the issue before: https://github.com/loophp/nix-shell/actions/runs/556347728907:58:53
@drupol:matrix.orgPol To reproduce the issue on a Darwin machine: nix build github:loophp/nix-shell/update_flake_lock_action#php56 08:04:57
@drupol:matrix.orgPolProblem solved.09:04:02
@drupol:matrix.orgPol The problem is the mysqlnd which requires openssl. 09:04:13
@drupol:matrix.orgPolOpenSSL version 1! Not 3.09:04:23
@drupol:matrix.orgPol Going to push a patch to fossar/nix-phps. 09:04:33
@drupol:matrix.orgPol False alarm. Compiling openssl extension with PHP 5.6 on Darwin still requires Openssl 3. Weird. 09:41:36
@jtojnar:matrix.orgJan Tojnar
In reply to @drupol:matrix.org
Hey, I've got a weird behavior in a Nix project of mine. The project aim to maintain old versions of the PHP language.
For some reason, the builds running on Darwin are picking the newest version of OpenSSL (3), not the old one (1) despite the fact that we are doing it (https://github.com/fossar/nix-phps/blob/9d00fd85709bcd48c80530cc71fbace99c375038/pkgs/package-overrides.nix#L510).
See the Github actions run, almost all the Darwin builds are failing for the same reason: https://github.com/loophp/nix-shell/actions/runs/5635189875

Do you have a clue what it could be?
Maybe try using builtins.trace for debugging
10:25:56
@drupol:matrix.orgPolI opened an issue in nix-phps, I can reproduce the issue there10:35:26
@drupol:matrix.orgPolIf anyone with a Darwin machine could have a look at https://github.com/fossar/nix-phps/pull/282 it would be nice.14:45:38
@drupol:matrix.orgPol
In reply to @jtojnar:matrix.org
Maybe try using builtins.trace for debugging
Without Darwin machine, it's a bit complicated :(
14:50:34
@drupol:matrix.orgPol

I applied this patch:

diff --git i/pkgs/package-overrides.nix w/pkgs/package-overrides.nix
index 6cd988d..1691c5e 100644
--- i/pkgs/package-overrides.nix
+++ w/pkgs/package-overrides.nix
@@ -507,17 +507,21 @@ in
         in
         ourPatches ++ upstreamPatches;
 
-      buildInputs =
-        let
-          replaceOpenssl = pkg:
-            if pkg == pkgs.openssl && lib.versionOlder prev.php.version "8.1" then
-              pkgs.openssl_1_1.overrideAttrs (old: {
-                meta = builtins.removeAttrs old.meta [ "knownVulnerabilities" ];
-              })
-            else
-              pkg;
-        in
-        builtins.map replaceOpenssl attrs.buildInputs;
+      buildInputs =let
+        a =
+          let
+            replaceOpenssl = pkg:
+              if pkg == pkgs.openssl && lib.versionOlder prev.php.version "8.1" then
+                pkgs.openssl_1_1.overrideAttrs (old: {
+                  meta = builtins.removeAttrs old.meta [ "knownVulnerabilities" ];
+                })
+              else
+                pkg;
+          in
+            builtins.map replaceOpenssl attrs.buildInputs;
+        b = (lib.elemAt a 0).version;
+      in
+        builtins.trace b a;
     });
 
     openswoole =

And then I run: nix build .#php74.extensions.openssl -L

I can see: 1.1.1u.

It would be nice to do the same on a Darwin machine.

14:59:56
@drupol:matrix.orgPol *

I applied this patch:

diff --git i/pkgs/package-overrides.nix w/pkgs/package-overrides.nix
index 6cd988d..1691c5e 100644
--- i/pkgs/package-overrides.nix
+++ w/pkgs/package-overrides.nix
@@ -507,17 +507,21 @@ in
         in
         ourPatches ++ upstreamPatches;
 
-      buildInputs =
-        let
-          replaceOpenssl = pkg:
-            if pkg == pkgs.openssl && lib.versionOlder prev.php.version "8.1" then
-              pkgs.openssl_1_1.overrideAttrs (old: {
-                meta = builtins.removeAttrs old.meta [ "knownVulnerabilities" ];
-              })
-            else
-              pkg;
-        in
-        builtins.map replaceOpenssl attrs.buildInputs;
+      buildInputs =let
+        a =
+          let
+            replaceOpenssl = pkg:
+              if pkg == pkgs.openssl && lib.versionOlder prev.php.version "8.1" then
+                pkgs.openssl_1_1.overrideAttrs (old: {
+                  meta = builtins.removeAttrs old.meta [ "knownVulnerabilities" ];
+                })
+              else
+                pkg;
+          in
+            builtins.map replaceOpenssl attrs.buildInputs;
+        b = (lib.elemAt a 0).name
+      in
+        builtins.trace b a;
     });
 
     openswoole =

And then I run: nix build .#php74.extensions.openssl -L

I can see: 1.1.1u.

It would be nice to do the same on a Darwin machine.

15:04:32
@drupol:matrix.orgPol *

I applied this patch:

diff --git i/pkgs/package-overrides.nix w/pkgs/package-overrides.nix
index 6cd988d..1691c5e 100644
--- i/pkgs/package-overrides.nix
+++ w/pkgs/package-overrides.nix
@@ -507,17 +507,21 @@ in
         in
         ourPatches ++ upstreamPatches;
 
-      buildInputs =
-        let
-          replaceOpenssl = pkg:
-            if pkg == pkgs.openssl && lib.versionOlder prev.php.version "8.1" then
-              pkgs.openssl_1_1.overrideAttrs (old: {
-                meta = builtins.removeAttrs old.meta [ "knownVulnerabilities" ];
-              })
-            else
-              pkg;
-        in
-        builtins.map replaceOpenssl attrs.buildInputs;
+      buildInputs =let
+        a =
+          let
+            replaceOpenssl = pkg:
+              if pkg == pkgs.openssl && lib.versionOlder prev.php.version "8.1" then
+                pkgs.openssl_1_1.overrideAttrs (old: {
+                  meta = builtins.removeAttrs old.meta [ "knownVulnerabilities" ];
+                })
+              else
+                pkg;
+          in
+            builtins.map replaceOpenssl attrs.buildInputs;
+        b = (lib.elemAt a 0).name
+      in
+        builtins.trace b a;
     });
 
     openswoole =

And then I run: nix build .#php74.extensions.openssl -L

I can see: openssl-1.1.1u, so the replacement works. But it seems it is not on Darwin... any available to verify ?

It would be nice to do the same on a Darwin machine.

15:05:08
@drupol:matrix.orgPol Maybe Stéphan ? ** 15:11:21
@drupol:matrix.orgPol * Maybe Stéphan ? ^^ 15:11:37
@drupol:matrix.orgPolI've describe the procedure here: https://github.com/fossar/nix-phps/pull/28215:13:42
@drupol:matrix.orgPolThe issue has been found by the Darwin maintainer team16:44:44
@drupol:matrix.orgPolApparently, there are two different version of OpenSSL 3 and this patch should fix the issue: https://github.com/fossar/nix-phps/pull/282/commits/6712008dcaccb7f74a7b7c5bc376713d01f64e8516:45:25
25 Jul 2023
@drupol:matrix.orgPol There has been an update of libxml2 in nixpkgs and it's breaking some tests in the PHP dom extension. Do you think this approach to fix the issue is the best one ?
https://github.com/fossar/nix-phps/pull/286#issuecomment-1649651146 Comments are welcome.
14:28:20
@pederbs:pvv.ntnu.nopbsds changed their display name from pbsds to pbsds (UTC+1).19:03:43
27 Jul 2023
@ribosomerocker:matrix.orgribosomerocker joined the room.03:04:31
29 Jul 2023
@lstrojny:matrix.orgLars StrojnyHow is the PHP interpreter selected that is used inside of the pecl script? Certain commands like pecl package require an extension, in this case, zlib but building PHP with zlib extension enabled doesn’t change the interpreter. Any way to fix that?09:26:34
@lstrojny:matrix.orgLars Strojny This is my PHP: pkgs.php82.withExtensions ({ enabled, all }: enabled ++ [ all.zlib all.gd ])) 09:26:57
@lstrojny:matrix.orgLars Strojny But still pecl package complains about missing zlib 09:27:08
@lstrojny:matrix.orgLars Strojny I found a workaround by setting PHP_PEAR_PHP_BIN=which php`` but that’s not ideal 09:28:49

Show newer messages


Back to Room ListRoom Version: 6