Make 'nix develop' work on m1 mac
This commit is contained in:
parent
25b96fcc3d
commit
91a9e302fd
1 changed files with 27 additions and 10 deletions
37
flake.nix
37
flake.nix
|
@ -14,6 +14,21 @@
|
|||
overlays = [ ];
|
||||
pkgs =
|
||||
import nixpkgs { inherit system overlays; config.allowBroken = true; };
|
||||
# https://github.com/NixOS/nixpkgs/issues/140774#issuecomment-976899227
|
||||
m1MacHsBuildTools =
|
||||
pkgs.haskellPackages.override {
|
||||
overrides = self: super:
|
||||
let
|
||||
workaround140774 = hpkg: with pkgs.haskell.lib;
|
||||
overrideCabal hpkg (drv: {
|
||||
enableSeparateBinOutput = false;
|
||||
});
|
||||
in
|
||||
{
|
||||
ghcid = workaround140774 super.ghcid;
|
||||
ormolu = workaround140774 super.ormolu;
|
||||
};
|
||||
};
|
||||
project = returnShellEnv:
|
||||
pkgs.haskellPackages.developPackage {
|
||||
inherit returnShellEnv;
|
||||
|
@ -25,16 +40,18 @@
|
|||
# cf. https://tek.brick.do/K3VXJd8mEKO7
|
||||
};
|
||||
modifier = drv:
|
||||
pkgs.haskell.lib.addBuildTools drv (with pkgs.haskellPackages;
|
||||
[
|
||||
# Specify your build/dev dependencies here.
|
||||
cabal-fmt
|
||||
cabal-install
|
||||
ghcid
|
||||
haskell-language-server
|
||||
ormolu
|
||||
pkgs.nixpkgs-fmt
|
||||
]);
|
||||
pkgs.haskell.lib.addBuildTools drv
|
||||
(with (if system == "aarch64-darwin"
|
||||
then m1MacHsBuildTools
|
||||
else pkgs.haskellPackages); [
|
||||
# Specify your build/dev dependencies here.
|
||||
cabal-fmt
|
||||
cabal-install
|
||||
ghcid
|
||||
haskell-language-server
|
||||
ormolu
|
||||
pkgs.nixpkgs-fmt
|
||||
]);
|
||||
};
|
||||
in
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue