Language Selection

English French German Italian Portuguese Spanish

The Command Line is Part of the Desktop!

Filed under
Linux

Hear me now. Hear me when I say it again. And again. In GNU/Linux, as in all 'nixes that I am aware of, the Command Line is part of the desktop.
You can put those words on my tombstone. That's my message to the world. The Command Line is part of the Desktop. That's what I want to be remembered for, the way Strunk and White, authors of the legendary writer's manual, The Elements of Style, are remembered for the classic admonition "Omit needless words." I'm sure that Strunk and White didn't invent that concept, they merely evangelized it, as apostles of a sensible principle that much of the world didn't seem to understand. Similarly, I'm not the one who decided to integrate the Bash shell into KDE and Gnome and XFCE and Fluxbox. But a lot of people don't seem to grasp the implications of that. They're huge!
I have a friend who doesn't like the Command Line-- and when he tried to explain to me why, he referred to an old Macintosh ad from the 1980s, in which a hapless geek is struggling with a DOS or Unix console and being chastised for each syntax error that he makes with a loud annoying buzz. And that's appropriate, because for many many users, even some very sophisticated users, their concept of the Command Line interface is stuck in the 1980s, when the graphic user interface came along, and saved us all from the monotonous tyranny of endless white letters on an endless black screen. The advent of the GUI was a good thing, a very good thing, the greatest thing ever for putting IT in the hands of everyone. It was revolutionary, but now the revolution is over, the desktop GUI has won, and the Command Line has joined the revolution.
A few hardcore geeks and mutants, God bless 'em, still like to use the console as their main interface, and I'm told it's very useful for servers. I myself like to use the console, meaning the bare black screen with no X server, to run certain specialized Command line applications (such as the distributed computing project, Folding@Home) under the desktop.

But no one who lives in the real world-- certainly not me, is advocating that everybody just scrap their GUIS and go back to the console. When I speak of the Command Line, that's not the Command Line I am speaking of. Today the GNU/Linux Command Line is not separate from the GUI desktop. It's a part of the desktop, carried in applications like KDE's Konsole, Gnome-terminal, and Xterm. (I know I'm repeating myself... am I getting through?) Some of these terminal windows have some very sophisticated features including choices of text size and visual schema (a fancy word for "theme") and, significantly, full functionality for copying and pasting of text.

But it is the context of working from inside the desktop that makes the 21st century Command Line a completely different creature: always a servant, never a master. As a part of the desktop, the Command Line can only make computing faster and easier, because if it doesn't, you don't have to use it. That's the biggest difference between the 1980's Command Line, and the 2007 Command Line.

Always a servant, never a master! I use the Command Line several times a day, maybe several hundred. It's never because I'm trying to slow myself down... and it's not because I'm showing off. No one sees me but my cat, Cecil Caliban, and he's more impressed by my ability to use the can opener than by my ability to use the command line. I use it because it saves me time and work. Not only that, but it has a way of especially cutting though some of the most boring, repetitious, drudge jobs that computing with the GUI used to demand of me.

In the 1980's, it was a matter of one tool being better than another tool-- but now, it's a matter of two tools being better than one tool. Think of the GUI as a hammer, and the Command Line as a screwdriver. Which is the better tool? Obviously, it depends on whether you're trying to drive a nail or a screw. Once, we all used the screwdriver for every job, whether it involved screws or nails.. Now many, many people are using a hammer for every job. To drive a screw with a hammer may be easier than to drive a nail with a screwdriver, but trust me, learning to use both tools, and to discern the screws from the nails, will open up the process like nothing else.

Here comes the kind of presumptuous statement that I usually try to avoid. GNU/Linux will only begin to truly make sense to you, to become that legendary OS that turns its users into crazed, devoted fanbois and fangrrls, and not just a "free" version of windows, when you begin to use the Command Line... not to replace but to supplement and extend your desktop experience. If you've already traveled from Windows to Linux, that's a long way to go to not get the full experience.

And it doesn't take much. You don't have to learn to use the Command Line to do everything. Trust me, Dorothy; a handful of simple commands is all that it takes to open that door and step across the threshold into a brand new technicolor world.

Yes, Dorothy, I know; the Command Line sounds like black and white to you. Prepare to be surprised. You're not in Redmond anymore. Don't be a putzbuntu.

To be continued.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

OMG!!! WHAT HAVE I GOTTEN MYSELF INTO?!?

I blame the Red Bull.

Part II by Saturday. Happy Halloween.

St. Ignutius, code for us now, and at the hour of our reformatting, Amen.

More in Tux Machines

digiKam 7.7.0 is released

After three months of active maintenance and another bug triage, the digiKam team is proud to present version 7.7.0 of its open source digital photo manager. See below the list of most important features coming with this release. Read more

Dilution and Misuse of the "Linux" Brand

Samsung, Red Hat to Work on Linux Drivers for Future Tech

The metaverse is expected to uproot system design as we know it, and Samsung is one of many hardware vendors re-imagining data center infrastructure in preparation for a parallel 3D world. Samsung is working on new memory technologies that provide faster bandwidth inside hardware for data to travel between CPUs, storage and other computing resources. The company also announced it was partnering with Red Hat to ensure these technologies have Linux compatibility. Read more

today's howtos

  • How to install go1.19beta on Ubuntu 22.04 – NextGenTips

    In this tutorial, we are going to explore how to install go on Ubuntu 22.04 Golang is an open-source programming language that is easy to learn and use. It is built-in concurrency and has a robust standard library. It is reliable, builds fast, and efficient software that scales fast. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel-type systems enable flexible and modular program constructions. Go compiles quickly to machine code and has the convenience of garbage collection and the power of run-time reflection. In this guide, we are going to learn how to install golang 1.19beta on Ubuntu 22.04. Go 1.19beta1 is not yet released. There is so much work in progress with all the documentation.

  • molecule test: failed to connect to bus in systemd container - openQA bites

    Ansible Molecule is a project to help you test your ansible roles. I’m using molecule for automatically testing the ansible roles of geekoops.

  • How To Install MongoDB on AlmaLinux 9 - idroot

    In this tutorial, we will show you how to install MongoDB on AlmaLinux 9. For those of you who didn’t know, MongoDB is a high-performance, highly scalable document-oriented NoSQL database. Unlike in SQL databases where data is stored in rows and columns inside tables, in MongoDB, data is structured in JSON-like format inside records which are referred to as documents. The open-source attribute of MongoDB as a database software makes it an ideal candidate for almost any database-related project. This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo‘ to the commands to get root privileges. I will show you the step-by-step installation of the MongoDB NoSQL database on AlmaLinux 9. You can follow the same instructions for CentOS and Rocky Linux.

  • An introduction (and how-to) to Plugin Loader for the Steam Deck. - Invidious
  • Self-host a Ghost Blog With Traefik

    Ghost is a very popular open-source content management system. Started as an alternative to WordPress and it went on to become an alternative to Substack by focusing on membership and newsletter. The creators of Ghost offer managed Pro hosting but it may not fit everyone's budget. Alternatively, you can self-host it on your own cloud servers. On Linux handbook, we already have a guide on deploying Ghost with Docker in a reverse proxy setup. Instead of Ngnix reverse proxy, you can also use another software called Traefik with Docker. It is a popular open-source cloud-native application proxy, API Gateway, Edge-router, and more. I use Traefik to secure my websites using an SSL certificate obtained from Let's Encrypt. Once deployed, Traefik can automatically manage your certificates and their renewals. In this tutorial, I'll share the necessary steps for deploying a Ghost blog with Docker and Traefik.