-
-
Notifications
You must be signed in to change notification settings - Fork 14.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Refactor icu and init 74.2 #290266
Refactor icu and init 74.2 #290266
Conversation
OK, speaking about checking for rebuilds: Actual icu-originating rebuild would definitely go to staging, you are absolutely correct here. But expression refactoring should typically target zero rebuilds as a goal, and then have some kind of an answer why this goal is not achievable (if it is not achievable). Often any reasonable answer is good enough, though! (Adding a not-yet-used version of ICU very similar to the previous ones counts separately, and it has low impact ) |
Thanks for elaborating in this, @7c6f434c, seems I have a bit more reading to do 😅 Do you see value in switching the icu package to icu74 for 24.05? |
Also thanks for merging! 😃 |
In general, I ended up maintainer of ICU because too much stuff needs it… so I don't have strong opinions to be honest. Trying to switch to icu74 and pinning only what needs to be pinned sounds reasonable (also based on CVE track record and on the changelog, we don't want to stay behind and the upgrade has a chance of being smooth). That's obviously a staging-scale thing, and I am not sure how long it would take to test so much stuff… |
I'd be happy to draft a PR; the change is trivial, but as you said the challenge is figuring out what breaks with the update and fixing that. |
I am tempted to say that once the PR against staging is open, we might ask ofBorg to build at least something that has tests and depends on ICU, then ask people most recently having merged staging-next about the recommended procedure here. The total number of packages caring to pin an ICU version right now looks around 25; direct rev-deps are above 200, and then transitive rev-deps include Qt and GTK so basically all the GUI stuff is dependent. Usually either the impact is more narrow, or it is deeper (e.g. glibc updates)… |
… and conveniently it looks like calling the relevant people is happening even before we got around to it ourselves! |
I had to deal with some icu firefox issues myself before :-) |
ℹ️ This draft PR is my understanding of how the icu package could be improved in a similar vein as #289690.
TODO
If this PR is headed in the right direction and people see value in pursuing this approach close the following PRs
Description of changes
icu/default.nix
containing the icu version specific packagesicu/[0-9]*.nix
hash
instead ofsha256
inicu/base.nix
all-packages.nix
accordingly usingcallPackages
I'm uncertain whether the changes proposed here properly affect
buildPackages.icu[0-9]{2}
or whether more work is needed.I'd appreciated if someone could chime in on this.
Things done
nix.conf
? (See Nix manual)sandbox = relaxed
sandbox = true
nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD"
. Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/
)Add a 👍 reaction to pull requests you find important.