;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
;;; Copyright © 2015, 2017 Andy Wingo <wingo@igalia.com>
;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
-;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2016, 2017, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 David Thompson <davet@gnu.org>
;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
;;; Copyright © 2016, 2018 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
-;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
;;; Copyright © 2016 David Craven <david@craven.ch>
;;; Copyright © 2016, 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2017, 2018 nee <nee-git@hidamari.blue>
;;; Copyright © 2017 Chris Marusich <cmmarusich@gmail.com>
;;; Copyright © 2017 Mohammed Sadiq <sadiq@sadiqpk.org>
-;;; Copyright © 2017 Brendan Tildesley <brendan.tildesley@openmailbox.org>
+;;; Copyright © 2017 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2018 Jovany Leandro G.C <bit4bit@riseup.net>
;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com>
;;; Copyright © 2018 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; Copyright © 2018, 2019 Timothy Sample <samplet@ngyro.com>
+;;; Copyright © 2019 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2019 Florian Pelz <pelzflorian@pelzflorian.de>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (gnu packages avahi)
#:use-module (gnu packages backup)
#:use-module (gnu packages base)
+ #:use-module (gnu packages bash)
#:use-module (gnu packages bison)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages calendar)
#:use-module (gnu packages nettle)
#:use-module (gnu packages networking)
#:use-module (gnu packages ninja)
+ #:use-module (gnu packages nss)
#:use-module (gnu packages openldap)
#:use-module (gnu packages password-utils)
#:use-module (gnu packages pcre)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages polkit)
#:use-module (gnu packages popt)
+ #:use-module (gnu packages pretty-print)
#:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python)
#:use-module (gnu packages python-crypto)
("libsoup" ,libsoup)))
(propagated-inputs
`(("gcr" ,gcr)
- ("gnome-online-accounts" ,gnome-online-accounts)
+ ("gnome-online-accounts:lib" ,gnome-online-accounts "lib")
("liboauth" ,liboauth)
("libxml2" ,libxml2)))
(home-page "https://wiki.gnome.org/Projects/libgdata")
(base32
"017wgq9n00hx39n0hm784zn18hl721hbaijda868cm96bcqwxd4w"))))
(build-system gnu-build-system)
+ (arguments
+ `(#:configure-flags '("--disable-static")))
+ (propagated-inputs
+ `(;; In Requires of libnotify.pc.
+ ("gdk-pixbuf" ,gdk-pixbuf)
+ ("glib" ,glib)))
(inputs
- `(("gdk-pixbuf" ,gdk-pixbuf)
- ("glib" ,glib)
- ("gtk+" ,gtk+)
+ `(("gtk+" ,gtk+)
("libpng" ,libpng)))
(native-inputs
`(("pkg-config" ,pkg-config)
(license license:lgpl2.1)))
(define-public librsvg
+ (package
+ (name "librsvg")
+ (version "2.40.20")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "0ay9himvw1l1swcf3h1312d2iqzfl65kpbfgiyfykgvq7cydvx6g"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:configure-flags
+ (list "--disable-static"
+ "--enable-vala") ; needed for e.g. gnome-mines
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'pre-configure
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "gdk-pixbuf-loader/Makefile.in"
+ ;; By default the gdk-pixbuf loader is installed under
+ ;; gdk-pixbuf's prefix. Work around that.
+ (("gdk_pixbuf_moduledir = .*$")
+ (string-append "gdk_pixbuf_moduledir = "
+ "$(prefix)/lib/gdk-pixbuf-2.0/2.10.0/"
+ "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"))
+ #t))
+ (add-before 'check 'remove-failing-tests
+ (lambda _
+ (with-directory-excursion "tests/fixtures/reftests"
+ (for-each delete-file
+ '(;; This test fails on i686:
+ "svg1.1/masking-path-04-b.svg"
+ ;; This test fails on armhf:
+ "svg1.1/masking-mask-01-b.svg"
+ ;; This test fails on aarch64:
+ "bugs/777834-empty-text-children.svg")))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("vala" ,vala)
+ ("glib" ,glib "bin") ; glib-mkenums, etc.
+ ("gobject-introspection" ,gobject-introspection))) ; g-ir-compiler, etc.
+ (inputs
+ `(("pango" ,pango)
+ ("libcroco" ,libcroco)
+ ("bzip2" ,bzip2)
+ ("libgsf" ,libgsf)
+ ("libxml2" ,libxml2)))
+ (propagated-inputs
+ ;; librsvg-2.0.pc refers to all of that.
+ `(("cairo" ,cairo)
+ ("gdk-pixbuf" ,gdk-pixbuf)
+ ("glib" ,glib)))
+ (home-page "https://wiki.gnome.org/LibRsvg")
+ (synopsis "Render SVG files using Cairo")
+ (description
+ "Librsvg is a C library to render SVG files using the Cairo 2D graphics
+library.")
+ (license license:lgpl2.0+)))
+
+(define-public librsvg-next
(package
(name "librsvg")
(version "2.44.12")
(package
(inherit vte)
(name "vte-ng")
- (version "0.54.2.a")
+ (version "0.56.2.a")
(home-page "https://github.com/thestinger/vte-ng")
(source (origin
(method git-fetch)
(file-name (git-file-name name version))
(sha256
(base32
- "1r7d9m07cpdr4f7rw3yx33hmp4jmsk0dn5byq5wgksb2qjbc4ags"))))
+ "1lmba6i0abifmvvfb1q63ql6zh6d38148kp6skmkggiib2hi5dki"))))
(native-inputs
`(("gtk-doc" ,gtk-doc)
("gperf" ,gperf)
+ ("gcc" ,gcc-7)
("autoconf" ,autoconf)
("automake" ,automake)
("libtool" ,libtool)
`(#:phases (modify-phases %standard-phases
(replace 'bootstrap
(lambda _
+ ;; Work around GCC7 problem: <https://bugs.gnu.org/30756>.
+ (for-each unsetenv '("C_INCLUDE_PATH" "CPLUS_INCLUDE_PATH"))
+
(setenv "NOCONFIGURE" "true")
(invoke "sh" "autogen.sh"))))))
(synopsis "Enhanced VTE terminal widget")
(define-public dconf
(package
(name "dconf")
- (version "0.28.0")
+ (version "0.32.0")
(source (origin
(method url-fetch)
(uri (string-append
name "-" version ".tar.xz"))
(sha256
(base32
- "0hn7v6769xabqz7kvyb2hfm19h46z1whkair7ff752zmbs3b7lv1"))))
+ "1azz4hb9z76yxn34yrrsiib3iqz5z4vpwn5q7cncp55w365ygg38"))))
(build-system meson-build-system)
(propagated-inputs
;; In Requires of dconf.pc.
`(("gtk+" ,gtk+)
("dbus" ,dbus)))
(native-inputs
- `(("libxslt" ,libxslt) ;for xsltproc
+ `(("bash-completion" ,bash-completion)
+ ("libxslt" ,libxslt) ;for xsltproc
("libxml2" ,libxml2) ;for XML_CATALOG_FILES
("docbook-xml" ,docbook-xml-4.2)
("docbook-xsl" ,docbook-xsl)
(home-page "https://www.gnome.org")
(synopsis "Python bindings to librsvg")
(description
- "This packages provides Python bindings to librsvg, the SVG rendering
+ "This package provides Python bindings to librsvg, the SVG rendering
library.")
;; This is the license of the rsvg bindings. The license of each module
(define-public libsoup
(package
(name "libsoup")
- (version "2.64.2")
+ (version "2.66.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/libsoup/"
name "-" version ".tar.xz"))
(sha256
(base32
- "1il6lyrmfi0hfh3ysw8w1qzc1rdz0igkb7dv6d8g5mmilnac3pbm"))))
- (build-system gnu-build-system)
+ "0amfw1yvy1kjrg41rfh2vvrw5gkwnyckqbw1fab50hm6xc1acbmx"))))
+ (build-system meson-build-system)
(outputs '("out" "doc"))
(arguments
`(#:modules ((guix build utils)
- (guix build gnu-build-system)
+ (guix build meson-build-system)
(ice-9 popen))
- #:configure-flags
- (list (string-append "--with-html-dir="
- (assoc-ref %outputs "doc")
- "/share/gtk-doc/html")
- (string-append "--with-apache-module-dir="
- (assoc-ref %build-inputs "httpd")
- "/modules"))
+ #:configure-flags '("-Ddoc=true")
#:phases
(modify-phases %standard-phases
- (add-before 'configure 'disable-unconnected-socket-test
- ;; This test fails due to missing /etc/nsswitch.conf
- ;; in the build environment.
+ (add-after 'unpack 'adjust-tests
(lambda _
+ ;; This test fails due to missing /etc/nsswitch.conf
+ ;; in the build environment.
(substitute* "tests/socket-test.c"
((".*/sockets/unconnected.*") ""))
- #t))
- (add-before 'check 'pre-check
- (lambda _
- ;; The 'check-local' target runs 'env LANG=C sort -u',
- ;; unset 'LC_ALL' to make 'LANG' working.
- (unsetenv "LC_ALL")
- ;; HTTPD in Guix uses mod_event and does not build prefork.
- (substitute* "tests/httpd.conf"
- (("^LoadModule mpm_prefork_module.*$") "\n"))
;; Generate a self-signed certificate that has "localhost" as its
;; 'dnsName'. Failing to do that, and starting with GnuTLS
))
(close-pipe pipe))
#t))
- (replace 'install
- (lambda _
- (invoke "make"
- ;; Install vala bindings into $out.
- (string-append "vapidir=" %output
- "/share/vala/vapi")
- "install"))))))
+ (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"))
+ (copy-recursively (string-append out "/share/gtk-doc")
+ (string-append doc "/share/gtk-doc"))
+ (delete-file-recursively (string-append out "/share/gtk-doc"))
+ #t))))))
(native-inputs
`(("glib:bin" ,glib "bin") ; for glib-mkenums
("gobject-introspection" ,gobject-introspection)
+ ("gtk-doc" ,gtk-doc)
("intltool" ,intltool)
("pkg-config" ,pkg-config)
("python" ,python-wrapper)
(propagated-inputs
;; libsoup-2.4.pc refers to all these.
`(("glib" ,glib)
- ("libxml2" ,libxml2)))
- (inputs
- `(("glib-networking" ,glib-networking)
("libpsl" ,libpsl)
+ ("libxml2" ,libxml2)
("sqlite" ,sqlite)))
+ (inputs
+ `(("glib-networking" ,glib-networking)
+ ("mit-krb5" ,mit-krb5)))
(home-page "https://live.gnome.org/LibSoup/")
(synopsis "GLib-based HTTP Library")
(description
(define-public upower
(package
(name "upower")
- (version "0.99.8")
+ (version "0.99.10")
(source (origin
(method url-fetch)
(uri (string-append "https://gitlab.freedesktop.org/upower/upower/"
- "uploads/9125ab7ee96fdc4ecc68cfefb50c1cab/"
+ "uploads/c438511024b9bc5a904f8775cfc8e4c4/"
"upower-" version ".tar.xz"))
(sha256
(base32
- "00lzr0vyxz5lvmgya48gdb2cdgmfdim4b34jlfdyqakk1i9sl8xv"))
+ "17d2bclv5fgma2y3g8bsn9pdvspn1zrzismzdnzfivc0f2wm28k4"))
(patches (search-patches "upower-builddir.patch"))))
(build-system glib-or-gtk-build-system)
(arguments
#:configure-flags
(list (string-append "-Dudev_dir="
(assoc-ref %outputs "out")
- "/lib/udev/rules.d/"))
+ "/lib/udev/rules.d/")
+ ;; Otherwise, the RUNPATH will lack the final path component.
+ (string-append "-Dc_link_args=-Wl,-rpath="
+ (assoc-ref %outputs "out")
+ "/lib/gnome-settings-daemon-3.0"))
;; Color management test can't reach the colord system service.
#:tests? #f))
(native-inputs
(define-public aisleriot
(package
(name "aisleriot")
- (version "3.22.5")
+ (version "3.22.8")
(source (origin
(method url-fetch)
- (uri (string-append "mirror://gnome/sources/" name "/"
+ (uri (string-append "mirror://gnome/sources/aisleriot/"
(version-major+minor version) "/"
- name "-" version ".tar.xz"))
+ "aisleriot-" version ".tar.xz"))
(sha256
(base32
- "0rl39psr5xi584310pyrgw36ini4wn7yr2m1q5118w3a3v1dkhzh"))))
+ "15pm39679ymxki07sb5nvhycz4z53zwbvascyp5wm4864bn98815"))))
(build-system glib-or-gtk-build-system)
(arguments
'(#:configure-flags
(sha256
(base32
"1llyisls3pzf5bwkpxyfyxc2d3gpa09n5pjy7qsjdqrp3ya4k36g"))
- (patches (search-patches "totem-meson-easy-codec.patch"))))
+ (patches (search-patches "totem-meson-easy-codec.patch"
+ "totem-meson-compat.patch"))))
(build-system meson-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
"1gasrfqi7qrzdq1idh29r0n6ikkqjb6pbp7a8k5krfz5hkhyfin0"))))
(build-system meson-build-system)
(arguments
- `(#:phases
+ `(#:configure-flags
+ ;; Otherwise, the RUNPATH will lack the final 'eog' path component.
+ (list (string-append "-Dc_link_args=-Wl,-rpath="
+ (assoc-ref %outputs "out") "/lib/eog"))
+ #:phases
(modify-phases %standard-phases
(add-after 'install 'wrap-eog
(lambda* (#:key outputs #:allow-other-keys)
(define-public eolie
(package
(name "eolie")
- (version "0.9.52")
+ (version "0.9.60")
(source (origin
(method url-fetch)
(uri (string-append "https://gitlab.gnome.org/World/eolie/"
- "uploads/d95bf72958276c80dfaca8cce0e4e92c/"
+ "uploads/3b2ceb7eb15860587db6886bfdd8a91e/"
"eolie-" version ".tar.xz"))
(sha256
(base32
- "1s3b0rkm8sxmhzzi624snzqvz61i1rja5wxyzw6jg2kcdjcylwln"))))
+ "1s9gkzxa6457v6bh0q8n1ijq1chd2jwgvhk5kppsnya7kxvsx8qh"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
("libsecret" ,libsecret)
("gtkspell3" ,gtkspell3)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
- ("webkitgtk" ,webkitgtk-2.22)))
+ ("webkitgtk" ,webkitgtk-2.24)))
(home-page "https://wiki.gnome.org/Apps/Eolie")
(synopsis "Web browser for GNOME")
(description
(version "3.28.3.1")
(source (origin
(method url-fetch)
- (uri (string-append "mirror://gnome/sources/" name "/"
+ (uri (string-append "mirror://gnome/sources/epiphany/"
(version-major+minor version) "/"
- name "-" version ".tar.xz"))
+ "epiphany-" version ".tar.xz"))
(sha256
(base32
"1xz6xl6b0iihvczyr0cs1z5ifvpai6anb4m0ng1caiph06klc1b9"))))
("libxslt" ,libxslt)
("nettle" ,nettle) ; for hogweed
("sqlite" ,sqlite)
- ("webkitgtk" ,webkitgtk-2.22)))
+ ("webkitgtk" ,webkitgtk-2.24)))
(home-page "https://wiki.gnome.org/Apps/Web")
(synopsis "GNOME web browser")
(description
(define-public d-feet
(package
(name "d-feet")
- (version "0.3.11")
+ (version "0.3.14")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
name "-" version ".tar.xz"))
(sha256
(base32
- "1hmrijm4d9vwzx2r8qzzsy8ccpj79l1y6cc569n9jjzqcq699p53"))))
+ "1m8lwiwl5jhi0x7y6x5zmd3hjplgvdjrb8a8jg74rvkygslj1p7f"))))
(build-system glib-or-gtk-build-system)
(arguments
'(#:out-of-source? #f ; tests need to run in the source directory.
`(("gobject-introspection" ,gobject-introspection)
("gtk+" ,gtk+)
("python" ,python-wrapper)
+ ("hicolor-icon-theme" ,hicolor-icon-theme)
("python-pygobject" ,python-pygobject)))
(home-page "https://wiki.gnome.org/Apps/DFeet")
(synopsis "D-Bus debugger")
(base32
"1qbcwq89g4r67k1dj4laqj441pj4195c8hzhxn8vc6mmg8adg6kx"))))
(build-system meson-build-system)
+ (arguments
+ ;; On 32-bit platforms, the test fails with a rounding error:
+ ;; <https://bugzilla.gnome.org/show_bug.cgi?id=775249>. Just skip it for
+ ;; now.
+ (if (and (not (%current-target-system))
+ (member (%current-system) '("i686-linux" "armhf-linux")))
+ '(#:tests? #f)
+ '()))
(native-inputs
`(("glib" ,glib "bin")
("pkg-config" ,pkg-config)))
;; For testing
("dbus-launch" ,dbus)
("uuidgen" ,util-linux)
- ("xvfb" ,xorg-server)))
+ ("xvfb" ,xorg-server-for-tests)))
(propagated-inputs
;; These are all in the Requires.private field of gjs-1.0.pc.
`(("cairo" ,cairo)
(define-public gnome-online-accounts
(package
(name "gnome-online-accounts")
- (version "3.26.2")
+ (version "3.28.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
name "-" version ".tar.xz"))
(sha256
(base32
- "1l8p1ghknmkmjpnpl7jr53j66qbzpikickzbmrz0aczyhq6pdy29"))))
+ "035lmm21imr7ddpzffqabv53g3ggjscmqvlzy3j1qkv00zrlxg47"))))
+ (outputs '("out" "lib"))
(build-system glib-or-gtk-build-system)
+ (arguments
+ `(#:configure-flags
+ (list (string-append "--libdir=" (assoc-ref %outputs "out") "/lib"))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'patch-libgoa-output
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((lib (assoc-ref outputs "lib")))
+ (substitute* '("src/goa/Makefile.in" "src/goa/goa-1.0.pc.in")
+ (("@prefix@") lib)
+ (("@exec_prefix@") lib)
+ (("@libdir@") (string-append lib "/lib"))
+ (("@includedir@") (string-append lib "/include"))
+ (("@datadir@") (string-append lib "/share")))
+ #t))))))
(native-inputs
`(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
("gobject-introspection" ,gobject-introspection)
(define-public evolution-data-server
(package
(name "evolution-data-server")
- (version "3.28.1")
+ (version "3.28.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
name "-" version ".tar.xz"))
(sha256
(base32
- "12b9lfgwd57rzn9394xrbvl9ym5aqldpz9v7c9a421dsv8dgq13b"))))
+ "11sq795115vrcgxl9svscm6wg8isjj784c3d84qzb6z47zq92zj3"))))
+ (outputs '("out" "libedataserverui"))
(build-system cmake-build-system)
(arguments
'(;; XXX FIXME: 11/85 tests are failing.
;; CMakeLists.txt hard-codes runpath to just the libdir.
;; Remove it so the configure flag is respected.
(("SET\\(CMAKE_INSTALL_RPATH .*") ""))
- #t)))))
+ #t))
+ (add-after 'install 'split
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out"))
+ (libedsui (assoc-ref outputs "libedataserverui")))
+ (for-each (lambda (file)
+ (mkdir-p (dirname (string-append libedsui file)))
+ (rename-file (string-append out file)
+ (string-append libedsui file)))
+ '("/lib/pkgconfig/libedataserverui-1.2.pc"
+ "/lib/libedataserverui-1.2.so"
+ "/lib/libedataserverui-1.2.so.2"
+ "/lib/libedataserverui-1.2.so.2.0.0"
+ "/lib/girepository-1.0/EDataServerUI-1.2.typelib"
+ "/include/evolution-data-server/libedataserverui"
+ "/share/gir-1.0/EDataServerUI-1.2.gir"
+ "/share/vala/vapi/libedataserverui-1.2.vapi"
+ "/share/vala/vapi/libedataserverui-1.2.deps"))
+ (substitute* (string-append libedsui "/lib/pkgconfig/"
+ "libedataserverui-1.2.pc")
+ ((out) libedsui))
+ #t))))))
(native-inputs
`(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
("gobject-introspection" ,gobject-introspection)
(inputs
`(("bdb" ,bdb)
("gcr" ,gcr)
- ("gnome-online-accounts" ,gnome-online-accounts)
+ ("gnome-online-accounts:lib" ,gnome-online-accounts "lib")
("json-glib" ,json-glib)
("libgweather" ,libgweather)
("mit-krb5" ,mit-krb5)
(doc (assoc-ref %outputs "doc"))
(dhclient (string-append (assoc-ref %build-inputs "isc-dhcp")
"/sbin/dhclient")))
- (list "--with-systemd-logind=yes" ;In GuixSD, this is provided by elogind.
+ (list "--with-systemd-logind=yes" ;In Guix System, this is provided by elogind.
"--with-consolekit=no"
"--with-crypto=gnutls"
"--disable-config-plugin-ibft"
(define-public network-manager-openvpn
(package
(name "network-manager-openvpn")
- (version "1.8.0")
+ (version "1.8.4")
(source (origin
(method url-fetch)
(uri (string-append
"/NetworkManager-openvpn-" version ".tar.xz"))
(sha256
(base32
- "1973n89g66a3jfx8r45a811fga4kadh6r1w35cb25cz1mlii2vhn"))))
+ "0gyrv46h9k17qym48qacq4zpxbap6hi17shn921824zm98m2bdvr"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags '("--enable-absolute-paths")))
(define-public network-manager-applet
(package
(name "network-manager-applet")
- (version "1.8.4")
+ (version "1.8.14")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
name "-" version ".tar.xz"))
(sha256
(base32
- "0ag3pvjp58ykrzsjfbdxi0j5xd2i796jk7nns67zy03xwg9i0l0h"))))
+ "1js0i2kwfklahsn77qgxzdscy33drrlym3mrj1qhlw0zf8ri56ya"))))
(build-system glib-or-gtk-build-system)
- (arguments '(#:configure-flags '("--disable-migration")))
+ (arguments '(#:configure-flags '("--disable-migration")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-source
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((mbpi (assoc-ref inputs
+ "mobile-broadband-provider-info"))
+ (iso-codes (assoc-ref inputs "iso-codes")))
+ (substitute* "src/libnma/nma-mobile-providers.c"
+ (("(g_build_filename \\()dirs\\[i\\].*,\
+ (MOBILE_BROADBAND_PROVIDER_INFO.*)" all start end)
+ (string-append start "\"" mbpi "/share\", " end)))
+ (substitute* "src/libnma/nma-mobile-providers.c"
+ (("(g_build_filename \\()dirs\\[i\\].*,\
+ (ISO_3166_COUNTRY_CODES.*)" all start end)
+ (string-append start "\"" iso-codes
+ "/share\", " end)))
+ #t))))))
(native-inputs
`(("intltool" ,intltool)
("gobject-introspection" ,gobject-introspection)
("libsecret" ,libsecret)
("libselinux" ,libselinux)
("jansson" ,jansson) ; for team support
- ("modem-manager" ,modem-manager)))
+ ("modem-manager" ,modem-manager)
+ ("mobile-broadband-provider-info" ,mobile-broadband-provider-info)))
(synopsis "Applet for managing network connections")
(home-page "https://www.gnome.org/projects/NetworkManager/")
(description
(define-public gdm
(package
(name "gdm")
- (version "3.26.2.1")
+ (version "3.28.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
(patches (search-patches "gdm-CVE-2018-14424.patch"))
(sha256
(base32
- "0mxdal6hh345xk2xqmw5192jgpprkbcv1d4bwmnl4arcc00cpp8p"))))
+ "0wdm1503x66n1crdlmzmincbd2hccpxsdgjsl5anx3yjpdzs0hb0"))))
(build-system glib-or-gtk-build-system)
(arguments
'(#:configure-flags
(modify-phases %standard-phases
(add-before
'configure 'pre-configure
- (lambda* (#:key inputs #:allow-other-keys)
+ (lambda* (#:key inputs outputs #:allow-other-keys)
;; We don't have <systemd/sd-daemon.h>.
(substitute* '("common/gdm-log.c"
"daemon/gdm-server.c"
"(self, \"" name "\","
"g_getenv (\"" name "\"));\n"))
propagate)))))
- ;; Look for custom GDM conf in /run/current-system.
- (substitute* '("common/gdm-settings-desktop-backend.c")
+ ;; Find the configuration file using an environment variable.
+ (substitute* '("common/gdm-settings.c")
(("GDM_CUSTOM_CONF")
(string-append "(g_getenv(\"GDM_CUSTOM_CONF\") != NULL"
" ? g_getenv(\"GDM_CUSTOM_CONF\")"
(("\"gnome-session\"")
(string-append "\"" (assoc-ref inputs "gnome-session")
"/bin/gnome-session\"")))
+ ;; Do not automatically select the placeholder session.
+ (substitute* "daemon/gdm-session.c"
+ (("!g_str_has_suffix [(]base_name, \"\\.desktop\"[)]")
+ (string-append "!g_str_has_suffix (base_name, \".desktop\") || "
+ "(g_strcmp0(search_dirs[i], \""
+ (assoc-ref outputs "out") "/share/gdm/BuiltInSessions/"
+ "\") == 0 && "
+ "g_strcmp0(base_name, \"fail.desktop\") == 0)"))
+ (("g_error [(]\"GdmSession: no session desktop files installed, aborting\\.\\.\\.\"[)];")
+ "{ self->priv->fallback_session_name = g_strdup(\"fail\"); goto out; }"))
#t))
+ ;; GDM requires that there be at least one desktop entry
+ ;; file. This phase installs a hidden one that simply
+ ;; fails. This enables users to use GDM with a
+ ;; '~/.xsession' script with no other desktop entry files.
+ ;; See <https://bugs.gnu.org/35068>.
+ (add-after 'install 'install-placeholder-desktop-entry
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (sessions (string-append out "/share/gdm/BuiltInSessions"))
+ (fail (string-append sessions "/fail.desktop")))
+ (mkdir-p sessions)
+ (with-output-to-file fail
+ (lambda ()
+ (for-each
+ display
+ '("[Desktop Entry]\n"
+ "Encoding=UTF-8\n"
+ "Type=Application\n"
+ "Name=Fail\n"
+ "Comment=This session fails immediately.\n"
+ "NoDisplay=true\n"
+ "Exec=false\n"))))
+ #t)))
;; GDM needs GNOME Session to run these applications. We link
;; their autostart files in `share/gdm/greeter/autostart'
;; because GDM explicitly tells GNOME Session to look there.
(define-public gnome-bluetooth
(package
(name "gnome-bluetooth")
- (version "3.20.1")
+ (version "3.28.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
name "-" version ".tar.xz"))
(sha256
(base32
- "1zlqcz6jz4vzzr8gd1678i9s4015kiwcpr5szrwz4kmryfsm147a"))))
- (build-system glib-or-gtk-build-system)
+ "0q7yzklrlayj99risj096mr5x35anx94wvr6nbf6pwbvvzv7453p"))))
+ (build-system meson-build-system)
(native-inputs
`(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc.
+ ("gtk+" ,gtk+ "bin") ; gtk-update-icon-cache
("gobject-introspection" ,gobject-introspection)
("intltool" ,intltool)
("pkg-config" ,pkg-config)
(define-public gnome-control-center
(package
(name "gnome-control-center")
- (version "3.24.3")
+ (version "3.28.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
name "-" version ".tar.xz"))
(sha256
(base32
- "18ncjqjj93a39sla2zjr9i6pw59yh87p4jla899lmvi2qajd5923"))))
- (build-system glib-or-gtk-build-system)
+ "0d6pjdbsra16nav8201kaadja5yma92bhziki9601ilk2ry3v7pz"))))
+ (build-system meson-build-system)
(arguments
- '(#:phases
+ '(#:glib-or-gtk? #t
+ #:configure-flags
+ (list "-Dcheese=false")
+ #:phases
(modify-phases %standard-phases
(add-before 'configure 'patch-paths
(lambda* (#:key inputs #:allow-other-keys)
(let ((libc (assoc-ref inputs "libc"))
- (tzdata (assoc-ref inputs "tzdata")))
+ (tzdata (assoc-ref inputs "tzdata"))
+ (libgnomekbd (assoc-ref inputs "libgnomekbd"))
+ (nm-applet (assoc-ref inputs "network-manager-applet")))
(substitute* "panels/datetime/tz.h"
(("/usr/share/zoneinfo/zone.tab")
(string-append tzdata "/share/zoneinfo/zone.tab")))
(substitute* "panels/datetime/test-endianess.c"
(("/usr/share/locale")
(string-append libc "/share/locale")))
+ (substitute* "panels/region/cc-region-panel.c"
+ (("\"gkbd-keyboard-display")
+ (string-append "\"" libgnomekbd
+ "/bin/gkbd-keyboard-display")))
+ (substitute* '("panels/network/net-device-wifi.c"
+ "panels/network/net-device.c"
+ "panels/network/connection-editor/net-connection-editor.c")
+ (("\"nm-connection-editor")
+ (string-append "\"" nm-applet
+ "/bin/nm-connection-editor")))
#t))))))
(native-inputs
`(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
+ ("gtk+:bin" ,gtk+ "bin") ; for gtk-update-icon-cache
("intltool" ,intltool)
("pkg-config" ,pkg-config)
("xsltproc" ,libxslt)))
("gnome-bluetooth" ,gnome-bluetooth)
("gnome-desktop" ,gnome-desktop)
("gnome-online-accounts" ,gnome-online-accounts)
+ ("gnome-online-accounts:lib" ,gnome-online-accounts "lib")
("gnome-settings-daemon" ,gnome-settings-daemon)
("grilo" ,grilo)
("ibus" ,ibus)
("libcanberra" ,libcanberra)
+ ("libgnomekbd" ,libgnomekbd)
("libgudev" ,libgudev)
("libgtop" ,libgtop)
("libpwquality" ,libpwquality)
(define-public gnome-shell
(package
(name "gnome-shell")
- (version "3.24.3")
+ (version "3.28.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
name "-" version ".tar.xz"))
(sha256
(base32
- "1f20x36ymkp1j667hb7s7byly2gqc4m0anldy3qwp38vm8437caq"))
+ "1b9n89ij2g5nqaqp7a13jnqcd8qa2v9p55rbi71al3xvqk091ri7"))
(patches (search-patches "gnome-shell-theme.patch"))
(modules '((guix build utils)))
(snippet
#~(begin
- ;; CSS files have to be regenerated from the .scss source
- ;; that 'gnome-shell-theme.patch' modifies.
- (for-each delete-file
- (find-files "data/theme"
- "^gnome-shell.*\\.css$"))
-
;; Copy images for use on the GDM log-in screen.
(copy-file #$(file-append %artwork-repository
"/slim/0.x/background.png")
"data/theme/guix-background.png")
- (invoke #+(file-append inkscape "/bin/inkscape")
- "--export-png=data/theme/guix-logo.png"
- #$(file-append %artwork-repository
- "/logo/Guix-horizontal-white.svg"))
+ (copy-file #$(file-append %artwork-repository
+ "/logo/Guix-horizontal-white.svg")
+ "data/theme/guix-logo.svg")
#t))))
- (build-system glib-or-gtk-build-system)
+ (build-system meson-build-system)
(arguments
- '(#:phases
+ `(#:glib-or-gtk? #t
+ #:disallowed-references ((,glib "bin")
+ ,inkscape ,libxslt
+ ,ruby-sass)
+ #:configure-flags
+ (list "-Dsystemd=false"
+ ;; Otherwise, the RUNPATH will lack the final path component.
+ (string-append "-Dc_link_args=-Wl,-rpath="
+ (assoc-ref %outputs "out")
+ "/lib/gnome-shell"))
+
+ #:modules ((guix build meson-build-system)
+ (guix build utils)
+ (srfi srfi-1))
+
+ #:phases
(modify-phases %standard-phases
- (add-before 'build 'rebuild-css
- (lambda _
- ;; Rebuild the CSS files from the .scss files that our patch
- ;; modifies.
- (invoke "make" "-C" "data"
- "theme/gnome-shell.css"
- "theme/gnome-shell-high-contrast.css")))
- (replace 'install
+ (add-after 'unpack 'fix-keysdir
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(keysdir (string-append
out "/share/gnome-control-center/keybindings")))
- (zero? (system* "make"
- (string-append "keysdir=" keysdir)
- "install")))))
- (add-after
- 'install 'wrap-programs
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out"))
- (gi-typelib-path (getenv "GI_TYPELIB_PATH"))
- (python-path (getenv "PYTHONPATH")))
- (wrap-program (string-append out "/bin/gnome-shell")
- `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path)))
- (for-each
- (lambda (prog)
- (wrap-program (string-append out "/bin/" prog)
- `("PYTHONPATH" ":" prefix (,python-path))
- `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
- '("gnome-shell-extension-tool" "gnome-shell-perf-tool"))
- #t))))))
+ (substitute* "meson.build"
+ (("keysdir =.*")
+ (string-append "keysdir = '" keysdir "'\n")))
+ #t)))
+ (add-before 'configure 'convert-logo-to-png
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Convert the logo from SVG to PNG.
+ (invoke "inkscape" "--export-png=data/theme/guix-logo.png"
+ "data/theme/guix-logo.svg")))
+ (add-before 'configure 'record-absolute-file-names
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "js/misc/ibusManager.js"
+ (("'ibus-daemon'")
+ (string-append "'" (assoc-ref inputs "ibus")
+ "/bin/ibus-daemon'")))
+ (substitute* "js/ui/status/keyboard.js"
+ (("'gkbd-keyboard-display'")
+ (string-append "'" (assoc-ref inputs "libgnomekbd")
+ "/bin/gkbd-keyboard-display'")))
+ #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 'wrap-programs
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out"))
+ (gi-typelib-path (getenv "GI_TYPELIB_PATH"))
+ (python-path (getenv "PYTHONPATH")))
+ (wrap-program (string-append out "/bin/gnome-shell")
+ `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
+ ;; FIXME: gnome-shell loads these libraries with unqualified
+ ;; names only, so they need to be on LD_LIBRARY_PATH. The
+ ;; alternative might be to patch gnome-shell.
+ `("LD_LIBRARY_PATH" ":" prefix
+ ,(map (lambda (pkg)
+ (string-append (assoc-ref inputs pkg) "/lib"))
+ '("gdk-pixbuf"
+ "gnome-bluetooth" "librsvg" "libgweather"))))
+ (for-each
+ (lambda (prog)
+ (wrap-program (string-append out "/bin/" prog)
+ `("PYTHONPATH" ":" prefix (,python-path))
+ `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
+ '("gnome-shell-extension-tool" "gnome-shell-perf-tool"))
+ #t)))
+ (replace 'glib-or-gtk-wrap
+ (let ((wrap (assoc-ref %standard-phases 'glib-or-gtk-wrap)))
+ (lambda* (#:key inputs outputs #:allow-other-keys #:rest rest)
+ ;; By default Inkscape et al. would end up in the XDG_DATA_DIRS
+ ;; settings of the wrappers created by the 'glib-or-gtk-wrap'
+ ;; phase. Fix that since we don't need these.
+ (wrap #:inputs (fold alist-delete inputs
+ '("inkscape" "intltool" "glib:bin"))
+ #:outputs outputs)))))))
(native-inputs
`(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
+ ("desktop-file-utils" ,desktop-file-utils) ; for update-desktop-database
("gobject-introspection" ,gobject-introspection)
+ ("inkscape" ,inkscape)
("intltool" ,intltool)
("pkg-config" ,pkg-config)
("python" ,python)
+ ("ruby-sass" ,ruby-sass)
+ ("sassc" ,sassc)
("xsltproc" ,libxslt)
- ("ruby-sass" ,ruby-sass)))
+ ;; For tests
+ ("xorg-server" ,xorg-server-for-tests)))
(inputs
`(("accountsservice" ,accountsservice)
("caribou" ,caribou)
("evolution-data-server" ,evolution-data-server)
("gcr" ,gcr)
("gdm" ,gdm)
+ ("gdk-pixbuf" ,gdk-pixbuf+svg)
("gjs" ,gjs)
("gnome-bluetooth" ,gnome-bluetooth)
- ("gnome-control-center" ,gnome-control-center)
("gnome-desktop" ,gnome-desktop)
("gnome-settings-daemon" ,gnome-settings-daemon)
("gst-plugins-base" ,gst-plugins-base)
("ibus" ,ibus)
("libcanberra" ,libcanberra)
("libcroco" ,libcroco)
+ ("libgnomekbd" ,libgnomekbd) ;for gkbd-keyboard-display
("libgweather" ,libgweather)
("libsoup" ,libsoup)
("mesa-headers" ,mesa-headers)
;; XXX: These requirements were added in 3.24, but no mention in NEWS.
;; Missing propagation? See also: <https://bugs.gnu.org/27264>
("librsvg" ,librsvg)
- ("geoclue" ,geoclue)
- ;; XXX: required by libgjs.la.
- ("readline" ,readline)))
+ ("geoclue" ,geoclue)))
(synopsis "Desktop shell for GNOME")
(home-page "https://wiki.gnome.org/Projects/GnomeShell")
(description
(define-public tracker
(package
(name "tracker")
- (version "1.12.3")
+ (version "2.0.4")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
name "-" version ".tar.xz"))
(sha256
(base32
- "1mpq418lzba7fad0w0m3bnxvz3khf461b5zya8zmq5n1g0w99ki3"))))
+ "1mfc5lv820kr7ssi7hldn25gmshh65k19kh478qjsnb64sshsbyf"))))
(build-system glib-or-gtk-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'disable-broken-tests
+ (lambda _
+ ;; FIXME: Most of these fail with GLib-GIO-FATAL-ERROR: Settings
+ ;; schema 'org.freedesktop.Tracker.FTS' is not installed.
+ (substitute* "tests/libtracker-miner/Makefile.in"
+ (("tracker-file-notifier-test\\$\\(EXEEXT\\)") "")
+ (("tracker-miner-fs-test\\$\\(EXEEXT\\)") "")
+ (("tracker-monitor-test\\$\\(EXEEXT\\)") ""))
+ (substitute* "tests/libtracker-fts/Makefile.in"
+ (("tracker-fts-test\\$\\(EXEEXT\\)") ""))
+ (substitute* "tests/libtracker-data/Makefile.in"
+ (("tracker-ontology\\$\\(EXEEXT\\)") "")
+ (("tracker-ontology-change\\$\\(EXEEXT\\)") "")
+ (("tracker-backup\\$\\(EXEEXT\\)") "")
+ (("tracker-sparql-blank\\$\\(EXEEXT\\)") "")
+ (("tracker-sparql\\$\\(EXEEXT\\)") ""))
+ ;; These fail because the SPARQL backend could not be loaded.
+ ;; That's because /etc/machine-id is missing, but
+ ;; DBUS_FATAL_WARNINGS does not help here.
+ (substitute* "tests/libtracker-sparql/Makefile.in"
+ (("tracker-gb-737023-test\\$\\(EXEEXT\\)") "")
+ (("tracker-sparql-test\\$\\(EXEEXT\\)") ""))
+ (substitute* "tests/tracker-steroids/Makefile.in"
+ (("tracker-test\\$\\(EXEEXT\\)") ""))
+ #t))
+ ;; Two tests fail if LANG is not set.
+ (add-before 'check 'pre-check
+ (lambda _
+ (setenv "LANG" "en_US.UTF-8")
+ ;; For the missing /etc/machine-id.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+ #t)))))
(native-inputs
`(("gnome-common" ,gnome-common)
("gobject-introspection" ,gobject-introspection)
("gst-plugins-base" ,gst-plugins-base)
("sqlite" ,sqlite)
("nettle" ,nettle) ; XXX why is this needed?
+ ("python" ,python)
("poppler" ,poppler)
("libgsf" ,libgsf)
("libexif" ,libexif)
("libseccomp" ,libseccomp)
("libsoup" ,libsoup)
("libuuid" ,util-linux)))
- (arguments `(#:tests? #f)) ; XXX FIXME enable tests (some fail)
(synopsis "Metadata database, indexer and search tool")
(home-page "https://wiki.gnome.org/Projects/Tracker")
(description
(define-public nautilus
(package
(name "nautilus")
- (version "3.26.2")
+ (version "3.28.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
name "-" version ".tar.xz"))
(sha256
(base32
- "1d0l4vgcjqj4671hb6s2a56baqlasbxn3wl6vfrpdsk5qq299jbr"))))
+ "19dhpa2ylrg8d5274lahy7xqr2p9z3jnq1h4qmsh95czkpy7is4w"))))
(build-system meson-build-system)
(arguments
'(#:glib-or-gtk? #t
("pkg-config" ,pkg-config)))
(inputs
`(("dconf" ,dconf)
+ ("gexiv2" ,gexiv2)
("gvfs" ,gvfs)
("exempi" ,exempi)
("gnome-desktop" ,gnome-desktop)
(define-public dconf-editor
(package
(name "dconf-editor")
- (version "3.26.2")
+ (version "3.28.0")
(source
(origin
(method url-fetch)
name "-" version ".tar.xz"))
(sha256
(base32
- "1lcarg8igsqpq4iv5834mf9kz4cmfhfw11bwy3x7v7f497z57d18"))))
- (build-system glib-or-gtk-build-system)
- (arguments
- '(#:phases
- (modify-phases %standard-phases
- (add-before 'install 'skip-gtk-update-icon-cache
- (lambda _
- ;; Don't create 'icon-theme.cache'.
- (substitute* "editor/Makefile"
- (("gtk-update-icon-cache") "true"))
- #t)))))
+ "0nhcpwqrkmpxbhaf0cafvy6dlp6s7vhm5vknl4lgs3l24zc56ns5"))))
+ (build-system meson-build-system)
(native-inputs
`(("glib:bin" ,glib "bin") ; for glib-compile-schemas, gio-2.0.
+ ("gtk+-bin" ,gtk+ "bin") ; for gtk-update-icon-cache
("intltool" ,intltool)
- ("pkg-config" ,pkg-config)))
+ ("pkg-config" ,pkg-config)
+ ("vala" ,vala)))
(inputs
`(("dconf" ,dconf)
("gtk+" ,gtk+)
("intltool" ,intltool)
("pkg-config" ,pkg-config)))
(inputs
- `(("gnome-online-accounts" ,gnome-online-accounts)
+ `(("gnome-online-accounts:lib" ,gnome-online-accounts "lib")
("json-glib" ,json-glib)
("rest" ,rest)))
(home-page "https://wiki.gnome.org/Projects/Zapojit")
("pkg-config" ,pkg-config)))
(inputs
`(("evolution-data-server" ,evolution-data-server)
- ("gnome-online-accounts" ,gnome-online-accounts)
+ ("gnome-online-accounts:lib" ,gnome-online-accounts "lib")
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
("libdazzle" ,libdazzle)
+ ("libedataserverui" ,evolution-data-server "libedataserverui")
("libgweather" ,libgweather)
("geoclue" ,geoclue)))
(home-page "https://wiki.gnome.org/Apps/Calendar")
(inputs
`(("rest" ,rest) ; For Todoist plugin
("json-glib" ,json-glib) ; For Todoist plugin
+ ("libedataserverui" ,evolution-data-server "libedataserverui")
("libical" ,libical)
("libpeas" ,libpeas)
("python-pygobject" ,python-pygobject)
("evolution-data-server" ,evolution-data-server)
- ("gnome-online-accounts" ,gnome-online-accounts)
+ ("gnome-online-accounts:lib" ,gnome-online-accounts "lib")
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)))
(home-page "https://wiki.gnome.org/Apps/Todo")
(synopsis "GNOME's ToDo Application")
existing databases over the internet.")
(license license:gpl3+)))
-(define-public gnome-tweak-tool
+(define-public gnome-tweaks
(package
- (name "gnome-tweak-tool")
- (version "3.26.4")
+ (name "gnome-tweaks")
+ (version "3.28.1")
(source (origin
(method url-fetch)
- (uri (string-append "mirror://gnome/sources/gnome-tweak-tool/"
+ (uri (string-append "mirror://gnome/sources/gnome-tweaks/"
(version-major+minor version) "/"
- "gnome-tweak-tool-" version ".tar.xz"))
- (patches (list
- (search-patch "gnome-tweak-tool-search-paths.patch")))
+ "gnome-tweaks-" version ".tar.xz"))
+ (patches
+ (list (search-patch "gnome-tweaks-search-paths.patch")))
(sha256
(base32
- "1pq5a0kzh1sz7s7ax5c7p6212k9d51nk5bfvjfyqn99cs928187x"))))
- (build-system glib-or-gtk-build-system)
+ "1p5xydr0haz4389h6dvvbna6i1mipdzvmlfksnv0jqfvfs9sy6fp"))))
+ (build-system meson-build-system)
(arguments
- `(#:configure-flags '("--localstatedir=/tmp"
- "--sysconfdir=/tmp")
+ `(#:glib-or-gtk? #t
+ #:configure-flags '("-Dlocalstatedir=/tmp"
+ "-Dsysconfdir=/tmp")
#:imported-modules ((guix build python-build-system)
- ,@%glib-or-gtk-build-system-modules)
- #:phases (modify-phases %standard-phases
- (delete 'configure)
- (replace 'build
- (lambda* (#:key outputs #:allow-other-keys)
- (invoke "meson" "build"
- "--prefix" (assoc-ref outputs "out"))))
- (replace 'check
- (lambda _ (invoke "ninja" "-C" "build" "test")))
- (replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (invoke "ninja" "-C" "build" "install")))
- (add-after 'install 'wrap-program
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out"))
- (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
- (wrap-program (string-append out "/bin/gnome-tweak-tool")
- `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
- #t))
- (add-after 'install 'wrap
- (@@ (guix build python-build-system) wrap)))))
+ ,@%meson-build-system-modules)
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'install 'wrap
+ (@@ (guix build python-build-system) wrap))
+ (add-after 'wrap 'wrap-gi-typelib
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out"))
+ (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
+ (wrap-program (string-append out "/bin/gnome-tweaks")
+ `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
+ #t)))))
(native-inputs
`(("gtk+:bin" ,gtk+ "bin") ; For gtk-update-icon-cache
("intltool" ,intltool)
- ("meson" ,meson-for-build)
- ("ninja" ,ninja)
("pkg-config" ,pkg-config)))
(inputs
`(("gnome-desktop" ,gnome-desktop)
("python" ,python)
("python-pygobject" ,python-pygobject)))
(synopsis "Customize advanced GNOME 3 options")
- (home-page "https://wiki.gnome.org/action/show/Apps/GnomeTweakTool")
+ (home-page "https://wiki.gnome.org/Apps/Tweaks")
(description
- "GNOME Tweak Tool allows adjusting advanced configuration settings in
+ "GNOME Tweaks allows adjusting advanced configuration settings in
GNOME 3. This includes things like the fonts used in user interface elements,
alternative user interface themes, changes in window management behavior,
GNOME Shell appearance and extension, etc.")
(license license:gpl3+)))
+;; This package has been renamed by upstream.
+(define-public gnome-tweak-tool
+ (deprecated-package "gnome-tweak-tool" gnome-tweaks))
+
(define-public gnome-shell-extensions
(package
(name "gnome-shell-extensions")
("gobject-introspection" ,gobject-introspection)))
(inputs
`(("json-glib" ,json-glib)
- ("gnome-online-accounts" ,gnome-online-accounts)
+ ("gnome-online-accounts:lib" ,gnome-online-accounts "lib")
("rest" ,rest)))
(synopsis "GLib/GObject wrapper for the Facebook API")
(description "This library allows you to use the Facebook API from
wildly out of scope for those libraries. In other cases, they are not quite
generic enough to work for everyone.")
(license license:gpl3+)))
+
+(define-public evolution
+ (package
+ (name "evolution")
+ (version "3.28.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnome/sources/evolution/"
+ (version-major+minor version) "/"
+ "evolution-" version ".tar.xz"))
+ (sha256
+ (base32
+ "0sdv5lg2vlz5f4raymz9d8a5jq4j18vbqyigaip6508p3bjnfj8l"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:configure-flags
+ (list "-DENABLE_PST_IMPORT=OFF" ; libpst is not packaged
+ "-DENABLE_LIBCRYPTUI=OFF"))) ; libcryptui hasn't seen a release
+ ; in four years and cannot be built.
+ (native-inputs
+ `(("glib" ,glib "bin") ; glib-mkenums
+ ("pkg-config" ,pkg-config)
+ ("intltool" ,intltool)
+ ("itstool" ,itstool)))
+ (inputs
+ `(("enchant" ,enchant)
+ ("evolution-data-server" ,evolution-data-server) ; must be the same version
+ ("gcr" ,gcr)
+ ("gnome-autoar" ,gnome-autoar)
+ ("gnome-desktop" ,gnome-desktop)
+ ("gtkspell3" ,gtkspell3)
+ ("highlight" ,highlight)
+ ("libcanberra" ,libcanberra)
+ ("libedataserverui" ,evolution-data-server "libedataserverui")
+ ("libgweather" ,libgweather)
+ ("libnotify" ,libnotify)
+ ("libsoup" ,libsoup)
+ ("nss" ,nss)
+ ("openldap" ,openldap)
+ ("webkitgtk" ,webkitgtk)
+ ("ytnef" ,ytnef)))
+ (home-page "https://gitlab.gnome.org/GNOME/evolution")
+ (synopsis "Manage your email, contacts and schedule")
+ (description "Evolution is a personal information management application
+that provides integrated mail, calendaring and address book
+functionality.")
+ ;; See COPYING for details.
+ (license (list license:lgpl2.1 license:lgpl3 ; either one of these
+ license:openldap2.8 ; addressbook/gui/component/openldap-extract.h
+ license:lgpl2.1+)))) ; smime/lib/*
+
+(define-public gthumb
+ (package
+ (name "gthumb")
+ (version "3.8.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnome/sources/gthumb/"
+ (version-major+minor version) "/"
+ "gthumb-" version ".tar.xz"))
+ (sha256
+ (base32
+ "1l2s1facq1r6yvqjqc34aqfzlvb3nhkhn79xisxbbdlgrrxdq52f"))))
+ (build-system meson-build-system)
+ (arguments
+ `(#:glib-or-gtk? #t
+ #:configure-flags
+ ;; Ensure the RUNPATH contains all installed library locations.
+ (list (string-append "-Dc_link_args=-Wl,-rpath="
+ (assoc-ref %outputs "out")
+ "/lib/gthumb/extensions")
+ (string-append "-Dcpp_link_args=-Wl,-rpath="
+ (assoc-ref %outputs "out")
+ "/lib/gthumb/extensions"))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("glib:bin" ,glib "bin") ; for glib-compile-resources
+ ("gtk+:bin" ,gtk+ "bin") ; for gtk-update-icon-cache
+ ("desktop-file-utils" ,desktop-file-utils) ; for update-desktop-database
+ ("intltool" ,intltool)
+ ("itstool" ,itstool)))
+ (inputs
+ `(("exiv2" ,exiv2)
+ ("gtk" ,gtk+)
+ ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
+ ("gstreamer" ,gstreamer)
+ ("clutter" ,clutter)
+ ("clutter-gst" ,clutter-gst)
+ ("clutter-gtk" ,clutter-gtk)
+ ("libjpeg" ,libjpeg)
+ ("libtiff" ,libtiff)
+ ("libraw" ,libraw)))
+ (home-page "https://wiki.gnome.org/Apps/Gthumb")
+ (synopsis "GNOME image viewer and browser")
+ (description "GThumb is an image viewer, browser, organizer, editor and
+advanced image management tool")
+ (license license:gpl2+)))