you are viewing a single comment's thread.

view the rest of the comments →

[–]LarrySwinger2 2 insightful - 4 fun2 insightful - 3 fun3 insightful - 4 fun -  (0 children)

I really don't have a technical understanding of this subject, more of a practical one. For a technical understanding, you can easily Startpage ChatGPT your questions. I can only tell you what I know.

X.org contains the basic instructions on how to present multiple graphical programs side by side, and window managers build on top of that. Gnome is a desktop environment, which is a complete suite of applications, and one of those is a window manager. The WM that Gnome uses is called Mutter. A WM provides things such as window titles by which you can drag the windows around, virtual desktops, keyboard shortcuts, etc. It extends on the basis that X.org provides.

You can see what X.org looks like without any window manager by making something else the root window, such as a terminal emulator. You can do this by creating ~/.xsession or ~/xinitrc with the content: "exec dbus-launch gnome-terminal", and then instructing your Display Manager to launch from that script. If you don't know how to configure your DM, you can instead enter a second instance of X.org. Save your work, then go to TTY2 with ctrl + alt + F2, log in, and type "startx -- :1". (The regular X.org is on socket 0, and with this argument, you're creating a new one on socket 1 which is usually empty.)

What you will see is a simple terminal emulator which covers part of the screen. It isn't centered but rather it looks like it's placed a bit randomly. There's no apparent way to drag it around either. There's zero polish. But your keyboard input goes to the application, that's one of the windowing system's tasks. So you can type commands for other programs, such as "nautilus", in order to launch those. A new window for that will be presented, and you'll see that that will take the keyboard input now, and that mouse input works too. But there's no alt + tab for switching between the terminal, that was the window manager's job. So when you're done with Nautilus, you can quit it with ctrl + q (this one works because it's provided by Nautilus itself) or through its menu, and you're left with the terminal emulator. If you close the that one by typing "exit", X.org itself will close because you closed the root window, and you'll return to the TTY. When you're done with this, type ctrl + alt + F7 to return to your regular environment (or reboot).

Let me know how this goes for you. As you can see, a WM is necessary for any multitasking. You could use barebones X.org in conjunction with a set of scripts that utilize wmctrl to do basic window placement / switching. You could use sxhkd to bind those scripts to keyboard shortcuts. It'd be a neat and educational hack. But that's more advanced, I recommend you take things one step at a time. But barebones X.org really encourages you to focus. In fact, simply writing about this makes me want to try it out. BRB.