X-Git-Url: https://git.hcoop.net/jackhill/guix/guix.git/blobdiff_plain/4e36c8a07ba419ba1ab95e0dc6cc99bdd920e49e..dac3fc069287ca2233e941c12d305954ad30f947:/gnu/packages/gnome.scm diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index cbb69e1fd6..d727f18ed8 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -126,6 +126,7 @@ #:use-module (gnu packages iso-codes) #:use-module (gnu packages kerberos) #:use-module (gnu packages libcanberra) + #:use-module (gnu packages libffi) #:use-module (gnu packages libunistring) #:use-module (gnu packages libunwind) #:use-module (gnu packages libusb) @@ -140,6 +141,7 @@ #: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 openldap) #:use-module (gnu packages package-management) @@ -153,17 +155,21 @@ #:use-module (gnu packages polkit) #:use-module (gnu packages popt) #:use-module (gnu packages pretty-print) + #:use-module (gnu packages protobuf) #:use-module (gnu packages pulseaudio) #:use-module (gnu packages python) #:use-module (gnu packages python-crypto) #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) #:use-module (gnu packages rdesktop) + #:use-module (gnu packages rdf) #:use-module (gnu packages readline) #:use-module (gnu packages ruby) #:use-module (gnu packages rust) #:use-module (gnu packages samba) #:use-module (gnu packages scanner) + #:use-module (gnu packages sdl) + #:use-module (gnu packages search) #:use-module (gnu packages selinux) #:use-module (gnu packages slang) #:use-module (gnu packages speech) @@ -261,10 +267,10 @@ Desktop. It is designed to be as simple as possible and has some unique features to enable users to create their discs easily and quickly.") (license license:gpl2+))) -(define-public sysprof +(define-public libcloudproviders (package - (name "sysprof") - (version "3.36.0") + (name "libcloudproviders") + (version "0.3.1") (source (origin (method url-fetch) @@ -273,41 +279,457 @@ features to enable users to create their discs easily and quickly.") (version-major+minor version) "/" name "-" version ".tar.xz")) (sha256 - (base32 "024i0gzqnm79rpr4gqxdvcj6gvf82xdlcp2p1k9ikcppmi6xnw46")))) + (base32 "0aars24myf6n8b8hm1n12hsgcm54097kpbpm4ba31zp1l4y22qs7")))) (build-system meson-build-system) + (outputs '("out" "doc")) (arguments - `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas. + `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas #:configure-flags (list - ;; SystemD not required. - "-Dsystemdunitdir=/tmp"))) + "-Denable-gtk-doc=true") + #: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"))) + (mkdir-p (string-append doc "/share")) + (rename-file + (string-append out "/share/gtk-doc") + (string-append doc "/share/gtk-doc")) + #t)))))) (native-inputs - `(("desktop-file-utils" ,desktop-file-utils) - ("gettext" ,gettext-minimal) - ("glib:bin" ,glib "bin") + `(("glib:bin" ,glib "bin") ("gobject-introspection" ,gobject-introspection) - ("gtk+:bin" ,gtk+ "bin") - ("itstool" ,itstool) + ("gtk-doc" ,gtk-doc) ("pkg-config" ,pkg-config) - ("xmllint" ,libxml2))) + ("vala" ,vala))) (inputs - `(("libdazzle" ,libdazzle) - ("libunwind" ,libunwind) - ("pango" ,pango) - ("polkit" ,polkit))) + `(("glib" ,glib) + ("glib-networking" ,glib-networking))) + (synopsis "Cloudproviders Integration API") + (description "Libcloudproviders is a DBus API that allows cloud storage sync +clients to expose their services. Clients such as file managers and desktop +environments can then provide integrated access to the cloud providers +services.") + (home-page "https://csorianognome.wordpress.com/2015/07/07/cloud-providers/") + (license license:lgpl3+))) + +(define-public libgrss + (package + (name "libgrss") + (version "0.7.0") + (source + (origin + (method url-fetch) + (uri + (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 "1nalslgyglvhpva3px06fj6lv5zgfg0qmj0sbxyyl5d963vc02b7")))) + (build-system glib-or-gtk-build-system) + (outputs '("out" "doc")) + (arguments + `(#:configure-flags + (list + "--enable-gtk-doc" + (string-append "--with-html-dir=" + (assoc-ref %outputs "doc") + "/share/gtk-doc/html")) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-docbook-xml + (lambda* (#:key inputs #:allow-other-keys) + (with-directory-excursion "doc/reference" + (substitute* "libgrss-docs.sgml" + (("http://www.oasis-open.org/docbook/xml/4.1.2/") + (string-append (assoc-ref inputs "docbook-xml") + "/xml/dtd/docbook/")))) + #t))))) + (native-inputs + `(("docbook-xml" ,docbook-xml-4.1.2) + ("gobject-introspection" ,gobject-introspection) + ("gtk-doc" ,gtk-doc) + ("pkg-config" ,pkg-config))) + (propagated-inputs + `(("glib" ,glib) + ("libsoup" ,libsoup) + ("libxml2" ,libxml2))) + (synopsis "Glib library for feeds") + (description "LibGRSS is a Glib abstaction to handle feeds in RSS, Atom and +other formats.") + (home-page "https://wiki.gnome.org/Projects/Libgrss") + (license license:lgpl3+))) + +(define-public gnome-js-common + (package + (name "gnome-js-common") + (version "0.1.2") + (source + (origin + (method url-fetch) + (uri + (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.gz")) + (sha256 + (base32 "1zv5b9bcbclzj64xd9kgql4ndmbwvvi6cl937ykw8fp21xgh8z7y")))) + (build-system glib-or-gtk-build-system) + (arguments + `(#:configure-flags + (list + "--disable-static"))) + (native-inputs + `(("gettext" ,gettext-minimal) + ("intltool" ,intltool) + ("pkg-config" ,pkg-config))) + (synopsis "Common JS Modules") + (description "GNOME-JS-Common provides common modules for GNOME JavaScript +bindings.") + (home-page "https://wiki.gnome.org/Projects/Seed") + (license license:gpl3+))) + +(define-public seed + (package + (name "seed") + (version "3.8.1") + (source + (origin + (method url-fetch) + (uri + (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 "0cmcxaggcdcy13j27gy8id2qsf2p2sl4bz2mwb9zhv3gzavlvjw0")) + (patches + (search-patches "seed-webkit.patch")))) + (build-system glib-or-gtk-build-system) + (outputs '("out" "doc")) + (arguments + `(#:configure-flags + (list + "--disable-static" + "--enable-xorg-module" + (string-append "--with-html-dir=" + (assoc-ref %outputs "doc") + "/share/gtk-doc/html") + "--with-webkit=4.0") + #:phases + (modify-phases %standard-phases + ;; The seed-webkit.patch patches configure.ac. + ;; So the source files need to be re-bootstrapped. + (add-after 'unpack 'trigger-bootstrap + (lambda _ + (for-each delete-file + (list + "configure" + "Makefile.in")) + #t)) + (add-after 'unpack 'patch-tests + (lambda* (#:key outputs #:allow-other-keys) + (substitute* (find-files "." "\\.js$") + (("#!/usr/bin/env seed") + (string-append "#!" (getcwd) "/src/seed"))) + #t)) + (add-before 'build 'patch-docbook-xml + (lambda* (#:key inputs #:allow-other-keys) + (with-directory-excursion "doc" + (substitute* '("reference/seed-docs.sgml" "modules/book.xml") + (("http://www.oasis-open.org/docbook/xml/4.1.2/") + (string-append (assoc-ref inputs "docbook-xml") + "/xml/dtd/docbook/")))) + #t))))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("docbook-xml" ,docbook-xml-4.1.2) + ("gettext" ,gettext-minimal) + ("gobject-introspection" ,gobject-introspection) + ("gtk-doc" ,gtk-doc) + ("intltool" ,intltool) + ("libtool" ,libtool) + ("pkg-config" ,pkg-config))) + (inputs + `(("cairo" ,cairo) + ("dbus" ,dbus) + ("dbus-glib" ,dbus-glib) + ("gnome-js-common" ,gnome-js-common) + ("gtk+" ,gtk+) + ("gtk+-2" ,gtk+-2) + ("libffi" ,libffi) + ("libxml2" ,libxml2) + ("mpfr" ,mpfr) + ("readline" ,readline) + ("sqlite" ,sqlite) + ("xscrnsaver" ,libxscrnsaver))) (propagated-inputs `(("glib" ,glib) + ("webkit" ,webkitgtk))) + (synopsis "GObject JavaScriptCore bridge") + (description "Seed is a library and interpreter, dynamically bridging +(through GObjectIntrospection) the WebKit JavaScriptCore engine, with the +GNOME platform. It serves as something which enables you to write standalone +applications in JavaScript, or easily enable your application to be extensible +in JavaScript.") + (home-page "https://wiki.gnome.org/Projects/Seed") + (license license:lgpl2.0+))) + +(define-public libdmapsharing + (package + (name "libdmapsharing") + (version "3.9.10") + (source + (origin + (method url-fetch) + (uri + (string-append "https://www.flyn.org/projects/" + name "/" name "-" version ".tar.gz")) + (sha256 + (base32 "152hnddwxv590cn802awv3mn27ixc3s6ac691a7z02d1c5fl45p2")))) + (build-system glib-or-gtk-build-system) + (outputs '("out" "doc")) + (arguments + `(#:tests? #f ; Tests require networking. + #:configure-flags + (list + "--disable-static" + (string-append "--with-html-dir=" + (assoc-ref %outputs "doc") + "/share/gtk-doc/html")) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-docbook-xml + (lambda* (#:key inputs #:allow-other-keys) + (with-directory-excursion "doc" + (substitute* "libdmapsharing-4.0-docs.xml" + (("http://www.oasis-open.org/docbook/xml/4.3/") + (string-append (assoc-ref inputs "docbook-xml") + "/xml/dtd/docbook/")))) + #t))))) + (native-inputs + `(("check" ,check) + ("docbook-xml" ,docbook-xml-4.3) + ("gobject-introspection" ,gobject-introspection) + ("pedansee" ,pedansee) + ("pkg-config" ,pkg-config) + ("vala" ,vala))) + (inputs + `(("avahi" ,avahi) + ("gdk-pixbuf" ,gdk-pixbuf+svg) + ("gee" ,libgee) + ("gst-plugins-base" ,gst-plugins-base) ("gtk+" ,gtk+))) - (synopsis "Kernel based performance profiler") - (description "Sysprof is a sampling profiler that uses a kernel module to -generate stacktraces which are then interpreted by the userspace program -sysprof.") - (home-page "https://wiki.gnome.org/Apps/Sysprof") + (propagated-inputs + `(("glib" ,glib) + ("glib-networking" ,glib-networking) + ("gstreamer" ,gstreamer) + ("libsoup" ,libsoup))) + (synopsis "Media management library") + (description "Libdmapsharing is a library which allows programs to access, +share and control the playback of media content using DMAP (DAAP, DPAP & DACP). +It is written in C using GObject and libsoup.") + (home-page "https://launchpad.net/gtx") + (license license:lgpl2.1+))) + +(define-public gtx + (package + (name "gtx") + (version "0.2.2") + (source + (origin + (method url-fetch) + (uri + (string-append "https://launchpad.net/gtx/trunk/" + version "/+download/gtx-" version ".tar.gz")) + (sha256 + (base32 "0i4zvn5v4rf0cw3fxylk6j2pyy5lkrswdiw8jdxkys0ph0nan33n")))) + (build-system glib-or-gtk-build-system) + (outputs '("out" "doc")) + (arguments + `(#:configure-flags + (list + "--disable-static" + "--enable-gtk-doc" + (string-append "--with-html-dir=" + (assoc-ref %outputs "doc") + "/share/gtk-doc/html")))) + (native-inputs + `(("gobject-introspection" ,gobject-introspection) + ("gtk-doc" ,gtk-doc) + ("pkg-config" ,pkg-config))) + (propagated-inputs + `(("glib" ,glib))) + (synopsis "GLib Testing Framework") + (description "GTX is a small collection of convenience functions intended to +enhance the GLib testing framework. With specific emphasis on easing the pain +of writing test cases for asynchronous interactions.") + (home-page "https://launchpad.net/gtx") + (license license:lgpl2.1+))) + +(define-public dee + (package + (name "dee") + (version "1.2.7") + (source + (origin + (method url-fetch) + (uri + (string-append "https://launchpad.net/dee/1.0/" + version "/+download/dee-" version ".tar.gz")) + (sha256 + (base32 "12mzffk0lyd566y46x57jlvb9af152b4dqpasr40zal4wrn37w0v")) + (patches + (search-patches "dee-vapi.patch")))) + (build-system glib-or-gtk-build-system) + (outputs '("out" "doc")) + (arguments + `(#:configure-flags + (list + "--disable-maintainer-flags" + (string-append "--with-pygi-overrides-dir=" + (assoc-ref %outputs "out") + "/lib/python" + ,(version-major+minor + (package-version python)) + "/site-packages/gi/overrides") + (string-append "--with-html-dir=" + (assoc-ref %outputs "doc") + "/share/gtk-doc/html")) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-docbook-xml + (lambda* (#:key inputs #:allow-other-keys) + (with-directory-excursion "doc/reference/dee-1.0" + (substitute* "dee-1.0-docs.sgml" + (("http://www.oasis-open.org/docbook/xml/4.3/") + (string-append (assoc-ref inputs "docbook-xml") + "/xml/dtd/docbook/")))) + #t)) + (add-after 'patch-docbook-xml 'disable-failing-tests + (lambda _ + (substitute* "tests/test-icu.c" + (("g_test_add \\(DOMAIN\"/Default/AsciiFolder\", Fixture, 0,") + "") + (("setup, test_ascii_folder, teardown\\);") + "")) + #t)) + (add-before 'check 'pre-check + (lambda _ + ;; Tests require a running dbus-daemon. + (system "dbus-daemon &") + ;; For missing '/etc/machine-id'. + (setenv "DBUS_FATAL_WARNINGS" "0") + #t))))) + (native-inputs + `(("dbus" ,dbus) + ("dbus-test-runner" ,dbus-test-runner) + ("docbook-xml" ,docbook-xml-4.3) + ("gobject-introspection" ,gobject-introspection) + ("gtk-doc" ,gtk-doc) + ;; Would only be required by configure flag "--enable-extended-tests". + ;("gtx" ,gtx) + ("pkg-config" ,pkg-config) + ("pygobject" ,python-pygobject) + ("python" ,python-wrapper) + ("vala" ,vala))) + (inputs + `(("icu" ,icu4c))) + (propagated-inputs + `(("glib" ,glib))) + (synopsis "Model to synchronize multiple instances over DBus") + (description "Dee is a library that uses DBus to provide objects allowing +you to create Model-View-Controller type programs across DBus. It also consists +of utility objects which extend DBus allowing for peer-to-peer discoverability +of known objects without needing a central registrar.") + (home-page "https://launchpad.net/dee") (license + ;; Dual-licensed (list - ;; For newer codes. - license:gpl3+ - ;; For older codes. + license:lgpl3+ + license:gpl3+)))) + +(define-public zeitgeist + (package + (name "zeitgeist") + (version "1.0.2") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://gitlab.freedesktop.org/zeitgeist/zeitgeist.git") + (commit + (string-append "v" version)))) + (file-name + (git-file-name name version)) + (sha256 + (base32 "0ig3d3j1n0ghaxsgfww6g2hhcdwx8cljwwfmp9jk1nrvkxd6rnmv")))) + (build-system glib-or-gtk-build-system) + (arguments + `(#:configure-flags + (list + "--enable-explain-queries" + "--enable-fts" + "--enable-docs") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-docbook-xml + (lambda* (#:key inputs #:allow-other-keys) + (with-directory-excursion "doc/libzeitgeist" + (substitute* "zeitgeist-gtkdoc-index.sgml" + (("http://www.oasis-open.org/docbook/xml/4.3/") + (string-append (assoc-ref inputs "docbook-xml") + "/xml/dtd/docbook/")))) + #t)) + (add-after 'patch-docbook-xml 'disable-failing-tests + (lambda _ + (substitute* "test/direct/Makefile.am" + ((" log-test ") + "")) + (substitute* "test/c/Makefile.am" + ((" test-log ") + "")) + #t)) + (add-before 'bootstrap 'remove-autogen-script + (lambda _ + ;; To honor `autoreconf -vif` by build-system. + (delete-file "autogen.sh") + #t))))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("docbook-xml" ,docbook-xml-4.3) + ("gettext" ,gettext-minimal) + ("gobject-introspection" ,gobject-introspection) + ("gtk-doc" ,gtk-doc) + ("libtool" ,libtool) + ("pkg-config" ,pkg-config) + ("vala" ,vala) + ("xorg-server-for-tests" ,xorg-server-for-tests))) + (inputs + `(("dee-icu" ,dee) + ("gtk+" ,gtk+) + ("json-glib" ,json-glib) + ("sqlite" ,sqlite) + ("telepathy-glib" ,telepathy-glib) + ("python" ,python-wrapper) + ("python-rdflib" ,python-rdflib) + ("xapian-config" ,xapian))) + (propagated-inputs + `(("glib" ,glib))) + (synopsis "Desktop Activity Logging") + (description "Zeitgeist is a service which logs the users’s activities and +events, anywhere from files opened to websites visited and conversations. It +makes this information readily available for other applications to use. It is +able to establish relationships between items based on similarity and usage +patterns.") + (home-page "https://zeitgeist.freedesktop.org/") + (license + ;; Dual-licensed + (list + license:lgpl2.1+ license:gpl2+)))) (define-public gnome-photos @@ -607,7 +1029,7 @@ Library reference documentation.") (define-public phodav (package (name "phodav") - (version "2.4") + (version "2.5") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -615,10 +1037,21 @@ Library reference documentation.") name "-" version ".tar.xz")) (sha256 (base32 - "1hxq8c5qfah3w7mxcyy3yhzdgswplll31a69p5mqdl04bsvw5pbx")))) + "045rdzf8isqmzix12lkz6z073b5qvcqq6ad028advm5gf36skw3i")))) (build-system meson-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (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. + (lambda _ + (system "tests/virtual-dir-server &") + #t))))) (native-inputs - `(("gettext" ,gettext-minimal) + `(("docbook-xml" ,docbook-xml-4.3) + ("gettext" ,gettext-minimal) ("glib:bin" ,glib "bin") ("gtk-doc" ,gtk-doc) ("pkg-config" ,pkg-config))) @@ -2486,7 +2919,13 @@ API add-ons to make GTK+ widgets OpenGL-capable.") (description "Glade is a rapid application development (RAD) tool to enable quick & easy development of user interfaces for the GTK+ toolkit and the GNOME desktop environment.") - (license license:lgpl2.0+))) + (license license:lgpl2.0+) + (native-search-paths (list (search-path-specification + (variable "GLADE_CATALOG_SEARCH_PATH") + (files '("share/glade/catalogs"))) + (search-path-specification + (variable "GLADE_MODULE_SEARCH_PATH") + (files '("lib/glade/modules"))))))) (define-public libcroco (package @@ -2626,7 +3065,6 @@ library.") (define-public librsvg-next (package - (inherit librsvg) (name "librsvg") (version "2.48.8") (source (origin @@ -2642,11 +3080,12 @@ library.") '(begin (delete-file-recursively "vendor") #t)))) (build-system cargo-build-system) + (outputs '("out" "doc")) (arguments - `(#:modules ((guix build cargo-build-system) - (guix build utils) - ((guix build gnu-build-system) #:prefix gnu:)) - #:vendor-dir "vendor" + `(#:modules + ((guix build cargo-build-system) + (guix build utils) + ((guix build gnu-build-system) #:prefix gnu:)) #:cargo-inputs (("rust-bitflags" ,rust-bitflags-1) ("rust-cairo-rs" ,rust-cairo-rs-0.8) @@ -2688,14 +3127,21 @@ library.") ("rust-criterion" ,rust-criterion-0.3)) #:phases (modify-phases %standard-phases + (add-after 'unpack 'patch-docbook-xml + (lambda* (#:key inputs #:allow-other-keys) + (with-directory-excursion "doc" + (substitute* "rsvg-docs.xml" + (("http://www.oasis-open.org/docbook/xml/4.3/") + (string-append (assoc-ref inputs "docbook-xml") + "/xml/dtd/docbook/")))) + #t)) (add-after 'unpack 'prepare-for-build (lambda _ ;; In lieu of #:make-flags (setenv "CC" ,(cc-for-target)) ;; Something about the build environment resists building ;; successfully with the '--locked' flag. - (substitute* '("Makefile.am" - "Makefile.in") + (substitute* '("Makefile.am" "Makefile.in") (("--locked") "")) #t)) (add-before 'configure 'pre-configure @@ -2706,7 +3152,7 @@ library.") (("gdk_pixbuf_moduledir = .*$") (string-append "gdk_pixbuf_moduledir = " "$(prefix)/lib/gdk-pixbuf-2.0/2.10.0/" - "loaders\n")) + "loaders\n")) ;; Drop the 'loaders.cache' file, it's in gdk-pixbuf+svg. (("gdk_pixbuf_cache_file = .*$") "gdk_pixbuf_cache_file = $(TMPDIR)/loaders.cache\n")) @@ -2717,13 +3163,17 @@ library.") #:native-inputs native-inputs #:inputs inputs #:outputs outputs - #:configure-flags (list "--disable-static" - "--enable-vala")))) + #:configure-flags + (list "--disable-static" + "--enable-vala" + (string-append "--with-html-dir=" + (assoc-ref %outputs "doc") + "/share/gtk-doc/html"))))) (add-after 'configure 'dont-vendor-self (lambda* (#:key vendor-dir #:allow-other-keys) ;; Don't keep the whole tarball in the vendor directory (delete-file-recursively - (string-append vendor-dir "/" ,name "-" ,version ".tar.xz")) + (string-append vendor-dir "/" ,name "-" ,version ".tar.xz")) #t)) (replace 'build (assoc-ref gnu:%standard-phases 'build)) @@ -2733,9 +3183,33 @@ library.") #:test-target "check"))) (replace 'install (assoc-ref gnu:%standard-phases 'install))))) + (native-inputs + `(("docbook-xml" ,docbook-xml-4.3) + ("glib" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("pkg-config" ,pkg-config) + ("python" ,python-wrapper) + ("ruby" ,ruby) + ("vala" ,vala))) (inputs - `(("pango" ,pango) - ,@(alist-delete "pango" (package-inputs librsvg)))) + `(("bzip2" ,bzip2) + ("fontconfig" ,fontconfig) + ("freetype" ,freetype) + ("harfbuzz" ,harfbuzz) + ("libcroco" ,libcroco) + ("libgsf" ,libgsf) + ("libxml2" ,libxml2) + ("pango" ,pango))) + (propagated-inputs + `(("cairo" ,cairo) + ("gdk-pixbuf" ,gdk-pixbuf) + ("glib" ,glib))) + (synopsis "SVG rendering library") + (description "Librsvg is a library to render SVG images to Cairo surfaces. +GNOME uses this to render SVG icons. Outside of GNOME, other desktop +environments use it for similar purposes. Wikimedia uses it for Wikipedia's SVG +diagrams.") + (home-page "https://wiki.gnome.org/LibRsvg") (license license:lgpl2.1+))) (define-public libidl @@ -3577,7 +4051,7 @@ libraries written in C.") (define-public vala-0.48 (package (inherit vala) - (version "0.48.7") + (version "0.48.9") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/vala/" @@ -3585,7 +4059,7 @@ libraries written in C.") "vala-" version ".tar.xz")) (sha256 (base32 - "0lswkb7gj0chas9n3l3dbrm9l71hs77adhvm2v600id2ipi37pi8")))))) + "1agyrvslv2yh9ikiw7k5nw6j6il1l2zrzfan0pzdpb9xpg9idslw")))))) (define-public vte (package @@ -4179,7 +4653,7 @@ and other secrets. It communicates with the \"Secret Service\" using DBus.") (define-public gnome-mines (package (name "gnome-mines") - (version "3.34.0") + (version "3.36.1") (source (origin (method url-fetch) @@ -4187,8 +4661,7 @@ and other secrets. It communicates with the \"Secret Service\" using DBus.") (version-major+minor version) "/" name "-" version ".tar.xz")) (sha256 - (base32 - "1spxa6qr1y8s5rrsvpciywpvhk812ngn95s1apaxaigwy2g1iw54")))) + (base32 "0m2680r94nk61imym4x73j03jwfjd8cxm592m5ybiqdfdw6i723i")))) (build-system meson-build-system) (arguments '(#:glib-or-gtk? #t @@ -4474,7 +4947,7 @@ permission from user.") (define-public geocode-glib (package (name "geocode-glib") - (version "3.26.1") + (version "3.26.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/geocode-glib/" @@ -4482,7 +4955,7 @@ permission from user.") "geocode-glib-" version ".tar.xz")) (sha256 (base32 - "076ydfpyc4n5c9dbqmf26i4pilfi5jpw6cjcgrbgrjbndavnmajv")))) + "1l8g0f13xgkrk335afr9w8k46mziwb2jnyhl07jccl5yl37q9zh1")))) (build-system meson-build-system) (arguments `(#:phases @@ -4641,7 +5114,8 @@ services for numerous locations.") name "-" version ".tar.xz")) (sha256 (base32 - "07y1gbicz0pbxmdgwrdzyc4byy30wfwpbqgvnx27gnpqmc5s50cr")))) + "07y1gbicz0pbxmdgwrdzyc4byy30wfwpbqgvnx27gnpqmc5s50cr")) + (patches (search-patches "gnome-settings-daemon-gc.patch")))) (build-system meson-build-system) (arguments `(#:glib-or-gtk? #t @@ -4654,6 +5128,21 @@ services for numerous locations.") (string-append "-Dc_link_args=-Wl,-rpath=" (assoc-ref %outputs "out") "/lib/gnome-settings-daemon-3.0")) + + #:phases (modify-phases %standard-phases + (add-before 'configure 'set-baobab-file-name + (lambda* (#:key inputs #:allow-other-keys) + ;; Hard-code the file name of Baobab instead of looking + ;; it up in $PATH. This ensures users get the "Examine" + ;; button in the low disk space notification of GDM even + ;; if they don't have GNOME in their main profile. + (let ((baobab (assoc-ref inputs "baobab"))) + (substitute* "plugins/housekeeping/gsd-disk-space.c" + (("g_find_program_in_path \\(DISK_SPACE_ANALYZER\\)") + (string-append "g_strdup (\"" baobab + "/bin/baobab\")"))) + #t)))) + ;; Color management test can't reach the colord system service. #:tests? #f)) (native-inputs @@ -4666,6 +5155,7 @@ services for numerous locations.") ("docbook-xsl" ,docbook-xsl))) (inputs `(("alsa-lib" ,alsa-lib) + ("baobab" ,baobab) ("colord" ,colord) ("libgudev" ,libgudev) ("upower" ,upower) @@ -4702,7 +5192,7 @@ settings, themes, mouse settings, and startup of other daemons.") (define-public totem-pl-parser (package (name "totem-pl-parser") - (version "3.26.3") + (version "3.26.5") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/totem-pl-parser/" @@ -4710,7 +5200,7 @@ settings, themes, mouse settings, and startup of other daemons.") "totem-pl-parser-" version ".tar.xz")) (sha256 (base32 - "13a45py2j1r9967zgww8kd24bn2fhycd4m3kzr90sxx9l2w03z8f")))) + "132jihnf51zs98yjkc6jxyqib4f3dawpjm17g4bj4j78y93dww2k")))) (build-system meson-build-system) (arguments ;; FIXME: Tests require gvfs. @@ -5190,16 +5680,15 @@ as possible!") (define-public grilo (package (name "grilo") - (version "0.3.10") + (version "0.3.12") (source (origin (method url-fetch) - (uri (string-append "mirror://gnome/sources/" name "/" + (uri (string-append "mirror://gnome/sources/grilo/" (version-major+minor version) "/" - name "-" version ".tar.xz")) + "grilo-" version ".tar.xz")) (sha256 - (base32 - "1s7ilyywf18q26aj5c4709kfizqywjlnacp4jzmj9v9i9kkv4i3y")))) + (base32 "0w8sq5g6g1rg85h53vbll8va70fcp6082mlpmy98aa03444ddyyv")))) (build-system meson-build-system) (native-inputs `(("glib:bin" ,glib "bin") ; for glib-mkenums and glib-genmarshal @@ -5231,7 +5720,7 @@ for application developers.") (define-public grilo-plugins (package (name "grilo-plugins") - (version "0.3.10") + (version "0.3.11") (source (origin (method url-fetch) @@ -5239,8 +5728,7 @@ for application developers.") (version-major+minor version) "/" name "-" version ".tar.xz")) (sha256 - (base32 - "0jldaixc4kzycn5v8ixkjld1n0z3dp0l1p3vchgdwpvdvc7kcfw0")))) + (base32 "0wyd3n5mn7b77hxylkc3f62v01mlavh96901pz342hwrn42ydqnx")))) (build-system meson-build-system) (native-inputs `(("gettext" ,gettext-minimal) @@ -5713,7 +6201,7 @@ USB transfers with your high-level application or system daemon.") (define-public simple-scan (package (name "simple-scan") - (version "3.36.3") + (version "3.36.6") (source (origin (method url-fetch) @@ -5721,7 +6209,7 @@ USB transfers with your high-level application or system daemon.") (version-major+minor version) "/" "simple-scan-" version ".tar.xz")) (sha256 - (base32 "0gsz7jqk0fdj0mama3cnss9i1adw18cpdnlcjcjh4r5qijmvx0vh")))) + (base32 "0x9hzqnji5l966yy2k5gppl8hqasn3sd5an4sr8srjmncxcs80ys")))) (build-system meson-build-system) ;; TODO: Fix icons in home screen, About dialogue, and scan menu. (arguments @@ -7424,7 +7912,7 @@ usage and information about running processes.") (define-public gnome-bluetooth (package (name "gnome-bluetooth") - (version "3.34.0") + (version "3.34.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -7432,7 +7920,7 @@ usage and information about running processes.") name "-" version ".tar.xz")) (sha256 (base32 - "1bvbxcsjkyl0givy8nfm7112bq3c0vn1v89fdk2pip714dsfcrz8")))) + "11nk8nvz5yrbx7wp75vsiaf4rniv7ik2g3nwmgwx2b42q9v11j9y")))) (build-system meson-build-system) (native-inputs `(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc. @@ -7734,40 +8222,47 @@ like switching to windows and launching applications.") (define-public gtk-vnc (package (name "gtk-vnc") - (version "0.9.0") + (version "1.0.0") (source (origin (method url-fetch) - (uri (string-append "mirror://gnome/sources/" name "/" - (version-major+minor version) "/" - name "-" version ".tar.xz")) + (uri + (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) (sha256 - (base32 - "1dya1wc9vis8h0fv625pii1n70cckf1xjg1m2hndz989d118i6is")))) - (build-system gnu-build-system) + (base32 "1060ws037v556rx1qhfrcg02859rscksrzr8fq11himdg4d1y6m8")))) + (build-system meson-build-system) (arguments - '(#:configure-flags '("--with-gtk=3.0"))) - (propagated-inputs - `(("gtk+" ,gtk+))) ; required by gtk-vnc-2.0.pc. - (inputs - `(("cyrus-sasl" ,cyrus-sasl) - ("gnutls" ,gnutls) - ("libgcrypt" ,libgcrypt) - ("pulseaudio" ,pulseaudio))) + `(#:glib-or-gtk? #t)) ; To wrap binaries and/or compile schemas (native-inputs - `(("glib:bin" ,glib "bin") + `(("gjs" ,gjs) + ("glib:bin" ,glib "bin") ("gobject-introspection" ,gobject-introspection) ("intltool" ,intltool) + ("node" ,node) + ("perl" ,perl) ("pkg-config" ,pkg-config) - ("python-wrapper" ,python-wrapper) + ("python" ,python-wrapper) ("vala" ,vala))) + (inputs + `(("cairo" ,cairo) + ("gdk-pixbuf" ,gdk-pixbuf+svg) + ("glib" ,glib) + ("gnutls" ,gnutls) + ("libgcrypt" ,libgcrypt) + ("libsasl" ,cyrus-sasl) + ("pulseaudio" ,pulseaudio) + ("x11" ,libx11) + ("zlib" ,zlib))) + (propagated-inputs + `(("gtk+" ,gtk+))) + (synopsis "VNC client viewer widget for GTK+") + (description "GTK-VNC is a project providing client side APIs for the RFB +protocol / VNC remote desktop technology. It is built using coroutines allowing +it to be completely asynchronous while remaining single threaded. It provides a +core C library, and bindings for Python (PyGTK).") (home-page "https://wiki.gnome.org/Projects/gtk-vnc") - (synopsis "VNC viewer widget for GTK+") - (description - "GTK-VNC is a VNC viewer widget for GTK+, used by remote desktop viewing -applications, for instance the Vinagre client, GNOME Boxes and virt-viewer. -GTK-VNC implements client side RFB protocol and authentication extensions such -as SASL, TLS and VeNCrypt. Additionally it supports encoding extensions.") (license license:lgpl2.1+))) (define-public gnome-autoar @@ -7800,7 +8295,7 @@ easy, safe, and automatic.") (define-public tracker (package (name "tracker") - (version "2.3.4") + (version "2.3.5") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/tracker/" @@ -7808,7 +8303,7 @@ easy, safe, and automatic.") "tracker-" version ".tar.xz")) (sha256 (base32 - "0vai0qz9jn3z5dlzysynwhbbmslp84ygdql81f5wfxxr98j54yap")))) + "1ixxyqjlv7pnl4j8g6b72fkbjvzfspza8y71ppkncry8i6xkr223")))) (build-system meson-build-system) (arguments `(#:glib-or-gtk? #t @@ -7870,7 +8365,7 @@ endpoint and it understands SPARQL. ") (define-public tracker-miners (package (name "tracker-miners") - (version "2.3.3") + (version "2.3.4") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/tracker-miners/" @@ -7878,7 +8373,7 @@ endpoint and it understands SPARQL. ") "/tracker-miners-" version ".tar.xz")) (sha256 (base32 - "06abxrnrz7xayykrabn135rpsm6z0fqw7gibrb9j09l6swlalwkl")))) + "10wy8d8ski52k809p7s6lbw72qmg05bbmhnl00vx4qrbzqyxvc0b")))) (build-system meson-build-system) (arguments `(#:glib-or-gtk? #t @@ -8696,7 +9191,7 @@ existing databases over the internet.") ("gtk+" ,gtk+) ("gobject-introspection" ,gobject-introspection) ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) - ("libhandy" ,libhandy) + ("libhandy" ,libhandy-0.0) ("libnotify" ,libnotify) ("libsoup" ,libsoup) ("nautilus" ,nautilus) @@ -9805,7 +10300,7 @@ hexadecimal or ASCII. It is useful for editing binary files in general.") (define-public libdazzle (package (name "libdazzle") - (version "3.34.1") + (version "3.37.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/libdazzle/" @@ -9813,7 +10308,7 @@ hexadecimal or ASCII. It is useful for editing binary files in general.") "libdazzle-" version ".tar.xz")) (sha256 (base32 - "01cmcrd75b7ns7j2b4p6h7pv68vjhkcl9zbvzzx7pf4vknxir61x")))) + "03r5cr11dc031qa3694bpgm3lajrhiiln67kvl7vjj4q0scf7w7x")))) (build-system meson-build-system) (arguments `(#:phases @@ -10017,20 +10512,20 @@ advanced image management tool") (define-public libhandy (package (name "libhandy") - (version "0.0.12") + (version "1.0.0") (source (origin (method git-fetch) (uri (git-reference - (url "https://source.puri.sm/Librem5/libhandy") - (commit (string-append "v" version)))) + (url "https://gitlab.gnome.org/GNOME/libhandy") + (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "09wlknarzsbk9hr5ws6s7x5kibkhx9ayrbhshfqib4zkhq2f76hw")))) + (base32 "193y09yy0302x8fkyrnq591m805xp68bkd93fl5qggxi52k8pj0v")))) (build-system meson-build-system) (arguments `(#:configure-flags - '("-Dglade_catalog=disabled" + '("-Dglade_catalog=enabled" "-Dgtk_doc=true") #:phases (modify-phases %standard-phases @@ -10041,7 +10536,9 @@ advanced image management tool") (setenv "DISPLAY" ":1") #t))))) (inputs - `(("gtk+" ,gtk+))) + `(("gtk+" ,gtk+) + ("glade" ,glade3) + ("libxml2" ,libxml2))) (native-inputs `(("glib:bin" ,glib "bin") ("gobject-introspection" ,gobject-introspection) ; for g-ir-scanner @@ -10060,6 +10557,24 @@ interfaces for mobile devices using GTK+. It provides responsive GTK+ widgets for usage on small and big screens.") (license license:lgpl2.1+))) +(define-public libhandy-0.0 + (package + (inherit libhandy) + (version "0.0.13") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.gnome.org/GNOME/libhandy") + (commit (string-append "v" version)))) + (file-name (git-file-name "libhandy" version)) + (sha256 + (base32 "1y23k623sjkldfrdiwfarpchg5mg58smcy1pkgnwfwca15wm1ra5")))) + (arguments + (substitute-keyword-arguments (package-arguments libhandy) + ((#:configure-flags flags) + '(list "-Dglade_catalog=disabled" "-Dgtk_doc=true")))))) + (define-public libgit2-glib (package (name "libgit2-glib") @@ -10274,7 +10789,7 @@ index files needed for Adwaita to be used outside of GNOME.") (define-public polari (package (name "polari") - (version "3.32.2") + (version "3.36.3") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/polari/" @@ -10282,7 +10797,7 @@ index files needed for Adwaita to be used outside of GNOME.") "/polari-" version ".tar.xz")) (sha256 (base32 - "0h0w9j3y067l911gpj446b3a2w1i2vzr1w2a7cz7i5rhn6qkf2sp")))) + "0fpmrvhd40yay051bzn4x3gsrzdv42nav0pm5ps0np8wk1z689jg")))) (build-system meson-build-system) (arguments `(#:glib-or-gtk? #t @@ -10434,7 +10949,7 @@ join_paths\\('build-aux', 'post_install.py'\\)\\)") ("json-glib" ,json-glib) ("libcanberra" ,libcanberra) ("libgee" ,libgee) - ("libhandy" ,libhandy) + ("libhandy" ,libhandy-0.0) ("libpeas" ,libpeas) ("libsecret" ,libsecret) ("libunwind" ,libunwind) @@ -10509,7 +11024,7 @@ card sheets that you’ll find at most office supply stores.") (define-public libratbag (package (name "libratbag") - (version "0.13") + (version "0.14") (source (origin (method git-fetch) @@ -10518,7 +11033,7 @@ card sheets that you’ll find at most office supply stores.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "18y8mfr63d91278m1kcid0wvrxa1sgjs8na9af1ks2n28ssvciwq")))) + (base32 "1fpwp2sj8mf98bqasq2h8qwgprxi7k3iw33gcfid3d1lbyiacw0x")))) (build-system meson-build-system) (arguments `(#:configure-flags @@ -10576,7 +11091,7 @@ your operating-system definition: (define-public piper (package (name "piper") - (version "0.5") + (version "0.5.1") (source (origin (method git-fetch) @@ -10584,7 +11099,7 @@ your operating-system definition: (url "https://github.com/libratbag/piper") (commit version))) (sha256 - (base32 "00vrcsbsv2477l1ncpyzc61lhxgac84dsgr3sjs8qxw3nh1gaasv")) + (base32 "1nfjnsiwg2rs6gkjsxzhr2708i6di149dgwq3cf6l12rxqpb8arj")) (file-name (git-file-name name version)))) (build-system meson-build-system) (native-inputs @@ -10608,6 +11123,7 @@ your operating-system definition: #:modules (((guix build python-build-system) #:prefix python:) (guix build meson-build-system) (guix build utils)) + #:tests? #f ;; The flake8 test fails trying to validate piper.in as code. #:phases (modify-phases %standard-phases (add-after 'unpack 'dont-update-gtk-icon-cache @@ -10756,15 +11272,15 @@ GObject introspection bindings.") (define-public sysprof (package (name "sysprof") - (version "3.34.1") - (source (origin - (method url-fetch) - (uri (string-append "mirror://gnome/sources/" name "/" - (version-major+minor version) "/" - name "-" version ".tar.xz")) - (sha256 - (base32 - "1l4kr1av7933vb4zql9c5lgzivlw64hyky4nr8xin1v5if6vnjw4")))) + (version "3.36.0") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/sysprof/" + (version-major+minor version) "/" + "sysprof-" version ".tar.xz")) + (sha256 + (base32 "024i0gzqnm79rpr4gqxdvcj6gvf82xdlcp2p1k9ikcppmi6xnw46")))) (build-system meson-build-system) (arguments `(#:configure-flags @@ -10791,11 +11307,17 @@ GObject introspection bindings.") ("itstool" ,itstool) ("pkg-config" ,pkg-config) ("xmllint" ,libxml2))) - (home-page "http://www.sysprof.com/") - (synopsis "System-wide performance profiler") - (description "Sysprof is a sampling profiler that uses a kernel module -to generate stacktraces which are then interpreted by the userspace program -@command{sysprof}.") + ;; This home page is so woefully out of date as to be essentially useless. + ;; (home-page "http://www.sysprof.com") + (home-page "https://wiki.gnome.org/Apps/Sysprof") + (synopsis "System-wide performance profiler for GNU/Linux") + (description + "Sysprof performs detailed, accurate, and fast CPU profiling of an entire +GNU/Linux system including the kernel and all user-space applications. This +helps find the function(s) in which a program spends most of its time. + +It uses the kernel's built-in @code{ptrace} feature and handles shared +libraries. Applications do not need to be recompiled--or even restarted.") (license license:gpl3+))) (define-public gnome-builder @@ -10866,3 +11388,197 @@ environment (IDE) for writing GNOME-based software. It features fuzzy search, auto-completion, a mini code map, documentation browsing, Git integration, an integrated profiler via Sysprof, debugging support, and more.") (license license:gpl3+))) + +(define-public komikku + (package + (name "komikku") + (version "0.20.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/valos/Komikku/") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0m5dvqh2as5ffi9fmp3452kw44jwm6pl1jw0r5mdkpdxhid15aw8")))) + (build-system meson-build-system) + (arguments + `(#:glib-or-gtk? #t + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-sources + (lambda _ + (substitute* "komikku/utils.py" + (("from komikku\\.servers import get_servers_list") + ;; code following that line should migrate old databases + ;; but the line itself results in an import error + "return data_dir_path")))) + (add-after 'unpack 'skip-gtk-update-icon-cache + (lambda _ + (substitute* "meson_post_install.py" + (("gtk-update-icon-cache") (which "true"))) + #t)) + (add-after 'glib-or-gtk-wrap 'python-and-gi-wrap + (lambda* (#:key outputs #:allow-other-keys) + (let ((prog (string-append (assoc-ref outputs "out") + "/bin/komikku"))) + (wrap-program prog + `("PYTHONPATH" = (,(getenv "PYTHONPATH"))) + `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH")))) + #t)))))) + (inputs + `(("gtk+" ,gtk+) + ("libhandy" ,libhandy) + ("libnotify" ,libnotify) + ("libsecret" ,libsecret) + ("python-beautifulsoup4" ,python-beautifulsoup4) + ("python-cloudscraper" ,python-cloudscraper) + ("python-dateparser" ,python-dateparser) + ("python-keyring" ,python-keyring) + ("python-lxml" ,python-lxml) + ("python-magic" ,python-magic) + ("python-pillow" ,python-pillow) + ("python-pure-protobuf" ,python-pure-protobuf) + ("python-pycairo" ,python-pycairo) + ("python-pygobject" ,python-pygobject) + ("python-unidecode" ,python-unidecode))) + (native-inputs + `(("desktop-file-utils" ,desktop-file-utils) + ("gettext" ,gettext-minimal) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("pkg-config" ,pkg-config))) + (home-page "https://gitlab.com/valos/Komikku") + (synopsis "Manga reader for GNOME") + (description "Komikku is an online/offline manga reader for GNOME, +developed with the aim of being used with the Librem 5 phone.") + (license license:gpl3+))) + +(define-public libgda + (package + (name "libgda") + (version "5.2.9") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.gnome.org/GNOME/libgda.git/") + (commit "LIBGDA_5_2_9"))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "122anbk15vj2dfxrw7s48b6zwlpp7cyppshxizynvf3zmc0ygw3j")))) + (build-system gnu-build-system) + (arguments + `(#:configure-flags '("--enable-vala") + ;; There's a race between check_cnc_lock and check_threaded_cnc + ;; in tests/multi-threading. + #:parallel-tests? #f + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-glade-install + (lambda _ + (substitute* "configure.ac" + (("`\\$PKG_CONFIG --variable=catalogdir gladeui-2\\.0`") + "${datadir}/glade/catalogs") + (("`\\$PKG_CONFIG --variable=pixmapdir gladeui-2\\.0`") + "${datadir}/glade/pixmaps")) + #t)) + (add-before 'check 'pre-check + (lambda* (#:key inputs #:allow-other-keys) + ;; Tests require a running X server. + (system "Xvfb :1 &") + (setenv "DISPLAY" ":1") + #t)) + (add-after 'install 'symlink-glade-module + (lambda* (#:key outputs #:allow-other-keys) + (let* ((shlib "libgda-ui-5.0.so") + (out (assoc-ref outputs "out")) + (out/lib (string-append out "/lib")) + (moduledir (string-append out/lib "/glade/modules"))) + (mkdir-p moduledir) + (symlink (string-append out/lib "/" shlib) + (string-append moduledir "/" shlib)) + #t)))))) + (propagated-inputs + `(("libxml2" ,libxml2))) ; required by libgda-5.0.pc + (inputs + `(("glib" ,glib) + ("glade" ,glade3) + ("gtk+" ,gtk+) + ("libsecret" ,libsecret) + ("libxslt" ,libxslt) + ("openssl" ,openssl) + ("vala" ,vala))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("glib:bin" ,glib "bin") + ("gnome-common" ,gnome-common) + ("gobject-introspection" ,gobject-introspection) + ("gtk-doc" ,gtk-doc) + ("intltool" ,intltool) + ("libtool" ,libtool) + ("pkg-config" ,pkg-config) + ("vala" ,vala) + ("which" ,which) + ("xorg-server" ,xorg-server-for-tests) + ("yelp-tools" ,yelp-tools))) + (home-page "https://gitlab.gnome.org/GNOME/libgda") + (synopsis "Uniform data access") + (description + "GNU Data Access (GDA) is an attempt to provide uniform access to +different kinds of data sources (databases, information servers, mail spools, +etc). It is a complete architecture that provides all you need to access +your data.") + (license license:lgpl2.1+))) + +(define-public gtranslator + (package + (name "gtranslator") + (version "3.36.0") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "1lxd2nkji4jk8g2xmyc1a1r3ww710ddk91zh9psmx8xlb4xivaid")))) + (build-system meson-build-system) + (inputs + `(("json-glib" ,json-glib) + ("jsonrpc-glib" ,jsonrpc-glib) + ("gettext" ,gettext-minimal) + ("glib" ,glib) + ("gtk+" ,gtk+) + ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) + ("gspell" ,gspell) + ("libdazzle" ,libdazzle) + ("libgda" ,libgda) + ("libsoup" ,libsoup))) + (native-inputs + `(("glib:bin" ,glib "bin") + ("itstool" ,itstool) + ("pkg-config" ,pkg-config))) + (propagated-inputs + `(("gtksourceview" ,gtksourceview))) ; required for source view + (arguments + `(#:build-type "release" + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'skip-gtk-update-icon-cache + (lambda _ + (substitute* "build-aux/meson/meson_post_install.py" + (("gtk-update-icon-cache") (which "true"))) + #t))))) + (home-page "https://wiki.gnome.org/Apps/Gtranslator") + (synopsis "Translation making program") + (description + "gtranslator is a quite comfortable gettext po/po.gz/(g)mo files editor +for the GNOME 3.x platform with many features. It aims to be a very complete +editing environment for translation issues within the GNU gettext/GNOME desktop +world.") + (license license:gpl3+)))