More specifically, issues for one distro (or maybe family of distros if applicable) and not other distros.

I’ll start: NixOS. I love how I can have my whole operating system configuration defined deterministically with configuration files, but what I believe is a serious flaw, is when you choose the “unstable” channel, the channel for receiving the latest packages rather than ones up to 6 months old: stable. Unstable package often build dependencies on device, and I’ve often faced build failures, why are new package versions given if they fail to build?!

Why can’t Nixpkgs backend ensure that new package versions build successfully before shipping them to end users?! It would take a lot of work to do so, but I can’t think of any other distros that have this problem: where installing a new package version that came out a few days or even a week ago, has a chance of failing after its made available in the distro’s official package manager.

There are a handful of workarounds for your NixOS configuration in this case, but it happens too often for me and I shouldn’t have to edit my config for to work around it.

  • exdor@programming.dev
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    7 hours ago

    Your specific NixOS problem it not unique

    They do check some packages but not all, only the critical ones. And there is a tool to check if there a hydra build failures before updating.

    But yeah it is problematic that NixOS is primarily source-based, most importantly as hydra builds everything and if a binary is not there, that is like always a build failure. Requesting those infos from hydra all the time also makes no sense, so this should really be solved on the branch/channel level