Getting older, not necessarily wiser!
The title says it all. This post is about setting up and using the X Display Manger (or XDM for short) XDM may appear a little barren and bland initially and on its own. But it is light, fast, and the original Linux X Windows Display Manager.
One of my on going projects is to see how light an Arch installation with a GUI I can create. And while none of the other display managers are particularly heavy, they have some interesting limitations when it comes to configuration (this is in reference to operational configuration, not display configuration). But this is not the place to argue about the choices others are making for you.
I calculated the weight of XDM, including a few helper applications (which we will get into latter). It came out to less than 500 KB (yes I mean Kilo Bytes).
As a point of comparison, SDDM weighs in at 4.4 MB, LightDM weighs in at 1.1 MB, and GDM weighs in at 4.7 MB. None of these application are particularly heavy. And they all provide varying options and capabilities, most of which I do not use.
In the past I would have chosen a Display Manager like SLIM (less than 500 KB also), but there has not been an update in ages (the original is considered unsupported, though there are some forks) and it has a few issues with systemd (used by many Linux Distributions now).
I suggest reading my posts on installing Arch Linux, as well as my posts about using JWM with Arch before proceeding. These will lay some groundwork and provide basic information about working with Arch Linux. I am going to assume you have read them, or have more than a passing familiarity with Arch.
Also this will be another multipart post, as there is a lot of information to get through.
We need a base Arch install to start from. I am also assuming root privileges via su, sudo, or root login (no security lecture here, you can find those in plenty of other places). You can use pacman to take a look at installed packages with the following command.
# pacman -Qe
Note this shows deliberately installed packages, not packages installed as dependencies. To view all installed packages drop the “e” from the command.
My base installation is done in Virtualbox, and these are the packages I have installed; base, efibootmgr, grub, linux, networkmanager, sudo, vi, and virtualbox-guest-utils.
Note if you are not using Virtualbox, you will not need virtualbox-guest-utils. And you can substitute your editor of choice for vi (nano is another common command line text editor). Depending on how you want to access elevated privileges, you may or may not want to install sudo also.
Just an aside, at this point we are using roughly 1.9 GB of disk space. You can find this using the following command and looking for the root directory (“/”).
# df -h
The next thing we want to do is install Xorg X-Windows. For an absolutely basic install I use the following command.
# pacman -S xorg-server xorg-xinit xterm
This is about as basic as you can get. xorg-server provides the basic Graphical User Interface (GUI) infrastructure, xorg-xinit allows starting the x-server from then command line, and xterm is the basic terminal program that comes with the x-server.
Use this command to start the x-server.
If everything goes correctly, the x-server should start. What you see will depends on how your distribution sets up the x-server. In Arch there is no Window Manager (WM) and no Display Manager (DM). In Arch, you will see several instances of xterm with no window decoration or controls. You will probably want to reboot at this point.
In this post we prepared to install XDM as our display manager. We still have several pieces to work through, but we built a good foundation, and tested our x-server. In the next post we will add some functionality and utility, as well as a WM, and then XDM as our DM. After that we will walk through some basic configuration of XDM.
To give some context, this is what our long term goal will look like for XDM.
The X Display Manager (XDM) Part 1 Preparation