diff --git a/pkgs/development/interpreters/php/default.nix b/pkgs/development/interpreters/php/default.nix index ae4e9b9635d..2757b9bd4ba 100644 --- a/pkgs/development/interpreters/php/default.nix +++ b/pkgs/development/interpreters/php/default.nix @@ -2,7 +2,7 @@ { lib, stdenv, fetchurl, flex, bison, autoconf , mysql, libxml2, readline, zlib, curl, postgresql, gettext , openssl, pcre, pcre2, pkgconfig, sqlite, config, libjpeg, libpng, freetype -, libxslt, libmcrypt, bzip2, icu, openldap, cyrus_sasl, libmhash, freetds +, libxslt, libmcrypt, bzip2, icu, openldap, cyrus_sasl, libmhash , uwimap, pam, gmp, apacheHttpd, libiconv, systemd, libsodium, html-tidy, libargon2, libzip }: @@ -17,7 +17,6 @@ let , imapSupport ? config.php.imap or (!stdenv.isDarwin) , ldapSupport ? config.php.ldap or true , mhashSupport ? config.php.mhash or true - , mysqlSupport ? (config.php.mysql or true) , mysqlndSupport ? config.php.mysqlnd or true , mysqliSupport ? config.php.mysqli or true , pdo_mysqlSupport ? config.php.pdo_mysql or true @@ -27,14 +26,13 @@ let , bcmathSupport ? config.php.bcmath or true , socketsSupport ? config.php.sockets or true , curlSupport ? config.php.curl or true - , curlWrappersSupport ? config.php.curlWrappers or true , gettextSupport ? config.php.gettext or true , pcntlSupport ? config.php.pcntl or true , postgresqlSupport ? config.php.postgresql or true , pdo_pgsqlSupport ? config.php.pdo_pgsql or true , readlineSupport ? config.php.readline or true , sqliteSupport ? config.php.sqlite or true - , soapSupport ? config.php.soap or true + , soapSupport ? (config.php.soap or true) && (libxml2Support) , zlibSupport ? config.php.zlib or true , opensslSupport ? config.php.openssl or true , mbstringSupport ? config.php.mbstring or true @@ -48,7 +46,6 @@ let , ftpSupport ? config.php.ftp or true , fpmSupport ? config.php.fpm or true , gmpSupport ? config.php.gmp or true - , mssqlSupport ? config.php.mssql or (!stdenv.isDarwin) , ztsSupport ? config.php.zts or false , calendarSupport ? config.php.calendar or true , sodiumSupport ? (config.php.sodium or true) && (versionAtLeast version "7.2") @@ -59,6 +56,7 @@ let , cgiSupport ? config.php.cgi or true , cliSupport ? config.php.cli or true , pharSupport ? config.php.phar or true + , xmlrpcSupport ? (config.php.xmlrpc or false) && (libxml2Support) }: let @@ -92,7 +90,6 @@ let ++ optional postgresqlSupport postgresql ++ optional pdo_pgsqlSupport postgresql ++ optional pdo_mysqlSupport mysqlBuildInputs - ++ optional mysqlSupport mysqlBuildInputs ++ optional mysqliSupport mysqlBuildInputs ++ optional gmpSupport gmp ++ optional gettextSupport gettext @@ -100,7 +97,6 @@ let ++ optional xslSupport libxslt ++ optional mcryptSupport libmcrypt' ++ optional bz2Support bzip2 - ++ optional (mssqlSupport && !stdenv.isDarwin) freetds ++ optional sodiumSupport libsodium ++ optional tidySupport html-tidy ++ optional argon2Support libargon2 @@ -130,20 +126,27 @@ let ++ optional embedSupport "--enable-embed" ++ optional mhashSupport "--with-mhash" ++ optional curlSupport "--with-curl=${curl.dev}" - ++ optional curlWrappersSupport "--with-curlwrappers" ++ optional zlibSupport "--with-zlib=${zlib.dev}" ++ optional libxml2Support "--with-libxml-dir=${libxml2.dev}" + ++ optional (!libxml2Support) [ + "--disable-dom" + "--disable-libxml" + "--disable-simplexml" + "--disable-xml" + "--disable-xmlreader" + "--disable-xmlwriter" + "--without-pear" + ] ++ optional pcntlSupport "--enable-pcntl" ++ optional readlineSupport "--with-readline=${readline.dev}" ++ optional sqliteSupport "--with-pdo-sqlite=${sqlite.dev}" ++ optional postgresqlSupport "--with-pgsql=${postgresql}" ++ optional pdo_pgsqlSupport "--with-pdo-pgsql=${postgresql}" ++ optional pdo_mysqlSupport "--with-pdo-mysql=${if mysqlndSupport then "mysqlnd" else mysql.connector-c}" - ++ optional mysqlSupport "--with-mysql${if mysqlndSupport then "=mysqlnd" else ""}" ++ optionals mysqliSupport [ "--with-mysqli=${if mysqlndSupport then "mysqlnd" else "${mysql.connector-c}/bin/mysql_config"}" ] - ++ optional ( pdo_mysqlSupport || mysqlSupport || mysqliSupport ) "--with-mysql-sock=/run/mysqld/mysqld.sock" + ++ optional ( pdo_mysqlSupport || mysqliSupport ) "--with-mysql-sock=/run/mysqld/mysqld.sock" ++ optional bcmathSupport "--enable-bcmath" # FIXME: Our own gd package doesn't work, see https://bugs.php.net/bug.php?id=60108. ++ optionals gdSupport [ @@ -166,7 +169,6 @@ let ++ optional zipSupport "--enable-zip" ++ optional ftpSupport "--enable-ftp" ++ optional fpmSupport "--enable-fpm" - ++ optional (mssqlSupport && !stdenv.isDarwin) "--with-mssql=${freetds}" ++ optional ztsSupport "--enable-maintainer-zts" ++ optional calendarSupport "--enable-calendar" ++ optional sodiumSupport "--with-sodium=${libsodium.dev}" @@ -177,7 +179,8 @@ let ++ optional (!phpdbgSupport) "--disable-phpdbg" ++ optional (!cgiSupport) "--disable-cgi" ++ optional (!cliSupport) "--disable-cli" - ++ optional (!pharSupport) "--disable-phar"; + ++ optional (!pharSupport) "--disable-phar" + ++ optional xmlrpcSupport "--with-xmlrpc"; hardeningDisable = [ "bindnow" ]; diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix index 481bdcdf81c..2fddf4787b2 100644 --- a/pkgs/top-level/php-packages.nix +++ b/pkgs/top-level/php-packages.nix @@ -27,9 +27,9 @@ let }; ast = buildPecl { - name = "ast-0.1.5"; + name = "ast-1.0.0"; - sha256 = "0vv2w5fkkw9n7qdmi5aq50416zxmvyzjym8kb6j1v8kd4xcsjjgw"; + sha256 = "0abccvwif1pih222lbj2z4cf9ibciz48xj35lfixyry163vabkck"; }; couchbase = buildPecl rec { @@ -216,15 +216,15 @@ let }; redis = buildPecl { - name = "redis-3.1.4"; - sha256 = "0rgjdrqfif8pfn3ipk1v4gyjkkdcdrdk479qbpda89w25vaxzsxd"; + name = "redis-4.2.0"; + sha256 = "105k2rfz97svrqzdhd0a0668mn71c8v0j7hks95832fsvn5dhmbn"; }; v8 = buildPecl rec { - version = "0.1.9"; + version = "0.2.2"; name = "v8-${version}"; - sha256 = "0bj77dfmld5wfwl4wgqnpa0i4f3mc1mpsp9dmrwqv050gs84m7h1"; + sha256 = "103nys7zkpi1hifqp9miyl0m1mn07xqshw3sapyz365nb35g5q71"; buildInputs = [ pkgs.v8_6_x ]; configureFlags = [ "--with-v8=${pkgs.v8_6_x}" ]; @@ -242,11 +242,11 @@ let composer = pkgs.stdenv.mkDerivation rec { name = "composer-${version}"; - version = "1.7.2"; + version = "1.8.0"; src = pkgs.fetchurl { url = "https://getcomposer.org/download/${version}/composer.phar"; - sha256 = "03km8qw3nshj7qzk5pidziha2ldx1l2yxhh2s7vpg25f9782hd7c"; + sha256 = "19pg9ip2mpyf5cyq34fld7qwl77mshqw3c4nif7sxmpnar6sh089"; }; unpackPhase = ":";