From ae5d9cc575b02db36e51c1bb30817fc594c891b3 Mon Sep 17 00:00:00 2001 From: oreo639 Date: Fri, 9 Sep 2022 16:46:44 -0700 Subject: [PATCH 1/4] gnome-session: remove outdated workaround and fix overwriting lang The issue the revert autostart-app patch was added for was fixed in elogind: https://gitlab.gnome.org/GNOME/gnome-session/-/issues/44 On wayland `/etc/profile` is not loaded by GDM. while this may cause some inconvience, gnome-session is the wrong place to load it. --- ...-app-Strip-blacklisted-variables-fro.patch | 67 ------------------- .../include-profile-env-variables.patch | 21 ------ srcpkgs/gnome-session/template | 2 +- 3 files changed, 1 insertion(+), 89 deletions(-) delete mode 100644 srcpkgs/gnome-session/patches/0001-revert-autostart-app-Strip-blacklisted-variables-fro.patch delete mode 100644 srcpkgs/gnome-session/patches/include-profile-env-variables.patch diff --git a/srcpkgs/gnome-session/patches/0001-revert-autostart-app-Strip-blacklisted-variables-fro.patch b/srcpkgs/gnome-session/patches/0001-revert-autostart-app-Strip-blacklisted-variables-fro.patch deleted file mode 100644 index af8350b8d933..000000000000 --- a/srcpkgs/gnome-session/patches/0001-revert-autostart-app-Strip-blacklisted-variables-fro.patch +++ /dev/null @@ -1,67 +0,0 @@ -From 1de3575a1ea9cdb3579ad538108c51818847797c Mon Sep 17 00:00:00 2001 -From: Rasmus Thomsen -Date: Fri, 6 Dec 2019 11:48:02 +0100 -Subject: [PATCH] revert: autostart-app: Strip blacklisted variables from - autostart environment - -This breaks gnome-session on non-systemd systems. - -https://gitlab.gnome.org/GNOME/gnome-session/issues/44 ---- - gnome-session/gsm-autostart-app.c | 5 ----- - gnome-session/gsm-util.c | 6 ------ - gnome-session/gsm-util.h | 1 - - 3 files changed, 12 deletions(-) - -diff --git a/gnome-session/gsm-autostart-app.c b/gnome-session/gsm-autostart-app.c -index 6fd5915..01ba5f9 100644 ---- a/gnome-session/gsm-autostart-app.c -+++ b/gnome-session/gsm-autostart-app.c -@@ -997,7 +997,6 @@ 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; -@@ -1014,10 +1013,6 @@ 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 02bc4a5..ada1225 100644 ---- a/gnome-session/gsm-util.c -+++ b/gnome-session/gsm-util.c -@@ -808,9 +808,3 @@ 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 bd7b698..8bca5f4 100644 ---- a/gnome-session/gsm-util.h -+++ b/gnome-session/gsm-util.h -@@ -50,7 +50,6 @@ 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.24.0 - diff --git a/srcpkgs/gnome-session/patches/include-profile-env-variables.patch b/srcpkgs/gnome-session/patches/include-profile-env-variables.patch deleted file mode 100644 index 2e06bddecb1f..000000000000 --- a/srcpkgs/gnome-session/patches/include-profile-env-variables.patch +++ /dev/null @@ -1,21 +0,0 @@ -By default GNOME folks want us to put all stuff in /usr/share/gdm/env.d -(which is a lot of effort for no good reason for us) or use the systemd -specific /etc/environment.d to set environment variables. With this -patch we just force gnome-session's hand to include the env variables -of /etc/profile. - ---- a/gnome-session/gnome-session.in -+++ b/gnome-session/gnome-session.in -@@ -1,4 +1,4 @@ --#!/bin/sh -+#!/bin/bash - - if [ "x$XDG_SESSION_TYPE" = "xwayland" ] && - [ "x$XDG_SESSION_CLASS" != "xgreeter" ] && -@@ -25,4 +25,6 @@ if [ -n "$REGION" ]; then - export LC_PAPER=$REGION - fi - -+source /etc/profile -+ - exec @libexecdir@/gnome-session-binary "$@" diff --git a/srcpkgs/gnome-session/template b/srcpkgs/gnome-session/template index cce39e931eb8..76b1f49f1cdc 100644 --- a/srcpkgs/gnome-session/template +++ b/srcpkgs/gnome-session/template @@ -1,7 +1,7 @@ # Template file for 'gnome-session' pkgname=gnome-session version=42.0 -revision=1 +revision=2 build_style=meson configure_args="-Dsystemd_journal=false -Dsystemd_session=disable" hostmakedepends="glib-devel intltool pkg-config xmlto" From cf9d670e4b9afaa4e349bc860730622561de514c Mon Sep 17 00:00:00 2001 From: oreo639 Date: Mon, 12 Sep 2022 21:09:42 -0700 Subject: [PATCH 2/4] flatpak: fix support for gdm --- srcpkgs/flatpak/template | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/srcpkgs/flatpak/template b/srcpkgs/flatpak/template index 778ab0e681d8..e9fefbf33925 100644 --- a/srcpkgs/flatpak/template +++ b/srcpkgs/flatpak/template @@ -1,7 +1,7 @@ # Template file for 'flatpak' pkgname=flatpak version=1.14.0 -revision=1 +revision=2 build_style=gnu-configure build_helper="gir" configure_args=" @@ -9,6 +9,7 @@ configure_args=" --with-system-dbus-proxy --with-system-helper-user=_flatpak --enable-selinux-module=no + --enable-gdm-env-file $(vopt_enable gir introspection)" hostmakedepends="bubblewrap gettext glib-devel libxslt pkg-config bison python3-parsing xmlto docbook-xml docbook-xsl xdg-dbus-proxy" From 4f356c17c5c7f12e427f482f5aa7a459a979f24a Mon Sep 17 00:00:00 2001 From: oreo639 Date: Mon, 12 Sep 2022 23:06:23 -0700 Subject: [PATCH 3/4] gdm: create env.d --- srcpkgs/gdm/template | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/srcpkgs/gdm/template b/srcpkgs/gdm/template index 3686c70b7404..e2b2fcfc2eb9 100644 --- a/srcpkgs/gdm/template +++ b/srcpkgs/gdm/template @@ -1,7 +1,7 @@ # Template file for 'gdm' pkgname=gdm version=42.0 -revision=1 +revision=2 build_helper="gir" build_style=meson configure_args=" @@ -10,7 +10,8 @@ configure_args=" -Dplymouth=enabled -Dxauth-dir=/run/gdm -Dpid-file=/run/gdm/gdm.pid -Dsystemd-journal=false -Dinitial-vt=7 -Dwayland-support=true -Dselinux=disabled -Dlibaudit=disabled - -Dsystemdsystemunitdir=/tmp -Dsystemduserunitdir=/tmp" + -Dsystemdsystemunitdir=/usr/lib/systemd/system + -Dsystemduserunitdir=/usr/lib/systemd/user" hostmakedepends="dconf gettext itstool pkg-config" makedepends="accountsservice-devel elogind-devel gettext-devel glib-devel iso-codes libSM-devel libcanberra-devel nss-devel pam-devel upower-devel @@ -32,6 +33,9 @@ conf_files=" /etc/pam.d/gdm-launch-environment /etc/pam.d/gdm-password /etc/pam.d/gdm-smartcard" +make_dirs=" + /usr/share/gdm/env.d 0755 root root + /etc/gdm/env.d 0755 root root" # Create the 'gdm' system user/group. system_accounts="gdm" gdm_homedir="/var/lib/gdm" @@ -52,7 +56,6 @@ post_install() { vsed -i "s/pam_systemd\.so/pam_elogind.so/" "$f" fi done - rm -rf ${DESTDIR}/tmp # runit service vsv gdm From 30bd211fbd924eb1f913a8ce4d7f973c9c57ae4b Mon Sep 17 00:00:00 2001 From: oreo639 Date: Tue, 13 Sep 2022 10:28:22 -0700 Subject: [PATCH 4/4] base-files: don't overwrite existing locale and define default LANG --- srcpkgs/base-files/files/locale.sh | 10 ++++++++-- srcpkgs/base-files/template | 2 +- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/srcpkgs/base-files/files/locale.sh b/srcpkgs/base-files/files/locale.sh index 8486367bfabf..bf266eefa1d1 100644 --- a/srcpkgs/base-files/files/locale.sh +++ b/srcpkgs/base-files/files/locale.sh @@ -1,9 +1,15 @@ # Sets up locale system settings from /etc/locale.conf. # -if [ -s /etc/locale.conf ]; then - . /etc/locale.conf + +if [ -z "$LANG" ]; then + if [ -s /etc/locale.conf ]; then + . /etc/locale.conf + fi fi +# define default LANG to C if not already defined +LANG=${LANG:-C} + export LANG LANGUAGE LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY export LC_MESSAGES LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT export LC_INDENTIFICATION diff --git a/srcpkgs/base-files/template b/srcpkgs/base-files/template index 2249d002f3f9..580523e61e78 100644 --- a/srcpkgs/base-files/template +++ b/srcpkgs/base-files/template @@ -1,7 +1,7 @@ # Template file for 'base-files' pkgname=base-files version=0.142 -revision=13 +revision=14 bootstrap=yes depends="xbps-triggers" short_desc="Void Linux base system files"