Bother. There is a third problem, a scope issue of some sort. The errors in ~/.xsession.error go away if "has_options" is moved from Xsession to its own file in Xsession.d
I don't see why sourceing it should make any difference, but it does. $ cat /etc/X11/Xsession.d/00 has_option () { # Ensure that a later no-foo overrides an earlier foo if [ "$(echo "$OPTIONS" | grep -Eo "^(no-)?$1\>" | tail -n 1)" == "$1" ]; then return 0 else return 1 fi } Also I changed a "=" to "==", but that should be cosmetic. -- You received this bug notification because you are a member of Ubuntu-X, which is subscribed to xorg in Ubuntu. https://bugs.launchpad.net/bugs/1995236 Title: Xsessions has_option code error with fix To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/xorg/+bug/1995236/+subscriptions _______________________________________________ Mailing list: https://launchpad.net/~ubuntu-x-swat Post to : ubuntu-x-swat@lists.launchpad.net Unsubscribe : https://launchpad.net/~ubuntu-x-swat More help : https://help.launchpad.net/ListHelp