i use arch (btw), and i hate how much i depend on the AUR, its very unstable. I switched to flatpak for my gui programs since the cli experience sucks. nix on the other hand works like a native package manager, and thats great for me. but i see that nix also includes stuff like coreutils (because of nixos im guessing). do i install everything with nix? if not what packages do i install with pacman and which with nix?

  • Atemu
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    1 year ago

    If you install anything that needs coreutils, libc, gtk, whatever Nix will install it automatically

    That’s not quite right. They will be installed (chances are you have coreutils installed right now) but only as in “it’s in the Nix store”; they won’t automatically appear in your PATH or other shared state directories. You’d have to explicitly install the coreutils package for that to happen. I do that on my mac for example because I want GNU coreutils rather than macOS’ ancient modified BSD ones but, again, that’s an explicit choice.

    Some binaries may internally be wrapped to directly use Nixpkgs’ coreutils rather than the system ones. One example I can think of is git-annex which checks for coreutils features at build time. Giving it different coreutils at runtime could cause trouble, so it always uses Nixpkgs coreutils via a wrapper.
    That doesn’t mean Nixpkgs’ coreutils are “installed” into your system though, it’s just prepended to git-annex’ PATH. That’s the beauty of Nix.