diff options
Diffstat (limited to 'local/bin/new-flake-dev')
| -rwxr-xr-x | local/bin/new-flake-dev | 47 |
1 files changed, 30 insertions, 17 deletions
diff --git a/local/bin/new-flake-dev b/local/bin/new-flake-dev index 2c4a280..c28f2fd 100755 --- a/local/bin/new-flake-dev +++ b/local/bin/new-flake-dev @@ -6,24 +6,37 @@ if [ -f ./flake.nix ]; then fi cat >./flake.nix <<"EOF" { - outputs = { self, nixpkgs, flake-utils, personal }: - with flake-utils.lib; - eachDefaultSystem (system: let - pkgs = nixpkgs.legacyPackages.${system}; + outputs = { + self, + systems, + nixpkgs, + }: let + inherit (nixpkgs.lib) genAttrs composeManyExtensions; + forSystems = genAttrs (import systems); + withPkgs = func: forSystems (system: func self.legacyPackages.${system}); in { - devShells = filterPackages system { - default = pkgs.mkShell { - packages = with pkgs; [ - clang-tools - gcc gdb pkg-config - cppcheck flawfinder bear - meson - ]; - inputsFrom = with pkgs; [ - personal.devShells.${system}.default - ]; - }; + overlays = { + packages = final: prev: {}; + default = composeManyExtensions [self.overlays.packages]; }; - }); + + devShells = withPkgs (pkgs: { + default = with pkgs; + mkShell { + packages = [ + # TODO development packages + ]; + inputsFrom = [ + # TODO other packages development is done for + ]; + }; + }); + + formatter = withPkgs (pkgs: pkgs.alejandra); + + legacyPackages = + forSystems (system: + nixpkgs.legacyPackages.${system}.extend self.overlays.default); + }; } EOF |
