Allow running updateScript of package sets#2154
Allow running updateScript of package sets#2154jian-lin wants to merge 1 commit intongi-nix:mainfrom
Conversation
78d2420 to
565d2ce
Compare
565d2ce to
af63a3e
Compare
|
I plan to compare the update result of |
af63a3e to
e6bb561
Compare
Without this patch, package sets, such as bonfire[1], cannot be updated in PRs created by .github/workflows/update-packages.yaml. Before, `update` and `update-all` commands relied on flakes. This patch also lifts that restriction. [1]: ngi-nix#1984
e6bb561 to
58f0bc4
Compare
nix-update -> update.nix of NixpkgsAfter ignoring success -> failure
failure -> success
|
|
This is ready for review @eljamm |
|
BTW, during comparison, I find a seemingly wrong update of funkwhale. cc @JuneStepp |
It might be easiest to just leave it; they're on release candidate 17 now, so 2.0 probably isn't far away. |
|
By itself, this change is great and allows us to update packages inside scopes, but this PR actually does more than this, namely replacing Could we perhaps introduce a default/fallback updater as well? |
|
Currently, there are only 8 packages without a updateScript. Adding updateScript for them is not a big deal. Not a fan of nix-update. Feel free to close this PR and experiment with nix-update. |
Thanks for working on this nice feature @jian-lin, from what you already did, do you already know if it would be equivalent to add the following to the 8 packages? passthru.updateScript = nix-update-script { }; |
Let me elaborate this.
Yes. But apparently it is not always correct. For example, some packages need to update to unstable versions and some need to update to latest commit.
This is a misfeature. I just explained why it is not always correct.
We can. It can be done by customizing |
|
Let me add one point. For package sets sharing the same To express that we do not want to run updateScript on other packages in those package sets, we can not add updateScript to them, which is clear and simple. If we implement the misfeature, i.e., adding a default updateScript for packages not having one, we have to use another way to express not running updateScript for some packages. |
When reviewing #2063, I realize that the current package update CI does not work for package sets. This PR fixes that.
Without this patch, package sets, such as bonfire1, cannot be updated in PRs created by .github/workflows/update-packages.yaml.
Before,
updateandupdate-allcommands relied on flakes. This patch also lifts that restriction.a follow-up of #1699
cc @eljamm for review
With this patch, disabled package sets can be enabled for update. That can be done in future PRs.