diff options
author | Damjan Georgievski <gdamjan@gmail.com> | 2022-10-29 15:22:48 +0200 |
---|---|---|
committer | Damjan Georgievski <gdamjan@gmail.com> | 2022-11-03 00:11:57 +0100 |
commit | b8f23688058053b84e25728556712a5573df0811 (patch) | |
tree | e3c30ca36b90368542c2dc7ca9a4adb5167a0142 /pkgs/servers/uwsgi | |
parent | 9616bc4dc55bf42bbbecaf72b93ee2aa8e71578e (diff) |
uwsgi: 2.0.20 -> 2.0.21
changelog: https://uwsgi-docs.readthedocs.io/en/latest/Changelog-2.0.21.html the `missing-arginfo-php8.patch` is removed, since it's already been merged upstream. additionally, when php is enabled, make sure uwsgi loads the ...php-with-extensions-<ver>/lib/php.ini file so that it will load all the extensions lastly, change the source to fetchFromGitHub, it seems the project web site is not that well maintained
Diffstat (limited to 'pkgs/servers/uwsgi')
-rw-r--r-- | pkgs/servers/uwsgi/default.nix | 21 | ||||
-rw-r--r-- | pkgs/servers/uwsgi/missing-arginfo-php8.patch | 49 |
2 files changed, 14 insertions, 56 deletions
diff --git a/pkgs/servers/uwsgi/default.nix b/pkgs/servers/uwsgi/default.nix index 2dc2c3230a82c..95b89093a8801 100644 --- a/pkgs/servers/uwsgi/default.nix +++ b/pkgs/servers/uwsgi/default.nix @@ -1,4 +1,4 @@ -{ stdenv, nixosTests, lib, fetchurl, pkg-config, jansson, pcre, libxcrypt +{ stdenv, nixosTests, lib, pkg-config, jansson, pcre, libxcrypt # plugins: list of strings, eg. [ "python2" "python3" ] , plugins ? [] , pam, withPAM ? stdenv.isLinux @@ -6,6 +6,7 @@ , libcap, withCap ? stdenv.isLinux , python2, python3, ncurses , ruby, php +, makeWrapper, fetchFromGitHub }: let php-embed = php.override { @@ -59,20 +60,21 @@ in stdenv.mkDerivation rec { pname = "uwsgi"; - version = "2.0.20"; + version = "2.0.21"; - src = fetchurl { - url = "https://projects.unbit.it/downloads/${pname}-${version}.tar.gz"; - sha256 = "1yfz5h07rxzrqf1rdj5fzhk47idgglxj7kqr8zl8lgcpv1kriaw8"; + src = fetchFromGitHub { + owner = "unbit"; + repo = "uwsgi"; + rev = version; + sha256 = "sha256-TUASYDyG+p1tlhmqi+ivaC7aW6UZBrPTFQUTYys5ICE="; }; patches = [ ./no-ext-session-php_session.h-on-NixOS.patch ./additional-php-ldflags.patch - ./missing-arginfo-php8.patch # https://github.com/unbit/uwsgi/issues/2356 ]; - nativeBuildInputs = [ python3 pkg-config ]; + nativeBuildInputs = [ python3 pkg-config makeWrapper ]; buildInputs = [ jansson pcre libxcrypt ] ++ lib.optional withPAM pam @@ -126,6 +128,11 @@ stdenv.mkDerivation rec { ${lib.concatMapStringsSep "\n" (x: x.install or "") needed} ''; + postFixup = lib.optionalString (builtins.any (x: x.name == "php") needed) + '' + wrapProgram $out/bin/uwsgi --set PHP_INI_SCAN_DIR ${php-embed}/lib + ''; + meta = with lib; { homepage = "https://uwsgi-docs.readthedocs.org/en/latest/"; description = "A fast, self-healing and developer/sysadmin-friendly application container server coded in pure C"; diff --git a/pkgs/servers/uwsgi/missing-arginfo-php8.patch b/pkgs/servers/uwsgi/missing-arginfo-php8.patch deleted file mode 100644 index 98a924e402797..0000000000000 --- a/pkgs/servers/uwsgi/missing-arginfo-php8.patch +++ /dev/null @@ -1,49 +0,0 @@ -diff --git a/plugins/php/php_plugin.c b/plugins/php/php_plugin.c -index ca0ef6c1..00c39b09 100644 ---- a/plugins/php/php_plugin.c -+++ b/plugins/php/php_plugin.c -@@ -257,6 +257,9 @@ PHP_MINIT_FUNCTION(uwsgi_php_minit) { - return SUCCESS; - } - -+ZEND_BEGIN_ARG_INFO_EX(arginfo_void, 0, 0, 0) -+ZEND_END_ARG_INFO() -+ - PHP_FUNCTION(uwsgi_version) { - RETURN_STRING(UWSGI_VERSION); - } -@@ -488,20 +491,20 @@ PHP_FUNCTION(uwsgi_signal) { - } - - zend_function_entry uwsgi_php_functions[] = { -- PHP_FE(uwsgi_version, NULL) -- PHP_FE(uwsgi_setprocname, NULL) -- PHP_FE(uwsgi_worker_id, NULL) -- PHP_FE(uwsgi_masterpid, NULL) -- PHP_FE(uwsgi_signal, NULL) -- -- PHP_FE(uwsgi_rpc, NULL) -- -- PHP_FE(uwsgi_cache_get, NULL) -- PHP_FE(uwsgi_cache_set, NULL) -- PHP_FE(uwsgi_cache_update, NULL) -- PHP_FE(uwsgi_cache_del, NULL) -- PHP_FE(uwsgi_cache_clear, NULL) -- PHP_FE(uwsgi_cache_exists, NULL) -+ PHP_FE(uwsgi_version, arginfo_void) -+ PHP_FE(uwsgi_setprocname, arginfo_void) -+ PHP_FE(uwsgi_worker_id, arginfo_void) -+ PHP_FE(uwsgi_masterpid, arginfo_void) -+ PHP_FE(uwsgi_signal, arginfo_void) -+ -+ PHP_FE(uwsgi_rpc, arginfo_void) -+ -+ PHP_FE(uwsgi_cache_get, arginfo_void) -+ PHP_FE(uwsgi_cache_set, arginfo_void) -+ PHP_FE(uwsgi_cache_update, arginfo_void) -+ PHP_FE(uwsgi_cache_del, arginfo_void) -+ PHP_FE(uwsgi_cache_clear, arginfo_void) -+ PHP_FE(uwsgi_cache_exists, arginfo_void) - { NULL, NULL, NULL}, - }; - |