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 paid for a keyboard, I’m going to use a keyboard!
Every key, too! I may not know what the heck SysReq is, but I’m hitting it!
There is one simple question you gotta ask yourself.
Is it worth it to press SysReq without knowing what it will do?
“do you feel lucky, punk?”
Yes, but no…
For a basic user, who does not expect to be doing anything special beyond opening existing programs, or using programs downloaded from the package-manager its possible to never touch terminal.
I have two kids who daily drive Manjaro based light gaming PC’s, they never touch the terminal, but they also dont administer their systems, I do.
I do use the terminal, frequently for updates, and some specialized tasks like minecraft mods which require unpacking files and sometimes fixing permissions.
So my TLDR, is that its possible to be a USER without touching the terminal, but I dont think its possible to be an administrator without.
You can update the system with the Software Center / Pamac / Synaptic, and unpack archives and adjust permissions from within Nautilus.
or, I can SSH from my computer in a different room, and do it with one CMD in terminal :)
Yes, it’s faster with the Terminal, but you said that it’s impossible without one, which just isn’t true.
o sure, I could walk over and put in my admin password and do it all in the GUI. I cant think of any basic things that require terminal with modern DE’s like KDE. I just use terminal for remote management because its simpler than trying to work at their desks.
So my TLDR, is that its possible to be a USER without touching the terminal, but I dont think its possible to be an administrator without.
Suse with Yast makes it possible to administer just with GUI. Not 100% sure if it can do absolutely everything possible but it has lots of tools.
I use the Plasma app store Discover to update, upgrade, install and uninstall apps. Everything is easy. Even unpacking files and permissions are easy in the file manager. No need for CLI as I’m a home PC user.
I think that the same principle applied to Windows/Mac, doing any administrator work without terminal seems impractical or impossible.
Yeah. My sister uses Linux, and I’ve taught her basic commands to just make things easier (apt install, cd, ls, that sorta thing). And she knows how to find a decent website for support and copy the commands, which are usually fine.
Yes.
Anyone who says differently is confusing “necessity” with “efficiency”.
When I first started in Linux I rarely used the command line at all. But as time went on and I became more familiar, I found that there were some things that were simply faster to do in the command line.
I can’t think of a single “everyday regular user task” than needs the command line, tbh.
I think one of the issues, why there terminal is seen as necessity is, that there are almost no tutorials that refer to the gui. So if you’re a newbie and try to find out how something works like adding a third party repo to your package manager or making an install script executable, all you get is a command. You don’t get a “add this address to the list in the settings menu of your package manager, which you can find here”, for example.
You more succinctly, and respectfully, stated my thoughts than I did in my post :)
I think it’s perfectly possible to use Mint, Ubuntu, or Fedora without the terminal. But a lot of online tutorials are like, “Just run this command.” because it’s faster.
I’m an experienced terminal user but I know with my Steam Deck, I barely ever use it. Really the only time is when I want to update packages quicker than using the GUI tool. But you could successfully use a Steam Deck without ever launching into Desktop mode, much less opening a terminal.
The command-line is not just faster, it is also much more universal.
You and I may use different distros and different desktop environments. If you want to create instructions that tell us how to do something using the GUI, there is an excellent chance you need different instructions for each of us. If you instead give us CLI instructions, there is an excellent chance that the same instructions will work for both of us.
The CLI is not faster for everyone. Especially non IT users who don’t know any of the options and would have to search the web every time. And there are so many commands the CLI is useless at. Graphics and presentations a big fail. And few people use CLI for email or spreadsheets.
GUI users have a chance to work out how to use a new GUI 99% of the time, as it is all familiar. No exact syntax to type perfectly or it will fail. On other occasions, web help tells you where an option or command is. There is no need to entirety change the way you work, just for a few times when learning new software.
I run mint on my “home entertainment center”. Just an old laptop with a wireless mouse and keyboard.
Granted I don’t use it for much, but once I had mint on it, I’ve only used the desktop environment. Mostly because I’m leaning back in a slothful, shameful lump, and this is not conducive to typing. So I spend way too long pecking at things with the mouse.
Pain in the ass? Yes.
Way more tedious and time consuming? Yes
Possible? Also yes
Debian is great for servers, not for desktop novices. Use a state of the art desktop OS like fedora (atomic) and you won’t face a lot of those issues.
Yes, linux “has a problem” with nvidia but we should blame nvidia, not linux.
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:
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.
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
Want to switch to a different standard browser? In Windows 11, you have to set that for every single file type a browser can open separately.
Want to write a lengthy formula in Excel? There’s a hard-coded 255 character limit.
The list goes on.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.
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.
This is also true for Windows though.
Stupidest motherfuckers I have seen in my life could operate computers back when the only “command line” was an actual programming language in the 1980s and also during the MS-DOS boom
This CLI fear is something completely unfounded
It’s not always *fear *of the CLI. I am not interested in memorising a whole load of unnecessary stuff I’d need, to start using a CLI, that I can already do productively with the GUIs. I’m not in IT. I know my way around GUI applications quite well. So it’s more worthwhile extending my knowledge there.
Everyone who has an Android phone “uses Linux without the command line.” Your question, however, seems to be “is it possible to play Windows games on Debian without the command line” (edit: or, more broadly, “how suitable is Debian as a Windows replacement”) which is not the same question.
“GUI makes easy tasks easier, CLI makes hard tasks possible”. I’m a Debian user and lately I haven’t been touching terminal at all, unless it’s an inherently terminal task like programing. My only complaint now is that when I did an grub update my config file got reverted to the defaults. All of a sudden I couldn’t boot to Windows from grub because os-prober got dissabled (I’m dualbooting). Fixing that is not hard, as you only have to uncomment one line in the config, but it’s annoying that it happend.
I use Mint and have yet to use the command line. I browse the web and play games on steam. All of this works right out of the box.
Totally agree…
I’ve been using mint for the last 4 years, and while I have had to use the command line for some obscure installs, it also works as an OS without needing to use it (i jumped in at the deep end and installed it in a pc I got from my brother and used it as my everyday OS)
I don’t understand why Mint isn’t the first suggestion for Linux ‘virgins’ switching over from Windows etc, it has everything you need pre installed plus the download manager for anything else
Linux has a flavour for everyone, and after a while when you’re confidence and skills grow there is the fun of using the command line and a bit of tinkering…or not, if you are happy with the ‘basics’
Exactly, it entirely depends on how you want to use your computer. If you install Mint because you just want a privacy respecting OS that supports your hardware? Then there’s no need to touch the CLI. You can experiment and try out the CLI at your own pace (if you want). I honestly cannot fathom the “if you don’t want to use the CLI you shouldn’t be using Linux” attitude that many of the responders here have. Isn’t the ultimate freedom of open source is to use the hardware how you would like to use it? So what if you spend 20 years on Linux and never touch the CLI?
Interresting list, thanks.
Regarding the Firefox Wayland variable, it should be possible to add the line in ~/.profile instand. And that file can simple be opend by showing hidden files in the file manager of choice.
Absolutely and has been the case for years…
Have no fear, the Penguin is friendly
Yes. I’ve been using Linux for over 10 years without touching the command line. I used Ubuntu up to Unity, then switched to Kubuntu and Plasma. I’m not in IT, so I don’t need IT stuff. It all works by GUI. People who haven’t tried it might say it’s not possible. But they are not speaking from experience. Some others, not interested usability, don’t understand why GUIs are so successful and dominant. Which is absolutely fine, as long as they don’t try think they are suddenly knowledgeable in usability, and have tried 10+ years of GUI only.
Kind of, but why? I understand why the CLI is intimidating to a newbie but it’s not some arcane magic for leet haxxorz, but a poweful tool that everyone can learn to use. We Linux users weren’t born knowing how to use it just like a Windows user wasn’t born knowing how to use Control Panel. It’s a different way of working with a computer, but with patience and learning it will become a useful asset, I can’t imagine using a computer without it now.
It’s not intimidating it is a archaic unneeded hindrance.
Don’t get me wrong I don’t mind CLI for advanced users and advanced niche technical stuff.
But when an average non technical user needs to open CLI to install the OS, applications, or drivers for standard computing uses. That is a complete failure of the OS in a desktop environment.
None of the three things you listed need the CLI, except for a couple of distros. Most distros can use the GUI for those.
Just out of curiosity, are you on Windows? If yes, I get why you’d think the CLI is archaic and a hindrance, it’s a terrible experience there. Whole other story on Linux and Mac though. As one example I personally think “sudo apt install name-of-program” is just a more straightforward and easier experience than browsing an app store or downloading an installer. I don’t mean to be an evangelist, it’s fine to stick to what works for you, but just because you’re used to one way of doing things doesn’t mean it’s the only good way.
You missed the point, expecting a non technical casual user to type in a bunch of commands that are completely foreign to them. And they don’t understand, is a failure of the OS. Full stop.
“As one example I personally think “sudo apt install name-of-program” is just a more straightforward and easier experience than browsing an app store or downloading an installer.”
Spoken like a true techie cultist that doesn’t comprehend how a typical casual user thinks.
Users think the way they do because of what they’ve gotten used to in decades of Windows or Mac usage. Commands don’t HAVE to be foreign, I genuinely think people starting out with computers would be perfectly capable of learning the basics just like they learn what a file explorer or a web browser is. Someone advanced enough to install a different OS in the first place would especially benefit from this. We’re fighting over nothing anyway, you can use many modern Linux distros without ever touching the CLI.
Also, massive cringe discarding someone with a different opinion as a “tech cultist”.
If you’re not going to be tinkering, and all you want is your computer to work, absolutely.