diff --git a/2078.patch b/2078.patch new file mode 100644 index 0000000..bb14efb --- /dev/null +++ b/2078.patch @@ -0,0 +1,82 @@ +From 65450a836ee9e0722a2d4c3327f52345eae293c6 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Florian=20M=C3=BCllner?= +Date: Thu, 23 Dec 2021 17:18:16 +0100 +Subject: [PATCH] build: Drop incorrect positional arg + +Unlike other targets that take a name, i18n.merge_file() does not. + +Part-of: +--- + data/meson.build | 2 +- + src/calendar-server/meson.build | 2 +- + subprojects/extensions-app/data/meson.build | 2 +- + subprojects/extensions-app/data/metainfo/meson.build | 2 +- + subprojects/extensions-tool/src/templates/meson.build | 2 +- + 5 files changed, 5 insertions(+), 5 deletions(-) + +diff --git a/data/meson.build b/data/meson.build +index f924fdf806..76ae45c93a 100644 +--- a/data/meson.build ++++ b/data/meson.build +@@ -16,7 +16,7 @@ desktopconf.set('bindir', bindir) + desktopconf.set('systemd_hidden', have_systemd ? 'true' : 'false') + + foreach desktop_file : desktop_files +- i18n.merge_file('desktop', ++ i18n.merge_file( + input: configure_file( + input: desktop_file + '.in.in', + output: desktop_file + '.in', +diff --git a/src/calendar-server/meson.build b/src/calendar-server/meson.build +index 7363282a59..8b4ef411c8 100644 +--- a/src/calendar-server/meson.build ++++ b/src/calendar-server/meson.build +@@ -27,7 +27,7 @@ configure_file( + install_dir: servicedir + ) + +-i18n.merge_file('evolution-calendar.desktop', ++i18n.merge_file( + input: 'evolution-calendar.desktop.in', + output: 'evolution-calendar.desktop', + po_dir: po_dir, +diff --git a/subprojects/extensions-app/data/meson.build b/subprojects/extensions-app/data/meson.build +index d7e7d4001c..4b601e8bd1 100644 +--- a/subprojects/extensions-app/data/meson.build ++++ b/subprojects/extensions-app/data/meson.build +@@ -14,7 +14,7 @@ desktopconf.set('bindir', bindir) + desktopconf.set('app_id', app_id) + desktopconf.set('prgname', prgname) + +-i18n.merge_file('desktop', ++i18n.merge_file( + input: configure_file( + input: base_id + '.desktop.in.in', + output: desktop_file + '.in', +diff --git a/subprojects/extensions-app/data/metainfo/meson.build b/subprojects/extensions-app/data/metainfo/meson.build +index c4962c0576..a19bfa80a4 100644 +--- a/subprojects/extensions-app/data/metainfo/meson.build ++++ b/subprojects/extensions-app/data/metainfo/meson.build +@@ -1,5 +1,5 @@ + metainfo = app_id + '.metainfo.xml' +-i18n.merge_file(metainfo, ++i18n.merge_file( + input: base_id + '.metainfo.xml.in', + output: metainfo, + po_dir: po_dir, +diff --git a/subprojects/extensions-tool/src/templates/meson.build b/subprojects/extensions-tool/src/templates/meson.build +index 670e2bf448..d693bfaddb 100644 +--- a/subprojects/extensions-tool/src/templates/meson.build ++++ b/subprojects/extensions-tool/src/templates/meson.build +@@ -4,7 +4,7 @@ template_metas = [ + ] + template_deps = [] + foreach template : template_metas +- template_deps += i18n.merge_file(template, ++ template_deps += i18n.merge_file( + input: template + '.in', + output: template, + po_dir: po_dir, +-- +GitLab + diff --git a/gnome-shell.changes b/gnome-shell.changes index eb70779..fdc753d 100644 --- a/gnome-shell.changes +++ b/gnome-shell.changes @@ -1,3 +1,15 @@ +------------------------------------------------------------------- +Wed Feb 9 06:23:06 UTC 2022 - Xiaoguang Wang + +- Update gs-fate318433-prevent-same-account-multi-logins.patch: + Fix the JS ERR: Error: Wrong type number; string expected + (bsc#1195179 bsc#1195141). + +------------------------------------------------------------------- +Tue Feb 8 17:04:07 UTC 2022 - Bjørn Lie + +- Add 2078.patch: Fix build with meson 0.61 and newer. + ------------------------------------------------------------------- Thu Jan 27 02:58:53 UTC 2022 - Yifan Jiang diff --git a/gnome-shell.spec b/gnome-shell.spec index 6f86d75..82ada00 100644 --- a/gnome-shell.spec +++ b/gnome-shell.spec @@ -49,6 +49,8 @@ Patch6: gnome-shell-jsc#SLE-16051-Input-method-recommendation.patch Patch7: gnome-shell-executable-path-not-absolute.patch # PATCH-FIX-UPSTREAM gnome-shell-exit-crash-workaround.patch bsc#1190878 glgo#GNOME/gnome-shell#4344 qkzhu@suse.com -- Workaround logout crashing Patch8: gnome-shell-exit-crash-workaround.patch +# PATCH-FIX-UPSTREAM 2078.patch -- Fix build with meson 0.61 and newer +Patch9: https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2078.patch ## NOTE: Keep SLE-only patches at bottom (starting on 1000). # PATCH-FEATURE-SLE gnome-shell-gdm-login-applet.patch fate#314545 dliang@suse.com -- Add an applet on login UI to display suse icon, product name, hostname. @@ -187,13 +189,14 @@ This package contains an optional extensions app for managing GNOME Shell extens %endif %patch7 -p1 %patch8 -p1 +%patch9 -p1 %if 0%{?sle_version} %patch1001 -p1 %patch1002 -p1 %patch1003 -p1 %patch1004 -p1 -# %patch1007 -p1 +%patch1007 -p1 %endif cp %{SOURCE2} data/theme/ diff --git a/gs-fate318433-prevent-same-account-multi-logins.patch b/gs-fate318433-prevent-same-account-multi-logins.patch index 6d62baa..fc27a9b 100644 --- a/gs-fate318433-prevent-same-account-multi-logins.patch +++ b/gs-fate318433-prevent-same-account-multi-logins.patch @@ -1,58 +1,13 @@ -Index: gnome-shell-41.2/js/gdm/authPrompt.js +Index: gnome-shell-41.3/js/gdm/loginDialog.js =================================================================== ---- gnome-shell-41.2.orig/js/gdm/authPrompt.js -+++ gnome-shell-41.2/js/gdm/authPrompt.js -@@ -31,6 +31,8 @@ var AuthPromptStatus = { - VERIFICATION_SUCCEEDED: 3, - VERIFICATION_CANCELLED: 4, - VERIFICATION_IN_PROGRESS: 5, -+ // NOTE fate#318433 extra state to track multi-login situation -+ VERIFIED_BUT_FORBIDDEN: 6, - }; - - var BeginRequestType = { -@@ -338,7 +340,13 @@ var AuthPrompt = GObject.registerClass({ - } - - _onVerificationComplete() { -+ // NOTE update the spinning icon - this.setActorInDefaultButtonWell(null); -+ -+ if (this.verificationStatus === AuthPromptStatus.VERIFIED_BUT_FORBIDDEN) { -+ this.cancelButton.reactive = true; -+ return; -+ } - this.verificationStatus = AuthPromptStatus.VERIFICATION_SUCCEEDED; - this.cancelButton.reactive = false; - this.cancelButton.can_focus = false; -Index: gnome-shell-41.2/js/gdm/loginDialog.js -=================================================================== ---- gnome-shell-41.2.orig/js/gdm/loginDialog.js -+++ gnome-shell-41.2/js/gdm/loginDialog.js -@@ -952,6 +952,8 @@ var LoginDialog = GObject.registerClass( - this._authPrompt.updateSensitivity(false); - let answer = this._authPrompt.getAnswer(); - this._user = this._userManager.get_user(answer); -+ this._userLoginForbidden = -+ this._user.is_x_logged_in_remotely(); - this._authPrompt.clear(); - this._authPrompt.begin({ userName: answer }); - this._updateCancelButton(); -@@ -1017,6 +1019,8 @@ var LoginDialog = GObject.registerClass( - let answer = this._authPrompt.getAnswer(); - let domain_answer = this._domainMenuButton.getDomainUser(answer); - this._user = this._userManager.get_user(domain_answer); -+ this._userLoginForbidden = -+ this._user.is_x_logged_in_remotely(); - this._authPrompt.clear(); - this._authPrompt.startSpinning(); - this._authPrompt.begin({ userName: domain_answer}); -@@ -1043,6 +1047,28 @@ var LoginDialog = GObject.registerClass( +--- gnome-shell-41.3.orig/js/gdm/loginDialog.js ++++ gnome-shell-41.3/js/gdm/loginDialog.js +@@ -1043,6 +1043,29 @@ var LoginDialog = GObject.registerClass( } _onSessionOpened(client, serviceName) { -+ if (this._user.is_x_logged_in_remotely()) { -+ this._authPrompt.setMessage( ++ if (this._user.get_num_sessions_anywhere() > 1) { ++ this._authPrompt.setMessage(null, + _('Sorry, you have to log out a previous session first. Multiple logins are not supported.'), + GdmUtil.MessageType.ERROR); + // TODO: The following logic relies on the unverified fact that @@ -60,6 +15,7 @@ Index: gnome-shell-41.2/js/gdm/loginDialog.js + // current handler. This might root from the interaction between + // greeter and verifier, both are external programs. + this._authPrompt.verificationStatus = AuthPrompt.AuthPromptStatus.VERIFIED_BUT_FORBIDDEN; ++ this._authPrompt.cancelButton.reactive = true; + + // NOTE: Failed Attempts as references + // @@ -76,11 +32,3 @@ Index: gnome-shell-41.2/js/gdm/loginDialog.js this._authPrompt.finish(() => this._startSession(serviceName)); } -@@ -1238,6 +1264,7 @@ var LoginDialog = GObject.registerClass( - - _onUserListActivated(activatedItem) { - this._user = activatedItem.user; -+ this._userLoginForbidden = this._user.is_x_logged_in_remotely(); - - this._updateCancelButton(); -