-
-
Notifications
You must be signed in to change notification settings - Fork 17.6k
haskellPackages: allow hnix-store-{core,remote} 0.5 #129634
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
haskellPackages: allow hnix-store-{core,remote} 0.5 #129634
Conversation
|
If you run |
|
Recieved a clean diff: diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index 364581829a7..a00deb16fff 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -131462,41 +131462,10 @@ self: {
];
description = "Haskell implementation of the Nix language";
license = lib.licenses.bsd3;
+ maintainers = with lib.maintainers; [ Anton-Latukha ];
}) {};
"hnix-store-core" = callPackage
- ({ mkDerivation, algebraic-graphs, attoparsec, base
- , base16-bytestring, base64-bytestring, binary, bytestring, cereal
- , containers, cryptohash-md5, cryptohash-sha1, cryptohash-sha256
- , cryptohash-sha512, directory, filepath, hashable, hspec
- , lifted-base, monad-control, mtl, nix-derivation, process, saltine
- , tasty, tasty-discover, tasty-golden, tasty-hspec, tasty-hunit
- , tasty-quickcheck, temporary, text, time, unix
- , unordered-containers, vector
- }:
- mkDerivation {
- pname = "hnix-store-core";
- version = "0.4.3.0";
- sha256 = "17l7198s3dzjx416nplinyghbqgignvpvxkww241gjv4p23izf77";
- libraryHaskellDepends = [
- algebraic-graphs attoparsec base base16-bytestring
- base64-bytestring bytestring cereal containers cryptohash-md5
- cryptohash-sha1 cryptohash-sha256 cryptohash-sha512 directory
- filepath hashable lifted-base monad-control mtl nix-derivation
- saltine text time unix unordered-containers vector
- ];
- testHaskellDepends = [
- attoparsec base base16-bytestring base64-bytestring binary
- bytestring containers directory filepath hspec process tasty
- tasty-golden tasty-hspec tasty-hunit tasty-quickcheck temporary
- text unix
- ];
- testToolDepends = [ tasty-discover ];
- description = "Core effects for interacting with the Nix store";
- license = lib.licenses.asl20;
- }) {};
-
- "hnix-store-core_0_5_0_0" = callPackage
({ mkDerivation, algebraic-graphs, attoparsec, base
, base16-bytestring, base64-bytestring, binary, bytestring, cereal
, containers, cryptonite, directory, filepath, hashable, hspec
@@ -131526,27 +131495,10 @@ self: {
testToolDepends = [ tasty-discover ];
description = "Core effects for interacting with the Nix store";
license = lib.licenses.asl20;
- hydraPlatforms = lib.platforms.none;
+ maintainers = with lib.maintainers; [ Anton-Latukha ];
}) {};
"hnix-store-remote" = callPackage
- ({ mkDerivation, attoparsec, base, binary, bytestring, containers
- , hnix-store-core, mtl, network, nix-derivation, text, time
- , unordered-containers
- }:
- mkDerivation {
- pname = "hnix-store-remote";
- version = "0.4.3.1";
- sha256 = "1wp6z5f13fkgh3mdzr1zcqdvsx1j90l5isf671gsg43brsv4c2vl";
- libraryHaskellDepends = [
- attoparsec base binary bytestring containers hnix-store-core mtl
- network nix-derivation text time unordered-containers
- ];
- description = "Remote hnix store";
- license = lib.licenses.asl20;
- }) {};
-
- "hnix-store-remote_0_5_0_0" = callPackage
({ mkDerivation, attoparsec, base, binary, bytestring, containers
, cryptonite, hnix-store-core, mtl, network, nix-derivation, text
, time, unordered-containers
@@ -131562,7 +131514,7 @@ self: {
];
description = "Remote hnix store";
license = lib.licenses.asl20;
- hydraPlatforms = lib.platforms.none;
+ maintainers = with lib.maintainers; [ Anton-Latukha ];
}) {};
"hnn" = callPackage |
|
Feel free to commit this as well here (or right before unmarking as WIP to avoid merge conflicts). |
e7173ec to
020e343
Compare
|
Just an idea: if to produce a lot of files (maybe a file per project/package) - there probably would be drastically fewer regeneration diff conflicts (I think). |
|
@ofborg build haskellPackages.hnix |
|
When was the hnix release supporting the store packages? |
I don‘t think this is necessary. Merge conflicts in the hackage-packages.nix are not that common in the first place. |
Today. After releases to Hackage, if I can - I go & contribute patches to Nixpkgs. |
|
I believe this is safe to merge into |
|
I guess we'll need to decide what to do about our hnix patches as well. The commits I originally reverted no longer apply with 0.14.*, so we either need update these patches and vendor them in or bite the bullet and override |
These were blocked due to mutual desigion during me<>`sternenseemann` discussion. haskell-nix/hnix#952 In short: I shipped my own work (to support GHC 9.0) in the 0.5 releases of `hnix-store-{core,remote}`. These packages are really used only by `hnix` itself, and instead of maintaining them in Nixpkgs & reacting on `hnix` release, we decided to hold them back & switch to these versions when `hnix` provides support for them. I just (today) released `hnix` 0.14 & it requires `hnix-store-{core,remote}` 0.5. If you would look at dependency tree: https://packdeps.haskellers.com/reverse/hnix-store-core https://packdeps.haskellers.com/reverse/hnix-store-remote It shows that `hnix` currently is the only alive use of these projects.
hnix needs these versions since 0.13, but we previously patched it to use the versions tracked in stackage because that reduces the risk of multiple versions of a package being propagated in the dependency tree and breaking a build. One major release later, patching hnix has become quite cumbersome, so we'll bite the bullet for now and return to this approach if any problems come up.
Change to pname is necessary in order to not confuse jailbreak-cabal.
020e343 to
ff83117
Compare
|
@ofborg build haskellPackages.nix-linter haskellPackages.dhall-nix haskellPackages.dhall-nixpkgs haskellPackages.yarn2nix ( |
These were blocked due to mutual desigion during me<>
sternenseemanndiscussion.
In short:
I shipped my own work (to support GHC 9.0) in the 0.5 releases of
hnix-store-{core,remote}.These packages are really used only by
hnixitself, and instead of maintainingthem in Nixpkgs & reacting on
hnixrelease, we decided to hold them back &switch to these versions when
hnixprovides support for them.I just (today) released
hnix0.14 & it requireshnix-store-{core,remote}0.5.
If you would look at dependency tree:
https://packdeps.haskellers.com/reverse/hnix-store-core
https://packdeps.haskellers.com/reverse/hnix-store-remote
It shows that
hnixcurrently is the only alive use of these projects.Motivation for this change
Things done
sandboxinnix.confon non-NixOS linux)nix-shell -p nixpkgs-review --run "nixpkgs-review wip"./result/bin/)