Subject: Re: Package python-pylzma Fails to Build

From: Andreas Enge <[email-masked]>
Date: Sun, 10 Aug 2025 13:03:21 +0200

Until v526, the DB test fails.

Since v527, the binaries (installed and tests) have been renamed.
But the DB test still fails.

In v550, a different test fails, which can be solved by adding
python-dateparser to the inputs.
But the DB test still fails.

In v555, an earlier test fails:
test_import_folders_daemon (hydrus.test.TestClientDaemons.TestDaemons.test_import_folders_daemon) ... FAIL
======================================================================
FAIL: test_import_folders_daemon (hydrus.test.TestClientDaemons.TestDaemons.test_import_folders_daemon)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/tmp/guix-build-hydrus-network-555.drv-0/source/hydrus/test/TestClientDaemons.py", line 61, in test_import_folders_daemon
    self.assertEqual( len( import_file ), 3 )
AssertionError: 0 != 3
----------------------------------------------------------------------
Ran 5 tests in 11.217s
FAILED (failures=1)

In v560, something major changed, and our package recipe does not work
anymore.

I have filed a removal request at
   https://codeberg.org/guix/guix/issues/1919

A patch to repair the hydrus-network package would be very welcome.

Andreas

PS: For reference, my current diff
diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm
index 3e1c30b8d7..db0450125b 100644
--- a/gnu/packages/image-viewers.scm
+++ b/gnu/packages/image-viewers.scm
@@ -1156,7 +1156,7 @@ (define-public xzgv
 (define-public hydrus-network
   (package
     (name "hydrus-network")
-    (version "495")                       ;upstream has a weekly release cycle
+    (version "555")                       ;upstream has a weekly release cycle
     (source
      (origin
        (method git-fetch)
@@ -1166,7 +1166,7 @@ (define-public hydrus-network
        (file-name (git-file-name name version))
        (sha256
         (base32
-         "03zhrcmjzbk37sl9nwjahfmr8aflss84c4xhg5ci5b8jvbbqmr1j"))
+         "0mxl0ag7k106rfxw7g89yf9bd2wmz6zykxdpfj90cfbz25l8a1ya"))
        (modules '((guix build utils)))
        (snippet
         ;; Remove pre-built binaries from bin/.
@@ -1185,7 +1185,7 @@ (define-public hydrus-network
                 (setenv "DISPLAY" ":0")
                 (setenv "XDG_CACHE_HOME" (getcwd))
                 (setenv "HOME" (getcwd))
-                (invoke "xvfb-run" "python" "test.py")))
+                (invoke "xvfb-run" "python" "hydrus_test.py")))
             ;; XXX: program help files are not built.  Updating
             ;; python-pymdown-extensions to its latest version might be the
             ;; solution, but this would require also packaging its new build
@@ -1232,9 +1232,9 @@ (define-public hydrus-network
                                                     #$(this-package-input "python"))
                                                    "/site-packages/hydrus"))
                   (mkdir (string-append out "/bin"))
-                  (copy-file "client.py" client)
+                  (copy-file "hydrus_client.py" client)
                   (chmod client #o0555)
-                  (copy-file "server.py" server)
+                  (copy-file "hydrus_server.py" server)
                   (chmod server #o0555))))))))
     ;; All native-inputs are only needed for the the check phase
     (native-inputs
@@ -1248,6 +1248,7 @@ (define-public hydrus-network
            python-cbor2
            python-chardet
            python-cloudscraper
+           python-dateparser
            python-html5lib
            python-lxml
            python-lz4
@@ -1255,7 +1256,6 @@ (define-public hydrus-network
            opencv ; its python bindings are a drop-in replacement for opencv-python-headless
            python-pillow
            python-psutil
-           python-pylzma
            python-pyopenssl
            ;; Since hydrus' version 494 it supports python-pyside-6 but it's not yet
            ;; in guix. pyside-2 is still supported as a fallback.