168 lines
5.8 KiB
Scheme
168 lines
5.8 KiB
Scheme
(define-module (gchannel packages xdg-desktop-portal)
|
|
|
|
#:use-module (guix bzr-download)
|
|
#:use-module (guix download)
|
|
#:use-module (guix gexp)
|
|
#:use-module (guix git-download)
|
|
#:use-module ((guix licenses) #:prefix license:)
|
|
#:use-module (guix packages)
|
|
#:use-module (guix utils)
|
|
#:use-module (guix build-system cmake)
|
|
#:use-module (guix build-system gnu)
|
|
#:use-module (guix build-system meson)
|
|
#:use-module (guix build-system perl)
|
|
#:use-module (guix build-system pyproject)
|
|
#:use-module (guix build-system python)
|
|
#:use-module (guix build-system glib-or-gtk)
|
|
#:use-module (guix build-system qt)
|
|
#:use-module (gnu packages)
|
|
#:use-module (gnu packages acl)
|
|
#:use-module (gchannel packages extra-cmake-modules)
|
|
#:use-module (gchannel packages libportal)
|
|
#:use-module (gnu packages admin)
|
|
#:use-module (gnu packages autotools)
|
|
#:use-module (gnu packages avahi)
|
|
#: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)
|
|
#:use-module (gnu packages cpp)
|
|
#:use-module (gnu packages crypto)
|
|
#:use-module (gnu packages cryptsetup)
|
|
#:use-module (gnu packages cups)
|
|
#:use-module (gnu packages curl)
|
|
#:use-module (gnu packages databases)
|
|
#:use-module (gnu packages disk)
|
|
#:use-module (gnu packages docbook)
|
|
#:use-module (gnu packages documentation)
|
|
#:use-module (gnu packages fcitx)
|
|
#:use-module (gnu packages file)
|
|
#:use-module (gnu packages fontutils)
|
|
#:use-module ((gnu packages freedesktop) #:hide (libportal))
|
|
#:use-module (gnu packages gawk)
|
|
#:use-module (gnu packages gcc)
|
|
#:use-module (gnu packages gettext)
|
|
#:use-module (gnu packages ghostscript)
|
|
#:use-module (gnu packages gl)
|
|
#:use-module (gnu packages glib) ;intltool
|
|
#:use-module (gnu packages gnome)
|
|
#:use-module (gnu packages gperf)
|
|
#:use-module (gnu packages graph)
|
|
#:use-module (gnu packages graphviz)
|
|
#:use-module (gnu packages gstreamer)
|
|
#:use-module (gnu packages gtk)
|
|
#:use-module (gnu packages hunspell)
|
|
#:use-module (gnu packages ibus)
|
|
#:use-module (gnu packages image)
|
|
#:use-module ((gnu packages kde-frameworks) #:hide (extra-cmake-modules))
|
|
#:use-module (gnu packages kde)
|
|
#:use-module (gnu packages language)
|
|
#:use-module (gnu packages libffi)
|
|
#:use-module (gnu packages libunwind)
|
|
#:use-module (gnu packages libusb)
|
|
#:use-module (gnu packages linux)
|
|
#:use-module (gnu packages man)
|
|
#:use-module (gnu packages m4)
|
|
#:use-module (gnu packages networking)
|
|
#:use-module (gnu packages nss)
|
|
#:use-module (gnu packages package-management)
|
|
#:use-module (gnu packages pciutils)
|
|
#:use-module (gnu packages perl)
|
|
#:use-module (gnu packages perl-check)
|
|
#:use-module (gnu packages pkg-config)
|
|
#:use-module (gnu packages polkit)
|
|
#:use-module (gnu packages python)
|
|
#:use-module (gnu packages python-build)
|
|
#: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)
|
|
#:use-module (gnu packages tls)
|
|
#:use-module (gnu packages valgrind)
|
|
#:use-module (gnu packages video)
|
|
#:use-module (gnu packages virtualization)
|
|
#:use-module (gnu packages w3m)
|
|
#:use-module (gnu packages web)
|
|
#:use-module (gnu packages wm)
|
|
#:use-module (gnu packages xdisorg)
|
|
#:use-module (gnu packages xml)
|
|
#:use-module (gnu packages xorg)
|
|
#:use-module (srfi srfi-1))
|
|
|
|
(define-public xdg-desktop-portal
|
|
(package
|
|
(name "xdg-desktop-portal")
|
|
(version "1.20.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
|
|
"1pn0q7nn9xzd2wva9zpxn1dd2kqxwjm2a68yv9gaaa4alh9cvkb6"))
|
|
))
|
|
(build-system meson-build-system)
|
|
(arguments
|
|
`(#:configure-flags
|
|
(list "-Dsystemd=disabled" "-Dtests=disabled")
|
|
#:phases
|
|
(modify-phases %standard-phases
|
|
(add-after 'unpack 'po-chmod
|
|
(lambda _
|
|
;; Make sure 'msgmerge' can modify the PO files.
|
|
(for-each (lambda (po)
|
|
(chmod po #o666))
|
|
(find-files "po" "\\.po$"))))
|
|
(add-after 'unpack 'set-home-directory
|
|
(lambda _ (setenv "HOME" "/tmp"))))))
|
|
(native-inputs
|
|
(list gettext-minimal
|
|
`(,glib "bin")
|
|
pkg-config
|
|
python
|
|
python-dbusmock
|
|
python-pytest
|
|
python-pytest-xdist))
|
|
(inputs
|
|
(list bubblewrap
|
|
dbus
|
|
flatpak
|
|
fontconfig
|
|
fuse
|
|
gdk-pixbuf
|
|
geoclue
|
|
glib
|
|
json-glib
|
|
gst-plugins-base
|
|
libportal
|
|
umockdev
|
|
pipewire))
|
|
(native-search-paths
|
|
(list (search-path-specification
|
|
(variable "XDG_DESKTOP_PORTAL_DIR")
|
|
(separator #f)
|
|
(files '("share/xdg-desktop-portal/portals")))))
|
|
(home-page "https://github.com/flatpak/xdg-desktop-portal")
|
|
(synopsis "Desktop integration portal for sandboxed apps")
|
|
(description
|
|
"xdg-desktop-portal is a @dfn{portal front-end service} for Flatpak and
|
|
possibly other desktop containment frameworks. It works by exposing a series
|
|
of D-Bus interfaces known as portals under a well-known
|
|
name (@code{org.freedesktop.portal.Desktop}) and object
|
|
path (@code{/org/freedesktop/portal/desktop}).
|
|
|
|
The portal interfaces include APIs for file access, opening URIs, printing
|
|
and others.")
|
|
(license license:lgpl2.1+)))
|
|
|
|
|
|
xdg-desktop-portal |