I agree with Linus Torvalds. Linux is too fragmented. This makes consistent software deployment and support expensive and far too varied. Maintaining documentation alone requires an unlimited number of distros. From a user’s perspective, I really think Linux needs a universal install method like .exe. No user should ever need to use the CLI install software, no matter their distribution. Radarr, for example, is a very popular home media server application. It is one-click install on Windows. It is fucked on Linux.
.exe to execute is (probably one of) the worst ideas Microsoft has come up with and has caused endless misery for people.
If you’re talking about a single package to install then there are various solutions for that that are better. There are the apt and rpm packages, Sudo apt install packagename installs everything automatically, or I can do that from a app store if I’m a newbie.
For apps that want a wider net, they can use flatpaks
Anyone complaining that installing software in Linux is always complicated hasn’t installed software on Linux. Yeah I’m a power user but to me it’s factors faster and easier to do this stuff on Linux than on Windows
Yeah, Linux has many ways to get stuff done, that is because many different people want and get their own way. I don’t see this as necessarily bad. With the three ways described above, you can cover pretty much everything
I agree that noone should have to get into a console to get your system or app working but please note that this same shit happens on windows too, just way more bizarre. The amount of times I saw “modify this registry entry with this UUID code” is crazy, while on Linux it’s “run this command or modify that text file”. I still prefer the latter
Anyone complaining that installing software in Linux is always complicated hasn’t installed software on Linux.
I didn’t complain it’s always complicated. I used a specific example of when it is complicated. Such examples happen to all Linux users from time to time, and I think we should be working to ensure users never ever, for any reason, ever need to bust out the CLI to install basic software. Maybe when SteamOS becomes more widespread devs will fall in line with whatever Valve has chosen as their preferred install method. Fingers crossed it’s flatpaks! Normies don’t want many methods to install software. They want one simple, reliable method, which works the same way every single time. And if we’re being honest, even power users would be happy with that. Just ask my fellow macOS devs :)
Flatpak is gonna need some more work for me to accept it as the only way to install software if that were to happen though. The only reason i use them right now is because together with appimages they are the least sucky to use, and it beats manually compiling the software.
I don’t understand this “Installing stuff on Linux is complicated :(” meme when the user-friendly distros have “app stores” and the terminal commands for app management are simpler than 80’s text adventure inputs. (Apt / zypper / yum / whatever + search, then install and “Y”. You can even install multiple packages by separating them with spaces! Doesn’t require an MIT degree here…)
And the sheer convenience of one single update process to update all your software on your machine at once! This is literally what mindless-consumption devices like smartphones do, and people seem to like it.
Windows fans need Chocolatey to “mimic a fraction of our power!!”(Lol j/k. meme.) And while it’s cool, I found it more complicated command-wise. (There’s also GUI front ends I think to be fair but I digress.)
On Windows if your app doesn’t auto-update, you’ve gotta download a new .exe, or .msi or .zip (“so many formats! Not simple! :(” heh) for EVERY update.
And lastly, when something goes wrong:
Personal experience here but I’m glad I can run any app in Linux with a terminal window and see some computer-speak as to what went wrong. Even if I don’t understand it, somebody will!
Windows often just tells me “No.” and the only option is: “OK”. Or blue screen errors are purposely obfuscated, and worst case advice is “Hi my name is Josh D. A Microsoft support volunteer. Have you run Windows Update? Updated drivers? Reinstall the whole OS to be sure, I guess.”
I’m sincerely not trying to be smug here. The aversion to the terminal is like 99% psychological. People ideally read manuals to figure out how to use their new air fryer, so I don’t think it’s too outlandish to say “Hey learn a couple simple phrases to install and update your system.”
And that’s even if you need the terminal at all.
So many people are so happy to help if Linux is new and different to you, but I’m so done with people mocking it as “not ready” and “unusable by the average person” because somebody tried installing an .exe in Ubuntu or loading up Gentoo once without reading anything, and ran screaming back to Windows.
Human brains are incredible things. I think we’ve just been stuck in some weird culture that makes learning scary and intimidating because it’s easier to sell us push-button-o-matics (with trackers and ads of course!) that way.
P.S: My entire games library, even my discs Windows won’t even bother with, run beautifully, on Nvidia, using Wayland, with 2 monitors, on OpenSUSE Tumbleweed.
P.P.S: Also I do plenty of art, sometimes even get paid for it, and hereby proclaim that Adobe, Autodesk, and their ilk can go screw themselves. Great software, but It’s not worth the headaches of user-hostility and gouging subscriptions. I don’t miss them.
Now all we’re missing is the universal enforcement piece, which I think is non-trivial. It might take off organically but as per my example above, I’m not hopeful.
“Universal enforcement” meaning what? On its face your proposal sounds fundamentally antithetical to what linux is. It’s an open source environment, meaning literally anyone can create software and post it online. Are you wanting all directories to only accept flatpak? I don’t think that would go over well.
Yeah that’s just radarr devs not actually packaging the thing.
Compare the nixos instructions. Which, mind you, is not a distro for beginners, the faint of heart, or generally people who are neither functional programmers nor devops, but that’s how easy it is when you package shit properly.
Yeah that’s just radarr devs not actually packaging the thing.
It’s not about blame. From a user’s perspective, it doesn’t matter who is to blame. The bottom line is that Linux is harder to use in a lot of scenarios. Torvalds was right: it’s going to take Valve to statically link everything and force developers to use the same libraries. Then it’s trivially easy for devs to maintain a .elf distribution which can be executed across all Valve-compliant Linux distros.
I think youre misrepresenting what Linux is supposed to be, it runs most Walmart displays, kiosks, medical systems, and servers.
Its just now branching into a more usable desktop environment, but its going to do this the right way.
As time as shown is the windows way is incredibly bloated and unstable - I wouldn’t dream of running a critical server off of it, nor even a non-critical one like radarr. Undocumented issues are just part of the game in the windows world.
Taking the easy route will kinda by definition be easier at first.
Though ngl I find it incredibly easier to enter
nix-shell -p radarr
than to navigate to a webpage, download and install an arbitrary executable, give it absolute admin privellages to the ebtirety of my computer to let it ‘do its thing’ for a bit, and be SOL if that doesnt all go perfectly.
I don’t think this works on most distros. Even if it does, isn’t this only installing Radarr to a temporary shell? Either way, CLI should never be required to install software. Not if the intent is consumer software. You do appear to make the argument that it’s not consumer software, which is fair. It’s just different from a lot of other claims about it being consumer software. So you can forgive people for thinking it’s meant for regular people. We should definitely make that clearer.
Nix package manager can be installed on (almost) any distro, I’m running it in an android termux right now for example. Side note if you want a fun project for an old phone you could probably run radarr this way, I’m using it for Garage s3 storage.
Without diving into the juicy details too much, the command does temporarily install it - in a way that its essentially free to reinstall anytime. For permanent setups you just have to add it to a text file, that could use a bit of a face life to be honest. Though comparitevly this would be trivial to implement vs the meat of the package manager itself
That’s not going to work radarr is a daemon. Well at least it’s not going to work as intended, you might be able to start the thing as a user, but it’s likely not what you want to do, you want the thing registered with systemd and start up and shut down with the system. We don’t nix-shell -p sshd either.
The bottom line is that Linux is harder to use in a lot of scenarios.
And who’s at fault? The devs. To wit, the radarr devs. Really, the minimum there should be calling what they describe “manual installation” and saying “we don’t package our software for distributions, consult your distro’s package manager radarr might be available”. It’s a daemon so it’s not like they can ship a flatpak, deamons need system integration.
The whole sonarr/radarr/prowlarr/whatever-rr dev folks don’t seem to be particularly Linux-affine in general. I consider it windows software that happens to run under linux, developed by presumably windows users running linux on their seedbox because if there’s one thing that’s worse, even for windows-heads, than learning a bit of linux then it’s using windows in a server role.
After a long career in software development I’ve learned one important thing: everyone is motivated by incentives. Developers don’t package their software on Linux as frequently because they’re not forced to, and because it’s a huge pain in the ass compared to macOS and Windows. I don’t blame the developers for this. I blame the OS. Torvalds was right: this won’t be fixed until Valve forces everyone to use the same libraries. Then it’s super easy for the Radarr devs to provide a single executable across all compatible distros.
I guess in an ideal world all the developers would voluntarily package their software well, but that’s just not reality and it will never be.
The trouble with the *rr stuff isn’t libraries, it’s as far as I know all written in .NET, but system integration. Setting up users and permissions, starting the daemon, if necessary punch a hole in the firewall.
I, too, watched Linus’ rant about diving software and that neither distros should be required to package random-ass applications, and app developers shouldn’t be forced to package for random-ass distros. That’s why we have flatpak. There may or may not come a time where such a thing also exists for daemons but it’s not the top priority, also, if you’re running radarr you’re not just a random user, you’re at the very least a power user. Random users direct their browsers to a website, click a link, which then opens qbittorrent. Which btw also has a rss feature. You don’t need a daemon process to do all this stuff, I doubt radarr sets up a system process or whatever it’s called in windows, either, you can do it as a user. The whole design of the thing assumes that you run it on a server, and, therefore, know how to run a server.
As such, two observations: First, that radarr is not a good example subsurface is (and precisely what Linus was talking about), secondly, power users know even less what users actually want than devs.
Looks like a one click install on nixos - so youre right to say its fucked on Debian, but that hardly represents the whole OS (like my god you want to hate Linux try LFS and claim it represents the OS).
The way I see it the biggest fragmentation is just users expecting things to work like windows, ie navigating to a website, downloading the software and running it.
Usually Linux users just search their package repo. If you want more bleeding edge software, youre expected to understand Debian/Ubuntu repos probably aren’t the place to go.
Can’t really blame the wrench youre using to put in a screw for doing a bad job.
The way I see it the biggest fragmentation is just users expecting things to work like windows, ie navigating to a website, downloading the software and running it.
Usually Linux users just search their package repo. If you want more bleeding edge software, youre expected to understand Debian/Ubuntu repos probably aren’t the place to go.
Like it or not, most users expect to be able to go to a website, download software, and click it to install. It is objectively more intuitive than using a command line, or having users go somewhere else to install software. I don’t see the sense in fighting against user preferences. Embrace it. Offer it. Give the users what they want. That’s how we grow Linux. There is no reason that “bleeding edge” software needs to be complicated to install and use.
I’ll admit Linux users are more allergic to GUI’s than they need to be, but if snowflakeOS becomes more mature then I’d consider an app store much more intuitive and secure than arbitrary full system access.
Cause realistically we could start throwing ads in the system to really make windows users feel at home, but (like the mess that is windows dependencies) tradition can be a weakness more than a strength.
I agree with Linus Torvalds. Linux is too fragmented. This makes consistent software deployment and support expensive and far too varied. Maintaining documentation alone requires an unlimited number of distros. From a user’s perspective, I really think Linux needs a universal install method like .exe. No user should ever need to use the CLI install software, no matter their distribution. Radarr, for example, is a very popular home media server application. It is one-click install on Windows. It is fucked on Linux.
Oh hells no
.exe to execute is (probably one of) the worst ideas Microsoft has come up with and has caused endless misery for people.
If you’re talking about a single package to install then there are various solutions for that that are better. There are the apt and rpm packages, Sudo apt install packagename installs everything automatically, or I can do that from a app store if I’m a newbie.
For apps that want a wider net, they can use flatpaks
Anyone complaining that installing software in Linux is always complicated hasn’t installed software on Linux. Yeah I’m a power user but to me it’s factors faster and easier to do this stuff on Linux than on Windows
Yeah, Linux has many ways to get stuff done, that is because many different people want and get their own way. I don’t see this as necessarily bad. With the three ways described above, you can cover pretty much everything
I agree that noone should have to get into a console to get your system or app working but please note that this same shit happens on windows too, just way more bizarre. The amount of times I saw “modify this registry entry with this UUID code” is crazy, while on Linux it’s “run this command or modify that text file”. I still prefer the latter
I didn’t complain it’s always complicated. I used a specific example of when it is complicated. Such examples happen to all Linux users from time to time, and I think we should be working to ensure users never ever, for any reason, ever need to bust out the CLI to install basic software. Maybe when SteamOS becomes more widespread devs will fall in line with whatever Valve has chosen as their preferred install method. Fingers crossed it’s flatpaks! Normies don’t want many methods to install software. They want one simple, reliable method, which works the same way every single time. And if we’re being honest, even power users would be happy with that. Just ask my fellow macOS devs :)
Flatpak is gonna need some more work for me to accept it as the only way to install software if that were to happen though. The only reason i use them right now is because together with appimages they are the least sucky to use, and it beats manually compiling the software.
100%
I don’t understand this “Installing stuff on Linux is complicated :(” meme when the user-friendly distros have “app stores” and the terminal commands for app management are simpler than 80’s text adventure inputs. (Apt / zypper / yum / whatever + search, then install and “Y”. You can even install multiple packages by separating them with spaces! Doesn’t require an MIT degree here…)
And the sheer convenience of one single update process to update all your software on your machine at once! This is literally what mindless-consumption devices like smartphones do, and people seem to like it.
Windows fans need Chocolatey to “mimic a fraction of our power!!”(Lol j/k. meme.) And while it’s cool, I found it more complicated command-wise. (There’s also GUI front ends I think to be fair but I digress.)
On Windows if your app doesn’t auto-update, you’ve gotta download a new .exe, or .msi or .zip (“so many formats! Not simple! :(” heh) for EVERY update.
And lastly, when something goes wrong:
Personal experience here but I’m glad I can run any app in Linux with a terminal window and see some computer-speak as to what went wrong. Even if I don’t understand it, somebody will!
Windows often just tells me “No.” and the only option is: “OK”. Or blue screen errors are purposely obfuscated, and worst case advice is “Hi my name is Josh D. A Microsoft support volunteer. Have you run Windows Update? Updated drivers? Reinstall the whole OS to be sure, I guess.”
I’m sincerely not trying to be smug here. The aversion to the terminal is like 99% psychological. People ideally read manuals to figure out how to use their new air fryer, so I don’t think it’s too outlandish to say “Hey learn a couple simple phrases to install and update your system.”
And that’s even if you need the terminal at all.
So many people are so happy to help if Linux is new and different to you, but I’m so done with people mocking it as “not ready” and “unusable by the average person” because somebody tried installing an .exe in Ubuntu or loading up Gentoo once without reading anything, and ran screaming back to Windows.
Human brains are incredible things. I think we’ve just been stuck in some weird culture that makes learning scary and intimidating because it’s easier to sell us push-button-o-matics (with trackers and ads of course!) that way.
P.S: My entire games library, even my discs Windows won’t even bother with, run beautifully, on Nvidia, using Wayland, with 2 monitors, on OpenSUSE Tumbleweed.
P.P.S: Also I do plenty of art, sometimes even get paid for it, and hereby proclaim that Adobe, Autodesk, and their ilk can go screw themselves. Great software, but It’s not worth the headaches of user-hostility and gouging subscriptions. I don’t miss them.
Flatpak as a software distribution solution already exists and is already widespread.
Flatpak is far from perfect
Now all we’re missing is the universal enforcement piece, which I think is non-trivial. It might take off organically but as per my example above, I’m not hopeful.
“Universal enforcement” meaning what? On its face your proposal sounds fundamentally antithetical to what linux is. It’s an open source environment, meaning literally anyone can create software and post it online. Are you wanting all directories to only accept flatpak? I don’t think that would go over well.
Makes me think of XKCD 927: Standards
Absolutely. I hope flatpak can take that role. It’s already widely accepted.
Yeah that’s just radarr devs not actually packaging the thing.
Compare the nixos instructions. Which, mind you, is not a distro for beginners, the faint of heart, or generally people who are neither functional programmers nor devops, but that’s how easy it is when you package shit properly.
It’s not about blame. From a user’s perspective, it doesn’t matter who is to blame. The bottom line is that Linux is harder to use in a lot of scenarios. Torvalds was right: it’s going to take Valve to statically link everything and force developers to use the same libraries. Then it’s trivially easy for devs to maintain a .elf distribution which can be executed across all Valve-compliant Linux distros.
I think youre misrepresenting what Linux is supposed to be, it runs most Walmart displays, kiosks, medical systems, and servers.
Its just now branching into a more usable desktop environment, but its going to do this the right way.
As time as shown is the windows way is incredibly bloated and unstable - I wouldn’t dream of running a critical server off of it, nor even a non-critical one like radarr. Undocumented issues are just part of the game in the windows world.
Taking the easy route will kinda by definition be easier at first.
Though ngl I find it incredibly easier to enter
nix-shell -p radarr
than to navigate to a webpage, download and install an arbitrary executable, give it absolute admin privellages to the ebtirety of my computer to let it ‘do its thing’ for a bit, and be SOL if that doesnt all go perfectly.
I don’t think this works on most distros. Even if it does, isn’t this only installing Radarr to a temporary shell? Either way, CLI should never be required to install software. Not if the intent is consumer software. You do appear to make the argument that it’s not consumer software, which is fair. It’s just different from a lot of other claims about it being consumer software. So you can forgive people for thinking it’s meant for regular people. We should definitely make that clearer.
Nix package manager can be installed on (almost) any distro, I’m running it in an android termux right now for example. Side note if you want a fun project for an old phone you could probably run radarr this way, I’m using it for Garage s3 storage.
Without diving into the juicy details too much, the command does temporarily install it - in a way that its essentially free to reinstall anytime. For permanent setups you just have to add it to a text file, that could use a bit of a face life to be honest. Though comparitevly this would be trivial to implement vs the meat of the package manager itself
That’s not going to work radarr is a daemon. Well at least it’s not going to work as intended, you might be able to start the thing as a user, but it’s likely not what you want to do, you want the thing registered with systemd and start up and shut down with the system. We don’t
nix-shell -p sshd
either.And who’s at fault? The devs. To wit, the radarr devs. Really, the minimum there should be calling what they describe “manual installation” and saying “we don’t package our software for distributions, consult your distro’s package manager radarr might be available”. It’s a daemon so it’s not like they can ship a flatpak, deamons need system integration.
The whole sonarr/radarr/prowlarr/whatever-rr dev folks don’t seem to be particularly Linux-affine in general. I consider it windows software that happens to run under linux, developed by presumably windows users running linux on their seedbox because if there’s one thing that’s worse, even for windows-heads, than learning a bit of linux then it’s using windows in a server role.
Docker is the best alternative but also not good for beginners.
And presumably you want that fixed. To do that, you have to figure out who needs to do work. In one way or the other, that’s going to be the devs.
We might be using different connotations of “blame”, here. Like, I’m using the
git blame
one.After a long career in software development I’ve learned one important thing: everyone is motivated by incentives. Developers don’t package their software on Linux as frequently because they’re not forced to, and because it’s a huge pain in the ass compared to macOS and Windows. I don’t blame the developers for this. I blame the OS. Torvalds was right: this won’t be fixed until Valve forces everyone to use the same libraries. Then it’s super easy for the Radarr devs to provide a single executable across all compatible distros.
I guess in an ideal world all the developers would voluntarily package their software well, but that’s just not reality and it will never be.
The trouble with the *rr stuff isn’t libraries, it’s as far as I know all written in .NET, but system integration. Setting up users and permissions, starting the daemon, if necessary punch a hole in the firewall.
I, too, watched Linus’ rant about diving software and that neither distros should be required to package random-ass applications, and app developers shouldn’t be forced to package for random-ass distros. That’s why we have flatpak. There may or may not come a time where such a thing also exists for daemons but it’s not the top priority, also, if you’re running radarr you’re not just a random user, you’re at the very least a power user. Random users direct their browsers to a website, click a link, which then opens qbittorrent. Which btw also has a rss feature. You don’t need a daemon process to do all this stuff, I doubt radarr sets up a system process or whatever it’s called in windows, either, you can do it as a user. The whole design of the thing assumes that you run it on a server, and, therefore, know how to run a server.
As such, two observations: First, that radarr is not a good example subsurface is (and precisely what Linus was talking about), secondly, power users know even less what users actually want than devs.
I really think SteamOS has the opportunity to break this maladaptive pattern.
Looks like a one click install on nixos - so youre right to say its fucked on Debian, but that hardly represents the whole OS (like my god you want to hate Linux try LFS and claim it represents the OS).
The way I see it the biggest fragmentation is just users expecting things to work like windows, ie navigating to a website, downloading the software and running it.
Usually Linux users just search their package repo. If you want more bleeding edge software, youre expected to understand Debian/Ubuntu repos probably aren’t the place to go.
Can’t really blame the wrench youre using to put in a screw for doing a bad job.
Like it or not, most users expect to be able to go to a website, download software, and click it to install. It is objectively more intuitive than using a command line, or having users go somewhere else to install software. I don’t see the sense in fighting against user preferences. Embrace it. Offer it. Give the users what they want. That’s how we grow Linux. There is no reason that “bleeding edge” software needs to be complicated to install and use.
I’ll admit Linux users are more allergic to GUI’s than they need to be, but if snowflakeOS becomes more mature then I’d consider an app store much more intuitive and secure than arbitrary full system access.
Cause realistically we could start throwing ads in the system to really make windows users feel at home, but (like the mess that is windows dependencies) tradition can be a weakness more than a strength.