Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Things work differently on Linux. The software is supposed to respect Unix philosophy and standards. So it should matter what combination of packages you run. They're not supposed to be tightly integrated, the gnome team seems to have forgotten all of this. As for managing displays, it has become much better with wayland and it's improving fast.


I think the problem is that making things look to the user as an integrated, polished experience is exceptionally hard when you have the loosest of loose coupling all over the place, and differing views as to how to get things done. Sure, you can put APIs and documented IPC interfaces between things, but that doesn't mean everything will match up in a usable way. So, eventually, you just decide: screw it, we'll own the entire stack, or at least gain enough influence over the people who make parts we don't control, such that everything works seamlessly for us.

In part, this is why Apple can give their customers such a polished, "just works" experience. Buy all-Apple gear, and stay in their software ecosystem, and (modulo bugs) everything will work together seamlessly.

I don't like this outcome by any means. And I still think that some desktop components certainly benefit from loose coupling and well-defined interfaces, and it's possible to avoid the "polish" downsides in some cases. But doing everything that way, while still being able to put everything together in a polished way, might actually be impossible.


Maybe the idea if a perfect,integrated experience doesn't matter as much as we think. The web's chaotic ux won. Games... roll this own up. Now electron is eating the engineered ui.


> Maybe the idea if a perfect,integrated experience doesn't matter as much as we think.

This is not an uncommon view. However I can’t help but be convinced it’s the main reason the year of Linux on the Desktop hasn’t happened yet.

The user really does want their computer to seem like just one “thing,” at least in the way that it comes out of the box. When we visit websites it’s understood that these pages don’t interact with each other and weren’t designed to work together.

The OS, on the other hand, is supposed to be a system per the name.


Then how is it the browser with the absolute majority?

https://www.reddit.com/r/Windows11/comments/o2a0kp/there_are...


I'm not sure what you're asking. The browser is not an OS, so the websites are not supposed to form a system. People using Microsoft's default browser is yet more evidence that people generally stick with the OS defaults, because they are supposed to work.


I wanted to write OS, and couldn’t edit it later on :/

My point was that windows is the most popular OS despite it having a ridiculous amount of “native” looks. So linux not having one is not the reason for its less than ideal desktop uptake.


Looks are not the most important part. Functionality is.

Besides, as bad as Windows’ UI fragmentation is, Linux’s is worse. When opening a Linux application, from Pidgin to Firefox to the control panel to Telegram, there is absolutely no guarantee of what you’ll be getting. Having 7 design languages is bad, but what’s worse is having 0.


It matters a lot for a desktop UX. People have no patience for a laptop that can't sleep when the lid shuts.


Or animations that stutter. Smartphones have been managing consistent 60fps animations for years now, and MacOS is similarly smooth.


Absolutely. This is why I'm absolutely hostile towards current-day Gnome. Even if they do make some incremental improvements, the reluctance to do so in a "share-it-back" way is the exact opposite of why I got into Linux in the first place. I quite literally wish it failure.

(But KDE? I don't know, I don't use it much, but it seems like at least their stuff is mostly-compatible-if-you-work-it-a-bit, unlike Gnome's full on hostility to 'cross-compatibility.')


I'm in the same boat. Trying to negotiate with GNOME developers only got me laughed out of the room, now I couldn't care less about what they think. They promised to kill sacred cows, and all we got was this lame desktop that gutted 90% of the things I liked about GNOME 3.38. Luckily, it doesn't look like we need to wish it failure much these days. I don't know many people who use GNOME since 40 (much less any developers on it), and compared to the KDE development roadmap their progress is utterly lethargic. If anything, it's a project that is sustained by a few paid contributors from Red Hat and a miasma of third-parties who have some vision of GTK and GNOME converging into an Apple-like platform.


There actually are a good number of paid contributors from small companies, and also a good number of volunteers too. That's what I have seen.

Don't feel discouraged if your first contributions didn't make it in, GNOME is a big project so I'm sure you could find some other areas to contribute to if you really wanted. Keep in mind that core areas such as the shell and GTK are probably bad places for first time contributors as they tend to be very complex, it's best to start with a smaller app/library and go from there. Of course if you don't want to contribute then you don't have to either, but I think all of this applies to most large open source projects that I have seen.


I'm not mad that my patches were rejected, the GNOME team is notorious for neglecting basic functionality like thumbnails in the filepicker for almost two decades, even with literally hundreds of pull requests with suggested fixes. I'm mad because the current maintainers have no interest in extending the discussion around what GNOME should be. For all their talk of inclusion and diversity, their attitude runs in the complete other direction. They're encroaching on the same issues that systemd made, where their software's scope is expanding way too far with far too little substance. I've been told to "not bother" making apps that I don't plan to distribute via Flatpak. I've been told that disliking Adwaita is paramount to fascism, and when I try to reason with people and explain myself I get told to read the Code of Conduct.

You're painting this out to be a personal issue, which it isn't. The culture among GNOME developers is one of the most toxic I've ever seen, and it's continuing to poison a desktop environment I desperately want to love. Every time I suggest something I get shut down though, so why bother? Why would I willingly hurt myself in the process of trying to make a usable desktop? The only thing I can do now is share my experience as a warning to other developers who want to make Linux-native experiences: GNOME does not want your help, don't waste your time trying.


Sorry to hear that but I think on some level it is personal. I have never experienced any of what you're talking about, everyone I've talked to has been pretty respectful and open to collaboration. It's a large project so experiences may differ, we may not have ever interacted with the same people, or you may have caught them on a bad day, etc.

On those individual things, you can certainly make apps outside flatpak although on a technical level I think that flatpak (or a similar packaging mechanism) is going to be the best option for a great number of apps, and I would expect that to become the focus for many app developers just because it's a lot easier and saves time. I think that comment about Adwaita is pretty inflammatory and may be seen as being against the code of conduct, not sure, but it certainly isn't my view and I doubt it is the view of the majority of contributors.

"neglecting basic functionality like thumbnails in the filepicker for almost two decades, even with literally hundreds of pull requests with suggested fixes."

I mentioned this elsewhere but I'm very disappointed to see this issue get continuously brought up, I don't think there is much we can say that is productive at this point. I've never seen a pull request from this that was actually finished to completion. Is there someone in particular you're waiting for to approve this? If so, can you think of something that could help them out? Or do you think they don't want help at all? Because from my perspective, that is not the case.

Edit: Also, hundreds of pull requests to implement thumbnails? Is that an exaggeration? I'd like to see a list of all of those if possible.

Keep in mind, it's not unusual for a large patch to go through many revisions before finally making it in. Take a look at the Linux kernel for another example, you don't have to look far to see many patches that take a long time to go through review or just never make it in because of various reasons. I don't think you are being fair by painting this as a GNOME behavior, it is simply reality on large projects with a lot of complexity and moving parts. It sounds like you are also saying systemd suffers from the same issues (it probably does) but unfortunately it seems that is another area where it's a complex problem space, so that's the trade-off that you make.


This is exactly the patronization I'm talking about. I have nothing more to say, I wish you luck with your project.


I'm making an honest offer to reach out and help and correct past wrongs, I am sorry if it's patronizing, if you want me to do something else then just ask. I'll be here if you change your mind. Please understand that if you refuse to take anything but complete agreement for an answer then it is going to be very difficult for anyone to help you, I can relate to your experiences but I'll never be able to experience them fully myself. So in that way, the ball is in your court.

Don't worry about my project, I'm only commenting here to help you and to explain that those other opinions are not shared by everyone. In fact commenting on social media is usually a waste for my projects as it only seems to attract more negative/toxic comments from people who (incorrectly) assume that I share all my opinions with an upstream project or something like that.


Please avoid such hostility, open source is a team sport and we are all on the same team, even projects that do things in ways that may be not immediately useful to you or I. That kind of hostility is what leads to open source people burning out.

I am not sure why you think they don't have a "share-it-back" mentality or why you would wish any project failure. They use mostly the same set of open source licenses as KDE.


No. You don't get to simply declare we're on the same team if you're obviously trying to score points for the other side. In this case "the other side" is exclusivity and Gnome keeps doing it.

As a lawyer, I hate to inform you that the entire point of licenses is to put real teeth on ideas that people are likely to renege on. LIKE HERE.


I am not trying to score points for any side, all of these projects can and do share code when it's practical and useful to do so. There is no "exclusivity", I'm sure you know that most of these licenses in use are compatible with each other. The end result is that we are already unwittingly on the same team, it took me a while to realize it but that's the whole reason things like Github and such have taken off. I'd love to discuss your experiences with that as a lawyer if you have any interesting stories, but I would have to ask you to please avoid the hostilities, that doesn't help when trying to fix issues. We both have the same access to the same code.


When Gnome stops being hostile to people who want to modify it in the original spirit -- not necessarily just letter, but SPIRIT -- of free/open source, I'll stop being hostile.

I'm not trying to "fix issues." I'm trying to point out that, sure, Gnome may be technically following the rules, but the entire project is being a collective jerk about it.

Now, we can go deeper on why -- I have no reason to believe individual developers are jerks. I understand there there's money and influence and (cargo-culting) pressure from large companies involved.

But presently - Gnome is a collective putting out a product that is harmful to the environment -- not in an ecological way, but one that reinforces bad ideas about how to make software, aka "only do the bare minimum to comply with the license, otherwise try to dominate via whatever means possible."


I don't know what you mean spirit. To me the spirit has always been "here's some code, do what you want with it" i.e. the exact opposite of what you're saying. I think you may have some missed expectations, I can't understand how you'd perceive that as being dominating or what you mean by someone being a jerk. Both you and I have the same access.

Edit: In my experience, pointing out how someone is a jerk doesn't really help in open source either. That usually just causes them to become defensive and only increases the hostility. Since the code is open it's much better to just fix it for yourself and not worry about what someone else thinks. That is, if you think the situation is truly unrecoverable. If not, then it's better to set aside your differences and work it out.


I'd say "learn your history?" This all came about because of Richard Stallman et al, who absolutely were not "here's some code, do what you want with it."

They were "We have a good thing with this Unix deal and how we do it, we share freely, backwards AND FORWARD. How might we continue this in a wider fashion; knowing that some might be inclined to take and not give back?"

And thus, the GPL was born. MIT-style licenses are fine in some cases, but you're working of the back of Linux, and that's GPL territory.


I know who Richard Stallman is, I've met him several times and I used to volunteer for the FSF. The GPL says that the user is allowed to share modified versions with other users. It does not say that the original author is required to accept some modifications into their version. If you don't believe me then the GPL FAQ has a bit more information about this: https://www.gnu.org/licenses/old-licenses/gpl-2.0-faq.en.htm...

"Some have proposed alternatives to the GPL that require modified versions to go through the original author. As long as the original author keeps up with the need for maintenance, this may work well in practice, but if the author stops (more or less) to do something else or does not attend to all the users' needs, this scheme falls down. Aside from the practical problems, this scheme does not allow users to help each other."

It's pretty explicitly spelled out here that it is absolutely what they meant, it wouldn't work at all if it wasn't "here's some code, do what you want with it."

If someone is trying to get you to take a case along the lines, I would have to say don't take it, it's probably not going to be a winner.


It isn't just GNOME, almost all Linux distributions rely on tightly-coupling a set of libraries and binaries. That's why you can't take a binary from one distro and reasonably expect it to work on another and it's why there are dozens of repos and thousands of package maintainers and shipping on Linux is a pain in the ass.


Meh. I don't think it's technically difficult to just ship binaries that work on any distro, as it's incredibly common - Firefox, Blender, Arduino, Cura all manage it just fine. Mostly they just come as a tarball you unpack, occasionally you get an AppImage so you don't even need to do that. Technically it all works fine. But the Linux world still holds a cultural aversion to running mystery binaries, echoing from a time when the sense of battle against proprietary software was felt more keenly than it is today. Expecting people to run binaries they didn't compile was considered rude and antithetical to core values; distros being the only authorized exception. Even today, attempts to dislodge the distro as the official distributor of binaries are met with controversy and suspicion.


I've been working with Linux since more than 20 years and I don't recall any cultural aversion against binaries, at least the ones shipped by your distribution.

Compiling everything has always been a very niche hobby limited to mostly Gentoo and similar distribution users.

What we've maybe always being diffident about is app bundles, big images of apps with all their dependencies most of which duplicates of already installed libraries.

But I guess we're moving on from that with snap, flatpack and the likes gaining traction.


We agree; distros are/were the anointed compilers and distributors of binaries. No distro would ever include an upstream-compiled binary in their official repositories, even if it worked perfectly well and had no dependencies.


Yeah tarballs works fine. I know that at least AUR use mostly upstream unmodified tarballs.


- flatpak And - appimage

Both work out of the box on almost any distro, just fine


We manage it with Ardour just fine (except NixOS, which disables LD_LIBRARY_PATH). Once you understand what's required, it's not particularly hard.


One example of fragmentation:

You: "it has become much better with wayland and is improving fast".

Two comments above you: "wayland has been a steaming pile of crap since it still can't work in basic graphics modes 10+ years after being announced, to the fact that it has loads of quirks that vary from one environment to another."


That’s not fragmentation, that’s just the usual die-hard linuxer that knows jackshit about actual technology, but has a huge ego going with it.

The typical conservative mentality.


The Unix philosophy is in practice horseshit for anything that isn't semi-structured text processing, and for discoverability. Gimme a software with all the functions laid out in menus that I can explore !


"They're not supposed to be tightly integrated, the gnome team seems to have forgotten all of this."

That is a misconception that I've noticed, maybe it's because KDE uses different APIs for a lot of things, or maybe it's because of the way some distributions package it. But none of the Linux desktops are really that tightly coupled when you actually dig into it. For example managing the desktop settings is handled by its own daemon appropriately called "gnome-settings-daemon" that loads all its settings modules via a plugin system. KDE is structured similarly in that its code is split across a great number of small support libraries. If there is no secondary consumer of those APIs it's probably because nobody has bothered yet to make and test additional combinations of packages that actually work.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: