summary refs log tree commit diff
path: root/pkgs/servers
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/servers')
-rw-r--r--pkgs/servers/libreddit/default.nix8
-rw-r--r--pkgs/servers/mautrix-telegram/default.nix13
-rw-r--r--pkgs/servers/nfs-ganesha/default.nix6
-rw-r--r--pkgs/servers/nfs-ganesha/sysstatedir.patch22
-rw-r--r--pkgs/servers/sql/postgresql/ext/plv8.nix30
-rw-r--r--pkgs/servers/sql/postgresql/packages.nix6
6 files changed, 32 insertions, 53 deletions
diff --git a/pkgs/servers/libreddit/default.nix b/pkgs/servers/libreddit/default.nix
index 23b8ffd1f3e..5ad43a89522 100644
--- a/pkgs/servers/libreddit/default.nix
+++ b/pkgs/servers/libreddit/default.nix
@@ -8,16 +8,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "libreddit";
-  version = "0.19.1";
+  version = "0.21.4";
 
   src = fetchFromGitHub {
     owner = "spikecodes";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-d6MDyFwQGvPQ1o+oYzZWhG2vFhBrFwMoV7a9vqFj+gs=";
+    sha256 = "sha256-9Qr1afzp5BwcnJ4WjACJQk4NA81JTnNBmZZNFMZ6FvU=";
   };
 
-  cargoSha256 = "sha256-Dpfs4kC8wijmEd2HejT/RfWAbfxqO701uFcUtBGmCjo=";
+  cargoSha256 = "sha256-HD6asNFb0ZICeXnUwF4ZZ568GJRPeSy4XwflpIuWJw8=";
 
   buildInputs = lib.optional stdenv.isDarwin Security;
 
@@ -29,6 +29,6 @@ rustPlatform.buildRustPackage rec {
     description = "Private front-end for Reddit";
     homepage = "https://github.com/spikecodes/libreddit";
     license = with licenses; [ agpl3Only ];
-    maintainers = with maintainers; [ fab ];
+    maintainers = with maintainers; [ fab jojosch ];
   };
 }
diff --git a/pkgs/servers/mautrix-telegram/default.nix b/pkgs/servers/mautrix-telegram/default.nix
index bf13859bd01..bf5977f8252 100644
--- a/pkgs/servers/mautrix-telegram/default.nix
+++ b/pkgs/servers/mautrix-telegram/default.nix
@@ -37,7 +37,6 @@ in python.pkgs.buildPythonPackage rec {
 
   patches = [ ./0001-Re-add-entrypoint.patch ];
   postPatch = ''
-    sed -i -e '/alembic>/d' requirements.txt
     substituteInPlace requirements.txt \
       --replace "telethon>=1.22,<1.23" "telethon"
   '';
@@ -64,18 +63,6 @@ in python.pkgs.buildPythonPackage rec {
     unpaddedbase64
   ]) ++ dbDrivers;
 
-  # `alembic` (a database migration tool) is only needed for the initial setup,
-  # and not needed during the actual runtime. However `alembic` requires `mautrix-telegram`
-  # in its environment to create a database schema from all models.
-  #
-  # Hence we need to patch away `alembic` from `mautrix-telegram` and create an `alembic`
-  # which has `mautrix-telegram` in its environment.
-  passthru.alembic = python.pkgs.alembic.overrideAttrs (old: {
-    propagatedBuildInputs = old.propagatedBuildInputs ++ dbDrivers ++ [
-      mautrix-telegram
-    ];
-  });
-
   # Tests are broken and throw the following for every test:
   #   TypeError: 'Mock' object is not subscriptable
   #
diff --git a/pkgs/servers/nfs-ganesha/default.nix b/pkgs/servers/nfs-ganesha/default.nix
index b5533e10b2f..0c8b871ade7 100644
--- a/pkgs/servers/nfs-ganesha/default.nix
+++ b/pkgs/servers/nfs-ganesha/default.nix
@@ -5,17 +5,15 @@
 
 stdenv.mkDerivation rec {
   pname = "nfs-ganesha";
-  version = "3.5";
+  version = "4.0";
 
   src = fetchFromGitHub {
     owner = "nfs-ganesha";
     repo = "nfs-ganesha";
     rev = "V${version}";
-    sha256 = "sha256-N0qVlnMshsEcWEpPhtR+zXwFKXlik1XnEuZdFMjpZTE=";
+    sha256 = "1zv7aprmydyjs53xnn1h1s6xxb22pic7va23459zq0nfnhmsgd26";
   };
 
-  patches = [ ./sysstatedir.patch ];
-
   preConfigure = "cd src";
 
   cmakeFlags = [ "-DUSE_SYSTEM_NTIRPC=ON" ];
diff --git a/pkgs/servers/nfs-ganesha/sysstatedir.patch b/pkgs/servers/nfs-ganesha/sysstatedir.patch
deleted file mode 100644
index fff3d589735..00000000000
--- a/pkgs/servers/nfs-ganesha/sysstatedir.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff --git a/src/include/config-h.in.cmake b/src/include/config-h.in.cmake
-index 2a5795e9f..7314e0594 100644
---- a/src/include/config-h.in.cmake
-+++ b/src/include/config-h.in.cmake
-@@ -71,13 +71,13 @@
- #cmakedefine HAVE_URCU_REF_GET_UNLESS_ZERO 1
- #define NFS_GANESHA 1
- 
--#define GANESHA_CONFIG_PATH "@SYSCONFDIR@/ganesha/ganesha.conf"
--#define GANESHA_PIDFILE_PATH "@SYSSTATEDIR@/run/ganesha.pid"
--#define NFS_V4_RECOV_ROOT "@SYSSTATEDIR@/lib/nfs/ganesha"
-+#define GANESHA_CONFIG_PATH "/etc/ganesha/ganesha.conf"
-+#define GANESHA_PIDFILE_PATH "/run/ganesha.pid"
-+#define NFS_V4_RECOV_ROOT "/var/lib/nfs/ganesha"
- /**
-  * @brief Default value for krb5_param.ccache_dir
-  */
--#define DEFAULT_NFS_CCACHE_DIR "@SYSSTATEDIR@/run/ganesha"
-+#define DEFAULT_NFS_CCACHE_DIR "/run/ganesha"
- 
- /* We're LGPL'd */
- #define _LGPL_SOURCE 1
diff --git a/pkgs/servers/sql/postgresql/ext/plv8.nix b/pkgs/servers/sql/postgresql/ext/plv8.nix
index a546c3a687f..6f5411340e4 100644
--- a/pkgs/servers/sql/postgresql/ext/plv8.nix
+++ b/pkgs/servers/sql/postgresql/ext/plv8.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "plv8";
-  version = "2.3.15";
+  version = "3.0.0";
 
   nativeBuildInputs = [ perl ];
   buildInputs = [ v8 postgresql ];
@@ -11,22 +11,42 @@ stdenv.mkDerivation rec {
     owner = "plv8";
     repo = "plv8";
     rev = "v${version}";
-    sha256 = "1cv94n49gq2b377gqyq7pjjzw98czv4mwl3sx97y18c20zwp6rk3";
+    sha256 = "KJz8wnGcTXnVn6umpP+UquuJTtQrkBTJ33rB/JIH4kU=";
   };
 
   makefile = "Makefile.shared";
 
   buildFlags = [ "all" ];
 
+  makeFlags = [
+    # Nixpkgs build a v8 monolith instead of separate v8_libplatform.
+    "V8_OUTDIR=${v8}/lib"
+  ];
+
+  installFlags = [
+    # PGXS only supports installing to postgresql prefix so we need to redirect this
+    "DESTDIR=${placeholder "out"}"
+  ];
+
   preConfigure = ''
     patchShebangs ./generate_upgrade.sh
+    substituteInPlace generate_upgrade.sh \
+      --replace " 2.3.10)" " 2.3.10 2.3.11 2.3.12 2.3.13 2.3.14 2.3.15)"
   '';
 
-  installPhase = ''
-    install -D plv8*.so                                        -t $out/lib
-    install -D {plls,plcoffee,plv8}{--${version}.sql,.control} -t $out/share/postgresql/extension
+  postInstall = ''
+    # Move the redirected to proper directory.
+    # There appear to be no references to the install directories
+    # so changing them does not cause issues.
+    mv "$out/nix/store"/*/* "$out"
+    rmdir "$out/nix/store"/* "$out/nix/store" "$out/nix"
   '';
 
+  # Without this, PostgreSQL will crash at runtime.
+  # The flags are only included in Makefile, not Makefile.shared.
+  # https://github.com/plv8/plv8/pull/469
+  NIX_CFLAGS_COMPILE = "-DJSONB_DIRECT_CONVERSION -DV8_COMPRESS_POINTERS=1 -DV8_31BIT_SMIS_ON_64BIT_ARCH=1";
+
   meta = with lib; {
     description = "V8 Engine Javascript Procedural Language add-on for PostgreSQL";
     homepage = "https://plv8.github.io/";
diff --git a/pkgs/servers/sql/postgresql/packages.nix b/pkgs/servers/sql/postgresql/packages.nix
index 1986ed68199..e751ae621f3 100644
--- a/pkgs/servers/sql/postgresql/packages.nix
+++ b/pkgs/servers/sql/postgresql/packages.nix
@@ -26,11 +26,7 @@ self: super: {
 
     plr = super.callPackage ./ext/plr.nix { };
 
-    plv8 = super.callPackage ./ext/plv8.nix {
-        v8 = super.callPackage ../../../development/libraries/v8/plv8_6_x.nix {
-            python = self.python2;
-        };
-    };
+    plv8 = super.callPackage ./ext/plv8.nix { };
 
     pgjwt = super.callPackage ./ext/pgjwt.nix { };