One of the things I do not like about IT in my country is that Linux does not get the attention it deserves. People talk about it in a mythical way without ever having seen a Linux desktop environment.
Once I was out looking for a laptop and was in one of the biggest computer malls in Istanbul. I saw one computer, an Acer I think, on the shelf claiming that Linux was preinstalled. From prior research, I’d learned that Acer bundles Linpus Linux, a Taiwanese-based distribution. Thinking that I could install another distro, I went to the saleslady to ask about the technical specifications. She explained briefly about the CPU, RAM, and the hard disk capacity, and then immediately afterward she said, “You know that Linux is a text-based operating system?”
As a user of Linux for more than five years, I asked her, “Have you ever seen Linux boot up to the desktop manager?
“To be frank, no,” she answered. “This is what we were told in the product training.”
“Well,” I said, “is there a demo laptop available?”
She answered, “Yes,” and showed me the notebook.
I booted it and it prompted for a login. I asked if she knew the username and password (after trying acer/acer, root/root, user/user, the basic defaults). She made a couple of telephone calls and then told me the username and password.
I logged in and proudly typed “startx” to show her that what she learned was deeply wrong. What I saw on the screen left me speechless. “No X-Server installed.” In the middle of the shop, I was frozen. How could that be? I told them that Acer did not ship the system with complete installation, but it did not change the fact that there was no graphical desktop. I left.
Still searching for the notebook, I found a different Acer model that suited my needs and my budget, and I went ahead with the purchase. I basically thought that I would go on with a new distro installation. I upgraded the RAM in the shop and headed back home. I booted the system and it prompted “login: " I used the basic combination and after logging in I typed “startx”. No X-Server installed. “OK,” I said and fully installed my distro and tried to go online via my wireless router. Not a chance. The Atheros chipset was not working. I checked the CDs bundled with the notebook and found no drivers. Forums did not have solutions to get my wireless card working. I took the notebook to Acer and demanded replacement for the wireless adapter. I told them the whole story and said, “You are shipping this notebook with Linux without hardware support.”
Many thanks are due to Acer tech support, which is Infronic in Kucukbakkalkoy, Istanbul. They replaced the Atheros cards with an Intel 3945 at no additional cost. I haven’t had a single problem with Linux on my notebook since.
Now let’s think about this. What did the saleslady learn about Linux? What did she tell the prospective buyers like me? What did people face after they bought the either notebook with Linux preinstalled?
The myth that Linux is a text-based operating system is an issue worth discussing. The graphical system, the application windows and menus in the display, are all working on top of the underlying operating system. In other words, doing something graphically, liike dragging a folder from one folder to another with the mouse is asking the system to perform exactly the same task that typing
mv /home/user/my_folder/myfile /home/user/my_another_folder/myfile
into a terminal is, as far as the operating system is concerned. There are two strong things to note here:
1. You do not need to know any of the terminal commands to work with Linux. None.
2. If you do not have access to your graphical user interface, you can still use your computer.
Here we aim to dispel the myth that “Linux is a text-based operating system.”
First of all, we need to understand soundly what a terminal is and what a window manager is. The terminal (command line, command line interface, CLI, console, whichever you prefer) is basically a prompt that waits for the user’s commands. Upon receiving a request for execution, it passes the commands to the operating system and then returns the results. The graphical user interface (GUI) is the screen and its decorations where you see the graphical user elements such as windows, menus, and icons.
In Microsoft Windows, both a GUI and a CLI exist. You can do many administrative tasks via the command line, even though the commands themselves are pretty much hidden. In Windows the GUI and the CLI are integrated: you cannot close the GUI and leave yourself with the CLI (except for in some very rare or administrative instances).
In Linux, the GUI and CLI are very closely integrated as well as infinitely separable. As I described above, moving a file to another location is basically executing some command in the background. You can do exactly the same thing via the CLI. They are also separated, meaning that you can close the whole GUI and work from the CLI. Fedora, for example, does not install a GUI by default if you choose “server installation.” (But you can later install one yourself.) You can also set up your server so that it does not show you the GUI, but the other clients connected to it can work with the graphical interface.
The point here is Linux’s GUI is just a server that works like any other program. In the same way that a web server displays web pages to you, the graphical server displays the graphical user elements to you. That’s why it is called “X Server.”
Doing things this way has its conveniences, too. If you do happen to crash the GUI in your Linux box (which is a hard task), simply switch to the command prompt, shut down the GUI, restart it, and continue working. You are not left with a completely frozen system. Imagine having Microsoft Word frozen. You can close it, then restart it, and continue working. However, if Windows itself crashes, Ctrl-Alt-Del and the reset button are your only options.
In Windows, the GUI is the same for a particular Windows release, for every default installation. Almost everybody knows the green “Start” menu button with blue taskbar, and the grassy hill with the blue sky in Windows XP. This is not the same in Linux. The user is not forced to use one GUI. Instead, the user is free to choose any GUI that he or she wants. Some of these include KDE, Gnome, Fluxbox, Enlightenment, and XFCE.
The user is also not limited to a certain set of applications. These graphical user interfaces, or their desktop environments to be more precise, can run almost all of your applications. You can choose to work in a Gnome environment, but choose to use Kontact, KDE’s native productivity application, rather than Evolution, which is Gnome’s native application. You can choose to work with one of the most lightweight desktop environments, such as Fluxbox, but continue to work without interruption with LibreOffice. You can choose XFCE as your desktop and surf with Firefox, which uses Gnome libraries for its graphics.
The graphical user interface may be confusing for newcomers to Linux, but this is another point where the operating system shines: nothing is dictated to you. You can choose more eye candy, more resources, and more elements if your system is powerful, just as you can choose less or no eye candy, fewer resources, and fewer elements if your system is not powerful enough. You can even choose to run no GUI at all if you have a veteran PC like a Pentium II/200 MHz. This is not a flowery explanation. If curious, you can check out the minimum requirements for the Slackware Linux distribution here.
If you look at to the desktop environments one by one, you will better understand what we mean by “freedom of choice,” “eye candy,” and “low resources.”
KDE aims to offer a simple, modern, easy-to-configure user experience on UNIX/Linux platforms. The experience is easily manageable by users migrating from Windows. The menus are intuitive and with the default installation, the environment, the menus, taskbar, and windows are consistent. KDE is not limited to a simple desktop environment, but a complete one. A full office suite (KOffice), mail client, address book, organizer, (all in KOrganizer), image manipulation programs (Krita), archiving tools (Ark), document viewers (KPdf), network programs (KNetworkManager), software development (KDevelop), instant messaging and IRC (Konversation and Kopete) are all included in the installation, though each and every one is not installed by default. You can take a look at the screenshot, which was taken from KDE’s website.
Gnome also offers much the same as KDE with its own software. It aims to be free, community-driven, usable, accessible, international, developer-friendly, organized, and supported. Both desktop environments have the big market share of Linux desktop environments and are the biggest competitors in the arena. Gnome offers GnomeOffice, Empathy for instant messaging, Network Manager, Anjuta for software development, and Gnome Archive Manager for managing compressed files.
Fluxbox is different from the first two. It focuses on being lightweight and fast instead of offering an all-in-one experience. Do not confuse “light” and “fast” with “nothing” since Fluxbox, like all Linux desktop environments, are virtually infinitely customizable. The default installation does not give you all the bells and whistles, but gives you all the bricks to build your desktop. You can edit a few text files, download or install some applications, and you are ready to go.
XFCE is also similar to Fluxbox, aiming to be fast, lightweight and visually appealing. The same goes for XFCE as for Fluxbox, meaning that with the installation you get the basic bricks to combine and finally arrive a desktop environment to your liking. The packages for customization are separate, enabling you to choose the one(s) that suits you best.
All the above desktop environments can run each other’s programs, LibreOffice, GIMP, and the various others. Do not think that if you use XFCE, you will not be able to find an Office program. Run Kword in XFCE, if this is what you want to do!
Do you really think that we are criticizing Windows for having “one” desktop and Linux “only four?” You must be joking. Did you hear about Enlightenment, IceWM, WindowMaker, Ratpoison, StupmWm, and Étoilé? Oh, no!