tvl-depot/users/grfn/xanthous/default.nix

28 lines
766 B
Nix
Raw Normal View History

{ depot ? (import ../../../. { })
, pkgs ? depot.third_party.nixpkgs
, ...
}:
let
ignore = depot.third_party.gitignoreSource.gitignoreFilter ./.;
src = builtins.path {
name = "xanthous-source";
path = ./.;
filter = path: type:
!(type == "directory" && builtins.baseNameOf path == "server")
&& !(type == "directory" && builtins.baseNameOf path == "docs")
&& (ignore path type
|| builtins.baseNameOf path == "package.yaml");
};
# generated by cabal2nix
chore(3p/sources): Bump channels & overlays 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>
2022-03-31 18:40:08 +02:00
basePkg = pkgs.haskell.packages.ghc8107.callPackage ./pkg.nix { };
in
pkgs.haskell.lib.overrideCabal basePkg (default: {
inherit src;
version = "canon";
configureFlags = [
"--ghc-option=-Wall --ghc-option=-Werror"
] ++ (default.configureFlags or [ ]);
})