I can and will terminal things, but the GUI is there so why not?
I like GUI’s, but I prefer them simple and customizable, so I eventually want to switch away from KDE Plasma to just some window manager.
I still do updates and most package installs through my terminal, but anything else I look for a GUI solution. I’m lazy.

Seriously! I can do shit in the terminal, but I grew up post DOS and it’s nice to just click something and have it work.
Meh, I mean you are not wrong.
What is even better though is knowing that whatever you click on is just inputting a command you could do yourself manually into a terminal. Now that is some cool full circle shit that Windows fucked up by hiding the CLI.
I remember waaaay back in the server 08-08 R2 days, you could do something in server manager (such as installing a role) and while that process was running, you had the option to see the powershell command it was running in the background. That was pretty cool
I agree, but after you do it for a paycheck for any length of time it loses its magic.
Good GUIs are awesome. It’s just that you often cede control to a bunch of fucking idiots who somehow think if it’s not broken absolutely destroy everything that made anyone love it in the first place. ‘They’ll adapt’

I like good GUIs. There are GUIs that are clean, responsive, well designed, and full-featured.
Sadly, that is rare nowadays, regardless if the software is FOSS or not.
It seems like for proprietary software, the corporate approach is to design slow, boring GUIs that lack most/all advanced functionality. It’s designed for dumb users who just want to click and swipe.
FOSS on the other hand rarely has full or even part time UI/UX devs due to the cost. So often the GUIs are clunky, messy, and a horrible pain to navigate. The upside is that they usually have extremely deep features, but good luck finding them.
If I have to pick, FOSS all the way, but I wish I didn’t have to. There are a few FOSS programs that have very nice UIs, Bitwarden, Protonmail, Musescore, Godot, and many are getting better, but the landscape is still rough out there.
As for CLI, I prefer it for some things, it’s just faster depending on the function. I find myself operating with a hybrid setup now days. I have become proficient enough with the command line that I can switch seamlessly between my GUI environments and the CLI-only environments. I don’t really think about it much anymore.
It’s a user interface. Users are fucking stupid this the interface needs to be fucking stupid. When you have to put that much in to stop stupid the interface suffers.
I’m undecided with modern GUI because most modern software is just a web page now. And it will offer you a choice between boring light mode and boring dark mode.
I miss the days of GTK2 with hundreds of themes. It was one of the main reason I switched to Linux; the customization. I don’t know how many hours I must have spent on gnome-look.org. Now I don’t even bother to try new themes and just use Fluent-Dark. My desktop is boring and looks like everyone else that has a dark mode. I really really miss GTK2 and all my favourite themes I can’t use anymore. I tried making my own and played around with Oomox but it’s not the same.
But one thing that I do prefer to be GUI now is IRC. Now that there are web clients (sigh) that can display images and videos directly in the channels, chatting in text mode only is kind of annoying with all the links we are sharing.
KDE and customization go hand in hand. Hell, hyprland and customization go even harder. It’s gnome that has abandonned it
I think people are just too rigid sometimes. Some workflows are better in GUIs, some are better in CLIs. They both have upsides and downsides depending on what you’re doing, and it’s totally fine to prefer one to the other. Just don’t let your preference keep you from learning and using other great tools!
personally I think having that all cli all the time phase is really important for a developer. Those that I’ve worked with who exclusively use gui’s just don’t have the same understanding of their system. Which is maybe fine at a certain level but not for a senior dev
I usually take the which does it faster route. Most of the time, cli wins, occasionally gui is actually faster
Can we add repeatable? CLI is repeatable and self documenting with nothing more than a text editor.
GUI? Good luck with that.
okay, that was always allowed
Was it, though?
allowed to like GUIs.
Yes.
Good GUI are hard to make while a good cli is rather easy.
Nothing wrong with a GUI that does what it needs without fluff.
The cli has one other benefit which I think is rarely recognised: it’s pretty easy to tell someone you need to run “xyz -a -b -c” (bringing the safety risk with it to be fair), but it gets a lot harder to be like “so in the top left there is a cog button that opens a panel on the right where you’re looking for the 2nd tab and there’ll be a checkbox”.
The things I appreciate even more than a good gui are programs with a good gui and a cli.
Also CLI are more accessible for blind people.
A well documented CLI is easy to generate a GUI from.
Wait what?
Most screen recording programs are actually just ffmpeg in the back.
And dude has changed icon set, so its not a cog, its a wrench and screw driver
It is very easy to tell someone type this and shut up. I’ve never seen an explanation of why -a -b and -c are necessary or what they do. Although I recognise that a lot of people just want magic, and running “xyz -a -b -c” is the next best thing.
I would love to see what cli commands the gui uses, they would be much easier and faster to learn.
That’s one of the things I like about yt-dlp-nis on android. You can select all the options you want through the UI and grab the resulting yt-dlp cli command.
man xyz | grep -E "^ *\-(a|b|c)"More cryptic commands to the rescue! Lol
Grsync too
“I am the commander of the CLI! The CLI Commander!”
Tbh a lot of things are just easier to show/explain with images and icons in addition to text.
And in many cases mouse control is just super handy and fast
And while a terminal can show all these things… its just not comparable, IMO.
I wouldt want to write my job application in the terminal, or design a product, or whatever else requires just a smidge of graphics
LaTeX and Typst enter the job application chat
Yea that made me laugh; I just updated my resume from LaTeX to typst a few months ago actually
I’m just a faster typer and when I have to go back to the mouse controls I feel sluggish. Of course, the right tool for the right job, I will never find myself with a tui to manipulate 3D objects or editing images but I will go to vim for editing documents using latex
So true. I mostly live in the embedded world but have had to write GUIs from time to time, mostly to connect and send commands to some sort of embedded device.
I always start with a cli version for testing and then write the GUI. A quick wrapper around the comms library and I’m done.
But there are so many annoying fiddly little details in the GUI to deal with that it usually takes as long just to write the GUI as it does the entire rest of the code. Layout, menus, tooltips, icon choices, dealing with screen sizes, DPI, resizing windows, responsive data, etc.
Edit: A simple example that I’ve dealt with many times is reading and writing config data. For the CLI version it’s typically two commands:
‘tool read_cfg’ reads from the device and prints the config to stout
‘tool write_cfg’ reads a config from stdin and sends to the device.
Add a ‘-f’ option to use a file instead of stout for people that don’t remember how to use redirects. Add a couple of documentation sentences to the help command. If there are any issues, print them to stderr and bail. If the user wants to edit the config they can use whatever $EDITOR they prefer.
The same functionality in a GUI means that you have to first implement an editor for values. In my case that was generally a bunch of nested key/value pairs so I could probably find a widget that would work. And then understand how it handles being resized, gets styled, uses tooltips, etc. Of course there would need to be some code to get the data into and out of that widget which would probably need massaging. Then I need to let the user know if there are local edits. And then there is the fact that the data is now in three places, on a local disc, on the device, and in the editor and I need to communicate with the user that there is a difference between loading and saving from disc vs the device. Do I give a warning that loading from once place will overwrite anything they’ve changed in the editor? How do I make the four load/save buttons have obvious icons? And how to handle errors? An annoying pop up? Partially load the data? Something else? So many little things that have to be designed, implemented, and tested.
It’s so brave of you to come out, especially around these parts 🙏
When it doesn’t have a GUI I make one for it.
So Nano then!?

That’s totally fine. GUIs let us theme our terminal windows, tile them, jiggle them around, maybe even make them wobbly!!!
Compiz intensifies
:) Did you know KDE also does wobbly windows?
You can also do shattering or burning effects when you close them!
I’ve been using this one called TV glitch, it’s really fun
No, I’ve been GNOME peasant since Ubuntu switched to it from Unity. Now also using it on Debian. Some day when very bored, maybe in retirement I’ll try Plasma again. 😆
I use it too. I don’t think we can do wobbly, BUT “burn my windows” is awesome on gnome!
Wow I haven’t heard that name for a long time… The last time I used it, I was using the horrible AMD/ATI fglrx drivers, and Compiz had been forked into a project called Beryl. Looks like that was around 2006 or 2007.
I just got a war flash back when I read fglrx
Oh Beryl jogs a memory too! There was also Compiz Fusion.
<marquee>lol</marquee>















