diff options
Diffstat (limited to 'gnu/packages/gnome.scm')
-rw-r--r-- | gnu/packages/gnome.scm | 157 |
1 files changed, 109 insertions, 48 deletions
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 489f23865b..e910e125d2 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -43,7 +43,7 @@ ;;; Copyright © 2019, 2020 Martin Becze <mjbecze@riseup.net> ;;; Copyright © 2019 David Wilson <david@daviwil.com> ;;; Copyright © 2019, 2020 Raghav Gururajan <raghavgururajan@disroot.org> -;;; Copyright © 2019, 2020 Jonathan Brielmaier <jonathan.brielmaier@web.de> +;;; Copyright © 2019, 2020, 2024 Jonathan Brielmaier <jonathan.brielmaier@web.de> ;;; Copyright © 2019-2022 Liliana Marie Prikler <liliana.prikler@gmail.com> ;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com> ;;; Copyright © 2020 Pierre Neidhardt <mail@ambrevar.xyz> @@ -178,7 +178,6 @@ #:use-module (gnu packages nettle) #:use-module (gnu packages networking) #:use-module (gnu packages ninja) - #:use-module (gnu packages node) #:use-module (gnu packages nss) #:use-module (gnu packages ocr) #:use-module (gnu packages openldap) @@ -459,10 +458,28 @@ and other formats.") (build-system glib-or-gtk-build-system) (arguments `(#:configure-flags - (list - "--disable-static"))) + (list "--disable-static") + #:phases + (modify-phases %standard-phases + ,@(if (or (target-riscv64?) + (target-ppc64le?) + (target-aarch64?)) + `((add-after 'unpack 'update-config-scripts + (lambda* (#:key native-inputs inputs #:allow-other-keys) + (for-each (lambda (file) + (install-file + (search-input-file + (or native-inputs inputs) + (string-append "/bin/" file)) ".")) + '("config.guess" "config.sub"))))) + '())))) (native-inputs - `(("gettext" ,gettext-minimal) + `(,@(if (or (target-riscv64?) + (target-ppc64le?) + (target-aarch64?)) + `(("config" ,config)) + `()) + ("gettext" ,gettext-minimal) ("intltool" ,intltool) ("pkg-config" ,pkg-config))) (synopsis "Common JS Modules") @@ -1344,15 +1361,23 @@ It has miners for Facebook, Flickr, Google, ownCloud and SkyDrive.") "0iil7wgix0nzhf3i2w6g1wjqly49r9rsffca97ai9kr2vfpvbv9g")))) (build-system meson-build-system) (arguments - (list #:configure-flags #~'("-Dgtk_doc=true"))) + (list #:configure-flags + #~(list "-Dgtk_doc=true" + ;; Manpages are built using pandoc. + #$@(if (this-package-native-input "pandoc") + #~("-Dmanpages=true") + #~("-Dmanpages=false"))))) (native-inputs - (list gettext-minimal - `(,glib "bin") - gi-docgen - gobject-introspection - pandoc - pkg-config - vala)) + (append + (if (supported-package? pandoc) + (list pandoc) + '()) + (list gettext-minimal + `(,glib "bin") + gi-docgen + gobject-introspection + pkg-config + vala))) (inputs (list gtk)) (propagated-inputs @@ -1379,6 +1404,9 @@ a debugging tool, @command{gssdp-device-sniffer}.") (sha256 (base32 "10hm8cgh2p8441xc83kswjgghrrqpzgblvc5523jp0pvayfq8xl6")))) + (arguments + (list #:configure-flags + #~(list "-Dgtk_doc=true"))) (propagated-inputs (modify-inputs (package-propagated-inputs gssdp) (replace "libsoup" libsoup-minimal-2))))) @@ -2610,6 +2638,7 @@ GNOME Desktop.") #$output "/share/p11-kit/modules/") (string-append "--with-pkcs11-modules=" #$output "/share/p11-kit/modules/")) + #:parallel-tests? (not (target-riscv64?)) #:phases #~(modify-phases %standard-phases (add-after 'unpack 'fix-/bin/sh-reference @@ -2990,6 +3019,16 @@ guidelines.") (substitute* "Makefile.am" (("/bin/bash") (which "bash"))) (delete-file "configure"))) + #$@(if (this-package-native-input "config") + #~((add-after 'unpack 'update-config-scripts + (lambda* (#:key native-inputs inputs #:allow-other-keys) + (for-each (lambda (file) + (install-file + (search-input-file + (or native-inputs inputs) + (string-append "/bin/" file)) ".")) + '("config.guess" "config.sub"))))) + #~()) (add-after 'install 'add-install-to-pythonpath (@@ (guix build python-build-system) add-install-to-pythonpath)) (add-after 'add-install-to-pythonpath 'wrap-for-python @@ -3022,16 +3061,20 @@ guidelines.") libnotify packagekit)) (native-inputs - (list pkg-config - desktop-file-utils - glib - autoconf - automake - gettext-minimal - xmlto - docbook-xml-4.1.2 - docbook-xsl - libxml2)) + (append + (if (target-riscv64?) + (list config) + '()) + (list pkg-config + desktop-file-utils + glib + autoconf + automake + gettext-minimal + xmlto + docbook-xml-4.1.2 + docbook-xsl + libxml2))) (home-page "https://github.com/zdohnal/system-config-printer") (synopsis "CUPS administration tool") (description @@ -3241,9 +3284,8 @@ API add-ons to make GTK+ widgets OpenGL-capable.") (setenv "DISPLAY" ":1")))))) (inputs (append - ;; GJS depends on Rust, which is x86_64-only so far, so remove the GJS - ;; dependency on other platforms (FIXME). - (if (target-x86-64?) + ;; GJS depends on Rust so remove the GJS dependency on other platforms. + (if (supported-package? gjs) (list gjs) '()) (list gtk+ libxml2))) @@ -4511,7 +4553,7 @@ passwords in the GNOME keyring.") (define-public vala (package (name "vala") - (version "0.56.14") + (version "0.56.16") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/vala/" @@ -4519,7 +4561,7 @@ passwords in the GNOME keyring.") "vala-" version ".tar.xz")) (sha256 (base32 - "0mzmldhf6474dp2jkxj160kkafdz32c2l5f8xnm05p4vr9lc50lk")))) + "16yaiff5nl2dfyvs3bj8y7wvzh9riz6wqlx7csgg1lpm01b7nj05")))) (build-system glib-or-gtk-build-system) (arguments (list @@ -5030,7 +5072,7 @@ libxml to ease remote use of the RESTful API.") (define-public libshumate (package (name "libshumate") - (version "1.0.5") + (version "1.2.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -5038,11 +5080,10 @@ libxml to ease remote use of the RESTful API.") name "-" version ".tar.xz")) (sha256 (base32 - "0v4m07vxm3m4a2vqkp2wfsc3zsf92fpigc1k8yq49vkpj7gxikx8")))) + "04cwakbdr68nw4kh956xhf447fawz8badpyd76hg4ir1gq3yw18i")))) (build-system meson-build-system) (arguments - (list #:configure-flags #~(list "-Dlibsoup3=true") - #:phases + (list #:phases #~(modify-phases %standard-phases (replace 'check (lambda* (#:key tests? test-options #:allow-other-keys) @@ -5062,6 +5103,7 @@ libxml to ease remote use of the RESTful API.") (list gi-docgen `(,glib "bin") gobject-introspection + gperf pkg-config ;; For tests: xorg-server-for-tests @@ -5072,7 +5114,9 @@ libxml to ease remote use of the RESTful API.") (list cairo glib gtk + json-glib libsoup + protobuf-c sqlite)) (home-page "https://wiki.gnome.org/Projects/libshumate") (synopsis "GtkWidget C library for displaying maps") @@ -5576,7 +5620,7 @@ keyboard shortcuts.") (arguments (list #:glib-or-gtk? #t)) (native-inputs (list pkg-config - cmake + cmake-minimal gettext-minimal desktop-file-utils appstream-glib @@ -9392,6 +9436,7 @@ properties, screen resolution, and other GNOME parameters.") (add-after 'install 'wrap-programs (lambda* (#:key inputs #:allow-other-keys) (let ((gi-typelib-path (getenv "GI_TYPELIB_PATH")) + (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH")) (python-path (string-join (filter (lambda (item) @@ -9411,6 +9456,19 @@ properties, screen resolution, and other GNOME parameters.") "path => imports.gi.GIRepository.Repository." "prepend_search_path(path));\n" all))) + ;; Screencast requires a pipewire service running + ;; (i.e. as provided by home-pipewire-service-type) + (substitute* (string-append #$output "/share/gnome-shell/" + "org.gnome.Shell.Screencast") + (("imports\\.package\\.start" all) + (string-append "'" gi-typelib-path "'.split(':').forEach(" + "path => imports.gi.GIRepository.Repository." + "prepend_search_path(path));\n" + "imports.gi.GLib.setenv('GST_PLUGIN_SYSTEM_PATH'," + "[imports.gi.GLib.getenv('GST_PLUGIN_SYSTEM_PATH')," + "'" gst-plugin-path "'].filter(v => v).join(':')," + "true);\n" + all))) (for-each (lambda (prog) (wrap-program (string-append #$output "/bin/" prog) @@ -9476,6 +9534,7 @@ printf '~a is deprecated. Use the \"gnome-extensions\" CLI or \ gnome-settings-daemon graphene gst-plugins-base + gst-plugins-good ibus libcanberra libcroco @@ -9486,6 +9545,7 @@ printf '~a is deprecated. Use the \"gnome-extensions\" CLI or \ mesa-headers mutter network-manager-applet + pipewire polkit pulseaudio python-pygobject @@ -9521,15 +9581,13 @@ like switching to windows and launching applications.") `(#:glib-or-gtk? #t)) ; To wrap binaries and/or compile schemas (native-inputs (append - ;; GJS depends on Rust, which is x86_64-only so far, so remove the GJS - ;; dependency on other platforms (FIXME). - (if (target-x86-64?) - (list gjs) - '()) + ;; GJS depends on Rust so remove the GJS dependency on other platforms. + (if (supported-package? gjs) + (list gjs) + '()) (list gettext-minimal `(,glib "bin") gobject-introspection - node perl pkg-config python-wrapper @@ -10282,14 +10340,9 @@ playing media, scanning, and much more.") (gnome-meta-package (name "gnome-meta-core-utilities") (propagated-inputs - (append - ;; XXX: EoG requires librsvg-next, which depends on Rust, which currently - ;; only works on x86_64, so exclude it on other architectures. - (if (string-prefix? "x86_64" (%current-system)) - (list eog) - '()) (list baobab cheese + eog epiphany evince file-roller @@ -10314,7 +10367,7 @@ playing media, scanning, and much more.") totem tracker-miners xdg-desktop-portal-gnome - yelp))))) + yelp)))) (define-public gnome-essential-extras (gnome-meta-package @@ -12088,7 +12141,7 @@ advanced image management tool") (define-public terminator (package (name "terminator") - (version "2.1.3") + (version "2.1.4") (source (origin (method url-fetch) @@ -12096,7 +12149,7 @@ advanced image management tool") "releases/download/v" version "/" name "-" version ".tar.gz")) (sha256 - (base32 "1rbarn9pq3g8k13clxiy0d62g0fxhkg5bcxw2h626wkb7lzr9s8a")))) + (base32 "1s65y2yjrigbvqzgxvwr8pj199199bx7m0nhf7g1vrk2x3nb09xg")))) (build-system python-build-system) (native-inputs `(("gettext" ,gettext-minimal) @@ -13367,6 +13420,14 @@ libraries. Applications do not need to be recompiled--or even restarted.") #:configure-flags #~(list "-Dnetwork_tests=false" "-Ddocs=true") #:phases #~(modify-phases %standard-phases + (add-after 'unpack 'patch-source + (lambda _ + ;; With Gnome 4.14, GtkStackPage has an autoptr already, so it'd + ;; get redefined. Drop this phase when updating gnome-builder to + ;; 46.0 or newer. See also + ;; <https://gitlab.gnome.org/GNOME/gnome-builder/-/commit/7aaaecefc2ea8a37eaeae8b4d726d119d4eb8fa3> + (substitute* "src/libide/tweaks/ide-tweaks-window.c" + (("G_DEFINE_AUTOPTR_CLEANUP_FUNC \\(GtkStackPage, .*\\)") "")))) (add-after 'unpack 'patch-meson (lambda* (#:key inputs #:allow-other-keys) (substitute* "meson.build" |