ipre
This commit is contained in:
parent
4fef7bc5b8
commit
12b53e72b5
93
flake.nix
93
flake.nix
@ -3,45 +3,68 @@
|
||||
|
||||
inputs.nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
|
||||
|
||||
outputs = { self, nixpkgs }: {
|
||||
outputs = { self, nixpkgs }:
|
||||
let
|
||||
overlay = import ./nix/overlay.nix;
|
||||
settings = import ./nix/settings.nix;
|
||||
haskellDeps = import ./nix/haskell-deps.nix;
|
||||
|
||||
packages.x86_64-linux.utoy =
|
||||
let
|
||||
overlay = import ./nix/overlay.nix;
|
||||
pkgs = nixpkgs.legacyPackages.x86_64-linux.extend overlay;
|
||||
settings = import ./nix/settings.nix;
|
||||
haskellDeps = import ./nix/haskell-deps.nix;
|
||||
pkgs = nixpkgs.legacyPackages.x86_64-linux.extend overlay;
|
||||
haskellPackages = pkgs.haskell.packages."${settings.ghc}";
|
||||
|
||||
haskellPackages = pkgs.haskell.packages."${settings.ghc}";
|
||||
stack = pkgs.stdenv.mkDerivation {
|
||||
pname = "stack";
|
||||
version = "0";
|
||||
dontUnpack = true;
|
||||
dontConfigure = true;
|
||||
dontBuild = true;
|
||||
nativeBuildInputs = [ pkgs.makeWrapper ];
|
||||
installPhase = ''
|
||||
makeWrapper ${pkgs.stack}/bin/stack $out/bin/stack \
|
||||
--add-flags '--no-nix --no-install-ghc'
|
||||
'';
|
||||
};
|
||||
in {
|
||||
packages.x86_64-linux.stack = stack;
|
||||
packages.x86_64-linux.utoy =
|
||||
let
|
||||
utoy =
|
||||
{ mkDerivation }:
|
||||
mkDerivation {
|
||||
version = "0.5";
|
||||
pname = "utoy";
|
||||
license = pkgs.lib.licenses.mit;
|
||||
src =
|
||||
let
|
||||
buildFiles = [
|
||||
./LICENSE
|
||||
./utoy.cabal
|
||||
./Setup.hs
|
||||
./app
|
||||
./src
|
||||
./static
|
||||
./test
|
||||
];
|
||||
in
|
||||
pkgs.lib.sources.cleanSourceWith {
|
||||
src = ./.;
|
||||
filter = path: _type: pkgs.lib.any (prefix: pkgs.lib.hasPrefix (toString prefix) path) buildFiles;
|
||||
};
|
||||
|
||||
utoy =
|
||||
{ mkDerivation }:
|
||||
mkDerivation {
|
||||
version = "0.5";
|
||||
pname = "utoy";
|
||||
license = pkgs.lib.licenses.mit;
|
||||
src =
|
||||
let
|
||||
buildFiles = [
|
||||
./LICENSE
|
||||
./utoy.cabal
|
||||
./Setup.hs
|
||||
./app
|
||||
./src
|
||||
./static
|
||||
./test
|
||||
];
|
||||
in
|
||||
pkgs.lib.sources.cleanSourceWith {
|
||||
src = ./.;
|
||||
filter = path: _type: pkgs.lib.any (prefix: pkgs.lib.hasPrefix (toString prefix) path) buildFiles;
|
||||
};
|
||||
libraryHaskellDepends = haskellDeps haskellPackages;
|
||||
};
|
||||
in
|
||||
pkgs.haskell.lib.justStaticExecutables (haskellPackages.callPackage utoy {});
|
||||
|
||||
libraryHaskellDepends = haskellDeps haskellPackages;
|
||||
};
|
||||
in
|
||||
pkgs.haskell.lib.justStaticExecutables (haskellPackages.callPackage utoy {});
|
||||
packages.x86_64-linux.default = self.packages.x86_64-linux.utoy;
|
||||
|
||||
packages.x86_64-linux.default = self.packages.x86_64-linux.utoy;
|
||||
devShells.default = pkgs.mkShell {
|
||||
buildInputs = [
|
||||
stack
|
||||
];
|
||||
shellHook = ''
|
||||
PS1+=" (utoy)";
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user