gnu: phodav: Use libsoup 2 instead of libsoup 3.

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>
This commit is contained in:
Leo Nikkilä 2022-04-02 21:34:18 +03:00 committed by Ludovic Courtès
parent 86ee397e26
commit d15a601a85
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5

View 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 @@ (define-public phodav
(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 @@ (define-public phodav
("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,