about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--nixos/tests/public-inbox.nix6
-rw-r--r--pkgs/servers/mail/public-inbox/default.nix35
2 files changed, 26 insertions, 15 deletions
diff --git a/nixos/tests/public-inbox.nix b/nixos/tests/public-inbox.nix
index 232a688e221de..784ef9e3dc28e 100644
--- a/nixos/tests/public-inbox.nix
+++ b/nixos/tests/public-inbox.nix
@@ -14,7 +14,7 @@ in
 
   meta.maintainers = with pkgs.lib.maintainers; [ julm ];
 
-  machine = { config, pkgs, nodes, ... }: let
+  nodes.machine = { config, pkgs, nodes, ... }: let
     inherit (config.services) gitolite public-inbox;
     # Git repositories paths in Gitolite.
     # Only their baseNameOf is used for configuring public-inbox.
@@ -221,7 +221,7 @@ in
     # Delete a mail.
     # Note that the use of an extension not listed in the addresses
     # require to use --all
-    machine.succeed("curl -L https://machine.example.localdomain/inbox/repo1/repo1@root-1/raw | sudo -u public-inbox public-inbox-learn rm --all")
-    machine.fail("curl -L https://machine.example.localdomain/inbox/repo1/repo1@root-1/T/#u | grep 'This is a testing mail.'")
+    machine.succeed("curl -L https://machine.${domain}/inbox/repo1/repo1@root-1/raw | sudo -u public-inbox public-inbox-learn rm --all")
+    machine.fail("curl -L https://machine.${domain}/inbox/repo1/repo1@root-1/T/#u | grep 'This is a testing mail.'")
   '';
 })
diff --git a/pkgs/servers/mail/public-inbox/default.nix b/pkgs/servers/mail/public-inbox/default.nix
index c23f1c58354a2..02ab293c1af17 100644
--- a/pkgs/servers/mail/public-inbox/default.nix
+++ b/pkgs/servers/mail/public-inbox/default.nix
@@ -18,30 +18,33 @@
 , EmailAddressXS
 , EmailMIME
 , IOSocketSSL
+# FIXME: to be packaged
+#, IOSocketSocks
 , IPCRun
 , Inline
 , InlineC
 , LinuxInotify2
 , MailIMAPClient
+# FIXME: to be packaged
+#, NetNetrc
+# FIXME: to be packaged
+#, NetNNTP
 , ParseRecDescent
 , Plack
 , PlackMiddlewareReverseProxy
+, PlackTestExternalServer
 , SearchXapian
+, TestSimple13
 , TimeDate
 , URI
+, XMLTreePP
 }:
 
 let
 
   skippedTests = [
-    # These tests would fail, and produce "Operation not permitted"
-    # errors from git, because they use git init --shared.  This tries
-    # to set the setgid bit, which isn't permitted inside build
-    # sandboxes.
-    #
-    # These tests were indentified with
-    #     grep -r shared t/
-    "convert-compact" "search" "v2writable" "www_listing"
+    # fatal: Could not make /tmp/pi-search-9188-DGZM/a.git/branches/ writable by group
+    "search"
     # perl5.32.0-public-inbox> t/eml.t ...................... 1/? Cannot parse parameter '=?ISO-8859-1?Q?=20charset=3D=1BOF?=' at t/eml.t line 270.
     # perl5.32.0-public-inbox> #   Failed test 'got wide character by assuming utf-8'
     # perl5.32.0-public-inbox> #   at t/eml.t line 272.
@@ -68,6 +71,8 @@ let
     #   expected: anything else
     # waiting for child to reap grandchild...
     "spawn"
+    # Failed to connect to 127.0.0.1
+    "v2mirror"
   ];
 
   testConditions = with lib;
@@ -77,11 +82,11 @@ in
 
 buildPerlPackage rec {
   pname = "public-inbox";
-  version = "1.8.0";
+  version = "1.9.0";
 
   src = fetchurl {
     url = "https://public-inbox.org/public-inbox.git/snapshot/public-inbox-${version}.tar.gz";
-    sha256 = "sha256-laJOOCk5NecIGWesv4D30cLGfijQHVkeo55eNqNKzew=";
+    sha256 = "sha256-ENnT2YK7rpODII9TqiEYSCp5mpWOnxskeSuAf8Ilqro=";
   };
 
   outputs = [ "out" "devdoc" "sa_config" ];
@@ -100,12 +105,15 @@ buildPerlPackage rec {
     DBDSQLite
     DBI
     EmailAddressXS
-    EmailMIME
     highlight
     IOSocketSSL
+    #IOSocketSocks
     IPCRun
     Inline
     InlineC
+    MailIMAPClient
+    #NetNetrc
+    #NetNNTP
     ParseRecDescent
     Plack
     PlackMiddlewareReverseProxy
@@ -118,13 +126,16 @@ buildPerlPackage rec {
 
   doCheck = !stdenv.isDarwin;
   nativeCheckInputs = [
-    MailIMAPClient
     curl
     git
     openssl
     pkg-config
     sqlite
     xapian
+    EmailMIME
+    PlackTestExternalServer
+    TestSimple13
+    XMLTreePP
   ] ++ lib.optionals stdenv.isLinux [
     LinuxInotify2
   ];