It’s situational.
Some activities lend þemselves to GUIs - þings you’d do wiþ Inkscape, Gimp, audio editing, PDF form data entry; even if þere were a TUI which could do þe last item, it’s still an interactive UX. Þe pointer is a more natural interface for some workflows.
Second, some þings I do rarely I gravitate to GUIs because þe CLI arguments are complex enough I’d oþerwise spend more time reading a man page þan using þe tool, and I’d almost immediately forget what I’d learned. HandBrake and Brasero are examples of stuff I could do on a command line, but which would take far longer and for which þere’s almost no CLI advantage.
Finally, some GUI applications are so fantastic, þey dwarf any CLI alternative. Calibre and KeePassXC are examples. Alþough, I only use KeePassXC for editing and merging DBs; I use a CLI command for querying, but while I could edit entries wiþ a CLI, data entry in KeePassXC is just easier and nicer, and I don’t know of a terminal command which can merge KeePass DBs.
GUIs have þeir place. Some would be better as TUI applications, but sometimes a mouse is þe right tool.
I finally got Docker Desktop to work over the weekend, after months of not being able to sign in - from a browser or CLI.
Some GUIs are nice. I prefer GUIs to CLI. But some GUIs aren’t as usable as CLI
You are not alone. It also took me months to sign in.
“I’m having an issue with Windows”
"Please open
CMD.EXEand runsfc /scannowandDISM.exe /Online /Cleanup-image /Restorehealth
If that doesn’t solve your issue, you need to reinstall Windows
Hope that helps!
I think this is a space where the decline of online search is very apparent. This is really a challenge of finding the right information: e.g. finding the right wiki page or, more often than not, some one else explaining the practical use of what the wiki says in a way that you as a user can understand.
My favorite part of Linux troubleshooting is you get to enter all these command line commands that barely make sense and in the end nothing works because they’re meant for glibktw-6.32ajqx_rc4.1 but in the three weeks since that obscure forum post was made, every distro moved to glibktw-6.32ajqx_mgtk+2 and nothing works anymore.
GrapheneOS web installer appreciation post/comment
Nah
- CLI is relatively consistent, UIs keep changing; documentation on how to do X will be outdated extremely quickly and unlike CLI those changes aren’t documented nor searchable
- GUIs are straight up not documented, you can’t know an option exists unless you stumble on it
- Even if the GUI is explicit enough to count as documentation, you can’t search a GUI; the CLI documention can be searched for keywords
- You can’t automate GUIs if the need arises
I’m not against GUIs in general, but they should always be supplementary to CLI, otherwise you end up with windows
otherwise you end up with windows
Windows without the garbage? I’m okay with that.
To do this setting, you have to open up regedit, and…
That part of Windows isn’t so pretty. A quick copy-paste of a CLI is so much better than opening up regedit. Powershell has improved this, but for a long time this was the approach for settings microsoft couldn’t be bothered to make intuitive UI for.
No, Windows as in “this setting is hidden under this menu, that submenu, here click to open another sub-window…”. This will happen any time a dev tries to arrange settings in logical way (instead of flat list of toggle and input boxes), because “logically belong together” and “actually often used together or one after another” are not the same, and also dev logic, internal system logic and user logic are also three different things. Result - mad maze
Which is why many tinkerers like CLI - at least one can run
man somethingorsomething --helpin most casesI get what you meant, I was just making a little joke, though I feel like there’s a huge difference between shitty ui that can’t be bypassed and reasonable ui that still can’t be bypassed. The latter is usually managable and tolerable.
I personally prefer having both options but in general I go with a UI.
I feel like a dinosaur at work because many times I have no idea how to use the different programs there, mostly because everything is so incoherent (to me).
And I don’t mean a large living dinosaur cracking trees in two while chasing my dinner.
I mean a bunch of sad brown bones held up by sticks in a dusty museum everyone walks by.
Look honey , it’s the HugeNerdosaurus
So? I want to see the T rex!
I blame absolutely nobody for wanting a GUI tool for things. But the idea others are at fault for being hesitant or unfamiliar with the tool is also disingenuous, especially when the GUI just adds another layer of abstraction to the tool while removing some of the functionality (as GUI tools often do).
It’s like you’re learning to ride a bicycle. I get that you like the training wheels and they are extremely useful for you, and more experienced cyclists SHOULD be understanding and accommodating, but they can also see the ways they’re holding you back, and it’s natural for them to want you to take them off as soon as possible.
Also, CLI is consistent across any distro… GUI tools, however, vary depending on your desktop environment, distro, version…
I’d say the ideal situation is that tools are developed library first, then cli or gui as preferred allowing others to pick up the slack and make the other tool (or tools) using the functions in the library.
One of the reasons automation is so much easier on linux than windows is because there are many more cli tools to do things. On windows many tools are gui first and cannot easily be automated.
You can copy-paste commands tho. Writing a concuse GUI tutorial is more work. Whether I want to do that depends a lot on who that work is for
Watching my team member trouble shoot yesterday. Stops every 20 seconds to look up kubctl commands. After watching painfully for 15 minutes I show them freelens, a kube ide. They said they like command line because nobody using guis know shit. Again, they said this while having to keep the man page open.
I know kube, I wrote small contributions. I just don’t memorize or need every fucking describe out to json command. I have a giant fucking image with green yellow red dots and right click to shell in. I can see every fucking configmanp, namespace, etc on my screen.
Tldr, these folks are morons not good at their job.
Edit: Good Lord, look at the comments 🤣. Thank you fedverse for driving that nail home so perfectly. 2026, year of the Linux desktop.
Same thing with git.
There is no shortage of git beginners that refuse to use a GUI.
They ask for help for something, I haven’t used git CLI in years, so I tell them “go to this place and click those button”, then they open the vscode terminal and ask “but can I do it from CLI?” Okay then I go to search the command. Meanwhile I tell them to checkout a branch or something as basic as that and watch them struggle for way longer than it took me to find the command I was looking for.
I get that thousands of elitists have convinced you that using git from a GUI is a sin. But it’s fine, I won’t tell no one. I use a GUI myself.
I’m a big fan of Mint specifically because they spent so much effort making just about everything accessible from a user friendly GUI. I totally agree with you, every time I see this kind of thing online I die a little.
Most people don’t want to become an expert in the task they want to do. They just want to do it once. CLI tools demand expertise.
Unfortunately in Linux, UI tools often take away some of the transparency you get with the CLI tools they’re made for.
I’ve recently tried setting up a VPN connection to my workplace using the EndeavourOS configuration UI. It basically just said “can’t connect, haha, fuck you”, so I had to dig deeper. Finding out how to use the CLI commands necessary to identify and fix the problem took some time and effort, but in the end, I managed to set it up successfully (turned out most Windows admins still think l2tp is hot shit while the Linux world considers it obsolete).
In this case, UI wasn’t as user friendly as CLI, because it hid vital information that was necessary to solve the problem.
A better UI would probably have solved that problem quicker and easier. In an ideal world, you get intuitive GUI tools that cover all use cases and you still have the option to use the CLI if you want to dig deeper. So yeah, I agree with the point you’re making - Mint trying to be as user friendly as possible by offering accessible UI tools is a good thing and one of the reasons why Mint is so popular. (It’s also a reason why Windows sucks ass, because for most UI things the CLI equivalent is either non-existent or cryptic as hell…)
The point I’m making - GUI tools should always try and make using the CLI unnecessary. Taking away complexity without taking away functionality is the key, and as a consequence, those GUI tools will not be underappreciated for sure.
You should open a bug report saying that the GUI hid the error from you. That’s a problem.
It definitely is, and yes, you’re right, I should open a bug report.
But then again, you could make the argument that a user-friendly OS shouldn’t require developer level expertise that’s necessary for opening bug reports in the first place. After all, bug reports require a certain quality level that’s not obvious to newbies (like how to reproduce et cetera).
I’m glad we’re in agreement.
It all comes down to how complete and good the tool is, both for CLI and for GUI. I’ve seen GUI tools that give more information than the equivalent CLI, and of course I’ve also seen the opposite as you have.
What grinds my gears the most though is when there’s no tool at all, you need to edit some config file, and the instructions given are
nano /path/file.conf(or, god forbid, vim). It’s a text editor, why not use a normal one?! There are no guardrails either way to ensure the format is correct!Obviously in that scenario someone should make an interface to edit the config safely, be it GUI or CLI, but that’s another matter.
Speaking of which, the latest Mint released ~yesterday added a GUI to make common edits to the grub bootloader. See: https://www.linuxmint.com/rel_zena_whatsnew.php “System Administration”. I am not aware of any CLI that can do this, I think before this you had to edit a text file and hope you got it right. At least as far as common recommendations go.
I agree on CLI text editors. I get why they exist, but for most users they should be a last resort, not the primary instruction.
Instead of telling people to use Nano, just tell people to edit the .conf in a text editor and let them choose!
Many users won’t understand that what they’re being told to do with Nano is literally just edit a text document with a funky file extension, and that they don’t actually have to that it in CLI (in-fact it might even be easier not to if you’re not familiar with them).
Exception for helping someone who sshed into something and doesn’t understand what they are doing.
It happens that someone without knowledge has no idea how to interactively edit a file on a system they can only ssh into. ‘run nano’ is easier than ‘ok, now I’ll show you how to WinSCP the file down edit it, and put it back, but make sure you don’t screw up the CRLF or permissions in the process…’
I’ve noticed this problem as well, as a Linux novice. I stick mostly to GUIs, but a few times I’ve had to figure out the command line equivalent for whatever I’m trying to do because the gui program would just close and provide no further feedback. Then I get to the same step in the command line and it gives me a whole paragraph of explanation about why it failed and how I can fix it. This info should’ve been available in the gui version, maybe like a popup error message in windows
“accessible GUI tools” be like

That’s just dishonest.
It’s relevant. From about 1995 to 2006, Microsoft was pretty much hard set on ‘cli is dumb, do nothing cli wise, cmd is a concession, but a crappy one’. As an artifact of that, you got regedit, a godawful ‘GUI’ that took a messy datastore model and just kept it ugly, in a way that would have been pretty much better as a CLI interface.
Microsoft started getting the idea again, but in true Microsoft fashion, had to reinvent the wheel and did PowerShell to try to create a CLI ecosystem from scratch rather than trying to build anything vaguely familiar. To their credit, for first party stuff they did a fine job enabling it, though third party applications remain a mess to this day. It does highlight that even Microsoft figured out that CLI actually does make sense a lot of the time.
Honestly, Windows MMC tools are one of the oldest and most dependable ways to:
Manage printers
View logs
Manage devices and drivers
Manage group policy
Manage MDT
The interface is almost 30 years old and it is prone to crash. Microsoft cannot seem to rewrite tools that replace the snap-ins.
There are some alternatives, such as diskpart to replace diskmanagement, but nobody is talking about replacing devmgmt with PowerShell or regedit with PowerShell for reg commands for the one off or the lay user.
Also, attempting to duplicate printmanagement with devices and printers has resulted in a loss of functionality for managing printer ports and drivers. Attempting to manage printers through just PowerShell is pure madness as you can’t properly parse the vendor options.
If you have made it this far, thank you for hearing me out. I’m not sure I actually made a point, but I do feel better.
There are already PowerShell commands for reading searching and updating registry entries. I don’t think anyone is replacing one with the other, though.
Devices and Printers in Windows can go to hell where it belongs.
Hey, and PowerShell commands aren’t GUI, bringing us back to the point of this post…
Yes, and I’ve ran in to several guides that have used the powershell regedit commands instead of the GUI. Not only do the commands already exist, but they’re absolutely something some prefer over the GUI, even on Windows.
I guess I wasn’t clear. The average Windows user isn’t aware of PowerShell and would hardly be able to use reg itself. I agree that it is a great tool for managing registry in an environment, but I have seen professional technicians darn near cry over using cd to traverse directories.
Windows registry is an absolute horror show even without the GUI lmao.
At least on linux you will usually be greeted by a nice integrated GTK or Qt layout.
Windows is 40% archaic stuff from the 90s, 40% tirefire PWA/electron apps, and 20% of normal design that keeps them barely ahead of OSX.
20% of normal design that keeps them barely ahead of OSX.
Where does one find this 20%?
You can’t copy and paste into a GUI, and it’s painful to help people to use them.
Yep, this is just one factor. It’s difficult for people not to judge a book by its cover.
Correctly done, cli is superior for a lot of things.
So you want newbies blindly entering scripts to there command line and not knowing what that are doing.
If it’s “oh, you can open up [application X] and it’s easy to figure it out, and there’s videos out there to cover your use case”, then ok.
But if it’s to help a user with a very specific task and they want their hand held, well from a GUI perspective I’m either making a bunch of screenshots or maybe even a tutorial video or a screen share session… Or I shoot them a relatively short CLI command that does it and move on to other things.
It is usually much shorter to tell someone the CLI to do something than it is to try to train them on a GUI for the same thing. If it’s well-trodden subject matter, well they probably already found a youtube tutorial and didn’t even have to ask.
They’re blindly doing it either way. I understand and want GUIs as well, but dumping commands into terminal is starting to seem easier than “go here click this, now click that”
And where a typo can cause a catastrophic outcome
Teach them to double check against the man page before pasting, would be my guess.
Or pipe GUI output into another GUI function.
Or
log.txtbasic_task_list = ['copy and paste', 'install package', 'type', 'keyboard', 'read and write' ] for basic_task in basic_task_list: print(f""" Newbies can't {basic_task}. They never {basic_task} in windows. Windows has replaced {basic_task} with copilot, this is what linux needs to do to compete. How will linux ever hope to attract windows user if it still maintains this ancient hacker 1337xor tools like {basic_task}? Users just want to turn on computer and watch it do computance - how does linux not get this? """)What’s easier to support?
"Ok, open app commandX,
now click on the button labeled Y… It’s just there, just below your mouse cur… oh now you’ve moved your mouse… no, not there, it’s more to the left, up a bit… down a bit, it’s labeled Y. Third one from the top.
Yes, that’s the one, now click it.
ok, in this pop up you type "super secret code thing’,
no, capitalization doesn’t matter.
Yes. I’ll spell it “s u p e r {space} s e c r e t {space} c o” what do you mean, you don’t have a T on your keyboard? "Or. “Open up the terminal and type this code: commandX --CodeY This will do XYZ. After it’s done, can you tell me the error it says on the screen?”
But yes, I agree, the GUI looks nicer.
Exactly. You can tell someone to type a command, and ask for the output. Otherwise you’re spending 90% of your time asking someone to explain what they see, and searching for buttons that just move around from week to week.
I’ve been in a situation like this recently and all I can say is that the CLI is universal.
Yes, it is complex. Yes, it is challenging. But it gets things done.
Don’t be afraid.
I know what you mean, just beware: in lots of cases it’s not as universal (as in distro-independent) as some still think it is.
For people who want to get things done with their PC that isn’t inherently IT-related (like, doing office work or music production or anything else) and just need to do the occasional light sysadmin thing like setting up new drives to be auto-mounted somewhere, pointing to GUI tools is just so much better. And in many cases it is also safer (making your system fail on boot with a small typo in the fstab is painfully easy).
I know what you mean, just beware: in lots of cases it’s not as universal (as in distro-independent) as some still think it is.
This is especially true when we start talking about BSDs and other non-GNU platforms.
I get where you’re coming from. But as something of an enthusiast myself I don’t always know GUI tools for all the tasks I can do in a terminal. Edit: typos
True.
As someone that started in Linux, for real, with Debian, and in a time that I had to mannually install my graphics card, I learned the way I did things on Debian was significantly different from things got done on other distro families. That, alone, kept faithful to the Debian tree.
Yeah, I’m with you. I fucked up my Deb install because I strayed from “doing things the debian way” and overtinkering with things I wasn’t meant to do.
But compared to other distros, debian feels like a bomb bunker; once you set it up, it’s going to stay set up.
Monolith is a word that fits Debian very well.
It’s like a landmark. It just exists and reality itself seems to bend around it.
I ran a Debian machine, a laptop, until the hardware literally gave up. Eight years of solid service. Regular updates and one reinstall to move to the next version.
It kept working. It kept playing music, playing videos, managing my office needs, surfing the web and receiving my email. Flawlessly.
It outperformed newer machines in its last years and people could not wrap their heads around the notion.
Debian, as a Linux+FOSS combo is a winner combo
Also, GUI changes faster than CLI, CLI has ALWAYS more options, and you can save those commands to a file.
Also can get explanations for every command.
So… I’m definitely cheering up for the lady in red.
Why? Am I an elitist asshole doing his best to sound smart?
Well yes, definitely BUT I also appreciate the power of the command line. The CLI isn’t “cool” because of the cryptic command, no the CLI is cool because :
- ls (list files)
- ls *.txt (list all files ending with the .txt extension)
- ls *.txt | wc -l (count how of them are)
- etc
and the “etc” is the FUNDAMENTAL part! Namely that no matter how smart the GUI developer is, they can’t predict how it is going to be used when done with OTHER tools. That’s the true power of the CLI. So yes if you stick to a single command, the CLI is unnecessarily cryptic but as soon as you start to combine commands, nothing comes close to it.












