summaryrefslogtreecommitdiff
path: root/flake.nix
diff options
context:
space:
mode:
Diffstat (limited to 'flake.nix')
-rw-r--r--flake.nix26
1 files changed, 19 insertions, 7 deletions
diff --git a/flake.nix b/flake.nix
index e3f544c..eb1620a 100644
--- a/flake.nix
+++ b/flake.nix
@@ -9,19 +9,31 @@
(system:
let
pkgs = nixpkgs.legacyPackages.${system};
- lcq = builtins.mapAttrs (nm: _: (import ./${nm}/packages.nix) pkgs lcq) (builtins.readDir ./.);
- in {
- isPackage = p: (builtins.readDir ./${p}) ? "packages.nix";
- packages = lcq;
- devShells.default = pkgs.mkShell {
+ subpackages = pkgs.lib.filterAttrs (nm: _: builtins.pathExists ./${nm}/packages.nix) (builtins.readDir ./.);
+ lcq = builtins.mapAttrs (nm: _: (import ./${nm}/packages.nix) pkgs lcq) subpackages;
+ shells = builtins.mapAttrs (nm: d: pkgs.mkShell {
hardeningDisable = ["all"];
NIX_ENFORCE_NO_NATIVE = "0";
buildInputs = [
pkgs.musl
pkgs.valgrind
pkgs.universal-ctags
- ];
- };
+ ] ++ d.native.buildInputs;
+ }) lcq;
+ in {
+ isPackage = p: (builtins.readDir ./${p}) ? "packages.nix";
+ packages = lcq;
+ devShells = {
+ default = pkgs.mkShell {
+ hardeningDisable = ["all"];
+ NIX_ENFORCE_NO_NATIVE = "0";
+ buildInputs = [
+ pkgs.musl
+ pkgs.valgrind
+ pkgs.universal-ctags
+ ];
+ };
+ } // shells;
}
);
}