this post was submitted on 05 Jun 2024
212 points (94.9% liked)

Linux

48634 readers
1933 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

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.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] -4 points 6 months ago* (last edited 6 months ago) (2 children)

No, nor should the user be encouraged to. Shell is often the best tool for the job for things like filesystem operations and scripting for a unix environment. Limiting yourself as a user just to copy Windows' and MacOS' paradigm is just hurting yourself in the long run.

[–] [email protected] 3 points 6 months ago (1 children)

The long run of... just using your PC without tinkering with it? Most people don't want to mess with their OS, they want it to JUST WORK.

[–] [email protected] 0 points 6 months ago (1 children)

I would hardly call using the shell "tinkering". It's just a different interface.

[–] [email protected] 4 points 6 months ago

Yeah, my mum isn't going into the shell. She's 65.

I don't really like the idea of 'beginner friendly' like 'you'll get better and start doing it the real way'. It's not some esport where it's easy to play and hard to master, it's a toolbox where it's only job is to get out of the way of you accessing your tools.

Operating systems are middleware.

[–] [email protected] 2 points 6 months ago (1 children)

Most Windows and Mac users have no idea what a script is,nor do they care. That doesn't mean they can't benefit from moving over to a Linux distro, and never having to touch a terminal is entirely doable for common users in most distros.

Why are we trying to alienate people looking to drop proprietary BS by fearmongering?

If you're on GNOME, KDE or any of the other DEs for that matter, and you're not a geek, yes you can live on GUI alone these days.

[–] [email protected] 2 points 6 months ago* (last edited 6 months ago) (1 children)

Most Windows and Mac users have no idea what a script is,nor do they care.

Imagine how much easier their lives would be if they did (at least the MacOS users, since Windows has yet to find a usable shell).

If you’re on GNOME, KDE or any of the other DEs for that matter, and you’re not a geek, yes you can live on GUI alone these days.

Unless you have exactly 1 tech support issue, in which the assistant will tell you to open a terminal for diagnostics, because any other interface for debugging is insane. Telling users they shouldn't learn shell is just setting them up for being dependent on users that do.

[–] [email protected] 1 points 6 months ago

I agree that everyone using any Linux distro should be acquainted with terminal commands, I would never say they shouldn't. However, most of the DEs do allow to use the computer over GUI exclusively. Things have improved dramatically for Linux, to the point that using anything else is more a PITA than any Linux distro.

As for being dependent on users that do know how to "CLI", most of us started right there. Additionally, most users that migrate will eventually start trying the terminal, and we all know where that leads.