Hacker News new | ask | show | jobs
by AdmiralAsshat 2431 days ago
Linux Desktop users do indeed seem to spend a disproportionate amount of time bickering about which popular apps best fulfill their purity tests:

whether the app is "free" enough for their liking (MIT vs GPL-based license, etc),

whether it picked the "right" frontend in the never-ending GTK vs QT battle,

whether it is written in an "acceptable" language (Electron being Satan Incarnate, of course),

whether it has been properly packaged as a DEB/RPM/Snap/Flatpak/AUR/AppImage, etc.

Fail any one of these things, and the app is instantly "unusable" and we should all use ncurses-based obscure-thing-I-found-over-the-weekend-in-some-dude's-PPA.

Meanwhile, an increasing array of "free as in freedom" apps that are widely available and cross-platform (e.g. Blender, VLC, Audacity, Calibre, etc.) serve the larger community by just letting people get shit done, and build up name-recognition as a result.

2 comments

> whether the app is "free" enough for their liking (MIT vs GPL-based license, etc),

I know it is tangential to this point, but a lot of developers, including long time Free Software developers, don't get licensing at all. While packaging software (FOSS) for a distribution, I've had to poke multiple people to fix licensing problems that invariably occurred (most common: incompatible licensing of parts of a project, perhaps imported from somewhere else).

> whether it is written in an "acceptable" language (Electron being Satan Incarnate, of course)

There are legitimate technical reasons for not liking Electron, not necessarily due to "disproportionate amount of time bickering" spent by "Linux Desktop users".

> a lot of developers, including long time Free Software developers, don't get licensing at all

Completely agree; it's a complex part of producing software that people (myself being guilty of this) incorrectly assume they can ignore.

> There are legitimate technical reasons for not liking Electron, not necessarily due to "disproportionate amount of time bickering" spent by "Linux Desktop users".

There are legitimate technical reasons for not choosing electron, but I can't think of any for not liking it. It's a perfectly fine and useful way to make a cross-platform desktop application. If it doesn't suit your project's purposes because of performance, size, or current acumen, that's fine.

But I think OP is referring to "Electron is awful", "I hate Electron", or "Never use Electron" levels of ire that crop up occasionally, which should be exclusively reserved for something that no one should be working in.

> It's a perfectly fine and useful way to make a cross-platform desktop application.

My main problems with Electron are:

- The size of the runtime

- The fact that every application has to bundle it and it means that multiple Electron applications on the same system do consume a lot of resources if not handled well

- The fact that unless you (as a developer) play due diligence, you might distribute your app with a version of the runtime which may contain vulnerabilities (one of the reasons Linux distributions don't like library bundling that much).

I can't deny it's probably easier for many (not for me, but although I write Python code all day, I'm by no means a "developer"), but it can be potentially wasteful, to say the least, and require far more resources than what you'd actually need with a another toolkit.

That said I for sure won't point a gun at someone who wants to use it. ;)

This comment is so beautifully in-character for the thread, and completely fulfills OPs characterization of people that "do indeed seem to spend a disproportionate amount of time bickering about which popular apps best fulfill their purity tests".
If they didn't care about software they'd just use whatever came pre installed on their computer
We are here because we are deeply interested the software that we're using. If one group of programs does something that tends to suck, then we're going to call it out.
Just remember, you get what you pay for.
To be honest I spent at best 3 minutes writing that post; compared to the time I put in FOSS projects...
> but I can't think of any for not liking it.

I distinctly remember a post on here about three or four years ago where a blind person detailed losing their job because Electron does not integrate with desktop accessibility functions.

> whether it has been properly packaged as a DEB/RPM/Snap/Flatpak/AUR/AppImage, etc.

Not sure if you're referring to a choice between packaging formats, or not packaging at all. If the latter, well, it's pretty tiring looking through a list of filenames which contains the platform and arch, downloading the correct one, then going to the project's wik and copy/pasting commands to create users, create systemd files etc. (Looking at you, Go devs). Oh, you want to upgrade it along with the rest of your software on your system? Fuck you.

I get it, packaging isn't painless. But if you've worked hard writing a piece of software, it seems bizarre not to spend some time on packaging and getting distros to accept it.

We like packaging, because it's awesome. A large collection of extremely trustworthy software, all a single, simple command away.

> […] it seems bizarre not to spend some time on packaging and getting distros to accept it.

My personal experience is that it means, at the minimum, having a VM for that distro hot and ready to go, reading a bunch of documentation about how that distro does packaging, consulting an oracle to tell you which versions of that distro you should target, learning how this particular distro wraps your particular build system, translating all the dependencies, etc.

So it doesn’t seem like just “some time” to me. If you pass this off to a maintainer for that distro, they’re usually fairly experienced with that distro’s ecosystems and the tools.