diff options
author | github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> | 2020-12-23 00:48:29 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-12-23 00:48:29 +0000 |
commit | 28fd8e0d598ad27ecece751827396ab765a6a34e (patch) | |
tree | c28cd15292529e434d2c7d5272371aa3c1b3e2a2 /pkgs/servers | |
parent | e0d458ed2c77bfed6db792a5dd94392871cacc3f (diff) | |
parent | 00f6d352bd4598bdcd6b5c9884430e9e2d6084a6 (diff) | |
download | nixlib-28fd8e0d598ad27ecece751827396ab765a6a34e.tar nixlib-28fd8e0d598ad27ecece751827396ab765a6a34e.tar.gz nixlib-28fd8e0d598ad27ecece751827396ab765a6a34e.tar.bz2 nixlib-28fd8e0d598ad27ecece751827396ab765a6a34e.tar.lz nixlib-28fd8e0d598ad27ecece751827396ab765a6a34e.tar.xz nixlib-28fd8e0d598ad27ecece751827396ab765a6a34e.tar.zst nixlib-28fd8e0d598ad27ecece751827396ab765a6a34e.zip |
Merge master into staging-next
Diffstat (limited to 'pkgs/servers')
-rw-r--r-- | pkgs/servers/monitoring/prometheus/lnd-exporter.nix | 10 | ||||
-rw-r--r-- | pkgs/servers/uwsgi/additional-php-ldflags.patch | 13 | ||||
-rw-r--r-- | pkgs/servers/uwsgi/default.nix | 30 | ||||
-rw-r--r-- | pkgs/servers/uwsgi/no-ext-session-php_session.h-on-NixOS.patch | 29 |
4 files changed, 72 insertions, 10 deletions
diff --git a/pkgs/servers/monitoring/prometheus/lnd-exporter.nix b/pkgs/servers/monitoring/prometheus/lnd-exporter.nix index 9499f70e71bd..cdece1212433 100644 --- a/pkgs/servers/monitoring/prometheus/lnd-exporter.nix +++ b/pkgs/servers/monitoring/prometheus/lnd-exporter.nix @@ -1,17 +1,17 @@ { stdenv, buildGoModule, fetchFromGitHub, nixosTests }: buildGoModule rec { - pname = "lndmon-unstable"; - version = "2020-01-09"; + pname = "lndmon"; + version = "unstable-2020-12-04"; src = fetchFromGitHub { owner = "lightninglabs"; repo = "lndmon"; - sha256 = "0d4z8yv2459wsi4c91qs5an13acn73fd8s321xya5vxxiyf51q24"; - rev = "2c7c5ce0fcb4e7eef4df60efe8a644587a309f6c"; + sha256 = "0q72jbkhw1vpwxd0r80l1v4ab71sakc315plfqbijy7al9ywq5nl"; + rev = "f07d574320dd1a6a428fecd47f3a5bb46a0fc4d1"; }; - vendorSha256 = "083h2ksnqmcr48958r5pag9a28xvljpc3prip6wn70ifp2wpjpin"; + vendorSha256 = "06if387b9m02ciqgcissih1x06l33djp87vgspwzz589f77vczk8"; doCheck = false; diff --git a/pkgs/servers/uwsgi/additional-php-ldflags.patch b/pkgs/servers/uwsgi/additional-php-ldflags.patch new file mode 100644 index 000000000000..8549d5c2d03c --- /dev/null +++ b/pkgs/servers/uwsgi/additional-php-ldflags.patch @@ -0,0 +1,13 @@ +diff --git a/plugins/php/uwsgiplugin.py b/plugins/php/uwsgiplugin.py +index d930c44e..2fcbc22a 100644 +--- a/plugins/php/uwsgiplugin.py ++++ b/plugins/php/uwsgiplugin.py +@@ -17,6 +17,8 @@ php_version = os.popen(PHPPATH + ' --version').read().rstrip().split('.')[0] + CFLAGS = [os.popen(PHPPATH + ' --includes').read().rstrip(), '-Wno-sign-compare'] + LDFLAGS = os.popen(PHPPATH + ' --ldflags').read().rstrip().split() + ++LDFLAGS.append(os.environ.get('UWSGICONFIG_PHP_LDFLAGS', [])) ++ + if ld_run_path: + LDFLAGS.append('-L%s' % ld_run_path) + os.environ['LD_RUN_PATH'] = ld_run_path diff --git a/pkgs/servers/uwsgi/default.nix b/pkgs/servers/uwsgi/default.nix index 39a3113eb410..d9ed810cdf49 100644 --- a/pkgs/servers/uwsgi/default.nix +++ b/pkgs/servers/uwsgi/default.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, fetchurl, pkgconfig, jansson, pcre +{ stdenv, nixosTests, lib, fetchurl, pkgconfig, jansson, pcre # plugins: list of strings, eg. [ "python2" "python3" ] , plugins ? [] , pam, withPAM ? stdenv.isLinux @@ -38,8 +38,12 @@ let php-embed = php.override { (lib.nameValuePair "php" { # usage: https://uwsgi-docs.readthedocs.io/en/latest/PHP.html#running-php-apps-with-nginx path = "plugins/php"; - inputs = [ php-embed ] ++ php-embed.buildInputs; - NIX_CFLAGS_LINK = [ "-L${libmysqlclient}/lib/mysql" ]; + inputs = [ + php-embed + php-embed.extensions.session + php-embed.extensions.session.dev + php-embed.unwrapped.dev + ] ++ php-embed.unwrapped.buildInputs; }) ]; @@ -61,6 +65,11 @@ stdenv.mkDerivation rec { sha256 = "0256v72b7zr6ds4srpaawk1px3bp0djdwm239w3wrxpw7dzk1gjn"; }; + patches = [ + ./no-ext-session-php_session.h-on-NixOS.patch + ./additional-php-ldflags.patch + ]; + nativeBuildInputs = [ python3 pkgconfig ]; buildInputs = [ jansson pcre ] @@ -83,6 +92,16 @@ stdenv.mkDerivation rec { substituteAll ${./nixos.ini} buildconf/nixos.ini ''; + # this is a hack to make the php plugin link with session.so (which on nixos is a separate package) + # the hack works in coordination with ./additional-php-ldflags.patch + UWSGICONFIG_PHP_LDFLAGS = lib.optionalString (builtins.any (x: x.name == "php") needed) + (lib.concatStringsSep "," [ + "-Wl" + "-rpath=${php-embed.extensions.session}/lib/php/extensions/" + "--library-path=${php-embed.extensions.session}/lib/php/extensions/" + "-l:session.so" + ]); + buildPhase = '' mkdir -p $pluginDir python3 uwsgiconfig.py --build nixos @@ -94,8 +113,6 @@ stdenv.mkDerivation rec { ${lib.concatMapStringsSep "\n" (x: x.install or "") needed} ''; - NIX_CFLAGS_LINK = toString (lib.optional withSystemd "-lsystemd" ++ lib.concatMap (x: x.NIX_CFLAGS_LINK or []) needed); - meta = with stdenv.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"; @@ -103,4 +120,7 @@ stdenv.mkDerivation rec { maintainers = with maintainers; [ abbradar schneefux globin ]; platforms = platforms.unix; }; + + passthru.tests.uwsgi = nixosTests.uwsgi; + } diff --git a/pkgs/servers/uwsgi/no-ext-session-php_session.h-on-NixOS.patch b/pkgs/servers/uwsgi/no-ext-session-php_session.h-on-NixOS.patch new file mode 100644 index 000000000000..bde8f4fda1dc --- /dev/null +++ b/pkgs/servers/uwsgi/no-ext-session-php_session.h-on-NixOS.patch @@ -0,0 +1,29 @@ +From 6b9b3559d8ce59eda6c5cd6f04224cebaaa5d0ea Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?=D0=94=D0=B0=D0=BC=D1=98=D0=B0=D0=BD=20=D0=93=D0=B5=D0=BE?= + =?UTF-8?q?=D1=80=D0=B3=D0=B8=D0=B5=D0=B2=D1=81=D0=BA=D0=B8?= + <gdamjan@gmail.com> +Date: Tue, 8 Sep 2020 17:11:39 +0200 +Subject: [PATCH] no ext/session/php_session.h on NixOS + +on NixOS php_session.h is in its own package, and is not installed in +ext/session/ +--- + plugins/php/common.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/plugins/php/common.h b/plugins/php/common.h +index 9bf1c069..be93f519 100644 +--- a/plugins/php/common.h ++++ b/plugins/php/common.h +@@ -10,7 +10,7 @@ + #endif + #include "ext/standard/info.h" + +-#include "ext/session/php_session.h" ++#include "php_session.h" + + #include <uwsgi.h> + +-- +2.28.0 + |