From 11565ae408f50bd27cc86ea2437b93013eea2e09 Mon Sep 17 00:00:00 2001 From: Pol Dellaiera Date: Wed, 12 Jan 2022 11:22:54 +0100 Subject: [PATCH] Enable NTS versions. --- README.md | 22 ++++---- flake.nix | 107 +++++++++++++++++++++++++++++++++++++++ resources/dev/common.nix | 2 + 3 files changed, 120 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 070e8b9..0cc1c32 100644 --- a/README.md +++ b/README.md @@ -35,17 +35,17 @@ nix develop github:loophp/nix-shell#php81 Available PHP versions are: -* `php56` -* `php70` -* `php71` -* `php72` -* `php73` -* `php74` -* `php74-nodebug` -* `php80` -* `php80-nodebug` -* `php81` -* `php81-nodebug` +* `php56`, `php56-nts` +* `php70`, `php70-nts` +* `php71`, `php71-nts` +* `php72`, `php72-nts` +* `php73`, `php73-nts` +* `php74`, `php74-nts` +* `php74-nodebug`, `php74-nts-nodebug` +* `php80`, `php80-nts` +* `php80-nodebug`, `php80-nts-nodebug` +* `php81`, `php81-nts` +* `php81-nodebug`, `php81-nts-nodebug` ### Customize PHP diff --git a/flake.nix b/flake.nix index 4686561..db58f17 100644 --- a/flake.nix +++ b/flake.nix @@ -21,6 +21,15 @@ phps = phps.packages.${system}; version = "php80"; phpExtensions = default: { all, ... }: builtins.filter (x: !builtins.elem x []) (default all); + ztsSupport = true; + }; + + default-nts = import ./resources/dev/common.nix { + inherit pkgs; + phps = phps.packages.${system}; + version = "php80"; + phpExtensions = default: { all, ... }: builtins.filter (x: !builtins.elem x []) (default all); + ztsSupport = false; }; php56 = import ./resources/dev/common.nix { @@ -28,6 +37,15 @@ phps = phps.packages.${system}; version = "php56"; phpExtensions = default: { all, ... }: builtins.filter (x: !builtins.elem x []) (default all); + ztsSupport = true; + }; + + php56-nts = import ./resources/dev/common.nix { + inherit pkgs; + phps = phps.packages.${system}; + version = "php56"; + phpExtensions = default: { all, ... }: builtins.filter (x: !builtins.elem x []) (default all); + ztsSupport = false; }; php70 = import ./resources/dev/common.nix { @@ -35,6 +53,15 @@ phps = phps.packages.${system}; version = "php70"; phpExtensions = default: { all, ... }: builtins.filter (x: !builtins.elem x []) (default all); + ztsSupport = true; + }; + + php70-nts = import ./resources/dev/common.nix { + inherit pkgs; + phps = phps.packages.${system}; + version = "php70"; + phpExtensions = default: { all, ... }: builtins.filter (x: !builtins.elem x []) (default all); + ztsSupport = false; }; php71 = import ./resources/dev/common.nix { @@ -42,6 +69,15 @@ phps = phps.packages.${system}; version = "php71"; phpExtensions = default: { all, ... }: builtins.filter (x: !builtins.elem x []) (default all); + ztsSupport = true; + }; + + php71-nts = import ./resources/dev/common.nix { + inherit pkgs; + phps = phps.packages.${system}; + version = "php71"; + phpExtensions = default: { all, ... }: builtins.filter (x: !builtins.elem x []) (default all); + ztsSupport = false; }; php72 = import ./resources/dev/common.nix { @@ -49,6 +85,15 @@ phps = phps.packages.${system}; version = "php72"; phpExtensions = default: { all, ... }: builtins.filter (x: !builtins.elem x []) (default all); + ztsSupport = true; + }; + + php72-nts = import ./resources/dev/common.nix { + inherit pkgs; + phps = phps.packages.${system}; + version = "php72"; + phpExtensions = default: { all, ... }: builtins.filter (x: !builtins.elem x []) (default all); + ztsSupport = false; }; php73 = import ./resources/dev/common.nix { @@ -56,6 +101,15 @@ phps = phps.packages.${system}; version = "php73"; phpExtensions = default: { all, ... }: builtins.filter (x: !builtins.elem x []) (default all); + ztsSupport = true; + }; + + php73-nts = import ./resources/dev/common.nix { + inherit pkgs; + phps = phps.packages.${system}; + version = "php73"; + phpExtensions = default: { all, ... }: builtins.filter (x: !builtins.elem x []) (default all); + ztsSupport = false; }; php74 = import ./resources/dev/common.nix { @@ -63,6 +117,15 @@ phps = phps.packages.${system}; version = "php74"; phpExtensions = default: { all, ... }: builtins.filter (x: !builtins.elem x []) (default all); + ztsSupport = true; + }; + + php74-nts = import ./resources/dev/common.nix { + inherit pkgs; + phps = phps.packages.${system}; + version = "php74"; + phpExtensions = default: { all, ... }: builtins.filter (x: !builtins.elem x []) (default all); + ztsSupport = false; }; php74-nodebug = import ./resources/dev/common.nix { @@ -70,6 +133,15 @@ phps = phps.packages.${system}; version = "php74"; phpExtensions = default: { all, ... }: builtins.filter (x: !builtins.elem x [all.xdebug all.pcov]) (default all); + ztsSupport = true; + }; + + php74-nts-nodebug = import ./resources/dev/common.nix { + inherit pkgs; + phps = phps.packages.${system}; + version = "php74"; + phpExtensions = default: { all, ... }: builtins.filter (x: !builtins.elem x [all.xdebug all.pcov]) (default all); + ztsSupport = false; }; php80 = import ./resources/dev/common.nix { @@ -77,6 +149,15 @@ phps = phps.packages.${system}; version = "php80"; phpExtensions = default: { all, ... }: builtins.filter (x: !builtins.elem x []) (default all); + ztsSupport = true; + }; + + php80-nts = import ./resources/dev/common.nix { + inherit pkgs; + phps = phps.packages.${system}; + version = "php80"; + phpExtensions = default: { all, ... }: builtins.filter (x: !builtins.elem x []) (default all); + ztsSupport = false; }; php80-nodebug = import ./resources/dev/common.nix { @@ -84,6 +165,15 @@ phps = phps.packages.${system}; version = "php80"; phpExtensions = default: { all, ... }: builtins.filter (x: !builtins.elem x [all.xdebug all.pcov]) (default all); + ztsSupport = true; + }; + + php80-nts-nodebug = import ./resources/dev/common.nix { + inherit pkgs; + phps = phps.packages.${system}; + version = "php80"; + phpExtensions = default: { all, ... }: builtins.filter (x: !builtins.elem x [all.xdebug all.pcov]) (default all); + ztsSupport = false; }; php81 = import ./resources/dev/common.nix { @@ -91,6 +181,15 @@ phps = phps.packages.${system}; version = "php81"; phpExtensions = default: { all, ... }: builtins.filter (x: !builtins.elem x []) (default all); + ztsSupport = true; + }; + + php81-nts = import ./resources/dev/common.nix { + inherit pkgs; + phps = phps.packages.${system}; + version = "php81"; + phpExtensions = default: { all, ... }: builtins.filter (x: !builtins.elem x []) (default all); + ztsSupport = false; }; php81-nodebug = import ./resources/dev/common.nix { @@ -98,8 +197,16 @@ phps = phps.packages.${system}; version = "php81"; phpExtensions = default: { all, ... }: builtins.filter (x: !builtins.elem x [all.xdebug all.pcov]) (default all); + ztsSupport = true; }; + php81-nts-nodebug = import ./resources/dev/common.nix { + inherit pkgs; + phps = phps.packages.${system}; + version = "php81"; + phpExtensions = default: { all, ... }: builtins.filter (x: !builtins.elem x [all.xdebug all.pcov]) (default all); + ztsSupport = false; + }; }; } ); diff --git a/resources/dev/common.nix b/resources/dev/common.nix index 5ac8a89..9823ecd 100644 --- a/resources/dev/common.nix +++ b/resources/dev/common.nix @@ -2,6 +2,7 @@ pkgs, phps, version, + ztsSupport, phpExtensions ? { all, ... }: with all; [], defaultExtensions ? { all, ... }: with all; [] }: @@ -51,6 +52,7 @@ let phpOverride = phps.${version}.buildEnv { extensions = phpExtensions defaultPhpExtensions; extraConfig = if builtins.pathExists "${phpIniFile}" then builtins.readFile "${phpIniFile}" else ""; + inherit ztsSupport; }; mkShellNoCC = pkgs.mkShell.override { stdenv = pkgs.stdenvNoCC; };