-
Jens Nolte authoredJens Nolte authored
flake.nix 1.27 KiB
{
inputs = {
quasar = {
url = gitlab:jens/quasar?host=git.c3pb.de;
inputs.nixpkgs.follows = "nixpkgs";
};
nixpkgs.url = github:NixOS/nixpkgs/nixos-unstable;
};
outputs = { self, nixpkgs, quasar }:
let
lib = nixpkgs.lib;
systems = lib.platforms.unix;
forAllSystems = lib.genAttrs systems;
in {
packages = forAllSystems (system:
let pkgs = import nixpkgs { inherit system; overlays = [
self.overlay
quasar.overlay
]; };
in rec {
default = quasar-wayland;
quasar-wayland = pkgs.haskell.packages.ghc924.quasar-wayland;
}
);
overlay = final: prev: {
haskell = prev.haskell // {
packageOverrides = hfinal: hprev: prev.haskell.packageOverrides hfinal hprev // {
quasar-wayland = hfinal.callCabal2nix "quasar-wayland" ./. {};
};
};
};
overlays = {
quasar = quasar.overlay;
};
devShell = forAllSystems (system:
let
pkgs = nixpkgs.legacyPackages.${system};
in pkgs.mkShell {
inputsFrom = [ self.packages.${system}.quasar-wayland.env ];
packages = [
pkgs.cabal-install
pkgs.zsh
pkgs.entr
pkgs.ghcid
pkgs.haskell-language-server
];
}
);
};
}