Compare commits

1 Commits
main ... 1.1

24 changed files with 408 additions and 600 deletions

55
CVE-2024-36472.patch Normal file
View File

@@ -0,0 +1,55 @@
diff --git a/js/ui/status/network.js b/dev/shm/leap/gnome-shell-js/ui/status/network.js
index 469c2d3..3bd428b 100644
--- a/js/ui/status/network.js
+++ b/dev/shm/leap/gnome-shell-js/ui/status/network.js
@@ -1982,6 +1982,7 @@ class Indicator extends SystemIndicator {
this._mainConnection = null;
this._notification = null;
+ this._PortalNotification = null;
this._wiredToggle = new NMWiredToggle();
this._wirelessToggle = new NMWirelessToggle();
@@ -2092,8 +2093,10 @@ class Indicator extends SystemIndicator {
}
_mainConnectionStateChanged() {
- if (this._mainConnection.state === NM.ActiveConnectionState.ACTIVATED)
+ if (this._mainConnection.state === NM.ActiveConnectionState.ACTIVATED) {
this._notification?.destroy();
+ this._PortalNotification?.destroy();
+ }
}
_flushConnectivityQueue() {
@@ -2146,10 +2149,30 @@ class Indicator extends SystemIndicator {
if (!isPortal || Main.sessionMode.isGreeter)
return;
+ let name = this._mainConnection.get_id();
let path = this._mainConnection.get_path();
if (this._connectivityQueue.has(path))
return;
+ this._PortalNotification?.destroy();
+ const source = new MessageTray.Source(
+ _('Network Manager'), 'network-wireless-acquiring-symbolic');
+ source.policy =
+ new MessageTray.NotificationApplicationPolicy('gnome-network-panel')
+
+ this._PortalNotification = new MessageTray.Notification(source,
+ _('Sign Into WiFi Network'),
+ _(name));
+ this._PortalNotification.connect('destroy',
+ () => (this._PortalNotification = null))
+ this._PortalNotification.connect('activated',
+ () => this._onNotificationActivated(path));
+
+ Main.messageTray.add(source);
+ source.showNotification(this._PortalNotification)
+ }
+
+ async _onNotificationActivated(path) {
let timestamp = global.get_current_time();
if (!this._portalHelperProxy) {
this._portalHelperProxy = new Gio.DBusProxy({

View File

@@ -3,25 +3,17 @@
<service name="obs_scm" mode="manual">
<param name="scm">git</param>
<param name="url">https://gitlab.gnome.org/GNOME/gnome-shell.git</param>
<param name="revision">48.0</param>
<param name="revision">refs/tags/45.3</param>
<param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@</param>
<param name="versionrewrite-pattern">(.*)\+0</param>
<param name="versionrewrite-replacement">\1</param>
<param name="changesgenerate">disable</param>
</service>
<service name="obs_scm" mode="manual">
<param name="scm">git</param>
<param name="url">https://gitlab.gnome.org/GNOME/libgnome-volume-control.git</param>
<param name="revision">5f9768a2eac29c1ed56f1fbb449a77a3523683b6</param>
<param name="versionformat">0.gitmodule</param>
<!-- <param name="changesgenerate">enable</param> -->
</service>
<service name="tar" mode="buildtime"/>
<service name="recompress" mode="buildtime">
<param name="file">*.tar</param>
<param name="compression">zst</param>
</service>
<service name="set_version" mode="manual">
<param name="basename">gnome-shell</param>
</service>
<service name="set_version" mode="manual" />
</services>

View File

@@ -1,8 +1,8 @@
Index: gnome-shell-48.rc/js/ui/endSessionDialog.js
Index: gnome-shell-45.0/js/ui/endSessionDialog.js
===================================================================
--- gnome-shell-48.rc.orig/js/ui/endSessionDialog.js
+++ gnome-shell-48.rc/js/ui/endSessionDialog.js
@@ -373,7 +373,10 @@ class EndSessionDialog extends ModalDial
--- gnome-shell-45.0.orig/js/ui/endSessionDialog.js
+++ gnome-shell-45.0/js/ui/endSessionDialog.js
@@ -379,7 +379,10 @@ class EndSessionDialog extends ModalDial
let description;
let displayTime = _roundSecondsToInterval(

BIN
gnome-shell-45.3.obscpio (Stored with Git LFS) Normal file

Binary file not shown.

BIN
gnome-shell-48.0.obscpio (Stored with Git LFS)

Binary file not shown.

View File

@@ -1,9 +1,9 @@
Index: gnome-shell-48.rc/src/meson.build
Index: gnome-shell-45.0/src/meson.build
===================================================================
--- gnome-shell-48.rc.orig/src/meson.build
+++ gnome-shell-48.rc/src/meson.build
@@ -285,6 +285,7 @@ executable('gnome-shell', 'main.c',
include_directories: [conf_inc],
--- gnome-shell-45.0.orig/src/meson.build
+++ gnome-shell-45.0/src/meson.build
@@ -250,6 +250,7 @@ executable('gnome-shell', 'main.c',
include_directories: [conf_inc, st_inc, include_directories('tray')],
build_rpath: mutter_typelibdir,
install_rpath: install_rpath,
+ link_args: ['-ldl'],

View File

@@ -7,11 +7,11 @@ Subject: [PATCH] Disable ibus when out of CJK
js/misc/ibusManager.js | 8 ++++++++
1 file changed, 8 insertions(+)
Index: gnome-shell-48.rc/js/misc/ibusManager.js
Index: gnome-shell-45.0/js/misc/ibusManager.js
===================================================================
--- gnome-shell-48.rc.orig/js/misc/ibusManager.js
+++ gnome-shell-48.rc/js/misc/ibusManager.js
@@ -52,6 +52,10 @@ class IBusManager extends Signals.EventE
--- gnome-shell-45.0.orig/js/misc/ibusManager.js
+++ gnome-shell-45.0/js/misc/ibusManager.js
@@ -59,6 +59,10 @@ class IBusManager extends Signals.EventE
constructor() {
super();
@@ -22,7 +22,7 @@ Index: gnome-shell-48.rc/js/misc/ibusManager.js
IBus.init();
// This is the longest we'll keep the keyboard frozen until an input
@@ -107,6 +111,10 @@ class IBusManager extends Signals.EventE
@@ -114,6 +118,10 @@ class IBusManager extends Signals.EventE
}
_spawn(extraArgs = []) {

View File

@@ -1,8 +1,6 @@
Index: gnome-shell-48.rc/js/ui/endSessionDialog.js
===================================================================
--- gnome-shell-48.rc.orig/js/ui/endSessionDialog.js
+++ gnome-shell-48.rc/js/ui/endSessionDialog.js
@@ -694,19 +694,7 @@ class EndSessionDialog extends ModalDial
--- gnome-shell-41.orig/js/ui/endSessionDialog.js 2022-08-11 16:16:07.000000000 +0300
+++ gnome-shell-41/js/ui/endSessionDialog.js 2022-10-26 12:49:20.435238071 +0300
@@ -707,19 +703,7 @@
}
async _getUpdateInfo() {
@@ -23,3 +21,5 @@ Index: gnome-shell-48.rc/js/ui/endSessionDialog.js
}
async OpenAsync(parameters, invocation) {

View File

@@ -1,7 +1,7 @@
Index: gnome-shell-48.rc/js/gdm/domain.js
Index: gnome-shell-45.3/js/gdm/domain.js
===================================================================
--- /dev/null
+++ gnome-shell-48.rc/js/gdm/domain.js
+++ gnome-shell-45.3/js/gdm/domain.js
@@ -0,0 +1,236 @@
+// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
+/*
@@ -76,7 +76,7 @@ Index: gnome-shell-48.rc/js/gdm/domain.js
+ this.actor = new St.Bin({ child: this._button });
+
+ this._menu = new PopupMenu.PopupMenu(this._button, 0, St.Side.TOP);
+ Main.uiGroup.add_child(this._menu.actor);
+ Main.uiGroup.add_actor(this._menu.actor);
+ this._menu.actor.hide();
+
+ this._menu.connect('open-state-changed',
@@ -239,11 +239,11 @@ Index: gnome-shell-48.rc/js/gdm/domain.js
+ return this._activeDomain + this._separator + user;
+ }
+}
Index: gnome-shell-48.rc/js/gdm/loginDialog.js
Index: gnome-shell-45.3/js/gdm/loginDialog.js
===================================================================
--- gnome-shell-48.rc.orig/js/gdm/loginDialog.js
+++ gnome-shell-48.rc/js/gdm/loginDialog.js
@@ -28,6 +28,7 @@ import Shell from 'gi://Shell';
--- gnome-shell-45.3.orig/js/gdm/loginDialog.js
+++ gnome-shell-45.3/js/gdm/loginDialog.js
@@ -29,6 +29,7 @@ import Shell from 'gi://Shell';
import St from 'gi://St';
import * as AuthPrompt from './authPrompt.js';
@@ -251,7 +251,7 @@ Index: gnome-shell-48.rc/js/gdm/loginDialog.js
import * as Batch from './batch.js';
import * as BoxPointer from '../ui/boxpointer.js';
import * as CtrlAltTab from '../ui/ctrlAltTab.js';
@@ -547,6 +548,10 @@ export const LoginDialog = GObject.regis
@@ -464,6 +465,10 @@ export const LoginDialog = GObject.regis
this._authPrompt.hide();
this.add_child(this._authPrompt);
@@ -262,7 +262,7 @@ Index: gnome-shell-48.rc/js/gdm/loginDialog.js
// translators: this message is shown below the user list on the
// login screen. It can be activated to reveal an entry for
// manually entering the username.
@@ -568,7 +573,18 @@ export const LoginDialog = GObject.regis
@@ -485,7 +490,18 @@ export const LoginDialog = GObject.regis
this._notListedButton.hide();
@@ -280,10 +280,10 @@ Index: gnome-shell-48.rc/js/gdm/loginDialog.js
+ this._userLayout.add_child(this._domainMenuButton.actor);
+ } // domain end
const bannerBox = new St.BoxLayout({
orientation: Clutter.Orientation.VERTICAL,
@@ -1185,6 +1201,37 @@ export const LoginDialog = GObject.regis
conflictingSessionDialog.open();
this._bannerView = new St.ScrollView({
style_class: 'login-dialog-banner-view',
@@ -1004,6 +1020,37 @@ export const LoginDialog = GObject.regis
}, this);
}
+ _askForDomainUsernameAndBeginVerification(domain) {
@@ -320,7 +320,7 @@ Index: gnome-shell-48.rc/js/gdm/loginDialog.js
_startSession(serviceName) {
this._bindOpacity();
this.ease({
@@ -1397,6 +1444,11 @@ export const LoginDialog = GObject.regis
@@ -1178,6 +1225,11 @@ export const LoginDialog = GObject.regis
this._askForUsernameAndBeginVerification();
}
@@ -332,7 +332,7 @@ Index: gnome-shell-48.rc/js/gdm/loginDialog.js
_hideUserListAndBeginVerification() {
this._hideUserList();
this._authPrompt.begin();
@@ -1410,6 +1462,9 @@ export const LoginDialog = GObject.regis
@@ -1191,6 +1243,9 @@ export const LoginDialog = GObject.regis
this._sessionMenuButton.hide();
this._setUserListExpanded(true);
this._notListedButton.show();
@@ -342,10 +342,10 @@ Index: gnome-shell-48.rc/js/gdm/loginDialog.js
this._userList.grab_key_focus();
}
Index: gnome-shell-48.rc/js/js-resources.gresource.xml
Index: gnome-shell-45.3/js/js-resources.gresource.xml
===================================================================
--- gnome-shell-48.rc.orig/js/js-resources.gresource.xml
+++ gnome-shell-48.rc/js/js-resources.gresource.xml
--- gnome-shell-45.3.orig/js/js-resources.gresource.xml
+++ gnome-shell-45.3/js/js-resources.gresource.xml
@@ -3,6 +3,7 @@
<gresource prefix="/org/gnome/shell">
<file>gdm/authList.js</file>
@@ -354,15 +354,15 @@ Index: gnome-shell-48.rc/js/js-resources.gresource.xml
<file>gdm/batch.js</file>
<file>gdm/credentialManager.js</file>
<file>gdm/loginDialog.js</file>
Index: gnome-shell-48.rc/po/POTFILES.in
Index: gnome-shell-45.3/po/POTFILES.in
===================================================================
--- gnome-shell-48.rc.orig/po/POTFILES.in
+++ gnome-shell-48.rc/po/POTFILES.in
@@ -11,6 +11,7 @@ data/X-GNOME-Shell-System.directory.desk
data/X-GNOME-Shell-Utilities.directory.desktop.in
--- gnome-shell-45.3.orig/po/POTFILES.in
+++ gnome-shell-45.3/po/POTFILES.in
@@ -9,6 +9,7 @@ data/org.gnome.Shell.Extensions.desktop.
data/org.gnome.Shell.PortalHelper.desktop.in.in
js/dbusServices/extensions/ui/extension-error-page.ui
js/gdm/authPrompt.js
+js/gdm/domain.js
js/gdm/loginDialog.js
js/gdm/util.js
js/misc/breakManager.js
js/misc/systemActions.js

View File

@@ -1,11 +1,61 @@
Index: gnome-shell-48.rc/data/org.gnome.Shell-disable-extensions.service
Index: gnome-shell-44.beta/data/meson.build
===================================================================
--- gnome-shell-48.rc.orig/data/org.gnome.Shell-disable-extensions.service
+++ gnome-shell-48.rc/data/org.gnome.Shell-disable-extensions.service
@@ -11,5 +11,5 @@ ConditionPathExists=%t/gnome-shell-disab
[Service]
Type=simple
# Disable extensions
--- gnome-shell-44.beta.orig/data/meson.build
+++ gnome-shell-44.beta/data/meson.build
@@ -117,8 +117,14 @@ if have_systemd
install_dir: systemduserunitdir
)
- units = files('org.gnome.Shell.target',
- 'org.gnome.Shell-disable-extensions.service')
+ configure_file(
+ input: 'org.gnome.Shell-disable-extensions.service.in',
+ output: 'org.gnome.Shell-disable-extensions.service',
+ configuration: unitconf,
+ install_dir: systemduserunitdir
+ )
+
+ units = files('org.gnome.Shell.target')
install_data(units, install_dir: systemduserunitdir)
endif
Index: gnome-shell-44.beta/data/org.gnome.Shell-disable-extensions.service
===================================================================
--- gnome-shell-44.beta.orig/data/org.gnome.Shell-disable-extensions.service
+++ /dev/null
@@ -1,15 +0,0 @@
-[Unit]
-Description=Disable GNOME Shell extensions after failure
-# Note that this unit must not conflict with anything, and must
-# be able to run in parallel with the gnome-session-shutdown.target.
-DefaultDependencies=no
-
-# We want to disable extensions only if gnome-shell has flagged the extensions
-# to be a likely cause of trouble.
-ConditionPathExists=%t/gnome-shell-disable-extensions
-
-[Service]
-Type=simple
-# Disable extensions
-ExecStart=gsettings set org.gnome.shell disable-user-extensions true
-Restart=no
Index: gnome-shell-44.beta/data/org.gnome.Shell-disable-extensions.service.in
===================================================================
--- /dev/null
+++ gnome-shell-44.beta/data/org.gnome.Shell-disable-extensions.service.in
@@ -0,0 +1,15 @@
+[Unit]
+Description=Disable GNOME Shell extensions after failure
+# Note that this unit must not conflict with anything, and must
+# be able to run in parallel with the gnome-session-shutdown.target.
+DefaultDependencies=no
+
+# We want to disable extensions only if gnome-shell has flagged the extensions
+# to be a likely cause of trouble.
+ConditionPathExists=%t/gnome-shell-disable-extensions
+
+[Service]
+Type=simple
+# Disable extensions
+ExecStart=@bindir@/gsettings set org.gnome.shell disable-user-extensions true
Restart=no
+Restart=no

View File

@@ -0,0 +1,13 @@
Index: gnome-shell-45.0/src/main.c
===================================================================
--- gnome-shell-45.0.orig/src/main.c
+++ gnome-shell-45.0/src/main.c
@@ -736,7 +736,7 @@ main (int argc, char **argv)
g_object_unref (shell_global_get ());
g_debug ("Tearing down the mutter context");
- meta_context_destroy (g_steal_pointer (&context));
+ g_steal_pointer (&context);
return ecode;
}

View File

@@ -1,20 +1,20 @@
Index: gnome-shell-48.rc/data/gnome-shell-theme.gresource.xml
Index: gnome-shell-45.3/data/gnome-shell-theme.gresource.xml
===================================================================
--- gnome-shell-48.rc.orig/data/gnome-shell-theme.gresource.xml
+++ gnome-shell-48.rc/data/gnome-shell-theme.gresource.xml
@@ -7,6 +7,7 @@
--- gnome-shell-45.3.orig/data/gnome-shell-theme.gresource.xml
+++ gnome-shell-45.3/data/gnome-shell-theme.gresource.xml
@@ -13,6 +13,7 @@
<file>gnome-shell-light.css</file>
<file>gnome-shell-high-contrast.css</file>
<file>gnome-shell-start.svg</file>
+ <file>noise-texture.png</file>
<file>pad-osd.css</file>
<file>workspace-placeholder.svg</file>
</gresource>
Index: gnome-shell-48.rc/js/ui/screenShield.js
<file>process-working-light.svg</file>
<file>process-working-dark.svg</file>
Index: gnome-shell-45.3/js/ui/screenShield.js
===================================================================
--- gnome-shell-48.rc.orig/js/ui/screenShield.js
+++ gnome-shell-48.rc/js/ui/screenShield.js
@@ -9,6 +9,7 @@ import St from 'gi://St';
--- gnome-shell-45.3.orig/js/ui/screenShield.js
+++ gnome-shell-45.3/js/ui/screenShield.js
@@ -11,6 +11,7 @@ import St from 'gi://St';
import * as Signals from '../misc/signals.js';
@@ -22,7 +22,7 @@ Index: gnome-shell-48.rc/js/ui/screenShield.js
import * as GnomeSession from '../misc/gnomeSession.js';
import * as OVirt from '../gdm/oVirt.js';
import * as LoginManager from '../misc/loginManager.js';
@@ -21,6 +22,8 @@ import * as SmartcardManager from '../mi
@@ -23,6 +24,8 @@ import * as SmartcardManager from '../mi
import {adjustAnimationTime} from '../misc/animationUtils.js';
@@ -31,23 +31,23 @@ Index: gnome-shell-48.rc/js/ui/screenShield.js
const SCREENSAVER_SCHEMA = 'org.gnome.desktop.screensaver';
const LOCK_ENABLED_KEY = 'lock-enabled';
const LOCK_DELAY_KEY = 'lock-delay';
@@ -30,6 +33,9 @@ const DISABLE_LOCK_KEY = 'disable-lock-s
@@ -32,6 +35,9 @@ const DISABLE_LOCK_KEY = 'disable-lock-s
const LOCKED_STATE_STR = 'screenShield.locked';
+const BLUR_BRIGHTNESS = 0.35;
+const BLUR_RADIUS = 90;
+const BLUR_BRIGHTNESS = 0.55;
+const BLUR_SIGMA = 60;
+
// ScreenShield animation time
// - STANDARD_FADE_TIME is used when the session goes idle
// - MANUAL_FADE_TIME is used for lowering the shield when asked by the user,
@@ -72,6 +78,16 @@ export class ScreenShield extends Signal
@@ -74,6 +80,16 @@ export class ScreenShield extends Signal
name: 'lockDialogGroup',
});
+ // Add background for this._lockDialogGroup
+ this._bgLockDialogGroup = new Clutter.Actor();
+ this._lockDialogGroup.add_child(this._bgLockDialogGroup);
+ this._lockDialogGroup.add_actor(this._bgLockDialogGroup);
+ this._lockDialogGroup.set_child_below_sibling(this._bgLockDialogGroup, null);
+ this._bgManagersLockDialogGroup = [];
+
@@ -55,11 +55,11 @@ Index: gnome-shell-48.rc/js/ui/screenShield.js
+ this._monitorsChangedId =
+ Main.layoutManager.connect('monitors-changed', this._updateBgLockDialogGroup.bind(this));
+
this.actor.add_child(this._lockScreenGroup);
this.actor.add_child(this._lockDialogGroup);
this.actor.add_actor(this._lockScreenGroup);
this.actor.add_actor(this._lockDialogGroup);
@@ -140,6 +156,15 @@ export class ScreenShield extends Signal
this._cursorTracker = global.backend.get_cursor_tracker();
@@ -142,6 +158,15 @@ export class ScreenShield extends Signal
this._cursorTracker = Meta.CursorTracker.get_for_display(global.display);
this._syncInhibitor();
+
@@ -74,7 +74,7 @@ Index: gnome-shell-48.rc/js/ui/screenShield.js
}
async _getLoginSession() {
@@ -515,6 +540,59 @@ export class ScreenShield extends Signal
@@ -518,6 +543,53 @@ export class ScreenShield extends Signal
this.emit('wake-up-screen');
}
@@ -86,7 +86,6 @@ Index: gnome-shell-48.rc/js/ui/screenShield.js
+ y: monitor.y,
+ width: monitor.width,
+ height: monitor.height,
+ effect: new Shell.BlurEffect({name: 'blur'}),
+ });
+
+ let bgManager = new Background.BackgroundManager({
@@ -101,8 +100,17 @@ Index: gnome-shell-48.rc/js/ui/screenShield.js
+ this._bgLockDialogGroup.add_child(widget);
+
+ const themeContext = St.ThemeContext.get_for_stage(global.stage);
+ themeContext.connectObject('notify::scale-factor',
+ () => this._updateBackgroundEffects(), this);
+
+ let effect = new Shell.BlurEffect({
+ brightness: BLUR_BRIGHTNESS,
+ sigma: BLUR_SIGMA * themeContext.scale_factor,
+ });
+
+ this._scaleChangedId = themeContext.connect('notify::scale-factor', () => {
+ effect.sigma = BLUR_SIGMA * themeContext.scale_factor;
+ });
+
+ widget.add_effect(effect);
+ }
+
+ _updateBgLockDialogGroup() {
@@ -114,22 +122,8 @@ Index: gnome-shell-48.rc/js/ui/screenShield.js
+
+ for (let i = 0; i < Main.layoutManager.monitors.length; i++)
+ this._createBgLockDialogGroup(i);
+ this._updateBackgroundEffects();
+ }
+
+ _updateBackgroundEffects() {
+ const themeContext = St.ThemeContext.get_for_stage(global.stage);
+
+ for (const widget of this._bgLockDialogGroup) {
+ const effect = widget.get_effect('blur');
+ if (effect) {
+ effect.set({
+ brightness: BLUR_BRIGHTNESS,
+ radius: BLUR_RADIUS * themeContext.scale_factor,
+ });
+ }
+ }
+ }
+
get locked() {
return this._isLocked;

View File

@@ -10,11 +10,11 @@ currently it will pass 1, which is the wrong previous value.
js/misc/inputMethod.js | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
Index: gnome-shell-47.beta/js/misc/inputMethod.js
===================================================================
--- gnome-shell-47.beta.orig/js/misc/inputMethod.js
+++ gnome-shell-47.beta/js/misc/inputMethod.js
@@ -161,9 +161,7 @@ export const InputMethod = GObject.regis
diff --git a/js/misc/inputMethod.js b/js/misc/inputMethod.js
index d8c3e62f0..2642aca9e 100644
--- a/js/misc/inputMethod.js
+++ b/js/misc/inputMethod.js
@@ -163,9 +163,7 @@ export const InputMethod = GObject.registerClass({
}
_onHidePreeditText() {
@@ -25,3 +25,6 @@ Index: gnome-shell-47.beta/js/misc/inputMethod.js
this._preeditVisible = false;
}
--
2.45.0

View File

@@ -1,8 +1,8 @@
Index: gnome-shell-48.rc/js/js-resources.gresource.xml
Index: gnome-shell-45.3/js/js-resources.gresource.xml
===================================================================
--- gnome-shell-48.rc.orig/js/js-resources.gresource.xml
+++ gnome-shell-48.rc/js/js-resources.gresource.xml
@@ -45,6 +45,7 @@
--- gnome-shell-45.3.orig/js/js-resources.gresource.xml
+++ gnome-shell-45.3/js/js-resources.gresource.xml
@@ -42,6 +42,7 @@
<file>misc/util.js</file>
<file>misc/weather.js</file>
@@ -10,10 +10,43 @@ Index: gnome-shell-48.rc/js/js-resources.gresource.xml
<file>ui/accessDialog.js</file>
<file>ui/altTab.js</file>
<file>ui/animation.js</file>
Index: gnome-shell-48.rc/js/ui/aboutMenu.js
Index: gnome-shell-45.3/js/ui/panel.js
===================================================================
--- gnome-shell-45.3.orig/js/ui/panel.js
+++ gnome-shell-45.3/js/ui/panel.js
@@ -36,6 +36,7 @@ import * as ThunderboltStatus from './st
import * as AutoRotateStatus from './status/autoRotate.js';
import * as BackgroundAppsStatus from './status/backgroundApps.js';
+import {AboutMenuButton} from './aboutMenu.js';
import {DateMenuButton} from './dateMenu.js';
import {ATIndicator} from './status/accessibility.js';
import {InputSourceIndicator} from './status/keyboard.js';
@@ -633,6 +634,7 @@ class QuickSettings extends PanelMenu.Bu
});
const PANEL_ITEM_IMPLEMENTATIONS = {
+ 'aboutMenu': AboutMenuButton,
'activities': ActivitiesButton,
'appMenu': AppMenuButton,
'quickSettings': QuickSettings,
Index: gnome-shell-45.3/js/ui/sessionMode.js
===================================================================
--- gnome-shell-45.3.orig/js/ui/sessionMode.js
+++ gnome-shell-45.3/js/ui/sessionMode.js
@@ -60,7 +60,7 @@ const _modes = {
? ['networkAgent', 'polkitAgent']
: ['polkitAgent'],
panel: {
- left: [],
+ left: ['aboutMenu'],
center: ['dateMenu'],
right: ['dwellClick', 'a11y', 'keyboard', 'quickSettings'],
},
Index: gnome-shell-45.3/js/ui/aboutMenu.js
===================================================================
--- /dev/null
+++ gnome-shell-48.rc/js/ui/aboutMenu.js
+++ gnome-shell-45.3/js/ui/aboutMenu.js
@@ -0,0 +1,144 @@
+// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
+
@@ -46,7 +79,7 @@ Index: gnome-shell-48.rc/js/ui/aboutMenu.js
+ this.menu.box.add_child(hbox);
+
+ vbox = new St.BoxLayout({vertical: true});
+ hbox.add_child(vbox);
+ hbox.add(vbox);
+
+ ///// Section: read '/etc/os-release' to get pretty name
+ //
@@ -73,7 +106,7 @@ Index: gnome-shell-48.rc/js/ui/aboutMenu.js
+ }
+
+ this._sysinfo = new St.Label({ text: sysinfo_text, can_focus: true });
+ vbox.add_child(this._sysinfo);
+ vbox.add(this._sysinfo);
+ this.hide();
+
+ this._updateHostnameId = GLib.timeout_add(GLib.PRIORITY_DEFAULT,
@@ -159,36 +192,3 @@ Index: gnome-shell-48.rc/js/ui/aboutMenu.js
+
+ return hostname;
+}
Index: gnome-shell-48.rc/js/ui/panel.js
===================================================================
--- gnome-shell-48.rc.orig/js/ui/panel.js
+++ gnome-shell-48.rc/js/ui/panel.js
@@ -34,6 +34,7 @@ import * as ThunderboltStatus from './st
import * as AutoRotateStatus from './status/autoRotate.js';
import * as BackgroundAppsStatus from './status/backgroundApps.js';
+import {AboutMenuButton} from './aboutMenu.js';
import {DateMenuButton} from './dateMenu.js';
import {ATIndicator} from './status/accessibility.js';
import {InputSourceIndicator} from './status/keyboard.js';
@@ -629,6 +630,7 @@ class QuickSettings extends PanelMenu.Bu
});
const PANEL_ITEM_IMPLEMENTATIONS = {
+ 'aboutMenu': AboutMenuButton,
'activities': ActivitiesButton,
'appMenu': AppMenuButton,
'quickSettings': QuickSettings,
Index: gnome-shell-48.rc/js/ui/sessionMode.js
===================================================================
--- gnome-shell-48.rc.orig/js/ui/sessionMode.js
+++ gnome-shell-48.rc/js/ui/sessionMode.js
@@ -57,7 +57,7 @@ const _modes = {
? ['networkAgent', 'polkitAgent']
: ['polkitAgent'],
panel: {
- left: [],
+ left: ['aboutMenu'],
center: ['dateMenu'],
right: ['dwellClick', 'a11y', 'keyboard', 'quickSettings'],
},

View File

@@ -1,10 +1,10 @@
Index: gnome-shell-48.rc/js/ui/status/keyboard.js
Index: gnome-shell-45.0/js/ui/status/keyboard.js
===================================================================
--- gnome-shell-48.rc.orig/js/ui/status/keyboard.js
+++ gnome-shell-48.rc/js/ui/status/keyboard.js
@@ -291,6 +291,39 @@ class InputSourceSessionSettings extends
--- gnome-shell-45.0.orig/js/ui/status/keyboard.js
+++ gnome-shell-45.0/js/ui/status/keyboard.js
@@ -274,6 +274,39 @@ class InputSourceSessionSettings extends
this._settings.connect(`changed::${this._KEY_INPUT_SOURCES}`, this._emitInputSourcesChanged.bind(this));
this._settings.connect(`changed::${this._KEY_KEYBOARD_OPTIONS}`, this._emitKeyboardOptionsChanged.bind(this));
this._settings.connect(`changed::${this._KEY_KEYBOARD_MODEL}`, this._emitKeyboardModelChanged.bind(this));
this._settings.connect(`changed::${this._KEY_PER_WINDOW}`, this._emitPerWindowChanged.bind(this));
+
+ let sources = this._settings.get_value(this._KEY_INPUT_SOURCES);

View File

@@ -1,8 +1,8 @@
Index: gnome-shell-48.rc/js/ui/endSessionDialog.js
Index: gnome-shell-45.0/js/ui/endSessionDialog.js
===================================================================
--- gnome-shell-48.rc.orig/js/ui/endSessionDialog.js
+++ gnome-shell-48.rc/js/ui/endSessionDialog.js
@@ -294,7 +294,7 @@ class EndSessionDialog extends ModalDial
--- gnome-shell-45.0.orig/js/ui/endSessionDialog.js
+++ gnome-shell-45.0/js/ui/endSessionDialog.js
@@ -300,7 +300,7 @@ class EndSessionDialog extends ModalDial
this.contentLayout.add_child(this._applicationSection);
this._sessionSection = new Dialog.ListSection({
@@ -11,7 +11,7 @@ Index: gnome-shell-48.rc/js/ui/endSessionDialog.js
});
this.contentLayout.add_child(this._sessionSection);
@@ -747,8 +747,8 @@ class EndSessionDialog extends ModalDial
@@ -753,8 +753,8 @@ class EndSessionDialog extends ModalDial
this._applications.push(inhibitor);
}

View File

@@ -0,0 +1,39 @@
diff --git a/js/ui/status/network.js b/js/ui/status/network.js
index e3b9a5d..3296e1d 100644
--- a/js/ui/status/network.js
+++ b/js/ui/status/network.js
@@ -940,6 +940,11 @@ const WirelessNetwork = GObject.registerClass({
this._getDeviceDBusPath(), ap.get_path());
} else {
conn = new NM.SimpleConnection();
+ if (this._IsPrivateConnections()) {
+ let connectionSetting = new NM.SettingConnection();
+ connectionSetting.add_permission('user', GLib.get_user_name(), null);
+ conn.add_setting(connectionSetting);
+ }
this._device.client.add_and_activate_connection_async(
conn, this._device, ap.get_path(), null, null);
}
@@ -949,6 +954,22 @@ const WirelessNetwork = GObject.registerClass({
this.emit('destroy');
}
+ _IsPrivateConnections() {
+ let privateConnections = true;
+ let authority = Polkit.Authority.get_sync(null);
+ let credential = new Gio.Credentials();
+ let subject = new Polkit.UnixProcess({ pid: credential.get_unix_pid(), uid: credential.get_unix_user() });
+ let authResult = authority.check_authorization_sync(subject,
+ 'org.freedesktop.NetworkManager.settings.modify.system',
+ null /* details */,
+ Polkit.CheckAuthorizationFlags.NONE,
+ null /* cancellable */);
+ if (authResult)
+ privateConnections = !authResult.get_is_authorized();
+
+ return privateConnections;
+ }
+
_getDeviceDBusPath() {
// nm_object_get_path() is shadowed by nm_device_get_path()
return NM.Object.prototype.get_path.call(this._device);

View File

@@ -0,0 +1,16 @@
Index: gnome-shell-45.0/js/gdm/authPrompt.js
===================================================================
--- gnome-shell-45.0.orig/js/gdm/authPrompt.js
+++ gnome-shell-45.0/js/gdm/authPrompt.js
@@ -627,8 +627,10 @@ export const AuthPrompt = GObject.regist
this._updateEntry(true);
this.stopSpinning();
- if (oldStatus === AuthPromptStatus.VERIFICATION_FAILED)
+ if (oldStatus == AuthPromptStatus.VERIFICATION_FAILED) {
+ this._userVerifier.cancel();
this.emit('failed');
+ }
else if (oldStatus === AuthPromptStatus.VERIFICATION_CANCELLED)
this.emit('cancelled');

View File

@@ -1,261 +1,3 @@
-------------------------------------------------------------------
Tue Mar 18 19:20:04 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Clean up conditionals and use autopatch.
-------------------------------------------------------------------
Mon Mar 17 01:00:18 UTC 2025 - Xiaoguang Wang <xiaoguang.wang@suse.com>
- Update patches:
+ endSession-dialog-update-time-label-every-sec.patch
+ gnome-shell-add-linkoption-dl.patch
+ gnome-shell-disable-ibus-when-not-installed.patch
+ gnome-shell-disable-offline-update-dialog.patch
+ gnome-shell-domain.patch
+ gnome-shell-executable-path-not-absolute.patch
+ gnome-shell-fate324570-Make-GDM-background-image-configurable.patch
+ gnome-shell-gdm-login-applet.patch
+ gnome-shell-jsc#SLE-16051-Input-method-recommendation.patch
+ gnome-shell-jscSLE9267-Remove-sessionList-of-endSessionDialog.patch
+ gnome-shell-screen-disappear.patch
- Drop upstream patches:
+ gnome-shell-exit-crash-workaround.patch
+ gnome-shell-screen-disappear.patch
-------------------------------------------------------------------
Sun Mar 16 14:53:08 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 48.0:
+ Fix ibus candidate popup position
+ breakManager: Allow break to be taken or delayed when overdue
+ Fix audio selection dialog in light style
+ Misc. bug fixes and cleanups
+ Updated translations.
-------------------------------------------------------------------
Fri Mar 14 00:54:32 UTC 2025 - Michael Gorse <mgorse@suse.com>
- Drop use of sle_version in favor of is_opensuse and suse_version.
Sle_version is no longer used in SLE 16.
-------------------------------------------------------------------
Mon Mar 3 23:17:09 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 48.rc:
+ Fix integer scaling for spinner
+ Group notifications by app
+ Fix tracking inactive time for screen time limits
+ Fix occasional stacking glitch during overview transition
+ Reorganize default dash/grid/folder apps
+ Handle suspend/resume when tracking screen time
+ Misc. bug fixes and cleanups
+ Updated translations.
-------------------------------------------------------------------
Mon Mar 3 23:17:08 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 48.beta:
+ Fix overlapping tiles in app grid on hover
+ Improve screen time limit support
+ Fix default user avatar with light style
+ Transition to new BoxLayout.orientation property
+ Allow tracking screen time history with no limit set
+ Fix Extensions app losing state after shell restart
+ Support loading login banner message from file
+ Misc. bug fixes and cleanups
+ Updated translations.
-------------------------------------------------------------------
Mon Mar 3 23:17:07 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 48.alpha:
+ Improve quick settings accessibility
+ Use accent color in tablet configuration UI
+ Improve accuracy of inset box shadows
+ Fix `PopupSwitchMenuItem::toggled` passing wrong state
+ Consider text direction when handling arrow keys in sliders
+ Fix layout issues with new dialog style
+ Fix uneven padding in notification headers
+ Fix graphical artifacts in partially-rounded buttons
+ Do not depend on gnome-menus for folder translations
+ Fix caret tracking in magnifier
+ Show OSD notification for headphone connection
+ Improve accessibility of keyboard backlight quick settings
toggle
+ Fix resetting non-caps shift key in on-screen keyboard
+ Improve contrast of notification placeholder
+ Add support for screen time / health breaks
+ Add sysext support to toolbox tooling
+ Modernize spinner [Florian; !3565]
+ extensions-app: Allow closing with ctrl+w
+ Fix Escape handling in run dialog
+ Fix custom text-scaling-factor getting reset
+ Tweak ibus candidate popover appearance
+ Add convenience logging API for extensions
+ Improve on-screen keyboard appearance
+ Tweak quick settings appearance
+ Add support for screen time limits
+ Fixed crash
+ Misc. bug fixes and cleanups
+ Updated translations.
- Drop pkgconfig(mutter-cogl-pango-%%{mutter_api}) BuildRequires:
no longer needed nor available.
-------------------------------------------------------------------
Mon Mar 3 23:17:06 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 47.5:
+ Fix occasional stacking glitch during overview transition
+ Misc. bug fixes and cleanups
+ Updated translations.
-------------------------------------------------------------------
Wed Feb 5 12:27:12 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 47.4:
+ Fix overlapping tiles in app grid on hover
+ Fix default user avatar with light style
+ Fixed crash
+ Misc. bug fixes and cleanups
+ Updated translations.
-------------------------------------------------------------------
Mon Jan 13 12:50:32 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 47.3:
+ Fix Escape handling in run dialog
+ Fix custom text-scaling-factor getting reset
+ Tweak ibus candidate popover appearance
+ Misc. bug fixes and cleanups
-------------------------------------------------------------------
Mon Nov 25 19:59:34 UTC 2024 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 47.2:
+ Fix graphical artifacts in partially-rounded buttons
+ Fix caret tracking in magnifier
+ Improve accessibility of keyboard backlight quick settings
toggle
+ Fix resetting non-caps shift key in on-screen keyboard
+ Misc. bug fixes and cleanups
+ Updated translations.
-------------------------------------------------------------------
Fri Nov 08 19:28:51 UTC 2024 - bjorn.lie@gmail.com
- Update to version 47.1+6:
+ st/theme-node-drawing: Don't skip square top left inset shadow
corners
+ Updated translations.
-------------------------------------------------------------------
Sat Oct 19 08:44:46 UTC 2024 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 47.1:
+ Improve quick settings accessibility
+ Use accent color in tablet configuration UI
+ Improve accuracy of inset box shadows
+ Fix `PopupSwitchMenuItem::toggled` passing wrong state
+ Consider text direction when handling arrow keys in sliders
+ Fix layout issues with new dialog style
+ Fix uneven padding in notification headers
+ Fixed crash
+ Misc. cleanups and bug
+ Updated translations.
-------------------------------------------------------------------
Mon Sep 16 20:55:02 UTC 2024 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 47.0:
+ Fix new wifi connections for restricted users
+ Do not disable required animations
+ Fix showing pending PAM messages on login screen
+ Misc. bug fixes and cleanups
+ Updated translations.
- Drop gnome-shell-private-connection.patch: Following changes
upstream, this patch should not be needed anymore.
- Refresh gnome-shell-exit-crash-workaround.patch with quilt.
- Disable gnome-shell-executable-path-not-absolute.patch: Needs
rebase or dropping.
-------------------------------------------------------------------
Mon Sep 16 19:08:17 UTC 2024 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 47.rc:
+ Fix smartcard logins
+ Mark drag to dash as move operation
+ Use rst2man to generate man pages
+ Fix glitch when quick settings menu animation is interrupted
+ Plugged leak
+ Misc. bug fixes and cleanups
+ Updated translations.
- Add docutils BuildRequires, new dependency (rst2man).
-------------------------------------------------------------------
Mon Sep 16 18:22:47 UTC 2024 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 47.beta:
+ Use hardware encoding for screen recordings if possible
+ Allow notification portal to always use GTK protocol
+ Improve Persian on-screen keyboard layout
+ Build and publish GNOME OS systemd-sysext extensions
+ Make overview startup notification more reliable
+ Fix keyboard navigation in app folders
+ Support exporting DebugControl service from looking glass
+ Use low-power pipeline in screen recorder if possible
+ Show notification when detecting captive portal
+ Fix connecting to WPA2 enterprise networks
+ Use unlinked rounded buttons in notifications and dialogs
+ Misc. bug fixes and cleanups
- Bump mutter_api to 15 following upstream changes.
- Rebase patches with quilt, drop CVE-2024-36472.patch, fixed
upstream.
-------------------------------------------------------------------
Sun Sep 15 12:09:55 UTC 2024 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 46.5:
+ Fix smartcard logins
+ Fix glitch when quick settings menu animation is interrupted
+ Fix new wifi connections for restricted users
+ Do not disable required animations
+ Fix showing pending PAM messages on login screen
+ Plugged leak
+ Misc. bug fixes and cleanups
+ Updated translations.
- Drop gnome-shell-private-connection.patch: Should not be needed
anymore after changes upstream.
-------------------------------------------------------------------
Mon Aug 12 17:28:18 UTC 2024 - Michael Gorse <mgorse@suse.com>
- Drop gs-fate318433-prevent-same-account-multi-logins.patch.
Upstream now does this.
-------------------------------------------------------------------
Thu Aug 8 20:16:23 UTC 2024 - Michael Gorse <mgorse@suse.com>
- Rebase SLE patches:
+ gnome-shell-gdm-login-applet.patch
+ gnome-shell-domain.patch
+ gnome-shell-fate324570-Make-GDM-background-image-configurable.patch
+ gnome-shell-jsc#SLE-16051-Input-method-recommendation.patch
- Comment out gs-fate318433-prevent-same-account-multi-logins.patch
Needs to be removed or rebased.
-------------------------------------------------------------------
Sun Aug 4 16:14:59 UTC 2024 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 46.4:
+ Fix glitches in looking glass
+ Improve Persian on-screen keyboard layout
+ Make overview startup notification more reliable
+ Fix keyboard navigation in app folders
+ Fix connecting to WPA2 enterprise networks
+ Misc. bug fixes and cleanups
+ Updated translations.
-------------------------------------------------------------------
Fri Jul 12 08:23:12 UTC 2024 - Xiaoguang Wang <xiaoguang.wang@suse.com>
@@ -264,154 +6,12 @@ Fri Jul 12 08:23:12 UTC 2024 - Xiaoguang Wang <xiaoguang.wang@suse.com>
(glgo#GNOME/gnome-shell#7688 bsc#1225567 CVE-2024-36472).
-------------------------------------------------------------------
Sun Jun 30 09:45:26 UTC 2024 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 46.3.1:
+ Fix including gvc source in tarball
- Changes from version 46.3:
+ Fix rendering artifacts of some rounded borders
+ Fix overview animation glitch when windows overlap workspaces
+ Misc. bug fixes and cleanups
+ Updated translations.
- Add gvc (libgnome-volume-control) submodule to _service file and
inject subproject into the source directory. This is not tracked
as git submodules, so the regular 'git submodule' service
parameter is ineffective here.
-------------------------------------------------------------------
Mon May 27 07:11:02 UTC 2024 - Dominique Leuenberger <dimstar@opensuse.org>
- Update to version 46.2:
+ Fix size of workspace switcher OSD.
+ Fix handling of invalid TLS certs in portal handler.
+ Exclude override-redirect windows from workspace animation.
+ Also center time on lock screen when using 12h format.
+ Use absolute tray icon position in root event coordinates.
+ Fix displaying info messages on login screen.
+ Correct expected bus name for streams.
+ Fix notifications on lock screen.
+ notifications: Only apply special styling to symbolic icons.
+ Fix number of search results with Large Text option.
+ Fix showing keyboard layouts with variants.
+ Tweak font sizes in calendar.
+ automountManager: Fix re-asking password for TCRYPT devices.
+ Fix stuck unlock prompt when animations are disabled.
+ Fix possible hang on startup during ibus-daemon launch.
+ Misc. bug fixes and cleanups.
+ Updated translations.
-------------------------------------------------------------------
Fri May 17 03:33:41 UTC 2024 - Alynx Zhou <alynx.zhou@suse.com>
Tue May 21 08:24:13 UTC 2024 - Alynx Zhou <alynx.zhou@suse.com>
- Add gnome-shell-fix-cursor-on-hide-preedit.patch: Correctly reset
preedit cursor location when hide preedit text to prevent
potential problems (glgo#GNOME/gnome-shell!3318).
-------------------------------------------------------------------
Thu May 2 08:03:42 UTC 2024 - Dominique Leuenberger <dimstar@opensuse.org>
- Update to version 46.1:
+ Improve notification of conflicting session.
+ Add shift level to Korean OSK layout.
+ Fix markup support in notifications.
+ extensions-app: Fix empty rows with '&' in extension name.
+ extensions-app: Improve HIG compliance.
+ Omit expand buttons in notification banners.
+ Misc. bug fixes and cleanups.
+ Updated translations.
-------------------------------------------------------------------
Mon Apr 29 12:09:28 UTC 2024 - pgajdos@suse.com
- remove dependency on /usr/bin/python3 using
%python3_fix_shebang macro, [bsc#1212476]
-------------------------------------------------------------------
Sun Mar 17 09:27:43 UTC 2024 - Dominique Leuenberger <dimstar@opensuse.org>
- Update to version 46.0:
+ Fix model selection in on-screen keyboard.
+ Fix key getting stuck when raising screen shield.
+ Fix notifications sometimes being empty.
+ Fix cursor visibilty when magnified.
+ Fixed crashes.
+ Misc. bug fixes and cleanups.
+ Updated translations.
-------------------------------------------------------------------
Fri Mar 8 08:31:07 UTC 2024 - Dominique Leuenberger <dimstar@opensuse.org>
- Update to version 46.rc:
+ Fix repainting drawing area.
+ Support locking down extension installation.
+ Fix auto-closing FDO notifications.
+ Ensure remote actions are activated with correct platform data.
+ FDO notifications: Support ActivationToken signal.
+ Delete selected text on backspace from on-screen keyboard.
+ Various on-screen keyboard improvements.
+ Inform users of conflicting local/remote sessions on login.
+ screencasts: Use h264 encoding if available.
+ Work around issue in NetworkManager's wireguard support.
+ Allow expanding notifications in message list.
+ Fixed crash.
+ Misc. bug fixes and cleanups.
+ Updated translations.
-------------------------------------------------------------------
Fri Mar 8 00:47:00 UTC 2024 - Dominique Leuenberger <dimstar@opensuse.org>
- Update to version 46.beta:
+ Improve High Contrast styling.
+ Improve default styling.
+ Close mount notification when drive gets disconnected.
+ extensions-app: Remember window state.
+ Fix feedback look in keyboard backlight slider.
+ Follow "switch-shapes" accessibility setting.
+ Fix effects of transient wayland windows.
+ Add keyboard model configuration support.
+ Add Text Editor to the dash by default.
+ Fix icon size regression in dash.
+ Improve project and development documentation.
+ overview: Keep dimming effect for modal dialogs.
+ Do not use markup in button labels.
+ Fix menu alignment in RTL locales.
+ Overhaul assets in monitor layout switcher.
+ Fix overview transition from search results to session.
+ Add header to notifications.
+ extensions-app: Use adaptive dialogs.
+ Register custom D-Bus errors.
+ Improve appearance of symbolic icons in notifications.
+ Improve minimize animation.
+ Use a single source for all system notifications.
+ Add missing shift level to Georgian OSK layout.
+ Tweak switch appearance.
+ Improve handling of screencast failures.
+ Fixed crash.
+ Misc. bug fixes and cleanups.
-------------------------------------------------------------------
Fri Mar 8 00:46:00 UTC 2024 - Dominique Leuenberger <dimstar@opensuse.org>
- Update to version 46.alpha:
+ Fix scroll handling on sliders.
+ overview: Handle unredirection as part of the state transition.
+ Handle DESKTOP windows during workspace animations.
+ Improve wording in welcome dialog.
+ Improve recording indicator in light style.
+ Fix calendar popup shrinking on date changes.
+ app: Make all windows on target workspace recent when
activated.
+ Fix performance degradation due to repeated signal leak.
+ Optimize application search.
+ Fix on-screen keyboard backspace getting stuck.
+ Adapt to ClutterContainer removal.
+ Fix arrow navigation in search results.
+ Improve monitor OSD labels.
+ Use dedicated assets in ctrl-alt-tab popup.
+ Updated translations.
- Replace gtk-doc BuildRequires with pkgconfig(gi-docgen): follow
upstreams port to gi-docgen.
-------------------------------------------------------------------
Thu Mar 7 07:47:00 UTC 2024 - Xiaoguang Wang <xiaoguang.wang@suse.com>
@@ -427,7 +27,7 @@ Tue Feb 20 10:03:05 UTC 2024 - Alynx Zhou <alynx.zhou@suse.com>
-------------------------------------------------------------------
Mon Jan 22 02:31:04 UTC 2024 - Xiaoguang Wang <xiaoguang.wang@suse.com>
- Adapt to version 45.3 (bsc#1216072):
- Adapt to version 45.3(bsc#1216072):
+ Rebase gnome-shell-domain.patch
+ Rebase gnome-shell-fate324570-Make-GDM-background-image-configurable.patch

View File

@@ -1,4 +1,4 @@
name: gnome-shell
version: 48.0
mtime: 1742135451
commit: a2ffd14a35d3e926dcc86c06ea6d04c57ed5c1a3
version: 45.3
mtime: 1704579588
commit: c76b18a04282e48f6196ad1f9f1ab6f08c492599

View File

@@ -1,7 +1,7 @@
#
# spec file for package gnome-shell
#
# Copyright (c) 2025 SUSE LLC
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,11 +17,11 @@
%global __requires_exclude typelib\\(Meta|MetaTest|Soup|St|Cogl|Clutter|TelepathyGlib\\)
%define mutter_api 16
%define mutter_req 48.alpha
%define mutter_api 13
%define mutter_req 45.beta
Name: gnome-shell
Version: 48.0
Version: 45.3
Release: 0
Summary: GNOME Shell
# shew extension is LGPL 2.1; gnome-shell-extension-tool is GPL-3.0-or-later
@@ -29,24 +29,34 @@ License: GPL-2.0-or-later AND LGPL-2.1-or-later AND GPL-3.0-or-later
Group: System/GUI/GNOME
URL: https://wiki.gnome.org/Projects/GnomeShell
# Source url disabled as we are using a git checkout via source service
#Source0: https://download.gnome.org/sources/gnome-shell/41/%%{name}-%%{version}.tar.xz
Source0: %{name}-%{version}.tar.zst
Source1: libgnome-volume-control-0.gitmodule.tar.zst
# SOURCE-FEATURE-OPENSUSE noise-texture boo#1176418 qkzhu@suse.com -- Add noise-texture as the default greeter background, used by patch4.
Source100: noise-texture.png
Source1: noise-texture.png
# PATCH-FIX-UPSTREAM gnome-shell-private-connection.patch bnc#751211 bgo#646187 dimstar@opensuse.org -- create private connections if the user is not authorized
Patch1: gnome-shell-private-connection.patch
# PATCH-FIX-OPENSUSE gnome-shell-executable-path-not-absolute.patch bsc#1176051 xwang@suse.com -- Fix ExecStart is not absolute path
Patch1: gnome-shell-executable-path-not-absolute.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 gnome-shell-fix-cursor-on-hide-preedit.patch glgo#GNOME/gnome-shell!3318 alynx.zhou@suse.com -- Correctly reset cursor when hide preedit
Patch2: gnome-shell-fix-cursor-on-hide-preedit.patch
Patch9: gnome-shell-fix-cursor-on-hide-preedit.patch
# PATCH-FIX-UPSTREAM CVE-2024-36472.patch glgo#GNOME/gnome-shell#7688 bsc#1225567 xiaoguang.wang@suse.com -- Show notification when detecting captive portal
Patch10: CVE-2024-36472.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.
Patch1001: gnome-shell-gdm-login-applet.patch
# PATCH-FEATURE-SLE gnome-shell-domain.patch fate#307773 dliang@suse.com -- Active Directory Integration
Patch1002: gnome-shell-domain.patch
# PATCH-FIX-SLE gnome-shell-screen-disappear.patch bnc#870217 dliang@suse.com -- screen disapper.
Patch1003: gnome-shell-screen-disappear.patch
# PATCH-FIX-SLE endSession-dialog-update-time-label-every-sec.patch bnc#886132 cxiong@suse.com -- update time label every second in end session dialog
Patch1004: endSession-dialog-update-time-label-every-sec.patch
# PATCH-FIX-SLE gs-fate318433-prevent-same-account-multi-logins.patch fate#318433 cxiong@suse.com -- prevent multiple simultaneous login.
Patch1007: gs-fate318433-prevent-same-account-multi-logins.patch
# PATCH-FIX-SLE gnome-shell-disable-ibus-when-not-installed.patch bsc#987360 qzhao@suse.com -- disable ibus start when outof Chinese, Japanese, Korean area
Patch1008: gnome-shell-disable-ibus-when-not-installed.patch
# PATCH-FEATURE-SLE gnome-shell-fate324570-Make-GDM-background-image-configurable.patch fate#324570, glgo#GNOME/gnome-shell#680, boo#1172826 qkzhu@suse.com -- make GDM background image configurable
@@ -64,9 +74,9 @@ Patch1013: gnome-shell-add-linkoption-dl.patch
BuildRequires: asciidoc
BuildRequires: dbus-1
BuildRequires: docbook-xsl-stylesheets
BuildRequires: docutils
BuildRequires: fdupes
BuildRequires: gcc-c++
BuildRequires: gtk-doc
BuildRequires: meson >= 0.58.0
BuildRequires: pkgconfig
BuildRequires: sassc
@@ -76,7 +86,6 @@ BuildRequires: pkgconfig(bash-completion)
BuildRequires: pkgconfig(gcr-4) >= 3.90.0
BuildRequires: pkgconfig(gdk-pixbuf-2.0)
BuildRequires: pkgconfig(gdk-x11-3.0)
BuildRequires: pkgconfig(gi-docgen)
BuildRequires: pkgconfig(gio-2.0) >= 2.56.0
BuildRequires: pkgconfig(gio-unix-2.0) >= 2.56.0
BuildRequires: pkgconfig(gjs-1.0) >= 1.71.1
@@ -86,7 +95,7 @@ BuildRequires: pkgconfig(gnome-desktop-4)
BuildRequires: pkgconfig(gnome-keybindings)
BuildRequires: pkgconfig(gobject-2.0)
BuildRequires: pkgconfig(gobject-introspection-1.0) >= 1.49.1
BuildRequires: pkgconfig(gsettings-desktop-schemas) >= 46.beta
BuildRequires: pkgconfig(gsettings-desktop-schemas) >= 41.alpha
BuildRequires: pkgconfig(gstreamer-1.0) >= 0.11.92
BuildRequires: pkgconfig(gstreamer-base-1.0)
BuildRequires: pkgconfig(gtk+-3.0) >= 3.15.0
@@ -110,6 +119,7 @@ BuildRequires: pkgconfig(libsystemd)
BuildRequires: pkgconfig(libxml-2.0)
BuildRequires: pkgconfig(mutter-clutter-%{mutter_api}) >= %{mutter_req}
BuildRequires: pkgconfig(mutter-cogl-%{mutter_api}) >= %{mutter_req}
BuildRequires: pkgconfig(mutter-cogl-pango-%{mutter_api}) >= %{mutter_req}
BuildRequires: pkgconfig(polkit-agent-1) >= 0.100
BuildRequires: pkgconfig(x11)
BuildRequires: python(abi) >= 3
@@ -177,18 +187,30 @@ This package contains an optional extensions app for managing GNOME Shell extens
%lang_package
%prep
%autosetup -N
pushd subprojects
tar xf %{SOURCE1}
mv libgnome-volume-control-0.gitmodule gvc
popd
%autopatch -p1 -M 999
%setup -q
%patch -P 1 -p1
%patch -P 7 -p1
%patch -P 8 -p1
%patch -P 9 -p1
%patch -P 10 -p1
%if !0%{?is_opensuse} || 0%{?suse_version} <= 1600
%autopatch -p1 -m 1000
%if 0%{?sle_version}
%patch -P 1001 -p1
%patch -P 1002 -p1
%patch -P 1003 -p1
%patch -P 1004 -p1
%patch -P 1007 -p1
%patch -P 1008 -p1
%patch -P 1009 -p1
%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150300
%patch -P 1010 -p1
%patch -P 1011 -p1
%endif
%patch -P 1012 -p1
%patch -P 1013 -p1
%endif
cp %{SOURCE100} data/theme/
cp %{SOURCE1} data/theme/
%build
%meson \
@@ -213,13 +235,13 @@ install -d %{buildroot}%{_datadir}/gnome-shell/modes
%fdupes %{buildroot}%{_prefix}
# Not needed, only used for nightly git snapshots
rm -f %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/org.gnome.Extensions.Devel.svg
%python3_fix_shebang
%files
%license COPYING
%doc README.md NEWS
%{_bindir}/gnome-shell
%{_bindir}/gnome-extensions
%{_bindir}/gnome-shell-extension-prefs
%{_bindir}/gnome-shell-extension-tool
%{_bindir}/gnome-shell-test-tool
%dir %{_libdir}/gnome-shell
@@ -237,7 +259,6 @@ rm -f %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/org.gnome.Extensions.D
%{_libdir}/gnome-shell/libst-%{mutter_api}.so
%{_datadir}/applications/org.gnome.Shell.desktop
%{_datadir}/applications/org.gnome.Shell.PortalHelper.desktop
%{_datadir}/dbus-1/interfaces/org.gnome.Shell.ScreenTime.xml
%{_datadir}/dbus-1/interfaces/org.gnome.Shell.Introspect.xml
%{_datadir}/dbus-1/interfaces/org.gnome.Shell.PadOsd.xml
%{_datadir}/dbus-1/interfaces/org.gnome.Shell.Screencast.xml
@@ -246,7 +267,6 @@ rm -f %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/org.gnome.Extensions.D
%{_datadir}/dbus-1/interfaces/org.gnome.ShellSearchProvider2.xml
%{_datadir}/dbus-1/services/org.gnome.Shell.HotplugSniffer.service
%{_datadir}/dbus-1/services/org.gnome.Shell.PortalHelper.service
%{_datadir}/glib-2.0/schemas/org.gnome.Extensions.gschema.xml
%{_datadir}/glib-2.0/schemas/org.gnome.shell.gschema.xml
%{_datadir}/gnome-control-center/keybindings/50-gnome-shell-launchers.xml
%{_datadir}/gnome-control-center/keybindings/50-gnome-shell-system.xml
@@ -261,6 +281,9 @@ rm -f %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/org.gnome.Extensions.D
%{_datadir}/gnome-shell/perf-background.xml
%{_datadir}/gnome-shell/gnome-shell-icons.gresource
%{_mandir}/man?/gnome-shell.?%{ext_man}
%dir %{_datadir}/xdg-desktop-portal
%dir %{_datadir}/xdg-desktop-portal/portals
%{_datadir}/xdg-desktop-portal/portals/gnome-shell.portal
%{_userunitdir}/org.gnome.Shell.target
%{_userunitdir}/org.gnome.Shell@wayland.service
%{_userunitdir}/org.gnome.Shell@x11.service
@@ -287,20 +310,16 @@ rm -f %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/org.gnome.Extensions.D
%{_datadir}/bash-completion/completions/gnome-extensions
%{_datadir}/icons/hicolor/scalable/apps/org.gnome.Shell.Extensions.svg
%{_datadir}/icons/hicolor/symbolic/apps/org.gnome.Shell.Extensions-symbolic.svg
%{_datadir}/icons/hicolor/scalable/apps/org.gnome.Shell.CaptivePortal.svg
%{_datadir}/icons/hicolor/symbolic/apps/org.gnome.Shell.CaptivePortal-symbolic.svg
%{_userunitdir}/org.gnome.Shell-disable-extensions.service
%{_datadir}/applications/org.gnome.Shell.Extensions.desktop
%{_datadir}/dbus-1/interfaces/org.gnome.Shell.Extensions.xml
%{_datadir}/dbus-1/services/org.gnome.Shell.Extensions.service
%{_datadir}/gnome-shell/org.gnome.Shell.Extensions
%{_datadir}/gnome-shell/org.gnome.Shell.Extensions.src.gresource
%{_datadir}/desktop-directories/X-GNOME-Shell-Utilities.directory
%{_datadir}/desktop-directories/X-GNOME-Shell-System.directory
%files devel
%doc %{_datadir}/doc/shell/
%doc %{_datadir}/doc/st/
%doc HACKING.md
%doc %{_datadir}/gtk-doc/html
%{_datadir}/gnome-shell/*.gir
%dir %{_datadir}/gnome-shell/gir-1.0
%{_datadir}/gnome-shell/gir-1.0/Shew-0.gir

View File

@@ -0,0 +1,34 @@
Index: gnome-shell-41.9/js/gdm/loginDialog.js
===================================================================
--- gnome-shell-41.9.orig/js/gdm/loginDialog.js
+++ gnome-shell-41.9/js/gdm/loginDialog.js
@@ -1044,6 +1044,29 @@ var LoginDialog = GObject.registerClass(
}
_onSessionOpened(client, serviceName) {
+ if (this._user.get_num_sessions_anywhere() > 1) {
+ this._authPrompt.setMessage(
+ _('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
+ // `AuthPrompt::_onVerificationComplete` seems to always run after
+ // 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
+ //
+ // NOTE: reset is too heavy, it skips the error prompt all together
+ // this._authPrompt.reset();
+ //
+ // NOTE: Diconnect at this stage is not working
+ //
+ // this._authPrompt._userVerifier.disconnect(this._authPrompt._userVerifierCompleteId);
+
+ return;
+ }
+
this._authPrompt.finish(() => this._startSession(serviceName));
}

Binary file not shown.

View File

@@ -1,4 +0,0 @@
name: libgnome-volume-control
version: 0.gitmodule
mtime: 1715698836
commit: 5f9768a2eac29c1ed56f1fbb449a77a3523683b6