From 63d74edc4b112669fdce14d88d37e2dd0315ff7e Mon Sep 17 00:00:00 2001 From: Ray Strode Date: Tue, 19 Nov 2019 09:29:16 -0500 Subject: [PATCH] gnome-session: don't validate shell before using it Users sometimes set their shell to an invalid shell to prevent login from proceeding. GNOME on Wayland still allows login in these cases. This commit makes the behavior match expectations by skipping shell validity checks when deciding to run though a login shell. --- gnome-session/gnome-session.in | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/gnome-session/gnome-session.in b/gnome-session/gnome-session.in index ddd1a591..b4b1f8fa 100755 --- a/gnome-session/gnome-session.in +++ b/gnome-session/gnome-session.in @@ -1,32 +1,29 @@ #!/bin/sh if [ "x$XDG_SESSION_TYPE" = "xwayland" ] && [ "x$XDG_SESSION_CLASS" != "xgreeter" ] && - [ -n "$SHELL" ] && - grep -q "$SHELL" /etc/shells && - ! (echo "$SHELL" | grep -q "false") && - ! (echo "$SHELL" | grep -q "nologin"); then + [ -n "$SHELL" ]; then if [ "$1" != '-l' ]; then exec bash -c "exec -l '$SHELL' -c '$0 -l $*'" else shift fi fi SETTING=$(G_MESSAGES_DEBUG='' gsettings get org.gnome.system.locale region) REGION=${SETTING#\'} REGION=${REGION%\'} if [ -n "$REGION" ]; then unset LC_TIME LC_NUMERIC LC_MONETARY LC_MEASUREMENT LC_PAPER if [ "$LANG" != "$REGION" ] ; then export LC_TIME=$REGION export LC_NUMERIC=$REGION export LC_MONETARY=$REGION export LC_MEASUREMENT=$REGION export LC_PAPER=$REGION fi fi exec @libexecdir@/gnome-session-binary "$@" -- 2.32.0