My X session selector has learned new tricks with version 0.3, including starting of Wayland sessions.
The x-session-selector has started out as a try to replace display managers, but instead has grown into a nice startx
replacement. It offers a list of all installed X sessions, Wayland sessions and of known window managers and will allow you to start any of those.
Screenshots are available in the repository.
Feedback in all shapes and colors is welcome, obviously. You can also see the last announcement here on /r/linux for more details.
Usage
Please see for usage information the (hopefully detailed enough) help output (--help
).
The main use-case is to provide the user with a selection of all available X sessions and window manager after login on a TTY. It is basically a "better" startx
replacement.
New stuff
With v0.3 the x-session-selector has learned to start Wayland sessions. But you can now also specify a shell to start when "drop to shell" has been selected or to only show the selection if it is run from a TTY.
License
The source is licensed under GPLv3.
Download
The 0.3 build can be downloaded from GitLab.
Future
To be honest, I do not know where to take this from here. My original goal was to write a display manager replacement, but as it turns out my goal of "simply providing a session selector after login on a TTY" is not that easy to achieve. Hooking into the login process is only possible as a login shell, but from there it gets quite complicated. Additionally, for starting a PAM session, one does need the username and password, which are simply not available anymore after the login process has been completed.
/u/somercet has experimented with extending the login application to use it for selecting a session, which is quite interesting.
Additionally, I had the thought that something like this could be used as login shell for users:
#!/usr/bin/env sh exec xsessionselector --shell=/bin/bash --tty-only
However, I have not extensively tested this.
Comments and feedback is welcome.
submitted by /u/Bobby_Bonsaimind
[comments]