gnu: phodav: Use libsoup 2 instead of libsoup 3.
authorLeo Nikkilä <hello@lnikki.la>
Sat, 2 Apr 2022 18:34:18 +0000 (21:34 +0300)
committerLudovic Courtès <ludo@gnu.org>
Tue, 5 Apr 2022 18:41:40 +0000 (20:41 +0200)
Looks like phodav requires libsoup 2. Example of failing build logs,
wanting libsoup 2.4: <https://ci.guix.gnu.org/build/584454/log/raw>

After swapping the dependency, tests were failing due to HOME not being
writable. I added a new build phase to account for this. I also removed
the start-virtual-dir-server phase which no longer seems required, the
tests pass without it.

* gnu/packages/gnome.scm (phodav): Fix build, tests.
[inputs]: Replace libsoup 3 with libsoup 2.
[arguments]<#:phases>[set-temporary-home]: New phase.
[arguments]<#:phases>[start-virtual-dir-server]: Remove phase.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
gnu/packages/gnome.scm

index 8ff59f0..19adb67 100644 (file)
@@ -69,6 +69,7 @@
 ;;; Copyright © 2022 Pierre Langlois <pierre.langlois@gmx.com>
 ;;; Copyright © 2022 John Kehayias <john.kehayias@protonmail.com>
 ;;; Copyright © 2022 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
+;;; Copyright © 2022 Leo Nikkilä <hello@lnikki.la>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1191,12 +1192,10 @@ Library reference documentation.")
               (substitute* "data/meson.build"
                 (("udev\\.get_pkgconfig_variable\\('udevdir'\\)")
                  (format #f "'~a'" rules))))))
-        (add-before 'check 'start-virtual-dir-server
-          ;; The same server when started by tests/virtual-dir returns an
-          ;; unexpected status (4 instead of 200) and fails a test.  It is
-          ;; unclear why starting it manually here makes it pass.
+        (add-before 'check 'set-temporary-home
+          ;; Tests want to write into HOME.
           (lambda _
-            (system "tests/virtual-dir-server &"))))))
+            (setenv "HOME" "/tmp"))))))
    (native-inputs
     `(("docbook-xml" ,docbook-xml-4.3)
       ("gettext" ,gettext-minimal)
@@ -1205,7 +1204,7 @@ Library reference documentation.")
       ("gtk-doc" ,gtk-doc/stable)
       ("pkg-config" ,pkg-config)))
    (inputs
-    (list avahi libgudev libsoup))
+    (list avahi libgudev libsoup-minimal-2))
    (synopsis "WebDav server implementation using libsoup")
    (description "PhoDav was initially developed as a file-sharing mechanism for Spice,
 but it is generic enough to be reused in other projects,