about summary refs log tree commit diff
path: root/third_party/overlays/haskell/default.nix
diff options
context:
space:
mode:
authorsterni <sternenseemann@systemli.org>2022-03-31T16·40+0200
committerclbot <clbot@tvl.fyi>2022-04-11T19·37+0000
commit11f9306b9a90e11b549fb6fa331742e4f729da7e (patch)
treeba75d54ee13db62caef02e8396c8638a843bbb5b /third_party/overlays/haskell/default.nix
parent1a2fe4b06353669805a135ece55da4e9a1ca689a (diff)
chore(3p/sources): Bump channels & overlays r/3942
Use nixos-unstable-small which fixes CVE-2018-25032
(out of bounds write while compressing).

* //users/grfn/xanthous:

  - Supporting random-fu 0.3 requires considerable changes and patching
    random-extras (https://github.com/aristidb/random-extras/pull/5).

    For now we downgrade random-fu and its dependency rvar to 0.2.*,
    forcing us to build xanthous with GHC 8.10.7, due to random-fu 0.2.*
    not supporting that version.

    Nix expressions for the downgraded packages are checked in to avoid
    the potential need to compile Haskell at pipeline eval time.

  - generic-arbitrary exposes a GenericArbitrary newtype now.
    This means we no longer have to implement it in xanthous
    downstream and patch generic-arbitrary to expose the
    GArbitrary type class.

  - Minor adjustments for lens 5.0:

    Xanthous.Game.Memo: clear needs to use ASetter' instead of Lens'

    Xanthous.Data.EntityMap: TraversableWithIndex no longer has an
    itraversed function.

  - Xanthous.Orphans: adjust for aeson's KeyMap, use KM.size explicitly
    instead of relying on MonoTraversable's length

* //nix/buildLisp: the CCL issue has resurfaced, disabling the
  implementation once again.

* //3p/arion: remove, as depot uses the nixpkgs package of it anyways.

* //users/wpcarro: accomodate GHC 9.0.1's stricter parsing of operators.

* //users/tazjin: disable rustfmt as it stopped respecting settings

* //3p/overlays: upgrade home-manager until fix for serivce generation
  has landed upstream

* //users/grfn/system: remove rr override, as the pinned commit is part
  of the 5.5.0 release shipped by nixpkgs.

Change-Id: If229e7317ba48498f85170b57ee9053f6997ff8a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5428
Tested-by: BuildkiteCI
Autosubmit: sterni <sternenseemann@systemli.org>
Reviewed-by: grfn <grfn@gws.fyi>
Reviewed-by: tazjin <tazjin@tvl.su>
Reviewed-by: wpcarro <wpcarro@gmail.com>
Diffstat (limited to 'third_party/overlays/haskell/default.nix')
-rw-r--r--third_party/overlays/haskell/default.nix19
1 files changed, 16 insertions, 3 deletions
diff --git a/third_party/overlays/haskell/default.nix b/third_party/overlays/haskell/default.nix
index 8ea57f209662..6e18752f5270 100644
--- a/third_party/overlays/haskell/default.nix
+++ b/third_party/overlays/haskell/default.nix
@@ -7,13 +7,26 @@
 self: super: # overlay parameters for the nixpkgs overlay
 
 let
-  overrides = hsSelf: hsSuper: with super.haskell.lib; {
-    generic-arbitrary = appendPatch hsSuper.generic-arbitrary
-      [ ./patches/generic-arbitrary-export-garbitrary.patch ];
+  overrides = hsSelf: hsSuper: with self.haskell.lib.compose; {
+    # No overrides for the default package set necessary at the moment
   };
 in
 {
   haskellPackages = super.haskellPackages.override {
     inherit overrides;
   };
+
+  haskell = lib.recursiveUpdate super.haskell {
+    packages.ghc8107 = super.haskell.packages.ghc8107.override {
+      overrides = hsSelf: hsSuper: with self.haskell.lib.compose; {
+        # TODO(sterni): TODO(grfn): patch xanthous to work with random-fu 0.3.*,
+        # so we can use GHC 9.0.2 and benefit from upstream binary cache.
+        random-fu = hsSelf.callPackage ./extra-pkgs/random-fu-0.2.nix { };
+        rvar = hsSelf.callPackage ./extra-pkgs/rvar-0.2.nix { };
+
+        # TODO(sterni): upstream this
+        universe-base = addBuildDepend hsSelf.OneTuple hsSuper.universe-base;
+      };
+    };
+  };
 }