Window Managers, Desktop Environments, and how to install/uninstall them. [Awesome, Fluxbox, Cinnamon and Mate]
As most Linux users know, one of the most love-able features of using Linux is the fact that you can tweak and customize any aspect of it. This gives you lots of room to experiment and find the software you like the most, to mix and match things together until you have your ‘perfect’ desktop.
One of the things I have been experimenting with for a while now are Desktop Environments and Window Managers. A lot of people get confused between the two, and things do get a little tricky when trying to figure out what each specifically does or is.
A quick Google search later, I come up with the following useful information.
There are three main layers to the Linux desktop:
X Windows – This is the foundation that allows for graphic elements to be drawn on the display. X Windows builds the primitive framework that allows moving of windows, interactions with keyboard and mouse, and draws windows. This is required for any graphical desktop.
Window Manager – The Window Manager is the piece of the puzzle that controls the placement and appearance of windows. Window Managers include: Enlightenment, Afterstep, FVWM, Fluxbox, IceWM, etc. Requires X Windows but not a desktop environment.
Desktop Environment – This is where it begins to get a little fuzzy for some. A Desktop Environment includes a Window Manager but builds upon it. The Desktop Environment typically is a far more fully integrated system than a Window Manager. Requires both X Windows and a Window Manager. Examples of desktop environments are GNOME, KDE, Xfce among others).
Now that we’ve gotten the technicalities out of the way, let’s talk about some of the popular and slightly more unique Desktop Environments and Window Managers. I’ll be going through how to install each one, uninstall each one, and also bringing to the table their own specific advantages and features.
I’ll be highlighting Awesome, Fluxbox, Cinnamon, and Mate. These particularly, because my search for an alternative desktop stemmed from the fact that I still go through Gnome 2 withdrawal. These DEs’ and WMs’ are known for being lightweight, and some are even forks or try to emulate Gnome 2 in certain ways. Most of all, I wanted to put all the helpful commands on how to install and uninstall them in one place.
Note 1: After Installing each of these, just Reboot or Log out, and select the one you just installed or want to try out from the drop down menu at the login screen.
Note 2: I am going to assume you already know what most of the commands mean. For instance, I won’t tell you why you’re running (or why it’s important to run) apt-get update after adding a PPA using add-apt-repository.
Let’s get on with it!
Awesome is a Window Manager, and more specifically, a tiling window manager. Their website and wiki have all the information you need, and more, so I highly recommend you read it.
sudo apt-get install awesome
sudo apt-get remove awesome
Window Manager, this one built upon Blackbox, and adds it’s own set of features to the table. Uses a Lua configuration file, just like Awesome. Great documentation on their website and wiki, which I recommend reading if you plan on using Fluxbox.
sudo apt-get install fluxbox
sudo apt-get —purge remove xfree86-common
sudo apt-get —purge remove fluxbox
sudo apt-get —purge remove xfs
sudo apt-get —purge remove xlibs-data
sudo apt-get —purge remove xdialog
Cinnamon was introduced by the Linux Mint team and comes packaged with Mint, but of course, other Debian based Distros are also invited to the party. It’s another Desktop Environment trying to follow in the steps of Gnome 2 in providing a traditional way of operating your desktop
sudo add-apt-repository ppa:gwendal-lebihan-dev/cinnamon-stable
sudo apt-get update
sudo apt-get install cinnamon
sudo apt-get install ppa-purge
sudo apt-get purge —auto-remove cinnamon
sudo apt-get autoremove
sudo ppa-purge ppa:gwendal-lebihan-dev/cinnamon-stable
A fork of the popular Gnome 2 that’s developed in collaboration with the Linux Mint team as well. Follows almost the same philosophy as Cinnamon in that it tries to provide users with the traditional environment they were used to with Gnome 2.
Add ONE of the following repository (the website recommends the latter repo mirror at the moment):
sudo add-apt-repository “deb http://packages.mate-desktop.org/repo/ubuntu precise main”
sudo add-apt-repository “deb http://repo.mate-desktop.org/ubuntu precise main”
sudo apt-get update
sudo apt-get install mate-archive-keyring
sudo apt-get update
sudo apt-get install mate-core
sudo apt-get install mate-desktop-environment
The second last command to install mate-core installs the base packages. The last command to install mate-desktop-environment installs extra packages.
Remove mate-core packages:
sudo apt-get remove atril atril-common caja caja-common engrampa engrampa-common ffmpegthumbnailer-caja libcaja-extension libmarco libmate libmate-common libmatecanvas libmatecomponent libmatecomponentui libmateconf libmatecorba libmatedesktop libmatekbd libmatekeyring libmatemenu libmatenotify libmatepanelapplet libmatepolkit libmateui libmatevfs libmateweather libmateweather-common marco marco-common mate-applets mate-applets-common mate-backgrounds mate-conf mate-conf-common mate-control-center mate-corba mate-core mate-desktop mate-desktop-common mate-dialogs mate-icon-theme mate-keyring mate-media mate-menus mate-mime-data mate-panel mate-panel-common mate-polkit mate-power-manager mate-power-manager-common mate-screensaver mate-session-manager mate-settings-daemon mate-settings-daemon-common mate-settings-daemon-gstreamer mate-system-monitor mate-terminal mate-terminal-common mate-text-editor mate-themes mate-vfs mate-vfs-common mate-window-manager python-mate
Remove mate-desktop-environment packages:
sudo apt-get remove libmatesensorsappletplugin mate-calc mate-desktop-environment mate-netspeed mate-sensors-applet mate-system-tools mate-utils mozo python-mate-menu system-tools-backends
That’s it, folks! Happy experimenting, and don’t forget to have fun.
UPDATE: Whoops! Made a huge booboo. See, Fluxbox took off from Blackbox, and not Openbox as I originally proclaimed (d’oh! Got my boxes all mixed up.) Thanks to Everything Linux (http://everything-linux.co.cc/) for pointing the error out in a very understanding and kind manner.