this post was submitted on 17 Dec 2024
22 points (82.4% liked)

Linux

8339 readers
56 users here now

Welcome to c/linux!

Welcome to our thriving Linux community! Whether you're a seasoned Linux enthusiast or just starting your journey, we're excited to have you here. Explore, learn, and collaborate with like-minded individuals who share a passion for open-source software and the endless possibilities it offers. Together, let's dive into the world of Linux and embrace the power of freedom, customization, and innovation. Enjoy your stay and feel free to join the vibrant discussions that await you!

Rules:

  1. Stay on topic: Posts and discussions should be related to Linux, open source software, and related technologies.

  2. Be respectful: Treat fellow community members with respect and courtesy.

  3. Quality over quantity: Share informative and thought-provoking content.

  4. No spam or self-promotion: Avoid excessive self-promotion or spamming.

  5. No NSFW adult content

  6. Follow general lemmy guidelines.

founded 2 years ago
MODERATORS
 

Part of what's making learning Linux so difficult for me, is the idea of how fragmented it is. You can install programs with sudo apt get (program). You can get programs with snaps. You can get programs with flatpaks. You can install with tar.gz files. You can install with .deb files. You can get programs with .sh files. There's probably more I don't know about.

I don't even know where all these programs are being installed. I haven't learned how to uninstall them yet. And I'm sure that each way has a different way to uninstall too.

So that brings me to my main question. Why not consolidate all this? Sure, files CAN be installed anywhere if you want, but why not make a folder like /home/programs/ where it's assumed that programs would be installed?

On windows the programs can be installed anywhere, but the default is C:/windows/Program Files x86/ or something like that. Now, you can change it all you want when you install the programs. I could install it to C:/Fuckfuckfuck/ if I wanted to. I don't want to, so I leave it alone because C:/Windows/Program Files x86/ is where it's assumed all the files are.

Furthermore, I see no benefit to installing 15 different programs in 7 different folders. I begrudgingly understand why there's so many different installation methods, but I do NOT understand why as a collective community we can't have something like a standardized setting in each distro that you can set 1 place for all your installation files.

Because of the fragmentation of distros, I can understand why we can't have a standardized location across all distros like Windows has. However I DON'T see why we can't have a setting that gets set upon each first boot after installation that tells each future installation which folder to install to.

I would personally pick /Home/Programs/, but maybe you want /root/Jamies Files/ because you're Jamie, and those are your files.

In either case, as we boot up during the install, it would ask us where we want our program files installed. And from then on, no matter what method of install you chose, it would default to whatever your chosen folder was.

Now, you could still install other places too, but you would need to direct that on a per install basis.

So what's the benefit of having programs each installed in seperate locations that are wildly different?

you are viewing a single comment's thread
view the rest of the comments
[–] Lost_My_Mind -1 points 1 week ago (3 children)

Now does flatpak get it's programs from the same place that terminal would? I'm still trying to grasp what's even happening here. Because from my experience (limited) I like flatpaks more than any other method used so far, and am unclear why anyone would use terminal if given the choice.

As for snaps, I heard Ubuntu owns the technology behind snaps, and for some reason everybody hates snaps because canonical owns it. Which I don't get. As far as I know they don't abuse snaps, and they don't cause viruses or anything. So why would it matter who owns the technology behind them?

[–] PetteriPano 13 points 1 week ago

everybody hates snaps because canonical owns it

We like of like things to be open so that we can review, or replace. The snap store is proprietary and controlled by canonical. I don't want my data collected and subject to canonical's EULA when using my choice of distro.

Canonical has a hisory of doing bad choices, so the level of trust is not very high. It feels like an attempt at embrace, extend, extinguish. Get people hooked on snaps and then make snaps suck on other distros kind of thing.

[–] [email protected] 9 points 1 week ago

https://flathub.org/

The reason most people don't like snaps is fairly complicated. It started with Ubuntu forcing some basic packages to install as a snap instead of a native package. The thing is snaps are not native packages and because of this it caused major problems. These days a lot of the issues have been addressed but there are still some serious design flaws. The biggest issue is that it is way overly complex and depends on a privileged daemon. The result of this is poor performance and a clunky experience.

[–] [email protected] 2 points 1 week ago* (last edited 1 week ago)

Now does flatpak get it’s programs from the same place that terminal would?

I usually install Flatpaks from the terminal, but as to your question: no, the distro's package manager and Flatpak have different repositories (servers with software packages) and formats. While distros like Fedora have their own Flatpak repositories, most people use Flathub. You can install apps as Flatpak on any distro that supports them, but native package managers generally don't support other distros' repositories.

for some reason everybody hates snaps because canonical owns it.

As I understand it, Snap server software is proprietary and doesn't support independent repositories, so you have to install Snaps from Canonical. This is not exactly in line with Free (as in Freedom) Software principles. Canonical has done many questionable decisions in the past.