flake: use import-tree for packages directory

- Move overlays.nix into packages/overlays.nix with dynamic pattern
- Update flake.nix to use packagesModule from import-tree
- Delete centralized packages.nix (packages are now self-contained)

The packages directory is now fully self-contained with each package
exporting its own flake output and overlays auto-including all packages.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
William 2026-02-07 07:56:24 -03:00
parent 829fde6a3a
commit 29f7621d42
4 changed files with 20 additions and 43 deletions

View file

@ -60,6 +60,7 @@
inputs@{ flake-parts, import-tree, ... }:
let
aspectsModule = import-tree ./aspects;
packagesModule = import-tree ./packages;
in
flake-parts.lib.mkFlake { inherit inputs; } {
systems = [
@ -69,12 +70,12 @@
imports = [
flake-parts.flakeModules.modules
] ++ aspectsModule.imports ++ [
./deploy.nix
./devShells.nix
./overlays.nix
./packages.nix
./terranixConfigurations.nix
];
] ++ aspectsModule.imports
++ packagesModule.imports
++ [
./deploy.nix
./devShells.nix
./terranixConfigurations.nix
];
};
}

View file

@ -1,14 +0,0 @@
{ inputs, ... }:
{
flake.overlays = {
default = final: prev: {
base16-schemes = inputs.self.packages.${final.system}.base16-schemes;
claude-desktop = inputs.self.packages.${final.system}.claude-desktop;
fastfetch = inputs.self.packages.${final.system}.fastfetch;
hm-cli = inputs.self.packages.${final.system}.hm-cli;
kwrite = inputs.self.packages.${final.system}.kwrite;
toggleaudiosink = inputs.self.packages.${final.system}.toggleaudiosink;
};
};
}

View file

@ -1,22 +0,0 @@
{ inputs, ... }:
{
perSystem =
{ system, ... }:
let
pkgs = import inputs.nixpkgs {
inherit system;
config.allowUnfree = true;
};
in
{
packages = {
base16-schemes = pkgs.callPackage ./packages/base16-schemes.nix { };
claude-desktop = pkgs.callPackage ./packages/claude-desktop.nix { };
fastfetch = pkgs.callPackage ./packages/fastfetch.nix { };
hm-cli = pkgs.callPackage ./packages/hm-cli.nix { };
kwrite = pkgs.callPackage ./packages/kwrite.nix { };
toggleaudiosink = pkgs.callPackage ./packages/toggleaudiosink.nix { };
};
};
}

12
packages/overlays.nix Normal file
View file

@ -0,0 +1,12 @@
{ inputs, ... }:
{
flake.overlays.default = final: prev: {
base16-schemes = inputs.self.packages.${final.system}.base16-schemes;
claude-desktop = inputs.self.packages.${final.system}.claude-desktop;
fastfetch = inputs.self.packages.${final.system}.fastfetch;
hm-cli = inputs.self.packages.${final.system}.hm-cli;
kwrite = inputs.self.packages.${final.system}.kwrite;
toggleaudiosink = inputs.self.packages.${final.system}.toggleaudiosink;
};
}