[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
22/22: gnu: gnome-shell: Update package definition.
From: |
guix-commits |
Subject: |
22/22: gnu: gnome-shell: Update package definition. |
Date: |
Wed, 12 Aug 2020 04:01:15 -0400 (EDT) |
dannym pushed a commit to branch wip-desktop
in repository guix.
commit e3dbcca60ca477fdc5ddf9218d45d0feb9313dd3
Author: Raghav Gururajan <raghavgururajan@disroot.org>
AuthorDate: Tue Aug 11 08:51:31 2020 -0400
gnu: gnome-shell: Update package definition.
* gnu/packages/gnome.scm (gnome-shell) [version]: Update to 3.36.5.
[source]<origin>[sha256]: Modify base32.
[patches]: Remove field.
[snippet]: Remove field.
[outputs]: New output "doc".
[arguments]<#:configure-flags>[-Dgtk_doc]: New flag.
<#:disallowed-references>: Remove argument.
<#:modules>: Remove argument.
<#:phases>['patch-docbook]: New phase.
['patch-install-paths]: New phase.
['skip-gtk-update-icon-cache]: New phase.
['check]: Replace phase.
['no-meson-shenanigan]: New phase.
['move-doc]: New phase.
['fix-keysdir]: Remove phase.
['convert-logo-to-png]: Remove phase.
['record-absolute-file-names]: Remove phase.
['pre-check]: Remove phase.
['wrap-programs]: Remove phase.
[native-inputs]: Add dbus, docbook-xml, docbook-xsl and gtk-doc.
Remove inkscape and ruby-sassc. Replace python with python-wrapper.
[inputs]: Add appstream-glib, at-spi2-atk, bash-completion, clutter,
cogl, glib, gnome-control-center, gsettings-desktop-schemas, gstreamer,
gtk+, json-glib, network-manager, libsecret, libxml2, pango and libx11.
Remove caribou, docbook-xsl, libcanberra, libcroco, libgnomekbd, libnma,
libsoup, mesa-headers, network-manager-applet, python-pygobject,
telepathy-logger and upower.
[synopsis]: Modify.
[description]: Modify.
* gnu/packages/patches/gnome-shell-disable-test.patch: Remove file.
* gnu/packages/patches/gnome-shell-theme.patch: Remove file.
* gnu/local.mk (gnome-shell-disable-test.patch): Remove reference.
* gnu/local.mk (gnome-shell-theme.patch): Remove reference.
Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
---
gnu/local.mk | 2 -
gnu/packages/gnome.scm | 238 ++++++++++-----------
.../patches/gnome-shell-disable-test.patch | 25 ---
gnu/packages/patches/gnome-shell-theme.patch | 51 -----
4 files changed, 115 insertions(+), 201 deletions(-)
diff --git a/gnu/local.mk b/gnu/local.mk
index 92a9ffe..2739c86 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1053,8 +1053,6 @@ dist_patch_DATA =
\
%D%/packages/patches/glibc-supported-locales.patch \
%D%/packages/patches/gmp-arm-asm-nothumb.patch \
%D%/packages/patches/gmp-faulty-test.patch \
- %D%/packages/patches/gnome-shell-theme.patch \
- %D%/packages/patches/gnome-shell-disable-test.patch \
%D%/packages/patches/gnome-todo-delete-esource-duplicate.patch \
%D%/packages/patches/gnome-tweaks-search-paths.patch \
%D%/packages/patches/gnupg-default-pinentry.patch \
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 5875aea..836e0a6 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -9768,162 +9768,154 @@ configuration of various aspects of your desktop.")
(define-public gnome-shell
(package
(name "gnome-shell")
- (version "3.34.2")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnome/sources/" name "/"
- (version-major+minor version) "/"
- name "-" version ".tar.xz"))
- (sha256
- (base32
- "0k9vq2gh1nhdd6fpp7jnwx37qxaakawiqw1xnlfjvq5g5zdn8ckh"))
- (patches (search-patches "gnome-shell-theme.patch"
- "gnome-shell-disable-test.patch"))
- (modules '((guix build utils)))
- (snippet
- #~(begin
- ;; 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")
- (copy-file #$(file-append %artwork-repository
- "/logo/Guix-horizontal-white.svg")
- "data/theme/guix-logo.svg")
- #t))))
+ (version "3.36.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32 "1hj7gmjmy92xndlgw7pzk5m6j2fbzcgfd1pxc32k38gml8qg19d4"))))
(build-system meson-build-system)
+ (outputs '("out" "doc"))
(arguments
- `(#:glib-or-gtk? #t
- #:disallowed-references ((,glib "bin")
- ,inkscape ,libxslt
- ,ruby-sass)
+ `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
#: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))
-
+ (list
+ "-Dgtk_doc=true"
+ "-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"))
#:phases
(modify-phases %standard-phases
- (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")))
- (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
+ (add-after 'unpack 'patch-docbook
(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'")))
+ (substitute* '("man/gnome-shell.xml" "man/meson.build"
+ "docs/reference/shell/shell-docs.sgml"
+ "docs/reference/st/st-docs.sgml")
+ (("http://docbook.sourceforge.net/release/xsl/current")
+ (string-append (assoc-ref inputs "docbook-xsl")
+ "/xml/xsl/docbook-xsl-"
+ ,(package-version docbook-xsl)))
+ (("http://www.oasis-open.org/docbook/xml/4.3/")
+ (string-append (assoc-ref inputs "docbook-xml-4.3")
+ "/xml/dtd/docbook/"))
+ (("http://www.oasis-open.org/docbook/xml/4.2/")
+ (string-append (assoc-ref inputs "docbook-xml-4.2")
+ "/xml/dtd/docbook/")))
#t))
- (add-before 'check 'pre-check
- (lambda* (#:key inputs #:allow-other-keys)
+ (add-after 'patch-docbook 'patch-install-paths
+ (lambda* (#:key outputs #:allow-other-keys)
+ (substitute* '("src/meson.build" "src/st/meson.build"
+ "subprojects/gvc/meson.build")
+ (("install_dir_gir: pkgdatadir,")
+ "install_dir_gir: join_paths(pkgdatadir, 'gir-1.0'),")
+ (("install_dir_typelib: pkglibdir,")
+ "install_dir_typelib: join_paths(pkglibdir,
'girepository-1.0'),"))
+ (substitute* "subprojects/extensions-tool/meson.build"
+
(("bash_completion\\.get_pkgconfig_variable\\('completionsdir'\\)")
+ (string-append "'"
+ (assoc-ref outputs "out")
+ "/share/bash-completion/completions"
+ "'")))
+ #t))
+ (add-before 'configure 'skip-gtk-update-icon-cache
+ (lambda _
+ (substitute* "meson/postinstall.py"
+ (("gtk-update-icon-cache")
+ "true"))
+ #t))
+ (replace 'check
+ (lambda _
;; Tests require a running X server.
- (system "Xvfb :1 &")
+ (system "Xvfb :1 +extension GLX &")
(setenv "DISPLAY" ":1")
+ ;; Tests write to $HOME.
+ (setenv "HOME" (getcwd))
+ ;; Tests look for $XDG_RUNTIME_DIR.
+ (setenv "XDG_RUNTIME_DIR" (getcwd))
+ ;; For missing '/etc/machine-id'.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+ (invoke "dbus-launch" "ninja" "test")
#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)))))))
+ (add-before 'install 'no-meson-shenanigan
+ ;; Meson automagically invokes pkexec,
+ ;; which fails without setuid root.
+ (lambda _
+ (setenv "PKEXEC_UID" "whatever")
+ #t))
+ (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
`(("asciidoc" ,asciidoc)
- ("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
- ("desktop-file-utils" ,desktop-file-utils) ; for update-desktop-database
+ ("dbus" ,dbus)
+ ("docbook-xml-4.2" ,docbook-xml-4.2)
+ ("docbook-xml-4.3" ,docbook-xml-4.3)
+ ("docbook-xsl" ,docbook-xsl)
+ ("glib:bin" ,glib "bin")
+ ("desktop-file-utils" ,desktop-file-utils)
("gobject-introspection" ,gobject-introspection)
- ("inkscape" ,inkscape)
+ ("gtk-doc" ,gtk-doc)
("intltool" ,intltool)
("pkg-config" ,pkg-config)
- ("python" ,python)
- ("ruby-sass" ,ruby-sass)
+ ("python" ,python-wrapper)
("sassc" ,sassc)
("xsltproc" ,libxslt)
- ;; For tests
("xorg-server" ,xorg-server-for-tests)))
(inputs
`(("accountsservice" ,accountsservice)
- ("caribou" ,caribou)
- ("docbook-xsl" ,docbook-xsl)
+ ("appstream-util" ,appstream-glib)
+ ("atk-bridge" ,at-spi2-atk)
+ ("bash-completion" ,bash-completion)
+ ("clutter" ,clutter)
+ ("cogl" ,cogl)
("evolution-data-server" ,evolution-data-server)
("gcr" ,gcr)
("gdm" ,gdm)
("gdk-pixbuf" ,gdk-pixbuf+svg)
+ ("geoclue" ,geoclue)
("gjs" ,gjs)
+ ("glib" ,glib)
("gnome-autoar" ,gnome-autoar)
("gnome-bluetooth" ,gnome-bluetooth)
("gnome-desktop" ,gnome-desktop)
+ ("gnome-keybindings" ,gnome-control-center)
("gnome-settings-daemon" ,gnome-settings-daemon)
+ ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
+ ("gstreamer" ,gstreamer)
("gst-plugins-base" ,gst-plugins-base)
+ ("gtk+" ,gtk+)
+ ("gweather" ,libgweather)
("ibus" ,ibus)
- ("libcanberra" ,libcanberra)
- ("libcroco" ,libcroco)
- ("libgnomekbd" ,libgnomekbd) ;for gkbd-keyboard-display
- ("libgweather" ,libgweather)
- ("libnma" ,libnma)
- ("libsoup" ,libsoup)
- ("mesa-headers" ,mesa-headers)
- ("mutter" ,mutter)
- ("network-manager-applet" ,network-manager-applet)
- ("polkit" ,polkit)
- ("pulseaudio" ,pulseaudio)
- ("python-pygobject" ,python-pygobject)
- ("startup-notification" ,startup-notification)
- ("telepathy-logger" ,telepathy-logger)
- ("upower" ,upower)
- ;; XXX: These requirements were added in 3.24, but no mention in NEWS.
- ;; Missing propagation? See also: <https://bugs.gnu.org/27264>
+ ("json-glib" ,json-glib)
+ ("libnm" ,network-manager)
+ ("libpulse" ,pulseaudio)
("librsvg" ,librsvg)
- ("geoclue" ,geoclue)))
- (synopsis "Desktop shell for GNOME")
+ ("libsecret" ,libsecret)
+ ("libstartup-notification" ,startup-notification)
+ ("libxml2" ,libxml2)
+ ("mutter" ,mutter)
+ ("pango" ,pango)
+ ("polkit-agent" ,polkit)
+ ("x11" ,libx11)))
+ (synopsis "Next generation desktop shell")
+ (description "GNOME-Shell provides core user interface functions for the
+GNOME desktop, like switching to windows and launching applications. It takes
+advantage of the capabilities of modern graphics hardware and introduces
+innovative user interface concepts to provide a visually attractive and easy to
+use experience.")
(home-page "https://wiki.gnome.org/Projects/GnomeShell")
- (description
- "GNOME Shell provides core user interface functions for the GNOME desktop,
-like switching to windows and launching applications.")
(license license:gpl2+)))
(define-public gtk-vnc
diff --git a/gnu/packages/patches/gnome-shell-disable-test.patch
b/gnu/packages/patches/gnome-shell-disable-test.patch
deleted file mode 100644
index b4c7e73..0000000
--- a/gnu/packages/patches/gnome-shell-disable-test.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-This test seems to require a D-Bus connection not available in the build
-environment.
-
-diff -ur
/tmp/guix-build-gnome-shell-3.34.2.drv-0/gnome-shell-3.34.2/src/st/meson.build
b/src/st/meson.build
----
/tmp/guix-build-gnome-shell-3.34.2.drv-0/gnome-shell-3.34.2/src/st/meson.build
1969-12-31 19:00:00.000000000 -0500
-+++ b/src/st/meson.build 2019-12-23 00:46:14.721198022 -0500
-@@ -132,18 +132,6 @@
- sources: st_enums[1]
- )
-
--test_theme = executable('test-theme',
-- sources: 'test-theme.c',
-- c_args: st_cflags,
-- dependencies: [mutter_dep, gtk_dep],
-- build_rpath: mutter_typelibdir,
-- link_with: libst
--)
--
--test('CSS styling support', test_theme,
-- workdir: meson.current_source_dir()
--)
--
- libst_gir = gnome.generate_gir(libst,
- sources: st_gir_sources,
- nsversion: '1.0',
diff --git a/gnu/packages/patches/gnome-shell-theme.patch
b/gnu/packages/patches/gnome-shell-theme.patch
deleted file mode 100644
index 3fa0670..0000000
--- a/gnu/packages/patches/gnome-shell-theme.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-Adjust GNOME-Shell so that it uses a Guix theme by default.
-
-Patch by Ludovic Courtès <ludo@gnu.org>.
-
-diff -ur a/data/gnome-shell-theme.gresource.xml
b/data/gnome-shell-theme.gresource.xml
---- a/data/gnome-shell-theme.gresource.xml 2019-12-11 15:06:31.000000000
-0500
-+++ b/data/gnome-shell-theme.gresource.xml 2019-12-21 00:31:55.895866241
-0500
-@@ -19,6 +19,8 @@
- <file>no-events.svg</file>
- <file>no-notifications.svg</file>
- <file>noise-texture.png</file>
-+ <file>guix-background.png</file>
-+ <file>guix-logo.png</file>
- <file>pad-osd.css</file>
- <file
alias="icons/pointer-double-click-symbolic.svg">pointer-double-click-symbolic.svg</file>
- <file
alias="icons/pointer-drag-symbolic.svg">pointer-drag-symbolic.svg</file>
-diff -ur a/data/theme/gnome-shell-sass/_common.scss
b/data/theme/gnome-shell-sass/_common.scss
---- a/data/theme/gnome-shell-sass/_common.scss 2019-12-11 15:06:31.000000000
-0500
-+++ b/data/theme/gnome-shell-sass/_common.scss 2019-12-21 00:33:49.495832135
-0500
-@@ -1994,7 +1994,16 @@
- }
- }
-
-- .login-dialog-logo-bin { padding: 24px 0px; }
-+ .login-dialog-logo-bin {
-+ /* Make it a bit narrower than .login-dialog-user-list. */
-+ width: 12em;
-+ height: 8em;
-+ background: url(resource:///org/gnome/shell/theme/guix-logo.png);
-+ background-color: transparent;
-+ background-repeat: no-repeat;
-+ background-size: contain;
-+ background-position: center; }
-+
- .login-dialog-banner { color: darken($osd_fg_color,10%); }
- .login-dialog-button-box { spacing: 5px; }
- .login-dialog-message-warning { color: $warning_color; }
-@@ -2143,9 +2152,10 @@
- }
-
- #lockDialogGroup {
-- background: lighten(#2e3436, 8%)
url(resource:///org/gnome/shell/theme/noise-texture.png);
-- background-repeat: repeat;
--}
-+ background: lighten(#2e3436, 8%)
url(resource:///org/gnome/shell/theme/guix-background.png);
-+ background-repeat: no-repeat;
-+ background-size: cover;
-+ background-position: center; }
-
- #screenShieldNotifications {
- StButton#vhandle, StButton#hhandle {
- 17/22: gnu: Add egl-wayland., (continued)
- 17/22: gnu: Add egl-wayland., guix-commits, 2020/08/12
- 04/22: gnu: Add latex2html., guix-commits, 2020/08/12
- 15/22: gnu: wayland-protocols: Update package definition., guix-commits, 2020/08/12
- 16/22: gnu: Add eglexternalplatform., guix-commits, 2020/08/12
- 09/22: gnu: rygel: Update package definition., guix-commits, 2020/08/12
- 14/22: gnu: wayland: Update package definition., guix-commits, 2020/08/12
- 19/22: gnu: gjs: Update package definition., guix-commits, 2020/08/12
- 20/22: gnu: mutter: Update package definition., guix-commits, 2020/08/12
- 12/22: gnu: sushi: Update package definition., guix-commits, 2020/08/12
- 21/22: gnu: gdm: Update package definition., guix-commits, 2020/08/12
- 22/22: gnu: gnome-shell: Update package definition.,
guix-commits <=
- 05/22: gnu: Add libbraille., guix-commits, 2020/08/12
- 06/22: gnu: Add brltty., guix-commits, 2020/08/12
- 18/22: gnu: Add mozjs-68., guix-commits, 2020/08/12
- 07/22: gnu: orca: Update package definition., guix-commits, 2020/08/12
- 10/22: gnu: simple-scan: Update package definition., guix-commits, 2020/08/12