MX Linux 19Something interesting about software in general, and Linux distributions in particular, is that projects tend to evolve over time. Some of them break away from their parent projects, some merge with other distributions, and some change their direction. The MX Linux distribution is an unusual mixture of ideas and technologies that has grown out of a collection of projects. MX Linux can trace its digital genealogy back through antiX, MEPIS, and Debian. This gives the current generation of MX a combination of Debian's large, stable repository of software, the tendency toward low resource usage of antiX, and the convenient tools of MEPIS. MX is also rare in that it allows us to select which init software (SysV init or systemd) we want to use when the computer starts. But how well do all of these pieces fit together in reality?
MX Linux 19 is based on Debian 10 "Buster" and antiX. The latest release ships with version 4.14 of the Xfce desktop and includes AppArmor support with several profiles enabled by default. The distribution is available in 32-bit (x86) and 64-bit (x86_64) builds, with the ISO files being about 1.4GB in size. Booting from the distribution's media brings up the Xfce desktop. The desktop panel is displayed vertically down the left side of the screen with the application menu in the bottom-left corner The system tray and task switcher sit above the menu and the logout button is displayed in the upper-left corner. In the upper-right quadrant of the desktop we find the Conky status panel displaying the current time and some resource statistics.
There are three icons on the live desktop, one labelled FAQ, one called Manual, and one for the system installer. The Manual icon launches the PDF viewer and displays a local copy of the distribution's manual. I was impressed with the documentation, which provides about 180 pages of details on using, configuring, and upgrading the operating system. The documentation tends to be both helpful and clearly written. I like seeing detailed information like this, doubly so when it is provided locally so that a working Internet connection is not required to get help. The FAQ icon similarly opens a PDF which covers common queries about init software, portable package support, the project's release cycle, and fixes for CPU vulnerabilities such as Spector and Meltdown.
MX Linux 19 -- The welcome window (full image size: 914kB, resolution: 1280x1024 pixels)
Shortly after the desktop loads, a welcome window appears. The welcome window also provides links to the FAQ document and manual. It further includes links to the MX forums and various tools to help install additional software and codecs. Most of the welcome window's functions are best suited to an installed operating system and I will come back to talk about them later.
MX Linux uses a custom, graphical installer. The installer begins by offering to let us change our keyboard layout. In my case, the installer defaulted to using a plain US-based layout. Disk partitioning comes next. The disk partitioning screen includes a button for launching the GParted utility to adjust disk partitions. The screen also offers to take over space on the disk and automatically set up partitions, or we can manually assign mount points to existing partitions. I decided to go with the manual option. The MX installer takes an unusual approach in that instead of giving us a free-form way to assign any partition to any mount point, it lists common mount points (root, home, swap, etc) and we can optionally assign a partition to each. This might seem less flexible, but should suit almost all desktop users and, after the operating system is set up, we can customize mount points later if need be.
When the first beta was published for MX 19 I tried it and found the installer could not create Btrfs volumes, despite Btrfs being listed as an optional filesystem type. This bug was reported and I was pleased to find MX was able to create Btrfs volumes in the final release. However, when Btrfs is selected as the root filesystem, the installer is unable to install GRUB and quits before completing the install process. After trying a few times to get MX to install on Btrfs I gave up and switched to ext4.
We are next asked if we would like to install the GRUB boot loader and, if so, where. We are also asked if we would like to enable the Samba service for sharing files over our local network. Then we pick our time zone from a list. Optionally, we can launch a tool which lets us enable/disable services MX can run in the background. These services include items like the cron daemon, Bluetooth, scanning, and the CUPS printing software. The last step asks us to make up a username and password for ourselves, along with a password for the root account.
While the MX installer is a little different in style from other popular installers, such as Anaconda, Ubiquity and Calamares, it works quickly and I found it easy to navigate. I think the MX installer does a good job of balancing ease of use while providing advanced options we can explore if desired.
MX boots to a graphical login screen. Signing into the Xfce session presents us with the same desktop icons (minus the launcher for the installer) and with the same welcome screen. The welcome window offers us quick access to on-line video tutorials, the user manual, the FAQ document, and provides a link to the distribution's wiki. One button in the welcome window launches MX Tools, which I will talk about later. There is also a launcher for the Tweaks Tool, a configuration utility which helps us adjust the desktop panel's placement, Xfce's theme, and we can switch (or disable) the desktop's compositor.
MX Linux 19 -- The FAQ document and application menu (full image size: 554kB, resolution: 1280x1024 pixels)
There are two other tools of immediate interest in the welcome window. One is a simple utility that will locate and download media codecs. I didn't need to use this tool as I already had all the video and audio codecs I needed to play popular file formats. However, if we discover one is missing, the Codecs tool will grab as many as it can to make sure our needs are covered. There is another package management utility we can access from the welcome window through a button called Popular Apps. This launcher opens the MX Packager Installer and I'll talk about it later when I cover the distribution's various software managers.
MX ships with a fairly standard collection of open source software. The Firefox web browser, the Thunderbird e-mail client, and the Transmission bittorrent software are included. LibreOffice and the Orage calendar are featured. There is a tool called PDF Arranger for merging, splitting and rotating PDF documents. Both the GNOME PPP dial-up client and Network Manager are featured to help us connect to networks.
MX Linux 19 -- The Firefox browser and Thunar file manager (full image size: 603kB, resolution: 1280x1024 pixels)
The GNU Image Manipulation Program is featured along with an image viewer. There is a launcher in the application menu to toggle the Conky status widget on/off, which I appreciated having. We have a number of multimedia options available, including the Clementine music player, the VLC media player, the Asunder CD ripper, and the Xfburn disc burning application. There are a few utilities for connecting our file manager to external devices such as iPods, and phones.
To keep our data safe, MX ships with the flexible luckyBackup archiving software. There are also tools for managing printers and setting up custom Samba shares, which makes transferring files between computers on the local network a pleasant point-n-click experience.
In the background we find Java is installed by default and MX ships with the GNU Compiler Collection. Also by default, MX Linux ships with the SysV init software to get the operating system up and running. However, people who prefer to use systemd can select to use systemd init from the boot menu. I experimented with both init implementations and found that the two experiences were, from the end user's point of view, virtually identical. There were two practical differences: systemd booted about three seconds faster and if the user wants to run Snap packages, systemd must be running in the background. MX ships with version 4.19 of the Linux kernel, though more kernels are available through the distribution's Package Installer.
MX Linux 19 -- Enabling the firewall and browsing settings (full image size: 680kB, resolution: 1280x1024 pixels)
MX Tools is a collection of graphical utilities which will help us configure and manage the operating system. The MX Tools panel includes about two dozen modules for handling the desktop and underlying operating system components. Some of the highlights include a USB Image Writer for copying a downloaded image file to a thumb drive. It supports both read-only or writable modes. There is a Disk Cleanup tool which will hunt down and remove old cached packages, trash folders, image thumbnails and other old files and remove them. When it is done it will tell us how much data was deleted.
There is a Boot Repair tool for re-installing the GRUB boot loader and repairing its configuration. A Snapshot tool can create bootable ISO archives of the operating system. A User Manager, as expected, helps us create and delete accounts and change passwords.
MX Linux 19 -- The MX Tools panel (full image size: 519kB, resolution: 1280x1024 pixels)
There are tools for installing NVIDIA drivers and downloading media codecs. There is a repository manager which connects us with MX, antiX, and Debian package repositories. This tool will also help us pick the fastest available package mirror.Other tools let us enable/disable sounds when we sign into our account or logout. There is a tool for mounting Apple mobile devices, connecting them to our filesystem. There is also a utility for customizing the GRUB menu and picking the default operating system the computer will boot.
Each of these tools is small, focused, and pretty straight forward to use. They tend to provide a description as to what the tool does inside the application and the buttons are clearly labelled. Some of the tools have several options and may be a little overwhelming to newcomers (I feel the same way about luckyBackup), but I think more experienced users will appreciate the speed and no-frills approach these modules provide.
When software updates for the distribution become available, MX displays an icon in the system tray which turns green. Clicking this green icon opens the update manager which lists the available updates. We can then install them with a click. The update manager takes an all-or-nothing approach, we cannot choose which new items to download. However, if we do wish to customize updates, or otherwise manage software in a more fine-grained manner, we can turn to Synaptic.
Synaptic is a highly flexible and fast package manager. By default it displays a list of all available packages in a pane to the right of the window while software categories and filters are placed on the left. Synaptic can not only install and remove batches of software we select, it can also perform upgrades on specific packages. Synaptic further has the ability to enable and disable repositories - it is the Swiss Army knife of low-level graphical package managers.
Another available tool for managing software is the MX Package Installer. This desktop utility displays a list of about 30 software categories, such as Kernels, Browser and Games. Clicking on a category expands it to show a handful of popular applications in that category. Each entry is listed with a brief description. We can click as many items as we want to be queued for installation, then click the Install button to download the highlighted items. This is a relatively quick and easy way to gain access to popular applications.
MX Linux 19 -- Exploring available packages (full image size: 574kB, resolution: 1280x1024 pixels)
MX Package Installer has a number of tabs which open up additional options. One provides access to the MX Testing repository and another to packages in the Debian Backports repository. This expands our selection of software, but (as the application warns us) software in these directories is not as well tested and may cause problems.
The Package Installer has another tab, this one for browsing and installing Flatpak packages. The Flatpak tab shows us a list of available Flatpak bundles, the size of the download and the version of the Flatpak. By default items in the https://flathub.org/ Flathub repository are shown, but we can add other Flatpak repositories if we wish with a few clicks. When we install a desktop application using a Flatpak, its launcher is added to the application menu. The Package Installer includes a button which will attempt to upgrade all installed Flatpaks. Flatpaks worked well for me on MX and the only problem I faced when managing Flatpaks was there were no descriptions of the bundles in Package Installer. Usually we can guess what a program does based on its name, but some are less obvious. For instance, I wasn't sure what Remmina or Kigo did before installing them.
We are not done yet, there are two more approaches to handling software on MX Linux, both using the command line. There are the usual APT tools, which are available on any Debian-based distribution. There is also an custom, interactive command line package manager provided by antiX. This tool guides the user through managing software from the console, but otherwise works much the same as Synaptic or APT.
When running MX in a VirtualBox environment the distribution performed well. The Xfce desktop is pleasantly responsive, the system boots and opens applications quickly, and the experience was smooth. When running on a physical workstation the experience was similarly pleasant and all my computer's hardware was properly detected.
A fresh copy of MX Linux uses about 5.2GB of disk space and generally consumed about 400MB of RAM when signed into the desktop. This memory footprint could go up or down a little depending on which background services we enabled at start time and whether Conky was running, through it stayed in the 400MB range.
Something I kept noticing during my trial with MX is that the distribution appears to have evolved in a lot of little ways since I last reviewed it almost two years ago. For the most part the distribution has remained the same with the same features, desktop, tools, and focus. However, in each corner of the distribution I noticed little improvements. The update manager is a little more streamlined, making it easier to use. The upgraded Xfce desktop feels just a little more polished in its performance and rendering. The Flatpak manager provides a little more information. AppArmor is now enabled by default, providing a little additional security with, as far as I can tell, no negative side-effects. It looks to me as though the documentation has been fleshed out a little too.
All of this is to say that MX Linux 19 is very similar to version 17, but with little improvements, little bits of polish. The project appears to have made the included tools, desktop, and security features a little better without introducing (from what I have observed so far) any drawbacks. I also think the project deserves credit for managing to juggle two init systems, allowing the user to pick which one they want at boot time, without causing any problems with either init implementation. I don't think any other Linux distribution has done this out of the box.
One thing I find appealing about MX is that, while the project may not be the best distribution in any single category, it provides an excellent overall experience. What I mean is: MX is not the world's fastest distribution, but it is fast and responsive. It may not be the most user friendly, but I think most Linux users will find it easy to use and navigate. The MX Tools may not be the best administration tools in the world, but they do provide a great range of functionality and I found them straight forward to use. MX doesn't have the most extensive documentation, but it provides more information than most.
Combined, all of these positive characteristics made MX 19 one of the best desktop experiences I have run this year. The distribution is fast, flexible, fairly easy to use, and did a great job of providing me with conveniences (like the welcome window, manual, and MX Tools) while staying out of my way. I didn't get nagged by pop-ups, I didn't run into any serious errors. The distribution provided a quiet, fast, polished environment in which I could work and I enjoyed it a lot.
* * * * *
Hardware used in this review
My physical test equipment for this review was a desktop HP Pavilon p6 Series with the following specifications: