dorne/flake.nix

53 lines
1.2 KiB
Nix

{
description = "devshell-dorne";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05";
};
outputs = inputs @ {
self,
nixpkgs,
}: let
defaultSystems = ["aarch64-darwin" "aarch64-linux" "i686-linux" "x86_64-darwin" "x86_64-linux"];
# forAllSystems = f: nixpkgs.lib.genAttrs defaultSystems (system: f system);
forAllSystems = f:
nixpkgs.lib.genAttrs defaultSystems (system:
f system (import nixpkgs {
inherit system;
overlays = builtins.attrValues self.overlays;
}));
in {
overlays.default = final: prev: {
dorne = final.haskellPackages.developPackage {
root = ./.;
modifier = drv:
final.haskell.lib.addBuildTools drv (with final.haskellPackages; [
cabal-install
ghcid
]);
};
};
devShells = forAllSystems (
system: pkgs: {
default = pkgs.mkShell {
packages = with pkgs; [
gnumake
bear
gcc
];
shell = "${pkgs.bash}/bin/bash";
};
}
);
checks = self.packages;
packages = forAllSystems (system: pkgs: rec {
default = dorne;
dorne = pkgs.dorne;
});
};
}