diff --git a/resources/dev/common.nix b/resources/dev/common.nix new file mode 100644 index 0000000..35dbafb --- /dev/null +++ b/resources/dev/common.nix @@ -0,0 +1,66 @@ +{ pkgs, phpPkg }: +with pkgs; +let + php = phpPkg; + + options = '' + max_execution_time = 0 + xdebug.mode=debug + memory_limit=-1 + ''; + + phpOverride = php.buildEnv { + extensions = { all, ... }: with all; [ + # Mandatory + filter + iconv + ctype + redis + tokenizer + simplexml + + # Recommendations + dom + posix + intl + opcache + + # Optional + pcov + pdo_sqlite + pdo_mysql + pdo_pgsql + + openssl + calendar + soap + mbstring + exif + fileinfo + gd + curl + zip + xmlwriter + xdebug + ]; + extraConfig = options; + }; + +in mkShell { + name = "php74-dev"; + + buildInputs = [ + # Install PHP and composer + phpOverride + phpOverride.packages.composer + + # Install Github CLi + gh + + # Install Symfony CLi + symfony-cli + + # Install GNU Make for shorthands + gnumake + ]; +} diff --git a/resources/dev/php74/default.nix b/resources/dev/php74/default.nix index fb307cc..34b6b55 100644 --- a/resources/dev/php74/default.nix +++ b/resources/dev/php74/default.nix @@ -1,66 +1,2 @@ { pkgs ? (import {}), ... }: -with pkgs; -let - php = php74; - - options = '' - max_execution_time = 0 - xdebug.mode=debug - memory_limit=-1 - ''; - - phpOverride = php.buildEnv { - extensions = { all, ... }: with all; [ - # Mandatory - filter - iconv - ctype - redis - tokenizer - simplexml - - # Recommendations - dom - posix - intl - opcache - - # Optional - pcov - pdo_sqlite - pdo_mysql - pdo_pgsql - - openssl - calendar - soap - mbstring - exif - fileinfo - gd - curl - zip - xmlwriter - xdebug - ]; - extraConfig = options; - }; - -in mkShell { - name = "php74-dev"; - - buildInputs = [ - # Install PHP and composer - phpOverride - phpOverride.packages.composer - - # Install Github CLi - gh - - # Install Symfony CLi - symfony-cli - - # Install GNU Make for shorthands - gnumake - ]; -} +(import ../common.nix) { inherit pkgs; phpPkg = pkgs.php74;} diff --git a/resources/dev/php80/default.nix b/resources/dev/php80/default.nix index fac38b2..997a046 100644 --- a/resources/dev/php80/default.nix +++ b/resources/dev/php80/default.nix @@ -1,66 +1,2 @@ { pkgs ? (import {}), ... }: -with pkgs; -let - php = php80; - - options = '' - max_execution_time = 0 - xdebug.mode=debug - memory_limit=-1 - ''; - - phpOverride = php.buildEnv { - extensions = { all, ... }: with all; [ - # Mandatory - filter - iconv - ctype - redis - tokenizer - simplexml - - # Recommendations - dom - posix - intl - opcache - - # Optional - pcov - pdo_sqlite - pdo_mysql - pdo_pgsql - - openssl - calendar - soap - mbstring - exif - fileinfo - gd - curl - zip - xmlwriter - xdebug - ]; - extraConfig = options; - }; - -in mkShell { - name = "php74-dev"; - - buildInputs = [ - # Install PHP and composer - phpOverride - phpOverride.packages.composer - - # Install Github CLi - gh - - # Install Symfony CLi - symfony-cli - - # Install GNU Make for shorthands - gnumake - ]; -} +(import ../common.nix) { inherit pkgs; phpPkg = pkgs.php80;}