diff --git a/gnome-session/gnome-session.in b/gnome-session/gnome-session.in index b4b1f8fa..99d52cba 100755 --- a/gnome-session/gnome-session.in +++ b/gnome-session/gnome-session.in @@ -4,13 +4,15 @@ if [ "x$XDG_SESSION_TYPE" = "xwayland" ] && [ "x$XDG_SESSION_CLASS" != "xgreeter" ] && [ -n "$SHELL" ]; then if [ "$1" != '-l' ]; then - exec bash -c "exec -l '$SHELL' -c '$0 -l $*'" + # Make sure the shell actually sets up the environment. + unset __NIXOS_SET_ENVIRONMENT_DONE + exec @bash@ -c "exec -l '$SHELL' -c '$0 -l $*'" else shift fi fi -SETTING=$(G_MESSAGES_DEBUG='' gsettings get org.gnome.system.locale region) +SETTING=$(G_MESSAGES_DEBUG='' @gsettings@ get org.gnome.system.locale region) REGION=${SETTING#\'} REGION=${REGION%\'} diff --git a/gnome-session/main.c b/gnome-session/main.c index a460a849..9d07898f 100644 --- a/gnome-session/main.c +++ b/gnome-session/main.c @@ -215,7 +215,7 @@ require_dbus_session (int argc, } new_argv[i + 2] = NULL; - if (!execvp ("dbus-launch", new_argv)) { + if (!execvp ("@dbusLaunch@", new_argv)) { g_set_error (error, G_SPAWN_ERROR, G_SPAWN_ERROR_FAILED,