diff --git a/flake.lock b/flake.lock index 4f5bce7..165fd81 100644 --- a/flake.lock +++ b/flake.lock @@ -1,32 +1,12 @@ { "nodes": { - "flake-parts": { - "inputs": { - "nixpkgs-lib": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1727826117, - "narHash": "sha256-K5ZLCyfO/Zj9mPFldf3iwS6oZStJcU4tSpiXTMYaaL0=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "3d04084d54bedc3d6b8b736c70ef449225c361b1", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, "nixpkgs": { "locked": { - "lastModified": 1728492678, - "narHash": "sha256-9UTxR8eukdg+XZeHgxW5hQA9fIKHsKCdOIUycTryeVw=", + "lastModified": 1730531603, + "narHash": "sha256-Dqg6si5CqIzm87sp57j5nTaeBbWhHFaVyG7V6L8k3lY=", "owner": "nixos", "repo": "nixpkgs", - "rev": "5633bcff0c6162b9e4b5f1264264611e950c8ec7", + "rev": "7ffd9ae656aec493492b44d0ddfb28e79a1ea25d", "type": "github" }, "original": { @@ -38,7 +18,6 @@ }, "root": { "inputs": { - "flake-parts": "flake-parts", "nixpkgs": "nixpkgs" } } diff --git a/flake.nix b/flake.nix index 2f57e12..de50258 100644 --- a/flake.nix +++ b/flake.nix @@ -3,44 +3,35 @@ inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; - - flake-parts = { - url = "github:hercules-ci/flake-parts"; - inputs.nixpkgs-lib.follows = "nixpkgs"; - }; }; outputs = { self, - flake-parts, - ... - } @ inputs: - flake-parts.lib.mkFlake {inherit inputs;} { - systems = ["x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin"]; + nixpkgs, + }: let + inherit (nixpkgs) lib; - perSystem = { - lib, - pkgs, - system, - ... - }: { - # output packages only if they are available on the system - packages = let - isAvailable = name: drv: lib.meta.availableOn {inherit system;} drv; - flakePkgs = self.overlays.default {} pkgs; - in - lib.filterAttrs isAvailable flakePkgs; + systems = ["x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin"]; - formatter = pkgs.alejandra; - }; + pkgsFor = system: import nixpkgs {inherit system;}; + forEachSystem = lib.genAttrs systems; + in { + packages = forEachSystem ( + system: let + pkgs = pkgsFor system; + isAvailable = name: drv: lib.meta.availableOn {inherit system;} drv; + flakePkgs = self.overlays.default {} pkgs; + in + lib.filterAttrs isAvailable flakePkgs + ); - flake = { - overlays.default = import ./pkgs/all-packages.nix; + overlays.default = import ./pkgs/all-packages.nix; - nixosModules = { - reposilite = import ./modules/reposilite.nix; - asus-numpad = import ./modules/asus-numpad.nix self; - }; - }; + nixosModules = { + reposilite = import ./modules/reposilite.nix; + asus-numpad = import ./modules/asus-numpad.nix self; }; + + formatter = forEachSystem (system: (pkgsFor system).alejandra); + }; }