How to speed up getting new package versions to stable channel?

I’m using a package which has been going through a lot of releases recently. @adisbladis is keeping the release up to date regularly on master (thank you!!). The only problem is I’m trying to stay on the stable nixpkgs channel to avoid recompiling the universe on a regular basis, which means staying far behind master. Which in turn means having to copy-paste overrides and workarounds from upstream to keep my project working with the latest packages.

Is there some way to contribute to packages advancing through to the stable channel faster?

(Please note this is about general suggestions, not specific to this package. And I’ll grudgingly accept an answer like “wait six months for the next stable release” if there’s nothing I can do.)

Have you considered importing the master branch for only that package and keeping the rest on the stable channel?

Yes, I tried that once (not sure which package that was; it could’ve been poetry2nix). If I recall correctly it resulted in compiling the universe and multiple incompatible packages in the same derivation causing a build failure.

If you want an up-to-date package, and you don’t want to compile anything yourself, maybe you could pick out the single package from the nixos-unstable or nixpkgs-unstable channel?

1 Like

“stable” is deliberately frozen in time every 6 months, it only receives updates that are considered “compatible” or security relevant.

If you want the newest and shiniest things, then you really should use nixpkgs-unstable or nixos-unstable depending on the use case.

Also there is no problem (usually) in using a stable release for the system and unstable for a projects dev shell.

Personally I would not consider poetry2nix for a system wide install and keep it in a per-project dev shell anyway.

I could, and I might give up and do that if nobody answers the original question.

to be clear, it is not frozen (with exception being security) per se, we’re not Debian :wink:

Our backporting policy is in fact fairly liberal: Nixpkgs 23.11 manual | Nix & NixOS

However, it makes indeed sense to not backport everything for several reasons:

  • risk of backwards incompatibilities
  • risk of introducing new regressions

In the end it’s a case-by-case decision IMHO.

1 Like

Cool, that’s new information. How would I ask about a specific package, for example if it’s had several important (non-security) fixes recently (as in this case)? I guess a nixpkgs issue would be too noisy. Or just submit a PR to merge the relevant commits from master?

Update: Done, thanks!

1 Like