summaryrefslogtreecommitdiff
path: root/gnu/packages/freedesktop.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/freedesktop.scm')
-rw-r--r--gnu/packages/freedesktop.scm856
1 files changed, 426 insertions, 430 deletions
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index caad0613ca..818d9966dd 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -2,7 +2,7 @@
;;; Copyright © 2015 Andreas Enge <[email protected]>
;;; Copyright © 2015 Sou Bunnbu <[email protected]>
;;; Copyright © 2015, 2017 Andy Wingo <[email protected]>
-;;; Copyright © 2015, 2016, 2017, 2019 Ludovic Courtès <[email protected]>
+;;; Copyright © 2015-2017, 2019, 2021 Ludovic Courtès <[email protected]>
;;; Copyright © 2015, 2017, 2018, 2019, 2021 Ricardo Wurmus <[email protected]>
;;; Copyright © 2015 David Hashe <[email protected]>
;;; Copyright © 2016, 2017, 2019, 2021 Efraim Flashner <[email protected]>
@@ -23,7 +23,12 @@
;;; Copyright © 2020 Anders Thuné <[email protected]>
;;; Copyright © 2020 Raghav Gururajan <[email protected]>
;;; Copyright © 2021 pineapples <[email protected]>
+;;; Copyright © 2021 Sarah Morgensen <[email protected]>
;;; Copyright © 2021 Robby Zambito <[email protected]>
+;;; Copyright © 2021 Maxime Devos <[email protected]>
+;;; Copyright © 2021 John Kehayias <[email protected]>
+;;; Copyright © 2021 Maxim Cournoyer <[email protected]>
+;;; Copyright © 2022 Daniel Meißner <[email protected]>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -45,6 +50,7 @@
#:use-module (guix utils)
#:use-module (guix packages)
#:use-module (guix download)
+ #:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
@@ -59,6 +65,7 @@
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages boost)
+ #:use-module (gnu packages build-tools)
#:use-module (gnu packages check)
#:use-module (gnu packages cmake)
#:use-module (gnu packages compression)
@@ -97,7 +104,9 @@
#:use-module (gnu packages python)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-xyz)
+ #:use-module (gnu packages qt)
#:use-module (gnu packages rdesktop)
+ #:use-module (gnu packages rsync)
#:use-module (gnu packages samba)
#:use-module (gnu packages serialization)
#:use-module (gnu packages sqlite)
@@ -184,13 +193,9 @@
("python" ,python-wrapper)
("xsltproc" ,libxslt)))
(inputs
- `(("libsoup" ,libsoup)
- ("libstemmer" ,libstemmer)
- ("libxml2" ,libxml2)
- ("libyaml" ,libyaml)
- ("lmdb" ,lmdb)))
+ (list libsoup-minimal-2 libstemmer libxml2 libyaml lmdb))
(propagated-inputs
- `(("glib" ,glib)))
+ (list glib))
(synopsis "Tools and libraries to work with AppStream metadata")
(description "AppStream is a cross-distribution effort for enhancing the way
we interact with the software repositories provided by distributions by
@@ -284,15 +289,9 @@ application-centers for distributions.")
("python" ,python-wrapper)
("xsltproc" ,libxslt)))
(inputs
- `(("glib" ,glib)
- ("gtk+" ,gtk+)
- ("gupnp-igd" ,gupnp-igd)
- ("libnice" ,libnice)))
+ (list glib gtk+ gupnp-igd libnice))
(propagated-inputs
- `(("gstreamer" ,gstreamer)
- ("gst-plugins-bad" ,gst-plugins-bad)
- ("gst-plugins-base" ,gst-plugins-base)
- ("gst-plugins-good" ,gst-plugins-good)))
+ (list gstreamer gst-plugins-bad gst-plugins-base gst-plugins-good))
(synopsis "The Farstream VVoIP framework")
(description "Farstream is a collection of GStreamer modules and libraries
for videoconferencing.")
@@ -331,8 +330,7 @@ for videoconferencing.")
("pkg-config" ,pkg-config)
("gtk-doc" ,gtk-doc/stable)))
(inputs
- `(("dbus" ,dbus)
- ("glib" ,glib)))
+ (list dbus glib))
(synopsis "Glib testing library")
(description "Libglib-testing is a test library providing test harnesses and
mock classes which complement the classes provided by GLib. It is intended to
@@ -377,15 +375,15 @@ tests.")
("libxml2" ,libxml2)
("pkg-config" ,pkg-config)))
(inputs
- `(("accountsservice" ,accountsservice)
- ("appstream-glib" ,appstream-glib)
- ("dbus" ,dbus)
- ("flatpak" ,flatpak)
- ("glib" ,glib)
- ("gtk+" ,gtk+)
- ("libostree" ,libostree)
- ("linux-pam" ,linux-pam)
- ("polkit" ,polkit)))
+ (list accountsservice
+ appstream-glib
+ dbus
+ flatpak
+ glib
+ gtk+
+ libostree
+ linux-pam
+ polkit))
(synopsis "Parental controls support")
(description "MalContent implements parental controls support which can
be used by applications to filter or limit the access of child accounts to
@@ -411,11 +409,7 @@ inappropriate content.")
"1nai806smz3zcb2l5iny4x7li0fak0rzmjg6vlyhdqm8z25b166p"))))
(build-system gnu-build-system)
(native-inputs
- `(("docbook-xsl" ,docbook-xsl)
- ("docbook-xml" ,docbook-xml-4.1.2)
- ("libxslt" ,libxslt)
- ("w3m" ,w3m)
- ("xmlto" ,xmlto)))
+ (list docbook-xsl docbook-xml-4.1.2 libxslt w3m xmlto))
(inputs
`(("awk" ,gawk)
("coreutils" ,coreutils)
@@ -487,14 +481,14 @@ freedesktop.org project.")
;; Updating this will rebuild over 700 packages through libinput-minimal.
(package
(name "libinput")
- (version "1.16.4")
+ (version "1.19.2")
(source (origin
(method url-fetch)
(uri (string-append "https://freedesktop.org/software/libinput/"
"libinput-" version ".tar.xz"))
(sha256
(base32
- "0acywdjppj5i591l879bnqa9cs4vgdwnhilwk550x5x8sl33m4k5"))))
+ "10xqk05mkvsyxfxpn3vwkwb7j22d38wlbg1l1k37f6pfyc59zhqg"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags '("-Ddocumentation=false")
@@ -504,15 +498,14 @@ freedesktop.org project.")
;; Meson target anyway.
#:build-type "release"))
(native-inputs
- `(("check" ,check)
- ("pkg-config" ,pkg-config)))
+ (list check pkg-config))
(inputs
- `(("cairo" ,cairo)
- ("glib" ,glib)
- ("gtk+" ,gtk+)
- ("libevdev" ,libevdev)
- ("libwacom" ,libwacom)
- ("mtdev" ,mtdev)))
+ (list cairo
+ glib
+ gtk+
+ libevdev
+ libwacom
+ mtdev))
(propagated-inputs
`(;; libinput.h requires <libudev.h>, so propagate it.
("udev" ,eudev)))
@@ -562,9 +555,7 @@ other applications that need to directly deal with input devices.")
(("^.*\\./configure.*") ""))
#t)))))
(native-inputs
- `(("autoconf" ,autoconf)
- ("automake" ,automake)
- ("libtool" ,libtool)))
+ (list autoconf automake libtool))
(home-page "https://github.com/devnev/libxdg-basedir")
(synopsis "Implementation of the XDG Base Directory specification")
(description
@@ -575,7 +566,7 @@ the freedesktop.org XDG Base Directory specification.")
(define-public elogind
(package
(name "elogind")
- (version "243.7")
+ (version "246.10")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -584,47 +575,53 @@ the freedesktop.org XDG Base Directory specification.")
(file-name (git-file-name name version))
(sha256
(base32
- "1ccj3cbs9nsfg497wg195in1a7b9csm1jdm7z6q7vvx1ynpjxlxz"))))
+ "16045bhpwjq2nqgswln67ipg1zrz2djxlgkfngqng3jqpwagmnzq"))
+ (patches (search-patches
+ "elogind-revert-polkit-detection.patch"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags
- (let* ((out (assoc-ref %outputs "out"))
- (sysconf (string-append out "/etc"))
- (libexec (string-append out "/libexec/elogind"))
- (dbuspolicy (string-append out "/etc/dbus-1/system.d"))
- (shadow (assoc-ref %build-inputs "shadow"))
- (shepherd (assoc-ref %build-inputs "shepherd"))
- (halt-path (string-append shepherd "/sbin/halt"))
- (kexec-path "") ;not available in Guix yet
- (nologin-path (string-append shadow "/sbin/nologin"))
- (poweroff-path (string-append shepherd "/sbin/shutdown"))
- (reboot-path (string-append shepherd "/sbin/reboot")))
- (list
- (string-append "-Drootprefix=" out)
- (string-append "-Dsysconfdir=" sysconf)
- (string-append "-Drootlibexecdir=" libexec)
- (string-append "-Ddbuspolicydir=" dbuspolicy)
- (string-append "-Dc_link_args=-Wl,-rpath=" libexec)
- (string-append "-Dcpp_link_args=-Wl,-rpath=" libexec)
- (string-append "-Dhalt-path=" halt-path)
- (string-append "-Dkexec-path=" kexec-path)
- (string-append "-Dpoweroff-path=" poweroff-path)
- (string-append "-Dreboot-path=" reboot-path)
- (string-append "-Dnologin-path=" nologin-path)
- "-Dcgroup-controller=elogind"
- "-Dman=true"
- ;; Disable some tests.
- "-Dslow-tests=false"))
+ ,#~(let* ((out #$output)
+ (sysconf (string-append out "/etc"))
+ (libexec (string-append out "/libexec/elogind"))
+ (dbuspolicy (string-append out "/etc/dbus-1/system.d"))
+ (kexec-tools #$(this-package-input "kexec-tools"))
+ (shadow #$(this-package-input "shadow"))
+ (shepherd #$(this-package-input "shepherd"))
+ (halt-path (string-append shepherd "/sbin/halt"))
+ (kexec-path (string-append kexec-tools "/sbin/kexec"))
+ (nologin-path (string-append shadow "/sbin/nologin"))
+ (poweroff-path (string-append shepherd "/sbin/shutdown"))
+ (reboot-path (string-append shepherd "/sbin/reboot")))
+ (list
+ (string-append "-Drootprefix=" out)
+ (string-append "-Dsysconfdir=" sysconf)
+ (string-append "-Drootlibexecdir=" libexec)
+ (string-append "-Ddbuspolicydir=" dbuspolicy)
+ (string-append "-Dc_link_args=-Wl,-rpath=" libexec)
+ (string-append "-Dcpp_link_args=-Wl,-rpath=" libexec)
+ (string-append "-Dhalt-path=" halt-path)
+ (string-append "-Dkexec-path=" kexec-path)
+ (string-append "-Dpoweroff-path=" poweroff-path)
+ (string-append "-Dreboot-path=" reboot-path)
+ (string-append "-Dnologin-path=" nologin-path)
+ "-Dcgroup-controller=elogind"
+ "-Dman=true"
+ ;; Disable some tests.
+ "-Dslow-tests=false"))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-pkttyagent-path
(lambda _
(substitute* "meson.build"
(("join_paths\\(bindir, 'pkttyagent'\\)")
- "'\"/run/current-system/profile/bin/pkttyagent\"'"))
- #t))
+ "'\"/run/current-system/profile/bin/pkttyagent\"'"))))
(add-after 'unpack 'adjust-tests
(lambda _
+ ;; Skip the following test, which depends on users such as 'root'
+ ;; existing in the build environment.
+ (invoke "sed" "/src\\/test\\/test-user-util.c/,+2s/^/#/g"
+ "-i" "src/test/meson.build")
;; This test tries to copy some bytes from /usr/lib/os-release,
;; which does not exist in the build container. Choose something
;; more likely to be available.
@@ -660,14 +657,12 @@ the freedesktop.org XDG Base Directory specification.")
;; logind system so that it can flicker the monitor, etc.
;; Just skip it until a more narrow selection can be made.
(substitute* "src/libelogind/sd-login/test-login.c"
- (("r = sd_pid_get_slice.*")
- "return 77;"))
- #t))
+ (("test_login\\(\\);")
+ "return 77;"))))
(add-after 'unpack 'change-pid-file-path
(lambda _
(substitute* "src/login/elogind.c"
- (("\"/run/elogind.pid\"") "\"/run/systemd/elogind.pid\""))
- #t)))))
+ (("\"/run/elogind.pid\"") "\"/run/systemd/elogind.pid\"")))))))
(native-inputs
`(("docbook-xml" ,docbook-xml)
("docbook-xml-4.2" ,docbook-xml-4.2)
@@ -680,14 +675,15 @@ the freedesktop.org XDG Base Directory specification.")
("python" ,python)
("xsltproc" ,libxslt)))
(inputs
- `(("linux-pam" ,linux-pam)
- ("libcap" ,libcap)
- ("shadow" ,shadow) ;for 'nologin'
- ("shepherd" ,shepherd) ;for 'halt' and 'reboot', invoked
- ;when pressing the power button
- ("dbus" ,dbus)
- ("eudev" ,eudev)
- ("acl" ,acl))) ;to add individual users to ACLs on /dev nodes
+ (list kexec-tools
+ linux-pam
+ libcap
+ shadow ;for 'nologin'
+ shepherd ;for 'halt' and 'reboot', invoked
+ ;when pressing the power button
+ dbus
+ eudev
+ acl)) ;to add individual users to ACLs on /dev nodes
(home-page "https://github.com/elogind/elogind")
(synopsis "User, seat, and session management service")
(description "Elogind is the systemd project's \"logind\" service,
@@ -828,7 +824,8 @@ of a the system to know what users are logged in, and where.")
(install-file map data))
(find-files ".." "^(kbd-model-map|language-fallback-map)$"))
#t)))))))
- (native-inputs (package-native-inputs elogind))
+ (native-inputs `(,@(package-native-inputs elogind)
+ ("rsync" ,rsync)))
(inputs `(("libmount" ,util-linux "lib")
("xkeyboard-config" ,xkeyboard-config)
("kbd" ,kbd)
@@ -859,10 +856,9 @@ with localed. This package is extracted from the broader systemd package.")
(arguments
`(#:configure-flags '("-Dlogind=enabled")))
(native-inputs
- `(("pkg-config" ,pkg-config)
- ("scdoc" ,scdoc)))
- (inputs
- `(("elogind" ,elogind)))
+ (list pkg-config scdoc))
+ (propagated-inputs
+ (list elogind))
(home-page "https://sr.ht/~kennylevinsen/seatd")
(synopsis "Seat management daemon and library")
(description
@@ -898,11 +894,9 @@ allows applications to use whatever seat management is available.")
("python" ,python-wrapper)
("glib:bin" ,glib "bin")))
(inputs
- `(("glib" ,glib)
- ("bash-completion" ,bash-completion)
- ("polkit" ,polkit)))
+ (list glib bash-completion polkit))
(propagated-inputs
- `(("sqlite" ,sqlite)))
+ (list sqlite))
(home-page "https://www.freedesktop.org/software/PackageKit/")
(synopsis "API for package management, through D-Bus")
(description
@@ -948,9 +942,7 @@ manager for the current system.")
(invoke "nosetests" "-v"))))))
(native-inputs
;; For tests.
- `(("shared-mime-info" ,shared-mime-info)
- ("hicolor-icon-theme" ,hicolor-icon-theme)
- ("python-nose" ,python-nose)))
+ (list shared-mime-info hicolor-icon-theme python-nose))
(home-page "https://www.freedesktop.org/wiki/Software/pyxdg")
(synopsis "Implementations of freedesktop.org standards in Python")
(description
@@ -964,43 +956,72 @@ Python.")
(define-public wayland
(package
(name "wayland")
- (version "1.18.0")
+ (version "1.19.0")
(source (origin
(method url-fetch)
(uri (string-append "https://wayland.freedesktop.org/releases/"
name "-" version ".tar.xz"))
(sha256
(base32
- "0k995rn96xkplrapz5k648j651wc43kq817xk1x8280h16gsfxa6"))))
- (build-system gnu-build-system)
+ "05bd2vphyx8qwa1mhsj1zdaiv4m4v94wrlssrn0lad8d601dkk5s"))))
+ (build-system meson-build-system)
+ (outputs '("out" "doc"))
(arguments
- `(#:parallel-tests? #f))
+ `(#:parallel-tests? #f
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-docbook-xml
+ (lambda* (#:key native-inputs inputs #:allow-other-keys)
+ (with-directory-excursion "doc"
+ (substitute* (find-files "." "\\.xml$")
+ (("http://www.oasis-open.org/docbook/xml/4\\.5/")
+ (string-append (assoc-ref (or native-inputs inputs)
+ "docbook-xml")
+ "/xml/dtd/docbook/"))
+ (("http://www.oasis-open.org/docbook/xml/4\\.2/")
+ (string-append (assoc-ref (or native-inputs inputs)
+ "docbook-xml-4.2")
+ "/xml/dtd/docbook/"))))))
+ (add-after 'install 'move-doc
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (doc (assoc-ref outputs "doc")))
+ (mkdir-p (string-append doc "/share"))
+ (rename-file
+ (string-append out "/share/doc")
+ (string-append doc "/share/doc"))))))))
(native-inputs
- `(("doxygen" ,doxygen)
- ("graphviz" ,graphviz)
+ `(("docbook-xml-4.2" ,docbook-xml-4.2)
+ ("docbook-xml" ,docbook-xml)
+ ("docbook-xsl" ,docbook-xsl)
+ ("dot" ,graphviz)
+ ("doxygen" ,doxygen)
("pkg-config" ,pkg-config)
+ ("python" ,python)
("xmlto" ,xmlto)
- ("xsltproc" ,libxslt)))
+ ("xsltproc" ,libxslt)
+ ,@(if (%current-target-system)
+ `(("pkg-config-for-build" ,pkg-config-for-build)
+ ("wayland" ,this-package)) ; for wayland-scanner
+ '())))
(inputs
- `(("docbook-xml" ,docbook-xml)
- ("docbook-xsl" ,docbook-xsl)
- ("expat" ,expat)
- ("libffi" ,libffi)
- ("libxml2" ,libxml2))) ; for XML_CATALOG_FILES
+ (list expat libxml2)) ; for XML_CATALOG_FILES
+ (propagated-inputs
+ (list libffi))
(home-page "https://wayland.freedesktop.org/")
- (synopsis "Display server protocol")
- (description
- "Wayland is a protocol for a compositor to talk to its clients as well as
-a C library implementation of that protocol. The compositor can be a standalone
-display server running on Linux kernel modesetting and evdev input devices, an X
-application, or a wayland client itself. The clients can be traditional
-applications, X servers (rootless or fullscreen) or other display servers.")
- (license license:x11)))
+ (synopsis "Core Wayland window system code and protocol")
+ (description "Wayland is a project to define a protocol for a compositor to
+talk to its clients as well as a library implementation of the protocol. The
+compositor can be a standalone display server running on Linux kernel
+modesetting and evdev input devices, an X application, or a wayland client
+itself. The clients can be traditional applications, X servers (rootless or
+fullscreen) or other display servers.")
+ (license license:expat)))
(define-public wayland-protocols
(package
(name "wayland-protocols")
- (version "1.20")
+ (version "1.23")
(source (origin
(method url-fetch)
(uri (string-append
@@ -1008,14 +1029,17 @@ applications, X servers (rootless or fullscreen) or other display servers.")
"wayland-protocols-" version ".tar.xz"))
(sha256
(base32
- "1rsdgvkkvxs3cjhpl6agvbkm53vm7k8rg127j9y2vn33m2hvg0lp"))))
- (build-system gnu-build-system)
+ "0xizccackgwszjhlq7jjiv2z2gwppljx0w32ga91bxlnby8z22kc"))))
+ (build-system meson-build-system)
(inputs
- `(("wayland" ,wayland)))
+ (list wayland))
(native-inputs
- `(("pkg-config" ,pkg-config)))
+ (list pkg-config python))
(synopsis "Wayland protocols")
- (description "This package contains XML definitions of the Wayland protocols.")
+ (description "Wayland-Protocols contains Wayland protocols that add
+functionality not available in the Wayland core protocol. Such protocols either
+add completely new functionality, or extend the functionality of some other
+protocol either in Wayland core, or some other protocol in wayland-protocols.")
(home-page "https://wayland.freedesktop.org")
(license license:expat)))
@@ -1035,13 +1059,12 @@ applications, X servers (rootless or fullscreen) or other display servers.")
(arguments
`(#:tests? #f)) ; no tests
(native-inputs
- `(("pkg-config" ,pkg-config)))
+ (list pkg-config))
(inputs
- `(("mesa" ,mesa)
- ("pugixml" ,pugixml)))
+ (list mesa pugixml))
(propagated-inputs
- `(;; In Requires of the .pc files.
- ("wayland" ,wayland)))
+ (list ;; In Requires of the .pc files.
+ wayland))
(synopsis "Wayland C++ bindings")
(description
"This package provides C++ bindings for the Wayland display protocol.")
@@ -1061,9 +1084,7 @@ applications, X servers (rootless or fullscreen) or other display servers.")
"1zlql0xgiqc3pvgbpnnvj4xvpd91pwva8qf83xfb23if377ddxaw"))))
(build-system meson-build-system)
(native-inputs
- `(("mscgen" ,mscgen)
- ("pkg-config" ,pkg-config)
- ("xorg-server" ,xorg-server)))
+ (list mscgen pkg-config xorg-server))
(inputs
`(("cairo" ,cairo-xcb)
("colord" ,colord)
@@ -1094,9 +1115,7 @@ applications, X servers (rootless or fullscreen) or other display servers.")
("wayland-protocols" ,wayland-protocols)
("xorg-server-xwayland" ,xorg-server-xwayland)))
(propagated-inputs
- `(("libxkbcommon" ,libxkbcommon)
- ("pixman" ,pixman)
- ("wayland" ,wayland)))
+ (list libxkbcommon pixman wayland))
(arguments
`(#:configure-flags
(list
@@ -1136,8 +1155,7 @@ applications, X servers (rootless or fullscreen) or other display servers.")
(add-before 'check 'start-xorg-server
(lambda* (#:key inputs #:allow-other-keys)
;; The test suite requires a running X server.
- (system (string-append (assoc-ref inputs "xorg-server")
- "/bin/Xvfb :1 &"))
+ (system "Xvfb :1 &")
(setenv "DISPLAY" ":1")
#t)))))
(home-page "https://wayland.freedesktop.org")
@@ -1173,12 +1191,9 @@ multiplexer to the KMS/DRM Linux kernel devices.")
(modify-phases %standard-phases
(delete 'configure))))
(native-inputs
- `(("pkg-config" ,pkg-config)
- ("scdoc" ,scdoc)))
+ (list pkg-config scdoc))
(inputs
- `(("libxkbcommon" ,libxkbcommon)
- ("wayland" ,wayland)
- ("wayland-protocols" ,wayland-protocols)))
+ (list libxkbcommon wayland wayland-protocols))
(home-page "https://git.sr.ht/~sircmpwn/wev")
(synopsis "Wayland event viewer")
(description "Wev is a tool that opens a window, printing all events
@@ -1214,10 +1229,9 @@ XEv.")
"/lib/libexempi.a"))
#t)))))
(native-inputs
- `(("boost" ,boost))) ; tests
+ (list boost)) ; tests
(inputs
- `(("expat" ,expat)
- ("zlib" ,zlib)))
+ (list expat zlib))
(home-page "https://libopenraw.freedesktop.org/exempi/")
(synopsis "XMP metadata handling library")
(description "Exempi is an implementation of the Extensible Metadata
@@ -1238,9 +1252,9 @@ formats.")
"138gvgdwk6h4ljrjsr09pxk1nrki4b155hqdzyr8mlk3bwsfmw31"))))
(build-system gnu-build-system)
(native-inputs
- `(("pkg-config" ,pkg-config)))
+ (list pkg-config))
(inputs
- `(("udev" ,eudev)))
+ (list eudev))
(home-page "http://0pointer.de/blog/projects/being-smart.html")
(synopsis "ATA S.M.A.R.T. reading and parsing library")
(description
@@ -1272,15 +1286,15 @@ Analysis and Reporting Technology) functionality.")
("pkg-config" ,pkg-config)
("xsltproc" ,libxslt)))
(propagated-inputs
- `(("glib" ,glib))) ; required by udisks2.pc
+ (list glib)) ; required by udisks2.pc
(inputs
- `(("acl" ,acl)
- ("cryptsetup" ,cryptsetup)
- ("libatasmart" ,libatasmart)
- ("libblockdev" ,libblockdev)
- ("libgudev" ,libgudev)
- ("polkit" ,polkit)
- ("util-linux" ,util-linux)))
+ (list acl
+ cryptsetup
+ libatasmart
+ libblockdev
+ libgudev
+ polkit
+ util-linux))
(outputs '("out"
"doc")) ;5 MiB of gtk-doc HTML
(arguments
@@ -1350,57 +1364,59 @@ message bus.")
(define-public accountsservice
(package
(name "accountsservice")
- (version "0.6.50")
+ (version "0.6.55")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.freedesktop.org/software/"
- "accountsservice/accountsservice-" version ".tar.xz"))
+ "accountsservice/accountsservice-"
+ version ".tar.xz"))
(sha256
- (base32 "0jn7vg1z4vxnna0hl33hbcb4bb3zpilxc2vyclh24vx4vvsjhn83"))))
- (build-system gnu-build-system)
+ (base32 "16wwd633jak9ajyr1f1h047rmd09fhf3kzjz6g5xjsz0lwcj8azz"))))
+ (build-system meson-build-system)
(arguments
- '(#:tests? #f ; XXX: tests require DocBook 4.1.2
+ `(#:tests? #f ; XXX: tests require DocBook 4.1.2
#:configure-flags
'("--localstatedir=/var"
- "--disable-systemd"
- "--enable-elogind")
+ "-Dsystemdsystemunitdir=/tmp/empty"
+ "-Dsystemd=false"
+ "-Delogind=true")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-/bin/cat
(lambda _
(substitute* "src/user.c"
- (("/bin/cat") (which "cat")))
- #t))
+ (("/bin/cat") (which "cat")))))
(add-before
'configure 'pre-configure
(lambda* (#:key inputs #:allow-other-keys)
- ;; Don't try to create /var/lib/AccountsService.
- (substitute* "src/Makefile.in"
- (("\\$\\(MKDIR_P\\).*/lib/AccountsService.*") "true"))
+ (substitute* "meson_post_install.py"
+ (("in dst_dirs") "in []"))
(let ((shadow (assoc-ref inputs "shadow")))
(substitute* '("src/user.c" "src/daemon.c")
- (("/usr/sbin/usermod") (string-append shadow "/sbin/usermod"))
- (("/usr/sbin/useradd") (string-append shadow "/sbin/useradd"))
- (("/usr/sbin/userdel") (string-append shadow "/sbin/userdel"))
- (("/usr/bin/passwd") (string-append shadow "/bin/passwd"))
- (("/usr/bin/chage") (string-append shadow "/bin/chage"))))
- #t)))))
+ (("/usr/sbin/usermod")
+ (string-append shadow "/sbin/usermod"))
+ (("/usr/sbin/useradd")
+ (string-append shadow "/sbin/useradd"))
+ (("/usr/sbin/userdel")
+ (string-append shadow "/sbin/userdel"))
+ (("/usr/bin/passwd")
+ (string-append shadow "/bin/passwd"))
+ (("/usr/bin/chage")
+ (string-append shadow "/bin/chage")))))))))
(native-inputs
`(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc.
("gobject-introspection" ,gobject-introspection)
("intltool" ,intltool)
("pkg-config" ,pkg-config)))
(inputs
- `(("elogind" ,elogind)
- ("polkit" ,polkit)
- ("shadow" ,shadow)))
+ (list dbus elogind polkit shadow))
(home-page "https://www.freedesktop.org/wiki/Software/AccountsService/")
(synopsis "D-Bus interface for user account query and manipulation")
(description
- "The AccountService project provides a set of D-Bus interfaces for querying
-and manipulating user account information and an implementation of these
-interfaces, based on the useradd, usermod and userdel commands.")
+ "The AccountService project provides a set of D-Bus interfaces for
+querying and manipulating user account information and an implementation of
+these interfaces, based on the useradd, usermod and userdel commands.")
(license license:gpl3+)))
(define-public libmbim
@@ -1417,13 +1433,12 @@ interfaces, based on the useradd, usermod and userdel commands.")
"16q550sy84izi5ic3sbbhjnnka2fwhj8vvdrirpn9xspbsgbc3sm"))))
(build-system gnu-build-system)
(native-inputs
- `(("glib:bin" ,glib "bin") ; for glib-mkenums
- ("pkg-config" ,pkg-config)
- ("python" ,python-wrapper)))
+ (list `(,glib "bin") ; for glib-mkenums
+ pkg-config python-wrapper))
(propagated-inputs
- `(("glib" ,glib))) ; required by mbim-glib.pc
+ (list glib)) ; required by mbim-glib.pc
(inputs
- `(("libgudev" ,libgudev)))
+ (list libgudev))
(synopsis "Library to communicate with MBIM-powered modems")
(home-page "https://www.freedesktop.org/wiki/Software/libmbim/")
(description
@@ -1448,13 +1463,12 @@ which speak the Mobile Interface Broadband Model (MBIM) protocol.")
"0zshxqbm9ldybgrzh7pjmwmfjvvvfd0xh8qhgl8xiqdb9ply73r0"))))
(build-system gnu-build-system)
(inputs
- `(("libgudev" ,libgudev)))
+ (list libgudev))
(native-inputs
- `(("glib:bin" ,glib "bin") ; for glib-mkenums
- ("pkg-config" ,pkg-config)
- ("python" ,python-wrapper)))
+ (list `(,glib "bin") ; for glib-mkenums
+ pkg-config python-wrapper))
(propagated-inputs
- `(("glib" ,glib))) ; required by qmi-glib.pc
+ (list glib)) ; required by qmi-glib.pc
(synopsis "Library to communicate with QMI-powered modems")
(home-page "https://www.freedesktop.org/wiki/Software/libqmi/")
(description
@@ -1490,12 +1504,9 @@ which speak the Qualcomm MSM Interface (QMI) protocol.")
;; For testing.
("dbus" ,dbus)))
(propagated-inputs
- `(("glib" ,glib))) ; required by mm-glib.pc
+ (list glib)) ; required by mm-glib.pc
(inputs
- `(("libgudev" ,libgudev)
- ("libmbim" ,libmbim)
- ("libqmi" ,libqmi)
- ("polkit" ,polkit)))
+ (list libgudev libmbim libqmi polkit))
(synopsis "Mobile broadband modems manager")
(home-page "https://www.freedesktop.org/wiki/Software/ModemManager/")
(description
@@ -1535,9 +1546,7 @@ modems and setup connections with them.")
("xsltproc" ,libxslt)))
(propagated-inputs
;; telepathy-logger-0.2.pc refers to all these.
- `(("libxml2" ,libxml2)
- ("sqlite" ,sqlite)
- ("telepathy-glib" ,telepathy-glib)))
+ (list libxml2 sqlite telepathy-glib))
(synopsis "Telepathy logger library")
(home-page "https://telepathy.freedesktop.org/")
(description
@@ -1561,16 +1570,11 @@ different sorts of messages in different formats.")
(base32 "1pfw4g2cicw3ykxhsy743r0fc1yqbdrqxh2c5ha6am19dajcr95l"))))
(build-system gnu-build-system)
(native-inputs
- `(("autoconf" ,autoconf)
- ("automake" ,automake)
- ("libtool" ,libtool)
- ("pkg-config" ,pkg-config)))
+ (list autoconf automake libtool pkg-config))
(inputs
- `(("xsltproc" ,libxslt)
- ("python" ,python-2)
- ("python-dbus" ,python2-dbus)))
+ (list libxslt python-2 python2-dbus))
(propagated-inputs
- `(("telepathy-glib" ,telepathy-glib)))
+ (list telepathy-glib))
(home-page "https://telepathy.freedesktop.org/")
(synopsis "Telepathy IRC connection manager")
(description
@@ -1582,7 +1586,7 @@ messaging clients such as Empathy, GNOME Shell or KDE Telepathy.")
(define-public telepathy-mission-control
(package
(name "telepathy-mission-control")
- (version "5.16.5")
+ (version "5.16.6")
(source
(origin
(method url-fetch)
@@ -1590,19 +1594,15 @@ messaging clients such as Empathy, GNOME Shell or KDE Telepathy.")
"telepathy-mission-control/"
"telepathy-mission-control-" version ".tar.gz"))
(sha256
- (base32 "00xxv38cfdirnfvgyd56m60j0nkmsv5fz6p2ydyzsychicxl6ssc"))))
+ (base32 "0ibs575pfr0wmhfcw6ln6iz7gw2y45l3bah11rksf6g9jlwsxy1d"))))
(build-system gnu-build-system)
(native-inputs
- `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
- ("pkg-config" ,pkg-config)))
+ (list `(,glib "bin") ; for glib-compile-schemas, etc.
+ pkg-config))
(inputs
- `(("dconf" ,dconf)
- ("gtk-doc" ,gtk-doc)
- ("libgnome-keyring" ,libgnome-keyring)
- ("python" ,python-2)
- ("xsltproc" ,libxslt)))
+ (list dconf gtk-doc libgnome-keyring python-2 libxslt))
(propagated-inputs
- `(("telepathy-glib" ,telepathy-glib)))
+ (list telepathy-glib))
(home-page "https://telepathy.freedesktop.org/wiki/Components/Mission_Control/")
(synopsis "Telepathy real-time communication framework management daemon")
(description
@@ -1625,14 +1625,10 @@ share connections to real-time communication services without conflicting.")
(build-system gnu-build-system)
(arguments '(#:tests? #f)) ; require the colord system service
(native-inputs
- `(("gobject-introspection" ,gobject-introspection)
- ("intltool" ,intltool)
- ("pkg-config" ,pkg-config)
- ("vala" ,vala)))
+ (list gobject-introspection intltool pkg-config vala))
(propagated-inputs
;; colord-gtk.pc refers to all these.
- `(("colord" ,colord)
- ("gtk+" ,gtk+)))
+ (list colord gtk+))
(synopsis "GTK integration for libcolord")
(home-page "https://www.freedesktop.org/software/colord/")
(description
@@ -1644,7 +1640,7 @@ wish to perform colour calibration.")
(define-public libfprint
(package
(name "libfprint")
- (version "1.90.7")
+ (version "1.94.2")
(source
(origin
(method git-fetch)
@@ -1653,26 +1649,26 @@ wish to perform colour calibration.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "00pmdpxxjj4sh8qjq9ch3pylgg9w019rg1bbaw53a4wr637rrz43"))))
+ (base32 "0y3wz5hlxpnvqj67bihvzfi4dwx2m2nx9byppf4jjd80x0j2630m"))))
(build-system meson-build-system)
(arguments
- '(#:configure-flags
- (list (string-append "-Dudev_rules_dir=" (assoc-ref %outputs "out")
- "/lib/udev/rules.d"))))
+ (list #:configure-flags
+ #~(list (string-append "-Dudev_hwdb_dir=" #$output
+ "/lib/udev/hwdb.d")
+ (string-append "-Dudev_rules_dir=" #$output
+ "/lib/udev/rules.d"))))
(native-inputs
- `(("eudev" ,eudev)
- ("glib:bin" ,glib "bin") ; for {glib-,}mkenums
- ("gobject-introspection" ,gobject-introspection)
- ("gtk-doc" ,gtk-doc/stable) ; for 88 KiB of API documentation
- ("pkg-config" ,pkg-config)))
+ (list `(,glib "bin") ; for {glib-,}mkenums
+ gobject-introspection
+ gtk-doc/stable ; for 88 KiB of API documentation
+ pkg-config))
(inputs
- `(("glib" ,glib)
- ("gusb" ,gusb)
- ("nss" ,nss) ; for the URU4x00 driver
-
- ;; Replacing this with cairo works but just results in a reference
- ;; (only) to pixman in the end.
- ("pixman" ,pixman)))
+ (list gusb
+ libgudev
+ nss ; for the URU4x00 driver
+ ;; Replacing this with cairo works but just results in a reference
+ ;; (only) to pixman in the end.
+ pixman))
(home-page "https://fprint.freedesktop.org/")
(synopsis "Library to access fingerprint readers")
(description
@@ -1684,68 +1680,56 @@ software.")
(define-public fprintd
(package
(name "fprintd")
- (version "1.90.1")
+ (version "1.94.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.freedesktop.org/libfprint/fprintd")
- (commit version)))
+ (commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0mbzk263x7f58i9cxhs44mrngs7zw5wkm62j5r6xlcidhmfn03cg"))))
+ (base32 "015j8ikyv48qz8vn6kfvkwwg5ydzppl1lzf7vkali9ymywywfxsw"))))
(build-system meson-build-system)
(arguments
- `(#:configure-flags
- (list "-Dsystemd_system_unit_dir=/tmp"
- (string-append "-Ddbus_service_dir=" (assoc-ref %outputs "out")
- "/share/dbus-1/system-services")
- (string-append "-Dpam_modules_dir=" (assoc-ref %outputs "out")
- "/lib/security"))
- #:phases
- (modify-phases %standard-phases
- (add-before 'configure 'patch-output-directories
- ;; Install files to our output, not that of the ‘owner’ package.
- ;; These are not exposed as Meson options and must be patched.
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (substitute* "meson.build"
- (("(dbus_interfaces_dir = ).*" _ set)
- (string-append set "'" out "/share/dbus-1/interfaces'\n"))
- (("(polkit_policy_directory = ).*" _ set)
- (string-append set "'" out "/share/polkit-1/actions/'\n"))
- (("(dbus_data_dir = ).*" _ set)
- (string-append set "get_option('prefix')"
- " / get_option('datadir')\n")))
- #t)))
- (add-before 'configure 'patch-mistake
- (lambda _
- (substitute* "meson.build"
- (("(storage_path = )(get_option\\('prefix'\\))(.*)"
- _ set mistake value)
- (string-append set "''" value "\n")))
- #t))
- (add-before 'configure 'patch-systemd-dependencies
- (lambda _
- (substitute* "meson.build"
- (("'(libsystemd|systemd)'") "'libelogind'"))
- #t))
- (add-before 'configure 'ignore-test-dependencies
- (lambda _
- (substitute* "meson.build"
- (("pam_wrapper_dep .*") "")
- ((".*'(cairo|dbus|dbusmock|gi|pypamtest)': .*,.*") ""))
- #t))
- (add-before 'install 'no-polkit-magic
- ;; Meson ‘magically’ invokes pkexec, which fails (not setuid).
- (lambda _
- (setenv "PKEXEC_UID" "something")
- #t)))
- #:tests? #f)) ; XXX depend on unpackaged packages
+ (list #:configure-flags
+ #~(list "-Dsystemd_system_unit_dir=/tmp"
+ (string-append "-Ddbus_service_dir=" #$output
+ "/share/dbus-1/system-services")
+ (string-append "-Dpam_modules_dir=" #$output
+ "/lib/security"))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'configure 'patch-output-directories
+ ;; Install files to our output, not that of the ‘owner’ package.
+ ;; These are not exposed as Meson options and must be patched.
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (substitute* "meson.build"
+ (("(dbus_interfaces_dir = ).*" _ set)
+ (string-append set "'" out "/share/dbus-1/interfaces'\n"))
+ (("(polkit_policy_directory = ).*" _ set)
+ (string-append set "'" out "/share/polkit-1/actions/'\n"))
+ (("(dbus_data_dir = ).*" _ set)
+ (string-append set "get_option('prefix')"
+ " / get_option('datadir')\n"))))))
+ (add-before 'configure 'patch-systemd-dependencies
+ (lambda _
+ (substitute* "meson.build"
+ (("(dependency\\(')(libsystemd|systemd)" _ prefix)
+ (string-append prefix "libelogind")))))
+ (add-before 'configure 'ignore-test-dependencies
+ (lambda _
+ (substitute* "meson.build"
+ ((".*gi\\.repository\\.FPrint.*") "")
+ (("pam_wrapper_dep .*") "")
+ ((".*'(cairo|dbus|dbusmock|gi|pypamtest)': .*,.*") ""))
+ (substitute* "tests/pam/meson.build"
+ ((".*pam_wrapper.*") "")))))
+ #:tests? #f)) ; XXX depend on unpackaged packages
(native-inputs
`(("gettext" ,gettext-minimal)
("glib:bin" ,glib "bin") ; for glib-genmarshal
- ("libxslt" ,libxslt) ; for xsltproc
("perl" ,perl) ; for pod2man
("pkg-config" ,pkg-config)))
;; For tests.
@@ -1756,17 +1740,11 @@ software.")
;;("python-pygobject" ,python-pygobject)
;;("python-pypamtest" ,python-pypamtest)
(inputs
- `(("dbus-glib" ,dbus-glib)
- ("elogind" ,elogind)
- ("libfprint" ,libfprint)
- ("linux-pam" ,linux-pam)
- ("polkit" ,polkit)
-
- ;; XXX These are in libfprint's Requires.private. Meson refuses to grant
- ;; the ‘libfprint-2’ dependency if they are not provided here.
- ("gusb" ,gusb)
- ("nss" ,nss)
- ("pixman" ,pixman)))
+ (list dbus-glib
+ elogind
+ libfprint
+ linux-pam
+ polkit))
(home-page "https://fprint.freedesktop.org/")
(synopsis "D-Bus daemon that exposes fingerprint reader functionality")
(description
@@ -1790,11 +1768,9 @@ to applications simultaneously competing for fingerprint readers.")
"02bkfi6fyk4c0gh2avd897882ww5zl7qg7bzzf28qb57kvkvsvdj"))))
(build-system gnu-build-system)
(native-inputs
- `(("autoconf" ,autoconf)
- ("automake" ,automake)
- ("pkg-config" ,pkg-config)))
+ (list autoconf automake pkg-config))
(inputs
- `(("glib" ,glib)))
+ (list glib))
(home-page "https://www.freedesktop.org/wiki/Software/desktop-file-utils/")
(synopsis "Utilities for working with desktop entries")
(description
@@ -1869,13 +1845,10 @@ manually by a user.")
"1qq5ag9zffx8zc5i9b4z03ar80pqj4drgk3vjdlyfapjwb9zqrf0"))))
(build-system perl-build-system)
(native-inputs
- `(("perl-module-build" ,perl-module-build)
- ("perl-file-which" ,perl-file-which)
- ("perl-test-pod" ,perl-test-pod)
- ("perl-test-pod-coverage" ,perl-test-pod-coverage)
- ("xdg-user-dirs" ,xdg-user-dirs)))
+ (list perl-module-build perl-file-which perl-test-pod
+ perl-test-pod-coverage xdg-user-dirs))
(propagated-inputs
- `(("perl-ipc-system-simple" ,perl-ipc-system-simple)))
+ (list perl-ipc-system-simple))
(home-page "https://metacpan.org/release/File-BaseDir")
(synopsis "Use the Freedesktop.org base directory specification")
(description
@@ -1899,11 +1872,9 @@ application data and cache data.")
"1f1maqix2kbfg2rf008m7mqnvv6nvcf9y6pcgdv2kxp2vbih370n"))))
(build-system perl-build-system)
(native-inputs
- `(("perl-test-pod" ,perl-test-pod)
- ("perl-test-pod-coverage" ,perl-test-pod-coverage)))
+ (list perl-test-pod perl-test-pod-coverage))
(propagated-inputs
- `(("perl-file-basedir" ,perl-file-basedir)
- ("perl-uri" ,perl-uri)))
+ (list perl-file-basedir perl-uri))
(home-page "https://metacpan.org/release/File-DesktopEntry")
(synopsis "Handle @file{.desktop} files")
(description
@@ -1928,8 +1899,7 @@ applications define in those files.")
;; If the tests are fixed, add perl-test-pod, perl-test-pod-coverage, and
;; perl-test-tiny as native-inputs.
(propagated-inputs
- `(("shared-mime-info" ,shared-mime-info)
- ("perl-file-desktopentry" ,perl-file-desktopentry)))
+ (list shared-mime-info perl-file-desktopentry))
(arguments
;; Some tests fail due to requiring the mimetype of perl files to be
;; text/plain when they are actually application/x-perl.
@@ -1998,7 +1968,7 @@ encoding names are iconv-compatible.")
"1bqfz85cd51sw0bvhvdq9ikccxi2ld7g5jpni4jkq1a5clrvca64"))))
(build-system python-build-system)
(inputs
- `(("uchardet" ,uchardet)))
+ (list uchardet))
(home-page "https://github.com/PyYoshi/cChardet")
(synopsis "High-performance character encoding detection for Python")
(description "cChardet is a character encoding detector, written in
@@ -2008,33 +1978,24 @@ Python, that binds to the C library @code{uchardet} to increase performance.")
(define-public udiskie
(package
(name "udiskie")
- (version "2.1.0")
+ (version "2.3.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "udiskie" version))
(sha256
(base32
- "0smib8vbs9q37n7ynhzyw97q16fgdkcdw7fw69lci0xvyq00v1dz"))
- ;; Remove support for the libappindicator library of the
- ;; Unity desktop environment which is not in Guix.
- (patches (search-patches "udiskie-no-appindicator.patch"))))
+ "0sagdmsc5km32h3jvgj843p8bicrrgfz26qhl04ibxmas6725zr0"))))
(build-system python-build-system)
(native-inputs
`(("asciidoc" ,asciidoc)
("gettext" ,gettext-minimal)
("gobject-introspection" ,gobject-introspection)))
(inputs
- `(("gobject-introspection" ,gobject-introspection)
- ("gtk+" ,gtk+)
- ("libnotify" ,libnotify)
- ("udisks" ,udisks)))
+ (list gobject-introspection gtk+ libappindicator libnotify udisks))
(propagated-inputs
- `(("python-docopt" ,python-docopt)
- ("python-pygobject" ,python-pygobject)
- ("python-keyutils" ,python-keyutils)
- ("python-pyxdg" ,python-pyxdg)
- ("python-pyyaml" ,python-pyyaml)))
+ (list python-docopt python-pygobject python-keyutils python-pyxdg
+ python-pyyaml))
(arguments
`(#:phases
(modify-phases %standard-phases
@@ -2116,11 +2077,7 @@ Its features include:
(string-append (assoc-ref inputs "docbook-xml")
"/xml/dtd/docbook/catalog.xml")))))))
(inputs
- `(("glib" ,glib)
- ("pango" ,pango)
- ("libdrm" ,libdrm)
- ("libpng" ,libpng)
- ("eudev" ,eudev)))
+ (list glib pango libdrm libpng eudev))
(native-inputs
`(("gettext" ,gettext-minimal)
("pkg-config" ,pkg-config)
@@ -2157,8 +2114,7 @@ useful with system integration.")
("pkg-config" ,pkg-config)
("xvfb" ,xorg-server-for-tests)))
(inputs
- `(("gtk+" ,gtk+)
- ("glib" ,glib)))
+ (list gtk+ glib))
(arguments
`(#:make-flags '("CFLAGS=-Wno-error")
#:phases
@@ -2192,6 +2148,13 @@ useful with system integration.")
"https://launchpad.net/libappindicator/"
(version-major+minor version) "/" version
"/+download/libappindicator-" version ".tar.gz"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Fix 'multiple definitions' error from GCC 10
+ (substitute* "bindings/python/appindicatormodule.c"
+ (("^#include <pygobject.h>" all)
+ (string-append "#define NO_IMPORT_PYGOBJECT\n" all)))))
(sha256
(base32
"17xlqd60v0zllrxp8bgq3k5a1jkj0svkqn8rzllcyjh8k0gpr46m"))))
@@ -2211,8 +2174,7 @@ useful with system integration.")
;; ("mono" ,mono) ; requires non-packaged gapi
("vala" ,vala)))
(propagated-inputs
- `(("gtk+" ,gtk+)
- ("libdbusmenu" ,libdbusmenu)))
+ (list gtk+ libdbusmenu))
(arguments
;; FIXME: do not hardcode gtk version
`(#:configure-flags '("--with-gtk=3")
@@ -2252,62 +2214,56 @@ fallback to generic Systray support if none of those are available.")
(license license:lgpl2.1+)))
(define-public libportal
- (let ((commit "bff3289")
- (revision "1"))
- (package
- (name "libportal")
- (version (git-version "0.3" revision commit))
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/flatpak/libportal")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "104b91qircr1i9jkmm6f725awywky52aimrki303kiaadn2v8b5i"))))
- (build-system meson-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'install 'move-doc
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out"))
- (doc (assoc-ref outputs "doc"))
- (html "/share/gtk-doc"))
- (copy-recursively (string-append out html)
- (string-append doc html))
- (delete-file-recursively (string-append out html))
- #t))))))
- (native-inputs
- `(("pkg-config" ,pkg-config)
- ("gtk-doc" ,gtk-doc/stable)
- ("docbook-xsl" ,docbook-xsl)
- ("docbook-xml" ,docbook-xml)
- ("libxml2" ,libxml2)
- ("glib:bin" ,glib "bin")))
- (propagated-inputs
- `(("glib" ,glib)))
- (outputs '("out" "doc"))
- (home-page "https://github.com/flatpak/libportal")
- (synopsis "Flatpak portal library")
- (description
- "libportal provides GIO-style async APIs for most Flatpak portals.")
- (license license:lgpl2.1+))))
-
-(define-public xdg-desktop-portal
(package
- (name "xdg-desktop-portal")
- (version "1.8.1")
+ (name "libportal")
+ (version "0.5")
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/flatpak/xdg-desktop-portal")
- (commit version)))
+ (url "https://github.com/flatpak/libportal")
+ (commit version)))
(file-name (git-file-name name version))
(sha256
(base32
- "0pq0kmvzk56my396vh97pzw4wizwmlmzvv2kr2xv047x3044mr5n"))))
+ "0i4v0wjyiryg7jq9hp9iaplqyhwj1cqy5891s4jfldcdzvcwxwx0"))))
+ (build-system meson-build-system)
+ (arguments
+ `(#:configure-flags
+ (list "-Dbackends=gtk4,gtk3,qt5"
+ "-Ddocs=false"))) ; requires unpackaged gi-docgen
+ (native-inputs
+ (list pkg-config
+ docbook-xsl
+ docbook-xml
+ `(,glib "bin")
+ gobject-introspection
+ libxml2
+ vala))
+ (inputs
+ (list gtk
+ gtk+
+ qtbase-5
+ qtx11extras))
+ (propagated-inputs
+ (list glib))
+ (home-page "https://github.com/flatpak/libportal")
+ (synopsis "Flatpak portal library")
+ (description
+ "libportal provides GIO-style async APIs for most Flatpak portals.")
+ (license license:lgpl2.1+)))
+
+(define-public xdg-desktop-portal
+ (package
+ (name "xdg-desktop-portal")
+ (version "1.10.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://github.com/flatpak/xdg-desktop-portal/releases/download/"
+ version "/xdg-desktop-portal-" version ".tar.xz"))
+ (sha256
+ (base32
+ "199lqr2plsy9qqnxx5a381ml8ygcbz4nkjla5pvljjcrwzlqsygd"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
@@ -2358,16 +2314,15 @@ and others.")
(define-public xdg-desktop-portal-gtk
(package
(name "xdg-desktop-portal-gtk")
- (version "1.7.1")
+ (version "1.10.0")
(source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/flatpak/xdg-desktop-portal-gtk")
- (commit version)))
- (file-name (git-file-name name version))
+ (method url-fetch)
+ (uri (string-append
+ "https://github.com/flatpak/xdg-desktop-portal-gtk/releases/download/"
+ version "/xdg-desktop-portal-gtk-" version ".tar.xz"))
(sha256
(base32
- "183iha9dxmvprn99ymgz17jx1lyn1fj5jyj6ghxl716zn9mxmird"))))
+ "0nlbnd6qvs92fanrmmn123vy0y2ml0v3ndxyk5x0cpfbnmxpa2f8"))))
(build-system glib-or-gtk-build-system)
(arguments
`(#:phases
@@ -2378,13 +2333,22 @@ and others.")
(for-each (lambda (po)
(chmod po #o666))
(find-files "po" "\\.po$"))
- #t)))))
+ #t)))
+ ;; Enable Gnome portal backends
+ #:configure-flags
+ (list
+ "--enable-appchooser"
+ "--enable-wallpaper"
+ "--enable-screenshot"
+ "--enable-screencast"
+ "--enable-background"
+ "--enable-settings")))
(native-inputs
`(("pkg-config" ,pkg-config)
("autoconf" ,autoconf)
("automake" ,automake)
("libtool" ,libtool)
- ("xdg-desktop-portal" ,xdg-desktop-portal)
+ ("libxml2" ,libxml2)
("glib:bin" ,glib "bin")
("which" ,which)
("gettext" ,gettext-minimal)))
@@ -2394,10 +2358,8 @@ and others.")
("fontconfig" ,fontconfig)
("gnome-desktop" ,gnome-desktop)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)))
- (native-search-paths
- (list (search-path-specification
- (variable "XDG_DESKTOP_PORTAL_DIR")
- (files '("share/xdg-desktop-portal/portals")))))
+ (propagated-inputs
+ (list xdg-desktop-portal))
(home-page "https://github.com/flatpak/xdg-desktop-portal-gtk")
(synopsis "GTK implementation of xdg-desktop-portal")
(description
@@ -2410,7 +2372,7 @@ interfaces.")
(define-public xdg-desktop-portal-wlr
(package
(name "xdg-desktop-portal-wlr")
- (version "0.4.0")
+ (version "0.5.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -2419,22 +2381,39 @@ interfaces.")
(file-name (git-file-name name version))
(sha256
(base32
- "13fbzh8bjnhk4xs8j9bpc01q3hy27zpbf0gkk1fnh3hm5pnyfyiv"))))
+ "1ipg35gv8ja39ijwbyi96qlyq2y1fjdggl40s38rv68bsya8zry1"))
+ (patches (search-patches "xdg-desktop-portal-wlr-harcoded-length.patch"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags
'("-Dsystemd=disabled"
- "-Dsd-bus-provider=libelogind")))
+ "-Dsd-bus-provider=libelogind")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'hardcode-binaries
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((sh (search-input-file inputs "/bin/sh"))
+ (grim (search-input-file inputs "/bin/grim"))
+ (slurp (search-input-file inputs "/bin/slurp")))
+ (substitute* "src/screenshot/screenshot.c"
+ (("grim") grim)
+ (("slurp") slurp)
+ (("execl\\(\"/bin/sh\", \"/bin/sh\"")
+ (string-append "execl(\"" sh "\", \"" sh "\"")))
+ (substitute* "src/screencast/screencast.c"
+ (("execvp\\(\"sh")
+ (string-append "execvp(\"" sh)))))))))
(native-inputs
- `(("cmake" ,cmake)
- ("pkg-config" ,pkg-config)))
- (inputs
- `(("elogind" ,elogind)
- ("iniparser" ,iniparser)
- ("pipewire" ,pipewire-0.3)
- ("inih" ,libinih)
- ("wayland" ,wayland)
- ("wayland-protocols" ,wayland-protocols)))
+ (list cmake pkg-config))
+ (inputs (list elogind
+ bash-minimal
+ grim
+ iniparser
+ libinih
+ pipewire-0.3
+ slurp
+ wayland
+ wayland-protocols))
(home-page "https://github.com/emersion/xdg-desktop-portal-wlr")
(synopsis "@code{xdg-desktop-portal} backend for wlroots")
(description
@@ -2444,10 +2423,37 @@ remote-desktop @code{xdg-desktop-portal} interfaces for wlroots based
compositors.")
(license license:expat)))
+(define-public poweralertd
+ (package
+ (name "poweralertd")
+ (version "0.2.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.sr.ht/~kennylevinsen/poweralertd")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "19rw9q4pcqw56nmzjfglfikzx5wwjl4n08awwdhg0jy1k0bm3dvp"))))
+ (build-system meson-build-system)
+ (arguments
+ '(#:configure-flags '("-Dman-pages=enabled")))
+ (native-inputs
+ (list scdoc pkg-config bash-minimal))
+ (inputs
+ (list elogind))
+ (home-page "https://sr.ht/~kennylevinsen/poweralertd")
+ (synopsis "Power alert daemon")
+ (description "poweralertd is a daemon that watches for UPower events and
+notifies the user using any notification daemon implementing
+@code{org.freedesktop.Notifications}.")
+ (license license:gpl3+)))
+
(define-public waypipe
(package
(name "waypipe")
- (version "0.8.0")
+ (version "0.8.1")
(source
(origin
(method git-fetch)
@@ -2456,22 +2462,12 @@ compositors.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "1qa47ljfvb1vv3h647xwn1j5j8gfmcmdfaz4j8ygnkvj36y87vnz"))))
+ (base32 "1v08dv3dfz420v51ahz7qgv3429073kmgrf8f66s4c3jlpch2pa1"))))
(build-system meson-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-sleep-path
- (lambda* (#:key inputs #:allow-other-keys)
- (let ((coreutils (assoc-ref inputs "coreutils")))
- (substitute* "./test/startup_failure.py"
- (("sleep") (string-append coreutils "/bin/sleep")))))))))
(native-inputs
- `(("pkg-config" ,pkg-config)
- ("scdoc" ,scdoc)
- ;; For tests
- ("python" ,python)
- ("coreutils" ,coreutils)))
+ (list pkg-config scdoc
+ ;; For tests
+ python))
(home-page "https://gitlab.freedesktop.org/mstoeckl/waypipe")
(synopsis "Proxy for Wayland protocol applications")
(description