There have been multiple accounts created with the sole purpose of posting advertisement posts or replies containing unsolicited advertising.

Accounts which solely post advertisements, or persistently post them may be terminated.

Hey Linux devs - Build a GUI or gtfo

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.

jherazob ,
@jherazob@beehaw.org avatar

Entitlement: the post!

UnfortunateShort ,

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

mub OP ,

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.

BCsven ,

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

mub OP ,

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

maynarkh ,

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

mub OP ,

Genuinely interested if it does.

BCsven ,

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.

https://lemmy.ca/pictrs/image/e961bf0c-761f-444d-9df5-03f12ac51ae6.png

https://lemmy.ca/pictrs/image/d78cf1fa-8a2e-42c7-8d4c-e6a4a1674470.png

https://lemmy.ca/pictrs/image/5db17c08-60c4-4349-850d-53b4181787e2.png

https://lemmy.ca/pictrs/image/10470cac-648a-4a4d-85b0-3c0030f9855a.png

mub OP ,

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

dandroid ,

Do it yourself.

mub OP ,

That is an option.

jsveiga ,

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.

BCsven ,

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

jsveiga ,

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.

BCsven ,

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

jsveiga ,

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.

BCsven ,

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

BCsven ,

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

jsveiga ,

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

BCsven ,

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

jsveiga ,

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

BCsven ,

Good questions :)

elouboub ,
@elouboub@kbin.social avatar

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?

mub OP ,

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.

elouboub ,
@elouboub@kbin.social avatar

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.

nous ,

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.

elouboub ,
@elouboub@kbin.social avatar

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".

nous ,

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.

mub OP ,

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.

Mandy ,

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

beejjorgensen ,
@beejjorgensen@lemmy.sdf.org avatar

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.

Presi300 ,
@Presi300@lemmy.world avatar

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.

Zatujit ,

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

Presi300 ,
@Presi300@lemmy.world avatar

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

Zatujit ,

Doesn’t the software app work on Arch?

empireOfLove ,
@empireOfLove@lemmy.one avatar

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.

Elw ,

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.

ebenixo ,

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

rutrum ,
@rutrum@lm.paradisus.day avatar

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.

kat ,
@kat@feddit.de avatar

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.

ExLisper ,

Wrong.

Lots of tools in Linux have GUI. I can configure my WM (cinnamon), browser, terminal emulator, music player, communicators, email client, network and many more using a GUI.

What I can’t configure using GUI are the truly powerful tools: awesome wm, nvim, ranger, kitty. Why? Because you can extend them by writing custom code (mainly in lua). Why would you build GUI for writing lua code in every tool? Doesn’t make sense.

programmer_belch ,

Sometimes there is so much configuration options a GUI would scare most users. Or as you said, a GUI may not be feasible or useful

grue ,

Sometimes there is so much configuration options a GUI would scare most users.

Or if it didn’t, it would be because the dev limited the options displayed so much that it would cease to be useful for most users. (This is especially true when different users are likely to use different subsets of options rather than having the majority of them using the same subset.)

comicallycluttered ,

YaST in a nutshell…

Takes a whole bunch of system command line stuff (and even stuff already in other GUIs) and throws it into a Windows-like control panel type thing.

Now, it’s great that it’s an option.

What’s not great is opening it and seeing dozens of fucking options, not knowing what half of them are if you’re new to Linux. (To be honest, it’s even overwhelming if you are familiar with Linux.)

So the people it’s supposed to appeal to end up with a complicated control panel they don’t understand, and the people who actually know what all the entries are for end up sticking with the terminal and ignoring it altogether.

Although, all things being fair, no one new to Windows would really understand the control panel either, but at least it’s so widely used that any instructions you get about it usually won’t have you going into the registry or cmd.exe or PowerShell or something.

On Linux and using YaST? Here’s the response you’ll usually get: “Okay, so click the exit button and look for something called ‘Konsole’ or ‘Terminal’ in your applications. Open that up and paste this command…”

programmer_belch ,

The pasting of random commands is something wikis should avoid. The best option is saying the command and then explining what everything does but this is something that happens pretty rarely

  • All
  • Subscribed
  • Moderated
  • Favorites
  • [email protected]
  • random
  • lifeLocal
  • goranko
  • All magazines