Hey Linux devs - Build a GUI or gtfo

mub@lemmy.ml to Linux@lemmy.ml – -94 points –

Not everything actually requires a GUI, obviously. But anything that requires configuration, especially for controlling a hardware device, should have a fully functional GUI. I know Linux is all about being in control, and users should not be afraid to use the command line, but if you have to learn another bespoke command syntax and the location and structure of the related configuration files just to get something basic to work then the developer has frankly half arsed it. Developers need to provide GUI's so that their software can be used by as many people as possible. GUI's use a common language that everyone understands (is something on or off, what numeric values are allowed, what do the options mean).

Every 12 to 18 months I make an effort to switch to Linux. Right now I'm using Archlinux, and it has been a successful trip so far, except my audio is screwed, I can't use my capture card at all, I had issues with my dual displays at the start, and the is no easy way to configure my AMD graphics card for over clocking or well anything basic at all.

I'm not looking for a windows clone, I love that I can choose different desktop environments and theme many of them to death. I even like the fact there are so many distros. Choice is a big part of linux, but there is clearly a desire to get more people moving away from Windows and until that path is 95% seamless most people just won't. Right now I think Linux is 75% to 85% seamless depending on the use case and distro but adding more GUI front ends would, imho, push that well into the 90% zone.

GUI is not a dirty word, it is what makes using a new OS possible for more people.

EDIT: Good conversation all. This is genuinely not intended to be a troll post, I just feel it is good to share experiences especially on the frustations that arise from move between OSes.

117

Hey Linux devs - Build a GUI or gtfo

No you can GTFO if that is your attitude towards people volunteering their time to bring you an open OS and all the tools you need for free.

Yes, there is still a lot of room for improvement but attacking devs for not providing a GUI is not a good way to interact with the community. If you really want to see improvements then you need to help make those improvements with constructive discussions not hostile statements. We owe you nothing.

My title was intentionally flipant. But I thin the automatic assumption that command line is always fine for linux desktop needs to evolve. Not to say it hasn't, but there are definitely some basic gaps.

My title was intentionally flipant.

No, your title was rude and condescending. "Flippant" is a different thing.

Flippantly insulating the Linux devs is not the way to improve things. It has evolved and continues to do so. There are far more GUI tools for managing things then there has ever been. The only thing you have mentioned in your post is AMD GPU overclocking - not something I would consider a novice task nor something most people are going to want to do. So the priority to get a GUI to do this is quite low. Hell, it looks like there are no userland tools at all - only raw kernel interfaces. So it is really something we are lacking any tooling at all - let along GUI tools.

Better to advocate for these tools than insult devs for not having yet created them.

Not evolving is a feature. I started using linux in the 90s, and you know what? About 90% of the stuff I learned then is still completely relevant.

I hate GUI apps for most things, because you have to search to figure out how to do anything. With CLI apps you read the man page and you know how to use it.

The guy is really demanding something from volunteers devs? Not everyone is thinking "We need to make something easy to use so people can migrate from Windows to Linux", people just build stuff to use and share it so maybe someone could find it useful.

I thinks only applying this to companies (looking at you, Nord VPN) would be ok, but yeah demand something from volunteers is outrageous

This comment brought to you by Raid Shadow Legends

You can always create a GUI yourself, if you think it's so simple. It would be greatly appreciated and giving back to the community would be nice.

I guess you're not an opensource developer. Let me put it in terms that you understand:

Let's say you're a pizza delivery dude. You have to be out every day, delivering people to rude customers, no matter the weather. It's hot and your balls are sweating off, if cold and your fingers are freezing, there torrential rain and you get soaked for every delivery, but bossman don't care - you have to do it!

To relax, you have a hobby as a wood worker. It's your passion! You make small things to make life a little easier or things that look cool to you.
One day, you buy a cupboard that's been all the rage. Every store out there has it and it's flying off the shelves. But after a few months there's something annoying about the way it works. Not a problem for you, the handyman, the woodworker. It takes a few weeks, but you've designed, built, and tested a few solutions to arrive at something that works. It's not beautiful, it's not trendy, sexy or anything, it just works.

Thinking to yourself "hey somebody else might find this useful", you put the designs online. To your delight, there are a few people using it. Very few "thank you"s, but that's fine, at least it helped somebody.

Then one day, some dude writes a comment about your solution titled "Build something beautiful or GTFO".


Tell me, how would that make you, as the hobby wood worker feel?

I get it. I'm not a pro developer but I code quite regularly. I realise all the support you need to give for anything you develop, the time and effort involved. And frontends often take more time build than the thing it presents. My point is, there are basic gaps that need should have been addressed by now. the KDE and gnome devs could focus on those items rather than the next impressive theming function.

That's a valid opinion. It's yours. I disagree with your phrasing however. "GUI or GTFO" is not a nice way to present your case.

Also, it's mostly their free time. They get to choose what they do with it. If they decide writing a window effect would be cool in brain fuck, because why the hell not, it's completely up to them. They have no obligation to dedicate their free time to anything anybody else wants, so telling them off is at least disrespectful and at most a reason for them to stop.
The main developer of a popular rust framework (actix) was bullied enough that he quit and only when he quit did a bunch of people come out of the woodwork to support him - not before.

The main developer of a popular rust framework (actix) was bullied enough that he quit and only when he quit did a bunch of people come out of the woodwork to support him - not before.

That situation was more complex - it started when a security researcher found a flaw in the codebase, raised that concern including a patch to fix it with no negative impact on performance only for the patch to get rejected for being too "boring". The bullying was a big step too far in that situation, but the maintainer of actix was not fully blameless by dismissing others honest work for no good reason.

It was his project, he can do whatever he likes with it. Rejecting "honest work" happens. I've had stuff reject with just a "sorry, no" even though it fixed a bug and "I don't understand it, therefore no".
A least he didn't pull a Linus on him and call him a "fucking idiot".

A least he didnā€™t pull a Linus on him and call him a ā€œfucking idiotā€.

No, he just called the patch boring and not creative enough. Rejecting a security fix because it was boring does not shine a good light on your management of the project. The community had concerns about his approach to the problem and he chose to double down and not fix the issue. Then the community got out of hand.

His users have just as much right to complain about the issue and rejection of the patch as he has to reject the patches. Both sides handled this case poorly and it resulted in a sad outcome for everyone involved.

Hard work is often missed but rarely thanked. My heading was rather flapant. Hopefully my comment replies show I have more appropriation for Devs than the title suggests.

There's a difference between complaining and providing constructive feedback. This post falls in the former category. If you are a user of a free product and you don't like how it works, you are entitled to a full, no questions asked, refund. You're welcome to make suggestions but devs who work hard to provide something at no cost and on their own time owe nobody anything. I've seen this play out year after year in the open source community and it's led to a lot of very good projects shutting down when the developer gets fed up with the demands and behavior of the community of users.

  • chooses Arch
  • complains there's no GUI

I guess you learned something

Yeah Arch is not worse than the other distros. That is just a reputation it has. Other past than the initial install and into KDE I don't feel like it is any more command line driving than Mint or Fedora.

Then why are you using it? It's such a braindead take, and you're still committing to it.

Having read the rest of your comments in this thread, the two takeaways are

  • Arch isn't for you
  • Linux in general isn't for you

I'm fine with config files, as long as they are where you expect them (~/.config/tool or ~/.tool). What I dislike is yet another funny config syntax because the dev couldn't settle on an established standard. Command line syntax is ok, if you give me sensible completions.

as long as they are where you expect them

This has to be my number one gripe about Linux. How every package just spews binaries and libraries and config files all over the place. "Where the fuck is the actual executable and its configs? Is it in /usr/bin? /usr/sbin?/usr/local/sbin? Who the fuck knows."

God help you when you uninstall and clean things up if you use compiled packages instead of ones from your repository.

edit: mixed you up with OP, but, meh, unaltered reply:

Where the fuck is the actual executable and its configs?

which ... with ... being the name of the executable. Whyever it matters to you in which exact path an executale is ...

God help you when you uninstall and clean things up if you use compiled packages instead of ones from your repository.

make uninstall or xargs rm < install_manifest.txt will usually do the trick. If neither is an option, observe the output of make -n install and undo the installation manually.

Judging from your post and comments, you'd be much better off with a distro other than arch and using packages from a distros repository plus maybe flatpak or snap.

This has to be my number one gripe about Linux. How every package just spews binaries and libraries and config files all over the place.

99.9% of the times those places are pretty well defined and easy to look up. You seem to lack some basic knowledge about linux/unix conventions and make false assumptions about how things should be and then come to judgemental conclusions when they aren't.

If the package comes from the repo, you can uninstall it by the same name you used to install it. If it came from a .deb file (in case of debian), you can find out how the package calls itself and use that name to uninstall. Usually the package name is quite identical to the file name. And dpkg -L shows you which files came from the package and where they were installed.

Finding the actual location of the executable is what the which command is for.

Iā€™m with you. Iā€™m a seasoned newbie, and Iā€™m ok with config as long as I can find something to help me get through it where Iā€™m. It completely lost and the guide isnā€™t 30 pages of gibberish that only makes sense to someone helping build and maintain the source/branch.

I do love the familiarity of a gui as it lets me be ā€œlazyā€.

That said I started on Ubuntu, didnā€™t really like gnome, tried kububtu, was meh on it. Then got to dislike cannological. Iā€™m currently using mint, and have tried several distros as a vm. Fedora and Debian are 2 Iā€™m trying to understand better.

That said arch and gentoo both seem like distros beyond my skill set, and I think Iā€™d struggle with them as I donā€™t feel like the communities align with my needs. I feel like I should get better at stripping out what I donā€™t need in my distro before I start bare and build up finding only what I need.

The cool part of Linux is itā€™s kinda hard to go wrong with the choice as a platform. Picking the distro has been a harder choice to find what community aligns to my needs. So virtualbox, ā€˜kindaā€™ to the rescue.

Linux ist mostly used for servers, where you rarely need/have a graphical environment. A big part of development is making sure to keep the kernel safe and prevent endangering critical infrastructure.

That said, I agree if Linux is to be adopted more widely as a desktop system, good graphical UI is crucial. It's just not the focus of most Linux devs.

Believing that GUI is a common language is funny.

CLI is literally a common language as long as devs follow the actual rules. GUI? No. There are no rules for where configuration is. File->Settings? Maybe. Or maybe it's under Edit. Or maybe it's behind a gear symbol. You point out you like the variety of desktop environments but ignore that it's not easy to get something to look great in everything. It's like back in the day trying to get a website to look nice. It was either basic HTML that looked good in IE and Netscape (I know there were others, but let's be real) or you had something fancy that only worked in IE. So yeah, folks spend their valuable time on providing functionality instead of looking pretty. Sorry not sorry? Until more money goes towards those projects, you're going to be missing unnecessary bells and whistles. There's a reason Mac looks pretty. Money.

I will take new features, performance improvements, and bug fixes over adding a GUI every day of the week.

Devil's advocate: ffmpeg is not common language, it's an eldritch incantation beyond human comprehension.

common as in Switches are binary, so thats easy. Error checked fields are also easy to work with. Drop down lists, radio buttons, all pretty standard stuff. Yes there is some variety but there is little doubt that switching something will do what the label says, where as a command line and conf file require a lot more work, espeically if you want to make frequent changes to those settings.

I understand the people give their time to the Linux project without charge, and it is a little cheeky to make demands, but there are some obvious basic gaps that need addressing. Rather than focusing on fancy themes, maybe some more configuration management stuff would be useful?

Those items you mention have standards but aren't required. Some people use a flip that goes back and forth where it just changes color. Is it on when it's color x or color y? Dunno. Finding the settings is also the big problem. VSCode takes an interesting approach to it as a GUI but it's hardly ideal. GUIs do not have written constraints that CLI does. I've seen radio buttons where it says on/off but the description doesn't actually make it clear of on means it's active or off means it is. I've seen the descriptions change based on it being toggled and the description matching what would happen if you click again.

GUIs are not standardized and again, sometimes it's simply just getting them to display properly in every environment. It's not simple.

It's been fine for decades. Just because people are getting dumber with complex computer systems doesn't mean we should put in extra effort and ignore more worthwhile work. The only correct answer here is if people making the demands want to go ahead and do it themselves. They're the ones who want it so badly.

I don't see this as a serious issue. It's absolutely not a necessity. If a developer wants to do it, they will. If not, demanding they're failing to do something is a bit entitled. The tone of this whole post was entitled. Especially considering the distro chosen. CLI is by far superior to GUI. Always has been. Finding information on configuration is always easier and faster on CLI than trying to find it in a GUI unless it's the most mundane of applications in which case both are extremely easy. Telling somehow how to do something is insanely easier with CLI than taking screenshots or describing where you need to click. GUIs are a handicap for folks who can't figure out the simplicity of CLI. GUI is a nice to have for some things but rarely a better option overall.

"Be the change you want to see in the world."

But anything that requires configuration...should have a fully functional GUI.

Does this apply to ones with only 4 or 5 options to configure, where's the cutoff? Configuration files set the default flags and arguments, and a lot of command line tools that are configurable are small and simple enough that making a GUI just to configure it is not worth the hassle, the increased complexity and codebase size. The idea is that if the software is one or a few executable binar(ies) with enough flexibility, then contributors who's proficient with GUI toolkits can write the GUI wrapper (as a separate package), otherwise it's actually just a waste of time for the main dev(s). If that sounds reasonable, then you could write it yourself, pay someone to do it, or wait for someone to volunteer their time.

To address the problem itself. Maybe you should explain what problems you have with editing the configuration files yourself? I know the cons are: (1) having to know or be able to read toml, yaml, json, ini, or some kind of config syntax (but I think they are designed to be generally quite easy to understand), (2) it takes a bit longer to find and open if you're not used to it, (3) everything is a file so it's linear, making it harder to see where things are, so longer configs are a PITA. Good tools I think benefit from a GUI or TUI is TLP, archive managers, calculators, volume controllers, font manager or viewer (kinda obvious), why would you want a GUI to configure, e.g., bat, pacman, i3, dunst, all the xorg stuff like xresources, xmodmap??

In return, the pros are: (1) if there are no external docs, the docs can stay inside the default or sample configuration in the form of comments, whereas for GUI you can't possible include this information for every single toggle, (2) it's harder to version control because of increased abstraction, (3) it's not possible to translate every configuration field to a GUI if it's beyond just a toggle, you would still have to type things in.

I think having an extra GUI wrapper is a matter of complex balance, and made into reality by contributors and volunteers (or eventually, the devs themselves). To say everything should have a FULLY functional GUI if you have to configure it is a bit of an exaggeration and overreach.

I agree there are times a GUI is just not needed, like for one off configurations that are straight forward and never touched again. I'm not a professional developer but I do write some code, and often the bit that does the work is a few lines and the inferface is a many more lines, just error correction / prevention adds more lines of code.

I have spent the last few days tackling an audio issue that is looking more like it will need me to start building my own kernel. I always do my own investigations and it is that process, the many years of taking the "lets try linux" trip, to realise the basics are what make the OS accessible. Things are so much better now than even 2 years ago, but Linux (all distros) is still missing some basics. Rather than relying on 3rd parties to make GUI's the original developers should take the responsibility to provide a solid user interface.

Rather than relying on 3rd parties to make GUIā€™s the original developers should take the responsibility to provide a solid user interface.

The original developers are volunteers that made a tool they needed and shared it with the others of their own volition. They may or they may not make the effort to add anything extra on top of it. Demanding it from them is just unreasonable. If you don't like their gift to the community, you can provide your own, with blackjack and GUIs.

Frontend and backend are different kinds of development. It's like me expecting you to write a whole lot of unrelated code just because you want something else. Just because you don't understand software architecture doesnt mean you can make wild claims with no basis in reality.

Simple one off configs are the easy ones to create GUIs for. The complex ones are a nightmare. That's when you get very bad UX. Creating a good UX is a lot different for GUI and there are entire companies dedicated to only writing those and here you are claiming small time developers are under an obligation to give you what you want.

GUI seems easier to you because you learned it first. That does not mean it's better.

I love the command line nature of Linux. It's waaay easier to automate tasks than with a GUI.

I recently found out I could scan images from the command line. A few minutes of hacking later and I had some scripts that greatly sped up the process of scanning books over using the GUI.

And I can see your point of view, but the thing is that "Linux devs" do this for fun. And writing GUIs isn't the most fun kind of programming for a lot of people.

If you need it done, you can pay someone to do it, or program it yourself. Otherwise the only other option is to wait upon the kindness of strangers.

As from the beginning, OSS devs will work on whatever they want to. Free work is not market-driven.

  • PowerUPP: GUI functional AMD GPU configurator for all voltage configuration, frequency tuning, SoC and memory frequency and voltage tuning

  • CoreCtrl: GUI usually-functional AMD GPU configurator. Fan curves, over and under clocking, power profiles, frequency and voltage tuning

You have to enable 'amd.ppfeaturemask=0xffffffff' in your boot options, but that is clearly stated in the user guide.

For sound, PAVUcontrol or the KDE volume setting GUI have been able to fix 80%-90% of my audio issues. I haven't used a command line for audio in a long time.

I agree that GUIs make it easier for mass-adoption but things not working out of the box and having to search for solution is just as much of a Windows problem as Linux. If someone has non-standard hardware, it is always a bigger problem to switch to another system. Windows still will randomly shut off my Yeti microphone input and switch to my monitor with no microphone as the system microphone on boot sometimes.

The difference is in windows for weird setups you have to run obscure possible virus runme.msi from 2015 where linux you have to put in an obscure command that you aren't sure what it does from a forum post from 2015. The only one that has mostly nailed that down is OSX.

PowerUPP hasn't appeared in my discovery so far. I'll check that one out. CoreCtrl is the one I'm planning to test so I can't comment yet. Hopefully they also offer more basic feature controls as well.

PAVUcontrol Doesn't have a an option to set any of the sample or bit rates. At least not in the version I have.

The difference is in windows for weird setups you have to run obscure possible virus runme.msi from 2015 where linux you have to put in an obscure command that you arenā€™t sure what it does from a forum post from 2015. The only one that has mostly nailed that down is OSX. I agree with you here. OSX is annoyingly good.

I used to wish for GUIs, but at some point all the textual config clicked and I am now actively avoiding GUI. It's only intuitive for simple toggles and is usually a lot more limited with complex config requirements.

The bonus you get with GUI's is you can be reasonably sure you are doing it right, rather than having to double check syntax or which copy of the 4 different conf files you have used.

The GUI may have only a subset of the possible options, or be out-of-step with the config fileā€”I've seen both.

I like your take, but if your title had been "GUIs are integral for linux adoption and devs should prioritize it more often" it might have gone over better.

Ffmpeg is one tool that I love and want to recommend to other users to do simple and efficient video file conversions/cropping/trimming. But the lack of a GUI doesnt make it easy. Luckily I have found GUI wrappers on windows and linux, but without those I would absolutely not recommend it. Youtube dl is another example of this. Im glad there are other open source projects providing GUI wrappers for these scenarios.

What does GTFO mean in this context exactly?

It is a flipant remark to suggest that devs should build a GUI or not bother develope at all.

As someone who just switched to Linux for the first time, please no. I hope they keep developing. I'm so sick of Microsoft's shit

If you want a gui, pick pop os, linux mint, etc. If you really like the arch package managers, install something like the KDE or GNOME flavors of endeavour or garuda. Stop deliberately choosing a terminal heavy distro.

At the end of the day, you can install practically anything on any distribution, and if anything, it's significantly easier on Arch too. This however is not a GUI issue, but a knowledge issue. We've already seen that you can brick your entire installation somehow, by installing a Steam client.

This post feels a lot like a foreigner coming to someone's country, and then screaming about how everything is wrong. You can either spend some time learning how everything works, or you can just... not use it

I disagree. This year I've run through Fedoro, mint and ubuntu, (Skipped PopOS but tried it last year). Other than the installer, I don't feel like I've needed to use the command line any more in Arch than I have in the other distros. It is the desktop environment that makes most of the difference anyway, and anything not present out of the box can be installed easily. Pamac is very good, and not hard to install, so there is an app store like feature if you want it.

I agree that having better GUI is a generally good thing and that most of us would benefit from it. However it's false to state or believe that Linux in its totality is bereft of this. Distros like openSUSE, MX Linux and Garuda Linux have put in considerable effort into offering tools that enable one to config a lot of stuff through a GUI. However, it doesn't make a lot of sense to complain about the lack of GUIs if you (or whosoever for that matter) don't use one of these distros. Arch has minimalism as one of its design goals, so you either have to find the binaries/apps/packages (or whatsoever) that allow you to config through a GUI or you're out of luck.

I was worried Arch would have me at the command line more than Mint or Fedora, but it hasn't felt like that. I'm using KDE plasma so I've got all the same tools (or can install them if needed). The GUI elements missing in Arch are missing in Mint and Ubuntu, Fedora, PopOS, all of them. I happen to be struggling through an audio issue right now. Can you find an OS that lets you change the Audio sample and bit rates without messing with config files ? This is basic function, and the PulseAudio and Pipewire have been around long enough for a GUI to have been created, but no, it doesn't exist.

The GUI elements missing in Arch are missing in Mint and Ubuntu, Fedora, PopOS, all of them.

I would agree that they're roughly in the same ballpark as long as you had picked KDE Plasma on Arch. Though I would argue that Mint and PopOS have a noticeable lead, though I don't think that point deserves more discussion. However, none of them come close to something like openSUSE's YaST or MX' Tools. That's why I deliberately mentioned them. Perhaps worth a watch for those wondering how Windows compares to different Linux distros GUI-wise.

I happen to be struggling through an audio issue right now. Can you find an OS that lets you change the Audio sample and bit rates without messing with config files ? This is basic function, and the PulseAudio and Pipewire have been around long enough for a GUI to have been created, but no, it doesnā€™t exist.

I'm unfortunately unaware of any solution for that. Wish you good luck!

So... You are complaining about there not being enough GUIs while using the distro that specifically requires setting up through a terminal... If ya want a GUI for everything (which isn't a bad thing, I understand that) you shouldn't use Arch. Use something like fedora or Ubuntu. I've genuinely opened the terminal in fedora maybe 4 times in the few months that I've been using it. Also, sometimes a GUI just doesn't make sense, especially for programs that are not designed to be used in a GUI... Making a native GUI is hard, both gtk an qt are eldritch horrors beyond imagination to me.

If you install Gnome on Arch how is it that much different for Fedora?

Really good GUI app center, automatic updates, much more stable base

You get the GUI you pay for unfortunately.

I didn't pay nuffin and I got 100% GUI for everything I use. Where did I go wrong??!

Someone else must have paid for you :)

The "Devs, do this thing for me" attitude rubs me the wrong way. Everything in the OS world comes either from a labour of love, or someone paid someone else to make it happen. We have no right to demand anything, only politely request it.

(To be clear, not having a go at you, more directed at the OP)

Hey, I'd pay a reasonable price for an OS that had everything I need and no spyware bullshit.

https://gitlab.com/corectrl/corectrl

CoreCtrl is a Free and Open Source GNU/Linux application that allows you to control with ease your computer hardware using application profiles. It aims to be flexible, comfortable and accessible to regular users.

This is next on my list of things to check out. I need to fix my audio issues first.

paraphrasing my girlfriend here but "it(referring to linux) was not made by designers but by developers/programmers" which i think explains not just linux, but a whole lot more

Designing a GUI, especially a good one, can be a lot of work, so lot's of people just don't feel like doing so. Especially if the GUI app is literally just generating a config file, the benefit is negligible.

A lot of GUI stuff is reall "just" a frontend for things that others developed, made by guys and gals who are good with GUIs and decide that something they like deserves one. And I appreciate this as much as I don't take it for granted.

The funny thing is, there is a GUI tool for overclocking AMD GPUs lol

yeah I'll admit the AMD thing I had not finsihed digging into be I posted. I'll not edit my post and wear my shame on that one.

OpenSUSE OpenSUSE Leap or Tumbleweed already have GUI for everthing. it is YAST2-GtK GUI. package manager, network, user management, servers, kernel settings, boot, filesystems etc its all there

Can you set the Sample and bit rate for audio interfaces?

I personally have not adjusted either, but Yast Sound allows adding new options and values to audio config when you Applu it writes to various files. or you can use the Pulse Audio or Jack GUI to access.

Interesting. A potentially useful approach. Sounds like I need to take a look at OpenSUSE.

Apparently it has something called "advanced options" in the setup for sound cards, so maybe it can.

Genuinely interested if it does.

Your issue seems less the command line and that things aren't "working", or the tools you want aren't pre-packaged.

Using Arch Linux was not the best idea if you want something that "just works", as it works on a philosophy where you install the minimum amount required and then add things, such as drivers or packages, as you need them. In other words, it's a distribution where you know what you need for your system. It is also a command-line centric distribution, so it's strange that "GUI" is your bug bear when you picked one that deliberately forces command line.

Regarding overclocking and GPU configuration, you just get CoreCtrl, which even has a GUI.

Now don't get me wrong, I absolutely agree that everything should have a user interface as much as possible, but the whole "Linux means you have to use command line all the time!!" is simply just not true anymore, and I feel this issue comes from people recalling memories from 10 years ago or using distributions where command line is necessary, rather than something like Ubuntu or Linux Mint where it mostly isn't.

This year I've tried the other usual suspects (Mint, Fedora, etc) and thought I'd give Arch a go, just to see how much more work it is. So far, other than the initial installer, it hasn't been much more work than the other distros, and it has actually been smoother. The AUR is very helpful, and Pamac helps a lot as well. The "just works" experience has been better on Arch than the other distros to be honest. I had the same hardware issues with Audio and dual displays on Minit and Fedora.

Linux has come such a long way, the requirement to use the comand line is much reduced, but there are still some obvious basic gaps that need fixing. Obviosuly this is just my oppinion, and I keep trying so I'm obviosuly not turned off completely.

The requirement to use CLI (or lack thereof) is not an indicator of progress for Linux.

Not everything needs a GUI, but configs should definitely always be available as a consistent json file in a known location. I actually vastly prefer configuring settings in a text file where I can ctrl-f than most GUI's.

I was there during the early days. 93/94. Eternal September was in full swing, a year or two before the a.out / ELF Wars turned usenet into a bloody battlefield of technical debate. I was there when 'make menuconfig' was still new to the Kernel build process. Was hell of a lot easier than running 'make config' and answering 500 questions in a row. Back when the only way to install SLS/Slackware was to write 50 floppies and feed them all to your target system.

Even then there was a vocal, arrogant group who just didn't get it. "Devs, if you do this, then Linux will be better". That's it. No offer to help, no offer to implement. Not a single line of code. Just long, irritating screeds to "do better".

And you know, I was there for a bit, too. The sound drivers for my desktop didn't work. What did I do? I figured it out, built out the appropriate drivers and became the maintainer for the soundcard drivers for about a year or so. Not only did I learn a lot about sound drivers in general, I learned the build process, how to submit patches and... And receive shit little comments from end users on how I could "do better".

mhub, Linux "gets better" when "you make it better". What have you done to help? You're not even posting on the Archlinux boards or groups where someone might actually have an idea and can help. You're whining and kicking your little heels on Lemmy/Kbin and providing nothing of value.

This is your wake-up call, dude. If you can't figure it out, then Apple will be happy to sell you a good Un*x workstation. Otherwise, you get to learn along with the rest of us. You are not special. If you can't figure it out, then write your own.

If I had the time I could probably learn the required languager and code my own solution. But that is never the point. You don't need to gate keep an OS that is founded on the ideals of openness. The point of Linux is it can be what ever OS you need. The work done to make desktop enviroments more accessible and function is amazing, and if I'm able to help I will. For example, once I have the solution for my audio issue I'll be posting my fix in a few places. I've done this before for Windows and Linux stuff, and believe in sharing the knowledge. I won't give up until the answer is found, even if the answer is "it won't work". Pushing users away because they don't want to spend days trying to figure out something as basic as audio is not really understnading the point of my post, or helpful to anyone really. Feel free to keep your knowledge to yourself.

If I had the time I could probably learn the required [SIC] languager and code my own solution.

Or... You know... Do anything like "ask a technical question" or even "use ArchLinux forums for support". Something which would actually help yourself. Seems like you have plenty of time to complain about how developers have "...frankly half arsed it"

...You donā€™t need to gate keep an OS

I'm not "gatekeeping" a single thing. You never asked a single technical question. You sure as hell didn't ask a single technical question in the correct venue. No, you spent your precious time pissing and moaning about developers delivering you a functioning Operating System (for free!) but its not "good enough" because you have sound problems. I had sound problems before too! And I fixed them. Sorry you can't.

Feel free to keep your knowledge to yourself.

Oh man. This line is my personal fave. You have a technical problem. Instead of fixing it you run and bitch about developers on Kbin. Then you bitch about the lack of technical solutions to a problem you never described.

Here's a free tip. Have you thought about shutting the fuck up and go get help from people who can actually help you?

https://bbs.archlinux.org/viewforum.php?id=23

The disregard for simplicity and/or outright hostility towards ease of use and centralizing settings I see in the comments here is the primary reason Linux will never replace that other OS as the home computer OS. This culture of elitism, and yes it is elitism, is harmful to that cause. I see this attitude almost every time someone expresses frustration towards Linux for an issue that other OSs have overcome (or significantly lessened) literally decades ago.

There is, arguably, a sense of entitlement for wanting free software developers to ā€˜do the thingā€™, but thatā€™s not a Linux problem. Free software exists on all platforms, and those developers still manage to follow the OSā€™s design philosophy.

The standard user should never, ever, ever have to use a CLI for anything ever, nor should they need to have a Linux Guy on speed dial to be able to solve a basic general issue. You might argue that an issue on those other OSs might need someone to open a CLI or dig into a settings file to fix, but those times are so few and far between that the average user may never have to do it in their lifetime. Meanwhile it seems like every solution to a Linux issue begins first thing with opening terminal.

User friendly flavors of Linux have made great strides towards making things much closer to those other OS design philosophies, and thatā€™s great, but theyā€™re not quite there yet. Iā€™m also not saying every flavor of Linux needs to follow this pattern, as not every problem calls for a hammer. The problem is that Linux is still very much a Wild West OS where anything goes, hidden behind a roughly painted GUI facade.

Linux will never replace that other OS as the home computer OS

Does it need to?
I'm fine with Linux, it works for me and I couldn't care less if it doesn't become mainstream, especially if opening to a wider audience means altering the status quo that makes the OS great for people like me.
I don't want a GUI if that entails sacrificing the CLI, you can look at the Flatpak CLI if you want an example: they went all-in with the graphical stores and the command line is neglected.

There are a non-insignificant number of people who want it to be, and frankly it would be good to have the competition in the market space if only to keep the other players honest.

Almost any discussion about another popular OS has a few token ā€œswitch to Linuxā€ comments. I see people often using the phrase ā€œThe Year of Linuxā€ after that other OS does something unfavorable in hopes to see a massive migration.

So thereā€™s a desire for it to become popular. Maybe it will never replace that other OS, but that doesnā€™t mean it canā€™t compete for the desktop OS space.

But most of the comments on this post really aren't elitist. Most desktop tools are made by volunteers (with the exception of SUSE, Canonical, Red Hat, etc. who mostly deal with running on servers) and those volunteers only have so much time to work on projects. If they don't have time/knowledge to build GUIs when the terminal is "good enough" for their use cases, why should they?

If someone else needs the GUI, they can develop a frontend separately (which also gives people the choice of being able to cut down on software they don't need if they only use the terminal interface)

Personally, my take on this is that Linux isn't mainstream for a reason. Windows/macOS still exist and (privacy concerns aside) function well. It would be amazing if Linux could become more beginner friendly, but let's not try to act like desktop Linux developers who are already giving up their time owe it to us to do even more.

All Iā€™m saying is that people shouldnā€™t be immediate turned away from Linux whenever they bring up a failing of the platform by the people who live and breathe CLI.

It would be good for Linux flavors intended for desktop OS use to have some kind of style guide. Developers who are donating their valuable time donā€™t have to follow it, but it would at least give them all a sort of unified target so they donā€™t have to constantly reinvent the settings wheel.

Have you seen the schizophrenic configuration experience on Windows in the last 10 years? Sure, it's a GUI but it's not a good one.

Yeah, they keep changing their minds on how they want that unified settings window to look and never fully retiring the old way. Itā€™s like that XKCD comic about so many standards.

Trust me, Iā€™ve complained about that exact thing a ton too.

GUI doesn't make things simpler except for people who can't grasp the absolutely insane simplicity of CLI. It's the underpinning of everything and makes everything work so much better. Automation and customization is made easier through CLI.

GUIs hardly centralize anything. There's no standard place to put settings in a GUI. And have you seen GUIs created by many dev-first folks? Devs should rarely be in charge of frontend stuff. Front end development is for front end developers. It's a different class of individuals.

Linux won't catch on as long as new users are lazy. Every generation, that becomes more and more. I thought gen z would be better with PCs but they're only familiar with iOS and Android it seems. No wonder a CLI is scary. They have no actual experience with how to use a computer.

Linux is not a company fighting for profits and market share, with software developers paid to work according to the company's strategy.

You want something in Linux that nobody cares to develop? Decelop it yourself or gtfo.

A few hours ago I was helping a GUI-oriented colleague to get network working in a SUSE test installation. He had configured it in yast (a GUI admin interface), but he couldn't get to the internets.

I logged in, got me a command line:

ip a s (it had an inteface with an IP, and it was up).

ip r s (it had a default route to the world)

ping 8.8.8.8 (it worked)

host google.com (didn't work, it's always dns)

vi /etc/resolv.conf (added search and nameservers, there were none).

problem fixed (also suggested him to check his /etc/host, as domainame wasn't set either).

Why on earth do I want a gui to make simple things complicated - and silently fail while trying to do it? (yast couldn't find wpa-supplicant, although this is a VM with no wifi).

IMO, administering Linux through GUI tools is dangerous, because you probably don't know, or don't want to know, exactly what the tool is doing. It makes Linux as "inexplicable" as Windows.

So your friend configured it wrong in the gui (or didn't know what to configure)

No, the SUSE demo license had expired before he configured it for the first time, so there was no repo access.

He did everything right in yast, but according to the yast log, it was trying and failing to get wpa-supplicant, although this is a VM with no wifi whatsoever. Yast "finished" the configuration with no errors, but failed to place the required entries in resolv.conf and hosts.

It's just one example of a useless gui trying to make simple things complicated.

Nah, there is also a GUI menu to adjust hosts. i have run it on various machines for 7 years with no issues. Not saying you won't get quirks but SUSE is solid. SUSE and Redhat are the only two certified disteos for used with our MCAD software, so they pass the rest of being reliable

Yast had the search and nameservers information in, and it even loaded them back when reopening yast (which surprised me, I expected it to read/store from resolv.conf itself). I work with SAP HANA, SUSE is also the supported OS for it (I've a SUSE sysadmin certification).

I commented about yast being a gui that failed (silently) doing something simple that shouldn't need a gui; I didn't say SUSE isn't reliable.

It's only simple for people comfortable in CLI and knowing where to look, onboarding less savvy users should have GUI in mu opinion.

Also should mention if it is VM you may have to go into YastNetwork and add network device if it doesn't see it

It had all networking up and running. It just didn't have resolv.conf entries, so no dns.

Strange, I always enter mine in the GUI and it works....just a glitch?

I have used yast to configure the network before (not on this host), and it works.

I quickly looked at the yast log, and there were errors looking for wpa-supplicant. I -think- it's because my colleague installed this VM months ago, did not configure it, then went on vacation. Now the SUSE "no license" grace period expired, and the host has no access to the repositories.

If that's the cause, there are two issues: 1. why does it want to install wpa-supplicant if there's no wifi (maybe it's a wicked dependency), and 2. why does it fail silently, concluding the config operation as if it ran ok

It's like europe with no signs in English. You're not wanted there