Steam Deck is using Flatpaks so.....
How does it solve the problem of dependencies without becoming bloated?
From what I gather it goes something like this:
- every package is assigned a hash
- every package lists their dependencies through their hashes
- different versions of packages have different hashes
- when you launch an application it creates an environment with all its dependencies, this means that two applications that both use the same library at the same version share that library. However if they both require the same lib but not the same version of that lib they don't share it.
Which solves DLL hell as far as i understand it.
By not being a universal packaging format. It uses your system libraries, which completely eliminates the main reason devs are pushing for things like Flatpak, Snap, or Appimage.
Nix is the vim of package management but without good documentation. So it's incredibly powerful and useful once you get into it, but imagine trying to learn vim without any docs or guidance. Vim has a steep learning curve with good documentation, YouTube tutorials, blog posts, and forum guides.
Nix doesn't really have a wealth of that.
That's nix package management and nixos in a nutshell.
Because nixPKGs have the same Single-Source of Truth wrecking problems as flatpaks and appimages and all that junk.
There's only so much room in the ecosystem for best-practice-violating product, and systemd takes up a lot of that. And until systemd collapses under the weight of doing a thousand things poorly for all the wrong reasons and delivering on none of its brochure features, the other entrants have to wait outside.
As a largely non-technical linux enjoyer I have such a hard time understanding why people hate systemd so much. If I switched to a distro that uses another init system would my experience be better?
Like I get that the complaint is partially the philosophy, but it sounds like you also have problems with it in practice and I just can't really relate to that. I dunno, maybe I just wouldn't notice if there are problems happening with how my init system is working 🤷
My guess would be that it's because Flatpaks are easy. You have a handy GUI tool often pre installed that includes search and one-click install.
If you want something lower level, Arch users have the AUR, and others may actually do that horrifying curl https://... | sh
pattern.
Nix pancakes on the other hand.... I have no idea how to use them and generally assume it's the thing NixOS uses. Since I don't use NixOS, I've never given them a second thought.
Was curious myself don't like flatpaks & appimages much, but from a quick googling, they don't seem to integrate with the desktop so you need to launch them from terminal? That is a deal breaker for me at least.
you have to set up the XDG_DATA_DIRS
environment variable to take into account ~/.nix-profile/share
the desktop icons will only appear after a relogin though.
Linux
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0