We’ve all heard it before: People claiming Linux isn’t a viable alternative cause you can’t run it without using the command line.
I decided to test that. Now there are several distros aimed at new users that have preinstalled GUI tools so you don’t have to touch the Terminal. But I wanted to see if that’s also possible on a distro not specifically aimed at fresh converts. The oldest distro with a large userbase, which a lot of people consider to be a “standard” Linux, is Debian, so default Debian with Gnome is what I’ll use.
I consider “running an OS” to at least include booting it with full disk encryption, starting applications, connecting to a network, browsing the web, file management, installing updates and new software (both from the repos and third party sources), installing necessary drivers, setting up printing and scanning, and adjusting the looks and behaviour of the user interface.
So generally anything you’d be able to do on Windows without opening Powershell, CMD, Regedit or a text editor.
I guess I’m telling you nothing new when I say that you can install, boot, launch apps and browse the web on Debian without the command line.
It comes with a pre-installed software center, printer and scanner setup works out of the box from Gnome’s settings.
Here’s where it gets a little trickier: Scrolling on Firefox is rough, cause the preinstalled old version doesn’t have Wayland support enabled. So you either have to enable Wayland support or install the Flatpak version of Firefox.
To enable Wayland, you have to write MOZ_ENABLE_WAYLAND=1
into /etc/environment
. But the file manager doesn’t let you edit system files without starting it as root from the command line. To add an “edit as admin” entry to the context menu in Nautilus, you need the nautilus-admin
package which isn’t available in the software center. It can be installed with syaptic, a pre-installed GUI frontend for apt. But you still need to edit a system text file, which goes against the spirit of this challenge.
The other option requires enabling Flatpak for the Software Center. You can do that by installing gnome-software-plugin-flatpak
using synaptic, then heading over to https://flathub.org/setup/Debian to download the flathub repo file which can be installed with a double-click and a reboot.
Note: Beginner-friendly distros ship with a newer Firefox version and Flatpak support out of the box.
Another issue is that during the boot process, you’re already presented with the command line running boot messages by you, and the password prompt for the disk decryption is also on the command line. Also, the 5 second Grub countdown is kind of annoying. To make this prettier, we need to install grub-customizer
, launch it and add the word splash
at the end of your kernel parameters in the settings. This activates the “boot-prettifier” plymouth which is pre-installed but not activated by default. Again, pushing the boundaries of this challenge.
Note: Beginner-friendly distros come with pretty plymouth boot enabled by default.
To enable the non-free nvidia Driver, you need to enable non-free software during the GUI installation or in the Software Center settings, then install nvidia-driver
from Synaptic, and reboot.
Note: Beginner-friendly distros come with a one-click NVidia driver install
To install Steam from the Debian repos, you’d need to enable Multi-Arch first, which isn’t possible without the command line. Using the Flatpak version is your other option.
Note: Some beginner-friendly distros handle this for you as soon as you install a package that depends on multi-arch
tl/dr: It’s possible to run and administer Debian for standard tasks without touching the command line. It’s just generally faster to use the terminal if you know what you’re doing.
Distros like Ubuntu, Mint, Zorin or Pop!_OS (possibly also Manjaro which I have no experience with) remove the remaining roadblocks. The only time you’ll always need the command line is to fix issues you have with help from other users, because it’s much, much easier to just post the right terminal commands online than to guide you through whichever GUI you might be using.
Anyone who’s ever followed a Windows troubleshooting guide knows what I’m talking about.
Well, the good news is that of course you can use Linux with only as much command line interaction as you get in Windows.
The bad news is that the command line REALLY isn’t what’s keeping people away from Linux.
Hell, in that whole list, the most discouraging thing for a new user isn’t the actually fairly simple and straightforward terminal commands, it’s this:
This is a completely inscrutable sentence. It is a ridiculous notion, it brings up so many questions and answers none. It relates to concepts that have no direct equivalent in other platforms and even a new user that successfully follows this post and gets everything working would come out the other end without understanding why they had to do what they did or what the alternative was.
I’ve been saying it for literal decades.
It’s not the terminal, it’s not the UX not looking like Windows.
I fully agree, regarding Debian. I would never recommend it to any new user. However, every single distro actually targeted at new users doesn’t have this issue.
And if I hadn’t known about this issue before, I probably wouldn’t even have noticed that scrolling is a bit smoother after the adjustment.
Bonus: Windows has enough of these completely inscrutable mannerisms as well. Want to change the icon of a program pinned to the taskbar? You’ll find the shortcut file in
C:\Users\Username\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar
Yeah, for sure. If you just drop Ubuntu or Fedora or whatever on a machine where everything works for you out of the box the experience is not hard to wrap your head around. Even if one thing needs you to write something in a terminal following a tutorial, that’s also frequent in Windows troubleshooting.
The problem is that all those conversations about concurrent standards for desktop environments, display protocols, software distribution methods and whatnot are hard to grasp across the board. If and when you hit an issue that requires wrapping your head around those that’s where the familiarity with Winddows’ messy-but-straightforward approach becomes relevant.
In my experience it’s not going through the motions while everything works or using the system itself, it’s the first time you try to go off the guardrails or you encounter a technical issue. At that point is when the hidden complexity becomes noticeable again. Not because the commands are text, but because the underlying concepts are complex and have deep interdependencies that don’t map well to other systems and are full of caveats and little differences depending on what combination of desktop and distro you’re trying to use.
That’s the speed bump. It really, really isn’t the terminal.
This is also true for Windows though.