Update to 3.34.2
This commit is contained in:
parent
1098d5766a
commit
25b3628c16
1
.gitignore
vendored
1
.gitignore
vendored
@ -107,3 +107,4 @@ gnome-session-2.31.6.tar.bz2
|
||||
/gnome-session-3.33.92.tar.xz
|
||||
/gnome-session-3.34.0.tar.xz
|
||||
/gnome-session-3.34.1.tar.xz
|
||||
/gnome-session-3.34.2.tar.xz
|
||||
|
@ -1,70 +0,0 @@
|
||||
From 60e619b8a2cacc7b844fe6f0e206c895de68f890 Mon Sep 17 00:00:00 2001
|
||||
From: Benjamin Berg <bberg@redhat.com>
|
||||
Date: Mon, 7 Oct 2019 22:47:24 +0200
|
||||
Subject: [PATCH] autostart-app: Strip blacklisted variables from autostart
|
||||
environment
|
||||
|
||||
So far the blacklisted variables were not actively striped from the
|
||||
environment of XDG autostart applications. Update the code to explicitly
|
||||
unset the variables, preventing e.g. NOTIFY_SOCKET to be leaked to
|
||||
children.
|
||||
|
||||
Fixes: #36
|
||||
---
|
||||
gnome-session/gsm-autostart-app.c | 5 +++++
|
||||
gnome-session/gsm-util.c | 6 ++++++
|
||||
gnome-session/gsm-util.h | 1 +
|
||||
3 files changed, 12 insertions(+)
|
||||
|
||||
diff --git a/gnome-session/gsm-autostart-app.c b/gnome-session/gsm-autostart-app.c
|
||||
index 01ba5f9a..6fd5915a 100644
|
||||
--- a/gnome-session/gsm-autostart-app.c
|
||||
+++ b/gnome-session/gsm-autostart-app.c
|
||||
@@ -997,6 +997,7 @@ autostart_app_start_spawn (GsmAutostartApp *app,
|
||||
gboolean success;
|
||||
GError *local_error;
|
||||
const char *startup_id;
|
||||
+ const char * const *variable_blacklist;
|
||||
const char * const *child_environment;
|
||||
int i;
|
||||
GAppLaunchContext *ctx;
|
||||
@@ -1013,6 +1014,10 @@ autostart_app_start_spawn (GsmAutostartApp *app,
|
||||
local_error = NULL;
|
||||
ctx = g_app_launch_context_new ();
|
||||
|
||||
+ variable_blacklist = gsm_util_get_variable_blacklist ();
|
||||
+ for (i = 0; variable_blacklist[i] != NULL; i++)
|
||||
+ g_app_launch_context_unsetenv (ctx, variable_blacklist[i]);
|
||||
+
|
||||
child_environment = gsm_util_listenv ();
|
||||
for (i = 0; child_environment[i] != NULL; i++) {
|
||||
char **environment_tuple;
|
||||
diff --git a/gnome-session/gsm-util.c b/gnome-session/gsm-util.c
|
||||
index ada12253..02bc4a57 100644
|
||||
--- a/gnome-session/gsm-util.c
|
||||
+++ b/gnome-session/gsm-util.c
|
||||
@@ -808,3 +808,9 @@ gsm_util_listenv (void)
|
||||
return (const char * const *) child_environment;
|
||||
|
||||
}
|
||||
+
|
||||
+const char * const *
|
||||
+gsm_util_get_variable_blacklist (void)
|
||||
+{
|
||||
+ return variable_blacklist;
|
||||
+}
|
||||
diff --git a/gnome-session/gsm-util.h b/gnome-session/gsm-util.h
|
||||
index 8bca5f4d..bd7b6986 100644
|
||||
--- a/gnome-session/gsm-util.h
|
||||
+++ b/gnome-session/gsm-util.h
|
||||
@@ -50,6 +50,7 @@ char * gsm_util_generate_startup_id (void);
|
||||
void gsm_util_setenv (const char *variable,
|
||||
const char *value);
|
||||
const char * const * gsm_util_listenv (void);
|
||||
+const char * const * gsm_util_get_variable_blacklist(void);
|
||||
|
||||
gboolean gsm_util_export_activation_environment (GError **error);
|
||||
#ifdef HAVE_SYSTEMD
|
||||
--
|
||||
2.23.0
|
||||
|
@ -1,35 +0,0 @@
|
||||
From 2913d9829bd6088e8f521fe6ffea68c59e935a3e Mon Sep 17 00:00:00 2001
|
||||
From: Benjamin Berg <bberg@redhat.com>
|
||||
Date: Wed, 9 Oct 2019 22:38:38 +0200
|
||||
Subject: [PATCH 1/2] data: Ensure shutdown target does not keep units loaded
|
||||
|
||||
The shutdown target has explicit conflicts on some user units, this
|
||||
means that as long as it is active, it will keep those units loaded.
|
||||
|
||||
We could probably reverse the conflicts to prevent this from happening.
|
||||
But, it makes sense to set StopWhenUnneeded=true anyway and doing so
|
||||
also means that the corresponding units can be unloaded after logout.
|
||||
---
|
||||
data/gnome-session-shutdown.target | 6 +++++-
|
||||
1 file changed, 5 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/data/gnome-session-shutdown.target b/data/gnome-session-shutdown.target
|
||||
index 84afb001..607dc6e7 100644
|
||||
--- a/data/gnome-session-shutdown.target
|
||||
+++ b/data/gnome-session-shutdown.target
|
||||
@@ -16,7 +16,11 @@ After=gnome-session.target gnome-session-manager.target
|
||||
Conflicts=gnome-session-pre.target gnome-session-initialized.target gnome-session-failed.target
|
||||
After=gnome-session-pre.target gnome-session-initialized.target gnome-session-failed.target
|
||||
|
||||
-# Could we set StopWhenUnneeded=true or would that prevent the service to start?
|
||||
+# We need to make sure this unit is stopped; primarily so that the tree of
|
||||
+# units that we created is completely cleaned.
|
||||
+# Note that this can also be improved by reversing the conflicts above and
|
||||
+# not listing them in the shutdown unit.
|
||||
+StopWhenUnneeded=true
|
||||
|
||||
# We trigger a restart of DBus after reaching the shutdown target this
|
||||
# is a workaround so that DBus services that do not connect to the
|
||||
--
|
||||
2.23.0
|
||||
|
@ -1,26 +0,0 @@
|
||||
From 3f4907c5c65c782e3ab03aa965d3fd558a986ef2 Mon Sep 17 00:00:00 2001
|
||||
From: Benjamin Berg <bberg@redhat.com>
|
||||
Date: Wed, 9 Oct 2019 22:41:27 +0200
|
||||
Subject: [PATCH 2/2] data: Make X11 services part of gnome-session
|
||||
|
||||
The X11 services need to be stopped together with the session. Add
|
||||
corresponding Requisite/PartOf/Before entries.
|
||||
---
|
||||
data/gnome-session-x11-services.target | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/data/gnome-session-x11-services.target b/data/gnome-session-x11-services.target
|
||||
index e9dea9b5..d8d2883d 100644
|
||||
--- a/data/gnome-session-x11-services.target
|
||||
+++ b/data/gnome-session-x11-services.target
|
||||
@@ -1,3 +1,7 @@
|
||||
[Unit]
|
||||
Description=GNOME session X11 services
|
||||
DefaultDependencies=no
|
||||
+
|
||||
+Requisite=gnome-session.target
|
||||
+PartOf=gnome-session.target
|
||||
+Before=gnome-session.target
|
||||
--
|
||||
2.23.0
|
||||
|
@ -8,8 +8,8 @@
|
||||
%endif
|
||||
|
||||
Name: gnome-session
|
||||
Version: 3.34.1
|
||||
Release: 3%{?dist}
|
||||
Version: 3.34.2
|
||||
Release: 1%{?dist}
|
||||
Summary: GNOME session manager
|
||||
|
||||
License: GPLv2+
|
||||
@ -26,12 +26,6 @@ Patch4: 0001-check-accelerated-gles-Use-eglGetPlatformDisplay-EXT.patch
|
||||
Patch5: 0001-Add-support-for-new-ConfirmedRebootToBootOptions-sig.patch
|
||||
Patch6: 0002-Fedora-Set-grub-boot-flags-on-shutdown-reboot.patch
|
||||
|
||||
Patch10: 0001-autostart-app-Strip-blacklisted-variables-from-autos.patch
|
||||
|
||||
# https://gitlab.gnome.org/GNOME/gnome-session/merge_requests/28
|
||||
Patch20: 0001-data-Ensure-shutdown-target-does-not-keep-units-load.patch
|
||||
Patch21: 0002-data-Make-X11-services-part-of-gnome-session.patch
|
||||
|
||||
BuildRequires: meson
|
||||
BuildRequires: gcc
|
||||
BuildRequires: pkgconfig(egl)
|
||||
@ -135,6 +129,9 @@ Desktop file to add GNOME on wayland to display manager session menu.
|
||||
%{_userunitdir}/gnome-session*
|
||||
|
||||
%changelog
|
||||
* Thu Nov 28 2019 Kalev Lember <klember@redhat.com> - 3.34.2-1
|
||||
- Update to 3.34.2
|
||||
|
||||
* Fri Oct 11 2019 Benjamin Berg <bberg@redhat.com> - 3.34.1-3
|
||||
- Add patches to ensure proper unit unloading after session shutdown
|
||||
https://gitlab.gnome.org/GNOME/gnome-session/merge_requests/28
|
||||
|
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (gnome-session-3.34.1.tar.xz) = a8c0c2e7613639dd48416d4bb560aa4b5ed664268cee6b6c372d5d196e49350c13f1361e02bba57711992860189637ce542351bee01000a44a82f66dd4f79f7f
|
||||
SHA512 (gnome-session-3.34.2.tar.xz) = 23388420ee117596b73ac057d2376857db726fb727fdeff4e4f420e7742622e81baef439adb04d8659a6979e5b7043c72ea334c1179974950476489a8c397182
|
||||
|
Loading…
Reference in New Issue
Block a user