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 Synaptic, 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.
To install any compatible binary on your system (like the Universal Android Debloater, for example), just copy it to any place you like. Install the menu editor alacarte
and use it to add a menu entry for the file. Now you can launch it from within Gnome by clicking on its icon or using the global search.
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, set the grub countdown to 0 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.
I hate the “just use the terminal” internet advice. Sometimes it’s necessary, but it really shouldn’t be on modern GUI distros. However, on the non-extremist distros (no Arch bleeding edge stuff, no Debian “free software is more important than working drivers” mentality), things aren’t as bad as you’d think they are reading guides online.
If you use a general consumer focused Linux distroa and stick with tools with official support, sure, Linux can be used through the GUI. Pick Ubuntu or maybe Mint, install Steam for games, use whatever app store program these things come with these days. The hardest part is ignoring the people online who tell you to sudo doas run0 awk grep sed for minor changes that you can just as well do in your distros Notepad alternative or a command line tool with names like “Disks” or “Backups”.
Instead of regedit, you can install dconf editor on Gnome or a text editor in KDE (in the few places the normal settings screen doesn’t have a button). Instead of sudo nano, open text files in the text editor.
The Wayland thing should no longer be necessary. Even if you don’t provide the flag, Xwayland will take over and Firefox will still work fine if you don’t know any better
To use nautilus as an admin, there’s a secret trick that Gnome should make a menu button for already: edit the path (ctrl+L) and turn /home/user into admin:///home/user. This will allow you do to root operations. In KDE, this is easier.
In KDE, flatpak support can be added to Discover through the GUI as well. Simply go to the settings, enable Flatpak, and add the default repository, all clickable buttons. I think this should be done by default, but whatever.
Making the boot process prettier is something every OS I know of requires command line tooling for. Unless you use systemd-boot, which hates themes or colours or anything nicer than an 80s prompt really, every major OS I know of comes with a background picture and an animated boot logo by default. If you want to edit those, you’re venturing into the “do it yourself or run some shady program off Github” area similar to that if modding Windows. Similar to modding Windows, you’ll probably break your boot as well.
In Ubuntu, the Nvidia driver can be installed through the “additional drivers” control panel option. Debian is against proprietary software, so they make it very difficult. If you don’t mind proprietary stuff, Debian may not be for you.
I’m not sure if Canonical also broke Flatpak support in Discover, but the important steps are all doable in the GUI on Kubuntu. I think Zorin has a Kubuntu version that may also work. Pop is moving to their own GUI, but that’s still not finished, so that’ll probably require more terminal work for a while. I’m pretty sure Mint will also work out of the box for most of this stuff.
What I’ve noticed is that more and more settings and guides for Windows these days are all done through Powershell. While Linux is (slowly) moving to a GUI oriented desktop, Microsoft seems to be ditching settings for command line tools because they’re afraid general users will break something.
The problem is no one wants to make a GUI guide for Gnome, KDE, Cinnamon, Mate, XFCE, and so on and so forth.
For normal system administration, Gnome, KDE, Cinnamon, Mate, XFCe, and the others should be making those GUIs. And they do, most of the time, or they reuse tools from other environments.
Programs in general will work on all of those desktop environments.