During last month’s release of Nitrux, we made available a minimal ISO to let users install Nitrux and also install a different desktop environment and a selection of applications than the ones we include by default. We figured it’d be simpler to do this since we don’t have any plans to release different ISO images with different desktop environments. Nonetheless, let me start by stating the following.
Our primary focus is with Plasma and MauiKit.
You can check the release announcement of the minimal ISO and its first update below.
As we mentioned in the changelog, this minimal ISO comes with the following installed:
- By default, this minimal image only includes SDDM, i3, Calamares, xterm, and X11. However, it does include our default selection of CLI tools and applications (cmus, ftp, hdparm, htop, links2, mc, ncdu, nsnake, tmate, tree), as well as appimage-cli-tool, appimagetool, Wine, etc.
We emphasize that this is not a new edition, version, or anything in between of the distribution. It is a barebones Nitrux ISO image.
What is a desktop environment?
In computing, a desktop environment (DE) implements the desktop metaphor made of a bundle of programs running on top of a computer operating system that shares a common graphical user interface (GUI), sometimes described as a graphical shell.
With that said, let’s see how you can add other DE’s to Nitrux.
To install other DEs using their respective meta-packages, run one of the following commands. If desired, remove –no-install-recommends to include non-essential packages.
- When installing the meta-packages to add other desktop environments in the minimal ISO, depending on the meta-package, it may or may not include the complimentary utilities such as a file manager, text editor, terminal emulator, web browser, etc., or additional hardware drivers. As well as customizations of any kind; this is not a bug.
# Install (vanilla) Plasma 5 meta-package sudo apt install kde-plasma-desktop --no-install-recommends # Install XFCE4 meta-package sudo apt install xfce4 --no-install-recommends # Install LXQt meta-package sudo apt install lxqt --no-install-recommends # Install Gnome meta-package sudo apt install gnome libsnapd-glib1/unstable software-properties-common/unstable python3-software-properties/unstable software-properties-gtk/unstable gir1.2-polkit-1.0/nitrux --no-install-recommends # Install Budgie meta-package sudo apt install budgie-desktop --no-install-recommends # Install Cinnamon meta-package sudo apt install cinnamon gir1.2-polkit-1.0/nitrux --no-install-recommends # Install MATE meta-package sudo apt install mate-desktop-environment --no-install-recommends # Install Enlightenment sudo apt install enlightenment --no-install-recommends
The following is critical information.
- Some packages will hang or present an error during the configuration stage due to their post-installation scripts expecting a different Shell than the one we use. As described in a Github issue on our bug tracker, this occurs because the script expects /bin/sh to be a link to Dash (the Debian Alquimist Shell); the script may also fail because it contains bashisms. Correcting the shebang of the affected script to #! /bin/bash resolves the problem.
Note: We have added an updated version of dictionaries-common that does not present the problem described below; the new package version is 2:1.28.4. By default, the minimal ISO does not come with this package installed. Once the user requests a package that depends on it, APT will automatically select our updated version.
We’re leaving the instructions below as a reference since they also apply to other packages that cause the same problem.
With that said, the package dictionaries-common version 1.28.4 will be one of such packages that have problems with /bin/sh not pointing to Dash. To resolve this problem, do the following.
- Once the configuration process of the package is stuck, open a new Terminal window (by default, Win+Enter).
- Proceed to kill the process for APT.
sudo killall apt
- Edit the Post-installation script of the package.
sudo nano /var/lib/dpkg/info/dictionaries-common.postinst
- Change the shebang from #! /bin/sh to #! /bin/bash and save the file (CTRL+O to save then CTRL+X to exit nano).
- Proceed to kill the process for dpkg and frontend.
sudo killall dpkg frontend
- Tell dpkg to continue with the package configuration and complete the package installation process.
sudo dpkg --configure -a
- Tell APT to “fix” the broken package.
sudo apt install -f
- Log out and select the new session from SDDM.
# Where $USERNAME is your username pkill -KILL -u $USERNAME
To illustrate an example, we installed the Budgie desktop, which is now available as a session in SDDM.
From this point forward, you can then install whatever software selection you want and customize your system.
That’s it; this concludes today’s tutorial.