2026-02-17 14:57:34 +00:00
|
|
|
{
|
2026-03-25 12:43:36 +09:00
|
|
|
|
2026-02-17 14:57:34 +00:00
|
|
|
inputs = {
|
2026-03-24 16:01:44 +00:00
|
|
|
nix-haskell.url = "github:reflex-frp/nix-haskell";
|
2026-03-25 12:43:36 +09:00
|
|
|
flake-compat.follows = "nix-haskell/flake-compat";
|
|
|
|
|
nixpkgs.follows = "nix-haskell/nixpkgs";
|
2026-03-24 16:01:44 +00:00
|
|
|
hls-src = { url = "github:haskell/haskell-language-server/2.13.0.0"; flake = false; };
|
|
|
|
|
hs-bindgen-src = { url = "github:well-typed/hs-bindgen/6ca94188abd756a1fb4dd8a4037de3fa7dca0765"; flake = false; };
|
|
|
|
|
libclang-src = { url = "github:well-typed/libclang/d6e482df49b88375cf3075928a78ee86c2a068d4"; flake = false; };
|
2026-02-17 14:57:34 +00:00
|
|
|
flake-utils.url = "github:numtide/flake-utils";
|
2026-03-25 12:43:36 +09:00
|
|
|
garnet-rs.url = "path:./rust";
|
|
|
|
|
garnet-rs.inputs.nix-haskell.follows = "nix-haskell";
|
|
|
|
|
garnet-rs.inputs.flake-utils.follows = "flake-utils";
|
2026-02-17 14:57:34 +00:00
|
|
|
};
|
2026-03-25 12:43:36 +09:00
|
|
|
|
|
|
|
|
outputs = inputs@{ self, nixpkgs, nix-haskell, ... }:
|
2026-02-19 13:58:58 +00:00
|
|
|
inputs.flake-utils.lib.eachSystem [ "x86_64-linux" ] (system:
|
2026-03-25 12:43:36 +09:00
|
|
|
let garnet-rs = inputs.garnet-rs.packages.${system}.default;
|
|
|
|
|
project = import ./default.nix { inherit system inputs garnet-rs; };
|
|
|
|
|
in rec {
|
|
|
|
|
defaultPackage = packages.garnet-exe;
|
|
|
|
|
|
|
|
|
|
packages = rec {
|
|
|
|
|
inherit garnet-rs;
|
|
|
|
|
garnet = project.hsPkgs.garnet;
|
|
|
|
|
garnet-exe = garnet.components.exes.garnet;
|
|
|
|
|
garnet-lib = garnet.components.library;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
devShells.default = import ./shell.nix { inherit system inputs; };
|
|
|
|
|
}
|
|
|
|
|
);
|
2026-02-17 14:57:34 +00:00
|
|
|
}
|