News for hackers. Stuff that matters.
Re:Nix: An idea whose time has come by geocrasher on Friday February 18, 2022 @07:08PM (#30392960)
I'm not against Nix or any package manager. What I'm against is the general fragmentation of Linux that makes interoperability between distro's and window managers problematic. If there's every going to be a Year Of The Linux Desktop (TM) then there must be a way for a user to fulfill the expectation that they can select "Linux" instead of "Mac" and "Windows" when downloading software, and when they double click or drag it or whatever, it just installs without a fuss about which distribution they're using or which UI libraries they need or which package manager they use.
Re:Nix: An idea whose time has come by qbasic_forever on Friday February 18, 2022 @08:02PM (#30393401)
Nix doesn't have anything to do with that problem. If anything it helps as it lets multiple even conflicting versions of libraries and software coexist and run together.

What you want is flatpak or appimage (or even snap). These are self contained distributed binaries that contain and isolate all their dependencies. It is simply a one file download for any linux distro. They work great--I use a ton of flatpak apps like VS Code all the time.

Re:Nix: An idea whose time has come by chlorion on Friday February 18, 2022 @11:48PM (#30394503)
I am not so sure that this is really as big of a problem as it's made out to be. To me it seems like people trying to make Linux software management work like Windows because that's what they are used to, so if the experience is different than what they are used to they assume it doesn't work well.

Going to some project's website and trying to find a download to install is not typically how you install software on Linux, and people distributing software like that for Linux probably don't know much about Linux software distribution themselves.

If you want a good experience you should be installing software from the system package manager instead of searching for deb files that are probably out of date and won't work on your system due to shared library compatibility issues. Using the system package manager is much different than what many are used to but it actually works very well. The other option is to use flatpak or similar software, which is designed to sanely handle out of repo software installation.

I think people distributing their own deb/rpm/etc files from their project's website are causing active harm and confusing people who are new to Linux. The best option is to provide a link to the distros package if it exists (https://archlinux.org/packages/foo), instructions on how to build from source and a flatpak image (or similar). When a new user downloads a stray deb and has a bad experience with it (broken software, system breakage, etc) it really leaves a poor impression on them that could have easily been avoided.

Re:Nix: An idea whose time has come by n0w on Saturday February 19, 2022 @02:25AM (#30395086)
I don't disagree with what you're saying, but it's interesting that some people might want to make Linux software distribution more like Windows or macOS because of unfamiliarity.

The way you've described Linux software distribution sounds an aweful lot like software distribution on mobile devices. I think it should be pretty familiar to everyone by now. If anything I think Windows and macOS want to move closer to being like Linux in this regard.

Maybe the experience of using cli tools like `apt` or `yum` has made people overlook the ease of installing software on Linux. Anyone that has used openSUSE or Ubuntu should know better.

Re:Nix: An idea whose time has come by ghostwriter on Friday February 18, 2022 @07:13PM (#30393008)
There's no fragmentation, Nix apart from many other things is first of all a build system, and it can build Debian and/or RPM packages for you from the same sources it uses for NixOS [1]

[1] https://nixos.wiki/wiki/Nixpkgs/Building_RPM_DEB_with_nixpkg...

Re:Nix: An idea whose time has come by Ericson2314 on Friday February 18, 2022 @07:31PM (#30393166)
The major problem here is the lack of dialogue between language-specific package managers and distro package managers.

I think once that is fixed, a lot of stuff will start improving.

I wrote https://github.com/NixOS/rfcs/pull/109/ in hopes Nix can help lead the way here.

Re:Nix: An idea whose time has come by AlphaSite on Friday February 18, 2022 @07:40PM (#30393247)
If this were true Mac and Windows wouldn’t thrive, but they do just fine without a system level package manager at all.
Re:Nix: An idea whose time has come by nick__m on Friday February 18, 2022 @09:30PM (#30393894)
Windows now has a first-party package manager: https://github.com/microsoft/winget-cli

It positively surprised me when I did `sudo winget upgrade` (I first did `winget install gerardog.gsudo` in an admin prompt) and it detected and upgraded the majority of the already installed OSS on my Windows workstation.

Re:Nix: An idea whose time has come by Ericson2314 on Friday February 18, 2022 @08:02PM (#30393396)
Err i was trying to answer

> What I'm against is the general fragmentation of Linux that makes interoperability between distro's and window managers problematic.

I disagree that downloading software being hard is a major impediment. (though I realize the parent did continue to claim that.) How many people download executables on the regular anyways?

Re:Nix: An idea whose time has come by contravariant on Friday February 18, 2022 @08:35PM (#30393588)
You phrase this as if it's getting continually worse, but I'm not sure if distros were ever that interoperable (unless you deliberately restrict yourself to a point in time where there was exactly 1 distro). If anything it seems to me that you now have a decent chance to get software to run on any recent distro, which wasn't always the case.

Though that's just my impression, I'd be happy to be proven wrong by someone better informed.

Re:Nix: An idea whose time has come by smoldesu on Friday February 18, 2022 @07:22PM (#30393096)
The problem as I can see it is that the "solutions" don't really work either. Here's your options, in order of viability:

- AppImage. Basically the idea of "Apps" ripped straight out of MacOS and injected right into Linux. Works fine, but clutters your home directory with Another Folder and doesn't integrate with your desktop like a native package.

- Snap. Works on any system that can install snapd, is owned by Canonical (a pro or a con depending on who you ask), but also auto-updates and has occasional performance problems. Plus, snapd is generally kinda fussy.

- Flatpak. Sandboxing taken to it's (il)logical extremes. If you like random data loss, confusing package manifests, low-performance and generally broken software, this is the way to go. Of course, most people like it when their compositor doesn't break when installing third-party programs, so they avoid it like the plauge. It's a uniquely bad format, almost worth spinning up a Linux VM to try it for a laugh. Just make sure to use GNOME, it's useless anywhere else. That's the true hallmark of a cross-distro packaging solution!

So yeah, we're probably due in for Another Competing Standard. At this point though, I think most developers are contented to just ship an RPM and an Arch package and let everyone else figure stuff out for themselves. Honestly, I prefer that approach when compared to the blasted wasteland that is cross-distro package management.

Re:Nix: An idea whose time has come by danieldk on Saturday February 19, 2022 @03:04AM (#30395260)
Flatpak. Sandboxing taken to it's (il)logical extremes. If you like random data loss, confusing package manifests, low-performance and generally broken software, this is the way to go.

Reality check: since the Steam package is broken so often on NixOS, I ended up using the Flatpak on NixOS instead (which works like a charm).

It's a uniquely bad format, almost worth spinning up a Linux VM to try it for a laugh.

I am not sure what you are talking about. It's actually a really nice format that uses OSTree.

Re:Nix: An idea whose time has come by smoldesu on Saturday February 19, 2022 @08:29AM (#30396996)
We're comparing it to Snap and AppImage. Flatpak doesn't have enough meat on it's bones (or goodwill in it's tank) to compete with the other cross-distro distribution options, and certainly not with native packages. I'm frankly not surprised that Steam is constantly broken on NixOS, Valve doesn't maintain it (and won't due to how insanely different it's concept of package management is).
Re:Nix: An idea whose time has come by 1_player on Saturday February 19, 2022 @07:06AM (#30396498)
> Flatpak. Sandboxing taken to it's (il)logical extremes. If you like random data loss, confusing package manifests, low-performance and generally broken software, this is the way to go.

Talk about FUD and taking to logical extremes. Your constant trolling on Linux threads is not appreciated.

Re:Nix: An idea whose time has come by smoldesu on Saturday February 19, 2022 @08:26AM (#30396983)
Constant trolling? I use Linux on every device I own. If you're interested in stifling democratic development and open-source discourse, there are plenty of other operating systems that can accommodate for that mindset.
Re:Nix: An idea whose time has come by 1_player on Saturday February 19, 2022 @08:32AM (#30397014)
So am I. Using Linux on every device you own doesn't automatically qualify and make any statement you utter a truth. I've already replied in the other comment why your opinion spread FUD (especially from a self-described "provocateur"), so I have no interest in engaging with you even further. Good day.
Re:Nix: An idea whose time has come by smoldesu on Saturday February 19, 2022 @11:39AM (#30398371)
Would you like to refute anything I've said so far, or fight FUD with FUD?
Re:Nix: An idea whose time has come by 3np on Saturday February 19, 2022 @02:34AM (#30395120)
Could you be more specific about your issues with Flatpak? No idea what you’re talking about here.
Re:Nix: An idea whose time has come by 1_player on Saturday February 19, 2022 @07:07AM (#30396502)
It's trolling of the "everything new in Linux is crap" type, just check their post history. Random data loss because one uses Flatpak, seriously?
Re:Nix: An idea whose time has come by smoldesu on Saturday February 19, 2022 @08:21AM (#30396961)
> Random data loss because one uses Flatpak, seriously?

I wish I was joking: https://twitter.com/planner_todo/status/1492084099875586049

Re:Nix: An idea whose time has come by 1_player on Saturday February 19, 2022 @08:29AM (#30396998)
Ah because of a bug in an app (or it's packaging), the whole flatpak ecosystem is corrupt and causes data loss? How is that different that someone mistakingly causing an rm -rf /home in an RPM post-install script?

Try again.

Re:Nix: An idea whose time has come by smoldesu on Saturday February 19, 2022 @09:19AM (#30397290)
So now we're blaming developers for messing up with sandboxed systems? I really hope this isn't the rhetoric you use to convince people to start packaging with Flatpak...
Re:Nix: An idea whose time has come by 3np on Tuesday February 22, 2022 @03:18AM (#30425279)
You're the only one assigning blame to anyone here. Not all problems need a villain.

Both of these things can be true at the same time: The library authors ultimately messed it up and could have prevented it by reading documentation better. Flatpak has a footgun and could have prevented it by better dev UX and/or structuring docs differently.

Hopefully this incident is leading to improvements in both.

Re:Nix: An idea whose time has come by wheresmycraisin on Friday February 18, 2022 @07:58PM (#30393369)
Aren't we past that? Vast majority of Linux desktops are Ubuntu/Debian or Redhat/Centos. You target those two and you're set. Add Suse if you have a large European user base.
Re:Nix: An idea whose time has come by 3836293648 on Friday February 18, 2022 @11:49PM (#30394506)
Or just target flatpak and let it mostly just work
Re:Nix: An idea whose time has come by podge on Friday February 18, 2022 @07:13PM (#30393003)
I agree with your point about fragmentation. But isn't the "Year Of The Linux Desktop" just a joke at this point? Even more so now that desktop computing is becoming less and less important to most people.
Re:Nix: An idea whose time has come by bee_rider on Friday February 18, 2022 @07:23PM (#30393105)
Well, we can't look forward to "Year Of The Linux Phone," because that's been around for a while now in the form of Android. Maybe "Year Of The Actual, Like, Real Linux Phone, Ugh, You Know What I Mean," though?
Re:Nix: An idea whose time has come by southerntofu on Saturday February 19, 2022 @05:50AM (#30396093)
> there must be a way for a user to fulfill the expectation that they can select "Linux" instead of "Mac" and "Windows" when downloading software

There's already established ways to do that such as AppImage, which has bonus points (compared to other solutions) for PGP signatures and differential (delta) upgrades. What's lacking is proper desktop environment integration for an ~/Apps folder like you have on MacOS where this pattern of one-file-per-app has been established for longer.

If you want to go one step further, 0install would make it possible to not even have to choose between "Mac", "Windows" and "Linux" on the download page, which is kind of amazing in a way.

Re:Nix: An idea whose time has come by 1_player on Saturday February 19, 2022 @07:04AM (#30396482)
Heard of Flatpak?