diff --git a/flake-parts/apps.nix b/flake-parts/apps.nix index 5399717..2ae8a27 100644 --- a/flake-parts/apps.nix +++ b/flake-parts/apps.nix @@ -2,14 +2,15 @@ flake = let buildProgram = system: definition: (withSystem system ({ pkgs, self', ... }: definition self.lib pkgs)); - createApp = { definition, system }: { type = "app"; program = lib.getExe (buildProgram system definition); }; - defineApp = system: name: definition: { ${system}.${name} = createApp { definition = definition; system = system; }; }; + defineProgram = system: name: definition: { ${system}.${name} = buildProgram system definition; }; appsDir = self.lib.importDirToAttrs ../apps; - builtApps = lib.mapAttrsToList (name: value: (lib.forEach value.systems (system: defineApp system name value.definition))) appsDir; - flattened = lib.flatten builtApps; - assembled = builtins.foldl' (a: b: lib.recursiveUpdate a b) { } flattened; + builtPrograms = lib.mapAttrsToList (name: value: (lib.forEach value.systems (system: defineProgram system name value.definition))) appsDir; + flattenedPrograms = lib.flatten builtPrograms; + assembledPrograms = builtins.foldl' (a: b: lib.recursiveUpdate a b) { } flattenedPrograms; + assembledApps = lib.mapAttrsRecursiveCond (as: !(as ? "type" && as.type == "derivation")) (path: value: { type = "app"; program = lib.getExe value; }) assembledPrograms; in { - apps = assembled; + apps = assembledApps; + programs = assembledPrograms; }; } diff --git a/flake-parts/home-manager/users.nix b/flake-parts/home-manager/users.nix index 49bb814..4feda07 100644 --- a/flake-parts/home-manager/users.nix +++ b/flake-parts/home-manager/users.nix @@ -18,9 +18,9 @@ }; }; }; - packages = lib.pipe activationPackages [ - (lib.filterAttrs (_: drv: pkgs.system == drv.system)) - (lib.mapAttrs' (username: lib.nameValuePair "home-${username}")) - ]; +# packages = lib.pipe activationPackages [ + # (lib.filterAttrs (_: drv: pkgs.system == drv.system)) + # (lib.mapAttrs' (username: lib.nameValuePair "home-${username}")) + # ]; }; } diff --git a/testing.nix b/testing.nix new file mode 100644 index 0000000..fd611fb --- /dev/null +++ b/testing.nix @@ -0,0 +1,9 @@ +{ withSystem, ... }: +{ + flake = { + packages.aarch64-darwin.test = (withSystem "aarch64-darwin" ({ pkgs, ... }: pkgs.writeScriptBin "runme" '' + echo "I am currently being run!" + '')); + }; + +}