me
/
guix
Archived
1
0
Fork 0

gnu: gnome-shell: Update to 40.5.

Remove the theme patch that does not apply anymore because the CSS files have
been revamped.

* gnu/packages/patches/gnome-shell-CVE-2020-17489.patch: Remove it.
* gnu/packages/patches/gnome-shell-theme: Remove it.
* gnu/packages/patches/gnome-shell-disable-test.patch: Update it.
* gnu/local.mk (DIST_PATCH_DATA): Update it.
* gnu/packages/gnome.scm (gnome-shell): Update to 40.5.
[source]: Fix the URI. Update the patches. Remote the snippet.
[arguments]: Remove trailing #t.
<#:phases>: Add a 'skip-gtk-update-icon-cache phase. Remove the
'convert-logo-to-png phase. Remove the inkscape disallowed reference.
[native-inputs]: Remove inkscape. Add hicolor-icon-theme.
[inputs]: Add gtk and graphene.
[properties]: Remove it.
master
Mathieu Othacehe 2021-09-26 18:40:46 +00:00
parent ac1043abcf
commit 129875d648
No known key found for this signature in database
GPG Key ID: 8354763531769CA6
5 changed files with 23 additions and 141 deletions

View File

@ -1159,9 +1159,7 @@ dist_patch_DATA = \
%D%/packages/patches/gmp-faulty-test.patch \
%D%/packages/patches/gnash-fix-giflib-version.patch \
%D%/packages/patches/gnome-online-miners-tracker-3.patch \
%D%/packages/patches/gnome-shell-theme.patch \
%D%/packages/patches/gnome-shell-disable-test.patch \
%D%/packages/patches/gnome-shell-CVE-2020-17489.patch \
%D%/packages/patches/gnome-settings-daemon-gc.patch \
%D%/packages/patches/gnome-tweaks-search-paths.patch \
%D%/packages/patches/gnupg-default-pinentry.patch \

View File

@ -8508,34 +8508,21 @@ properties, screen resolution, and other GNOME parameters.")
(define-public gnome-shell
(package
(name "gnome-shell")
(version "3.34.5")
(version "40.5")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
(version-major+minor version) "/"
(version-major version) "/"
name "-" version ".tar.xz"))
(sha256
(base32
"0l3mdn7g2c22mdhrqkxvvc1pk2w0v32f2v4a6n1phvaalwcg75nj"))
(patches (search-patches "gnome-shell-CVE-2020-17489.patch"
"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))))
"0kph3g4ix23sm3ip2b13rs7hx8sa7fvlvcyy4zdk2iaj56rmadvd"))
(patches (search-patches "gnome-shell-disable-test.patch"))
(modules '((guix build utils)))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
#:disallowed-references ,(list (gexp-input glib "bin")
(gexp-input inkscape)
(gexp-input libxslt)
(gexp-input ruby-sass))
#:configure-flags
@ -8558,13 +8545,12 @@ properties, screen resolution, and other GNOME parameters.")
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")))
(string-append "keysdir = '" keysdir "'\n"))))))
(add-after 'unpack 'skip-gtk-update-icon-cache
;; Don't create 'icon-theme.cache'.
(lambda _
(substitute* "meson/postinstall.py"
(("gtk-update-icon-cache") "true"))))
(add-before 'configure 'record-absolute-file-names
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "js/misc/ibusManager.js"
@ -8574,14 +8560,12 @@ properties, screen resolution, and other GNOME parameters.")
(substitute* "js/ui/status/keyboard.js"
(("'gkbd-keyboard-display'")
(string-append "'" (assoc-ref inputs "libgnomekbd")
"/bin/gkbd-keyboard-display'")))
#t))
"/bin/gkbd-keyboard-display'")))))
(add-before 'check 'pre-check
(lambda* (#:key inputs #:allow-other-keys)
;; Tests require a running X server.
(system "Xvfb :1 &")
(setenv "DISPLAY" ":1")
#t))
(setenv "DISPLAY" ":1")))
(add-after 'install 'wrap-programs
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
@ -8602,23 +8586,22 @@ properties, screen resolution, and other GNOME parameters.")
(wrap-program (string-append out "/bin/" prog)
`("GUIX_PYTHONPATH" ":" prefix (,python-path))
`("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
'("gnome-shell-extension-tool" "gnome-shell-perf-tool"))
#t)))
'("gnome-shell-extension-tool" "gnome-shell-perf-tool")))))
(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
;; By default intltool 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"))
'("intltool" "glib:bin"))
#:outputs outputs)))))))
(native-inputs
`(("asciidoc" ,asciidoc)
("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)
("hicolor-icon-theme" ,hicolor-icon-theme)
("intltool" ,intltool)
("pkg-config" ,pkg-config)
("python" ,python)
@ -8636,10 +8619,12 @@ properties, screen resolution, and other GNOME parameters.")
("gdm" ,gdm)
("gdk-pixbuf" ,gdk-pixbuf+svg)
("gjs" ,gjs)
("gtk" ,gtk)
("gnome-autoar" ,gnome-autoar)
("gnome-bluetooth" ,gnome-bluetooth)
("gnome-desktop" ,gnome-desktop)
("gnome-settings-daemon" ,gnome-settings-daemon)
("graphene" ,graphene)
("gst-plugins-base" ,gst-plugins-base)
("ibus" ,ibus)
("libcanberra" ,libcanberra)
@ -8661,9 +8646,6 @@ properties, screen resolution, and other GNOME parameters.")
;; Missing propagation? See also: <https://bugs.gnu.org/27264>
("librsvg" ,librsvg)
("geoclue" ,geoclue)))
;; CVE-2019-3820 was fixed before GNOME 3.34 was released, in upstream
;; commit f0a7395b3006360905ccdc642982f9fc67378927.
(properties '((lint-hidden-cve . ("CVE-2019-3820"))))
(synopsis "Desktop shell for GNOME")
(home-page "https://wiki.gnome.org/Projects/GnomeShell")
(description

View File

@ -1,46 +0,0 @@
From 05b7aec747282f62212b605249d518280ff80059 Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Mon, 27 Jul 2020 10:58:22 -0400
Subject: [PATCH] loginDialog: Reset auth prompt on vt switch before fade in
At the moment, if a user switches to the login screen vt,
the login screen fades in whatever was on screen prior, and
then does a reset.
It makes more sense to reset first, so we fade in what the
user is going to interact with instead of what they interacted
with before.
Fixes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/2997
---
js/gdm/loginDialog.js | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/js/gdm/loginDialog.js b/js/gdm/loginDialog.js
index c3f90dc58..6b35ebb16 100644
--- a/js/gdm/loginDialog.js
+++ b/js/gdm/loginDialog.js
@@ -920,16 +920,15 @@ var LoginDialog = GObject.registerClass({
if (this.opacity == 255 && this._authPrompt.verificationStatus == AuthPrompt.AuthPromptStatus.NOT_VERIFYING)
return;
+ if (this._authPrompt.verificationStatus !== AuthPrompt.AuthPromptStatus.NOT_VERIFYING)
+ this._authPrompt.reset();
+
this._bindOpacity();
this.ease({
opacity: 255,
duration: _FADE_ANIMATION_TIME,
mode: Clutter.AnimationMode.EASE_OUT_QUAD,
- onComplete: () => {
- if (this._authPrompt.verificationStatus != AuthPrompt.AuthPromptStatus.NOT_VERIFYING)
- this._authPrompt.reset();
- this._unbindOpacity();
- }
+ onComplete: () => this._unbindOpacity(),
});
}
--
2.30.1

View File

@ -1,17 +1,16 @@
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 @@
--- a/src/st/meson.build 2021-09-21 19:07:38.673049200 +0000
+++ b/src/st/meson.build 2021-09-26 18:23:38.461569826 +0000
@@ -191,18 +191,6 @@
sources: st_enums[1]
)
-test_theme = executable('test-theme',
- sources: 'test-theme.c',
- c_args: st_cflags,
- dependencies: [mutter_dep, gtk_dep],
- dependencies: [mutter_dep, gtk_dep, libxml_dep],
- build_rpath: mutter_typelibdir,
- link_with: libst
-)

View File

@ -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 {