diff --git a/.gitignore b/.gitignore index 6c59b33..221f1d8 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,7 @@ .build build depends +result *~ quox quox-tests diff --git a/flake.nix b/flake.nix index 7b126f7..d0a46e8 100644 --- a/flake.nix +++ b/flake.nix @@ -14,16 +14,24 @@ inherit system; overlays = [ idris2-pkgs.overlay ]; }; + builders = pkgs.idris2-pkgs._builders; - inherit (pkgs.idris2-pkgs._builders) idrisPackage; + packages = + let inherit (builders) idrisPackage; + in rec { + quox-lib = idrisPackage ./lib { }; + quox = idrisPackage ./exe { extraPkgs = packages; }; + quox-tests = idrisPackage ./tests { extraPkgs = packages; }; + }; - quox-lib = idrisPackage ./lib { }; - quox = idrisPackage ./exe { extraPkgs.quox-lib = quox-lib; }; - quox-tests = idrisPackage ./tests { extraPkgs.quox-lib = quox-lib; }; - in - { - packages = { inherit quox-lib quox quox-tests; }; - defaultPackage = quox; + devShells = + let mkDevShell = _: pkg: + pkgs.mkShell { buildInputs = [ (builders.devEnv pkg) ]; }; + in builtins.mapAttrs mkDevShell packages; + in { + inherit packages devShells; + defaultPackage = packages.quox; + devShell = devShells.quox-lib; } ); }