In my previous articles I have explored various aspects of an open source operating system, the history of the open source movement, what contributes to a desktop experience and what choices are available to the average end user.
In this article I am going to share information about what I tend to use within my daily activities and describe what I have installed on my daily usage workstation. As well as examining the reasons why I have chosen specific software. Also note that within the next couple of months, I am intending to move from my current workstation configuration to another open source based operating system, I will provide my reasons for this change at the end of the article.
Whilst I have used many different open source distributions since the late 1990s. I have mainly used SUSE as my daily workstation operating system. Back in 2004, I was invited to a Linux user group meeting that where giving away boxed copies of SUSE Linux Enterprise Desktop (SLED version 9.0). I have used many desktop environments but fail in love with the KDE user interface (at that time, KDE was being released as version 3.4.x). I was excited to hear about the development of the KDE version 4 branch (in 2007) and become an early adopter of this version. However, I became very disappointed with the bugs and various other issues surrounding the early releases of KDE version 4. Like many within the KDE community, I was becoming disillusioned with the development KDE 4 but decided to stick with this desktop environment, only to find that by mid 2009 (with the release of KDE 4.3), this desktop environment had a lot of bug fixes and general improvements incorporated into the framework. From that version onwards KDE 4 became a very stable and production ready desktop environment.
I have been using KDE 4 as my daily workstation desktop environment ever since (with the last version being released as KDE SC 4.14.25 around the late part of 2016). I would replace KDE 4 with the KDE / Plasma version 5 framework but due to having some reservations about the stability of using this newer version (after having experienced the issues surrounding the early version of KDE 4) and not being able to find suitable replacements for some of applications that have now ceased any form of development (namely: SFLPhone, which is a multi phone number SIP / Voice over IP client software with some support for the Akonadi contacts framework).
Whilst I have used a lot of desktop environments, popular environments and shells overlays (various desktop environments, including Gnome2 and Gnome3, XFCE and LXDE and overlays such as Mate, Cinnamon and Unity), as well as slightly more obscure environments (including Rat Poison, Enlightenment, Rox and Étoilé), I always seem to return to KDE, this is due to easy of use and the ability to custom this desktop environment in a multitude of different ways.
KDE has also some interesting frameworks included within, including the ability to configure and share e-mail account information, sharing of calendar and contact / phone book information between multiple applications (using the Akonadi framework). This desktop environment also makes use of the Nepomuk and Baloo frameworks that incorporate the ability for semantic searches and indexing of files, which allows not only for standard searches based on both file names and text based contents but also allows for the inclusion of tags, rating score and descriptive comments.
Also, KDE 4 does include the KDM login manager and KDE / Plasma 5 also include the SDDM login manager, both of which can be configured to look and act in a similar way to their corresponding desktop environments.
My reasons for using SUSE (specifically openSUSE) is due to a couple reasons, the major reason is due to the inclusion of YaST (which is an acronym for Yet another Setup Tool), this utility provides a set of advanced configuration tools and contains a graphical user interface (which can be accessed from within the desktop environment) and a text based interface (which can be used from a console terminal, remote SSH and Telnet sessions or when the user has no access to a desktop environment).
YaST allows an administrator or user to install or update software, modify storage partitions, initiate various network services and configure security options (including the creation or modification of user accounts, configuration of an internal firewall tool and increase the overall security of the workstation). YaST does also include various optional modules that can extend the usage of SUSE from acting as an end user workstation into a very powerful and easy to configure server. These modules includes the ability to configure web and database servers (ie. LAMP server), manage a site-to-site VPN gateway, configure a virtual machine host (either using the Xen or QEMU / KVM frameworks), control wake-on-LAN devices (allowing for a single computer to power up and initialise other devices), to act as a printer server and to provide a host of other network provision services.
SUSE is fairly unique due to the fact that this operating system can be easily configured to act with Microsoft Active Directories or LDAP authentication services, which allows a user session to be authenticated via a separate server (ie. the user logins from the login manager which can be configured to authenticate the user from an external server). Due to the fact that a lot of browser based frameworks and “cloud” based applications can also use these services for authentication purposes, it is possible to provide a complete unified authentication service. SUSE can also be configured to act as an authentication server, in which other services can be configured to access.
When coupled with the KDE interface, SUSE can be used as a powerful and very configurable end user workstation. Also, in the past I have configured a standardised SUSE based workstation and have cloned this configuration to other users computers (both desktops and laptop based devices) for use within their daily activities.
As a side note, another reason why I like SUSE is due to the fact that the company is a subsidiary of Novell Incorporated. Back in the 1990s, I was employed by two separate organisation (a further education collage and insurance company) as a technical support operative and network administrator, which as part of my role, I was tasked with the operational running and daily maintenance of networks which used Novell Netware to provide services to end users.
Within my daily workstation, I have a number of applications installed, these includes a full set of KDE based tools which provides Digikam (photograph / image management tool), RecorditNow (screen capturing / recording software), VYM (mind mapping application), Kontacts (a complete contact manager / address book, calender, “sticky” / popup notes, RSS news feed aggregator and e-mail client software), K3B (optical burning software, ie software to write data to CDs and DVDs), as well as various other KDE specific applications. Also note that I have installed and configured a separate external server (with a third party VPS provider) that allows me to use an open source groupware framework to synchronise both Kontacts, my daily mobile cell device and which also provides me with an online calender and contact management / phone book interface.
For my multimedia usage, I do have VLC (media player, streaming application, I also use this to transcode / convert from one media format to another), Clementine (audio / music player and podcast retriever / downloader), both Kwave and Qtractor (for audio editing), KDEnLive (video editing tool) and GIMP (image manipulation editor).
I also have installed LibreOffice (which I use to produce this and all my previous articles), Blender (3D modelling application), LibreCAD (computer aided design), Planner (GANTT based project management software), GNU Cash (financial management application), Electrum (crypto currency wallet), Inkscape (a vector graphic editor and desktop publishing application), a couple of KDE based games (such as some classic card and board games).
Currently I do have a few proprietary games installed, including Fallout 3 and New Vegas (Which I have combined into a single package, using the Tales of two wastelands modification), Deponia (the complete journey – note: both Fallout and Deponia are running within a WINE environment), a couple of Steam provided games (X Rebirth, Dreamfall Chapters and the latest edition of Deus Ex) and a couple of ScummVM based games (several point and click adventures).
For communication and Internet usage, I have installed Firefox (with a multitude of end user, user interface and development extensions), Kopete (multi protocol instant messaging client application, which is configured to use my own XMPP based services), Quassel (Internet relay chat client), Kmail (e-mail client that is integrated into the aforementioned Kontacts framework), Microsoft Skype (which I rarely use but keep due to having had previous clients insisting on using this VoIP software) and SFLPhone (a multi number SIP VoIP phone client).
As I do a lot of work on various external servers (I have a VPS that is hosted with a third party provider), a few SBCs (single board computers, one of which I am using as part of a customised router / gateway development project) and a couple of separate dedicated virtual machines (couple of QEMU / KVM based VM guests installed on a single host computer), I spend a lot of time using a console terminal environment. I also have Yakuake installed on my workstation which allows me to “pull down” a terminal using a customised hot key, this application allows me to separate the screen either horizontally or vertically, which provides me with multiple consoles terminals to work with (which I can then use to either provide me with multiple sessions on a single server or else provide access to multiple servers at any once). I use a multitude of console tools but there are a couple which I install on all of my computers (both virtual guests and host devices), these include Midnight Commander (a versatile console based file manager) and Htop (a system resource viewer and task / process manager). I generally also include a copy of Webmin (a browser based administration system tool, something similar to a browser variant of YaST) and a small tool (daemon) to interact with Gkrellm (a customisable and themeable system monitor).
As I stated at the beginning of this article, in the next couple of months I am intending to replace openSUSE with another open source operating system. This is due to wanting to have a single distribution for all of my devices and also due to having a few games refusing to work nicely with my current installation. Deus Ex: Mankind Divided and various other games that have been released by Feral Interactive (a company that releases titles for both Apple Mac and Linux based operating systems) are known not to work well with SUSE but have been reported to work extremely nicely with Debian and similar distributions. I also want to create my own localised repository (within a VM environment) that would then be synchronised with the official distributions repositories and provide further updates for my own infrastructure.
Whilst this means that I am going to have to either install KDE 5.x or choose another desktop environment. Whilst the KDE 3.x branch has been forked (now known as the Trinity desktop environment) and is still being provided with updates, the KDE 4.x branch has seemed to end all development and is not being provided with future updates. However KDE 5.x development progressing at a fast rate and seems to be already suitable for daily production usage (with the current release being at version 5.12.4). Also, I do need to find a suitable alternative solution to SFLPhone before making the switch (I have a solution in mind but it is overly technical and requires me to produce a server which will act as a SIP based gateway).
As I have demonstrated above, whilst there are a few close source, proprietary applications included within my workstation, I have tried to only to use alternative open source products where applicable.
Open source provides many alternative software packages, desktop environments and operating systems, many of which can mixed to provide a personalised experience. This freedom is a core part of the open source philosophy.
Freedom to choose, freedom to modify, freedom to redistribute and most of all, freedom to use software in any way that the user wishes.
References & Other Resources:
* Articles About Other Users Experiences of Open Source Based Distributions
* What is Free and Open Source Software
* Open Source, GNU, Linux Kernel and the Free Software Foundation
* Core Components of Open Source Operating Systems
* Open Source Distributions and the Freedom to Choose
* Technology and Open Source Blog