Skip to content

haskellPackages: clean up broken packages' configuration#381864

Merged
sternenseemann merged 7 commits intoNixOS:haskell-updatesfrom
wolfgangwalther:haskell-updates-cleanup-3
Feb 14, 2025
Merged

haskellPackages: clean up broken packages' configuration#381864
sternenseemann merged 7 commits intoNixOS:haskell-updatesfrom
wolfgangwalther:haskell-updates-cleanup-3

Conversation

@wolfgangwalther
Copy link
Contributor

I do a couple of things here:

  • After gtk was fixed, I checked on 34fc7fc#r1951591915 and haskellPackages: clean up overrides (part 1) #381006 (comment) again and made the necessary / possible adjustments.
  • I moved some markBroken calls from configuration-common.nix to broken.yaml instead - I assume those have only been in there for historical reasons?
  • Removed some duplicates from broken.yaml.
  • Probably the most controversial here: I removed some configuration for packages which are marked broken anyway. There's plenty more of that, but I focused on the stuff that contains the least specific knowledge that might be lost that way - jailbreaks. Whenever somebody wants to unbreak one of those packages, they'll have to look at that in detail anyway, so there is no point in keeping jailbreaks around. The situation is a little bit different for dontCheck - and then a lot different for stuff in the other configuration files. Thus, I didn't touch that.
  • Double check that all those broken packages that I removed the config for were actually broken - and found two which built fine, so unbroke them.

Things done

Build on haskellPackages where appropriate.


Add a 👍 reaction to pull requests you find important.

@github-actions github-actions bot added the 6.topic: haskell General-purpose, statically typed, purely functional programming language label Feb 13, 2025
@github-actions github-actions bot added 10.rebuild-darwin: 11-100 This PR causes between 11 and 100 packages to rebuild on Darwin. 10.rebuild-linux: 11-100 This PR causes between 11 and 100 packages to rebuild on Linux. labels Feb 13, 2025
I had removed the jailbreak in 34fc7fc,
but couldn't test this because of a broken dependency. The original
issue was resolved, but of course new bounds are now broken.
This package is not defined in hackage-packages.nix.
@wolfgangwalther wolfgangwalther force-pushed the haskell-updates-cleanup-3 branch from 0c861cc to 9366c95 Compare February 14, 2025 17:57
@github-actions github-actions bot added 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. and removed 10.rebuild-darwin: 11-100 This PR causes between 11 and 100 packages to rebuild on Darwin. 10.rebuild-linux: 11-100 This PR causes between 11 and 100 packages to rebuild on Linux. labels Feb 14, 2025
@sternenseemann sternenseemann merged commit dbb8e3c into NixOS:haskell-updates Feb 14, 2025
26 of 27 checks passed
@wolfgangwalther wolfgangwalther deleted the haskell-updates-cleanup-3 branch February 14, 2025 22:24
@sternenseemann
Copy link
Member

By the way, how did you create this change? I've attempted to add tooling for changes like 9366c95 to test-configurations.nix, though I must say it's not particularly user friendly, so it hasn't been used much (including by me), I suspect.

@wolfgangwalther
Copy link
Contributor Author

Here, I used the following snippets:

Finding duplicates in broken.yaml:

yq -r '."broken-packages" | group_by(.) | map(select(length>1) | .[0])' pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml

Removing configuration for broken packages:

yq -r '."broken-packages" | join("|")' pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml \
| xargs -i sed -Ei '/^  ({}) =.*;( *#.*$)?$/d' pkgs/development/haskell-modules/configuration-common.nix

This only removes one-liners (i.e. including trailing ;). IIRC, I also adjusted the command to replace other cases, but then had to manually check/fix them. Didn't write that one down, apparently.

So.. yeah - none of that is really "automation-ready", I would say.

@sternenseemann
Copy link
Member

Still useful to know, I think I'll just link this in HACKING.md in a prior art section or so.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

6.topic: haskell General-purpose, statically typed, purely functional programming language 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants