I can log in from tty just fine and faster too sddm is kinda bloated imo, and why it called “Display Manager” instead of “Session Manager”?
It’s prettier than a TTY and you can pick whether you want a Wayland or an X11 session without having to know the correct startup commands. You can pick between different desktops too. And a Display Manager can offer on-screen keyboard and touchscreen support while a TTY can’t (at least GDM does, I’m not sure about SDDM off the top of my head).
Aside from that whatever command you are using in the TTY to launch Plasma might or might not be the same commands SDDM uses, which might or might not lead to issues in setting up the environment. If your environment is fine and you don’t care about having to use a physical keyboard then of course you can remove it. It’s not exactly load bearing.
i mean, most of them are celled “display managers” – lightDM, gDM, lxDM
kde is making an SSDM replacement right now, not sure when it’s going to be ready for general use much less early adopters
Can’t wait til they actually come up with something!
The term Display Manager is a vestige of the use of X11.
X11 is a Server/Client protocol.
When a user logs in to an XServer, they are given an Xsession. The user can use that Xsession to create one or more X11 Displays (they are just IDs). The X11 Display ID is passed to the X11 client application (that’s what the XDISPLAY environment variable is for). The client apps render their content to that Display ID. This whole thing allows for more than one user to be able to use a single operating system on a single XServer at the same time.
All of that is pretty cumbersome for a user to do themselves in their terminal, that’s what Display Managers are for. They:
- Start the XServer if it isn’t started yet
- Provide a method (eg, login with username and password), to start a new XSession.
- Use that XSession to create an empty X11 Display.
- Look up which is your configured default DE or WM
- Launch the DE or WM with the right parameters, passing it the new XSession and XDisplay
If you’re using Wayland, then the architecture is very different. The Display Manager then simply operates as a login screen.
It’s interesting because instead of “display manager” it should be “graphical login manager”, and the current “login manager” should be called “session manager”. I don’t know the origin of the name, though.
On-screen keyboard was already mentioned, but there are some other small things that might be useful for some:
Reboot/shutdown without having to login (Your husband/wife/partner can shutdown your computer without first having to login and be greeted by the porn folder on your desktop…nah seriously, this can be useful at times when your turn on the computer, get called away and someone else can easily shut down the computer after you didn’t return for some hours)
Keyboard language selection before password entry. Very useful in multi-language households/companies.
The WM selection also allows kiosk-like behaviour in special cases…like you don’t start a WM but start in kodi media player for a movie evening or you create your own WM session file for a single game that runs as soon as you login.
I use SDDM to log in to Sway. Mainly because I started on KDE and am too lazy to figure out a different login manager
I prefer the tty over session managers because I generally throw in a system update before starting the gui in case it warrants a reboot. Also if you’re feeling spicy you can tell it to load the desktop on a specific GPU with $ DRI_PRIME=1 startplasma-wayland, for example.
I like the extra control basically.
I don’t know whether it’s me or my hardware, but display managers seem to absolutely hate me. I’ve tried quite a few, and I’ve always encountered some sort of issue within a few days. Even on distros that install and set them up automatically for me.
Since I’m the only user of my computers, I’ve set mine up to log me in and startx (well, now the Wayland equivalent) automatically, bypassing the DM altogether. If I decide to experiment with other window managers/desktop environments, I just change the line in my bashrc.