{ description = "Pure Nix library for IPv4 operations"; inputs = { nixpkgs-lib.url = "github:nix-community/nixpkgs.lib"; }; outputs = { self, nixpkgs-lib }: let # Import our library with nixpkgs.lib ipLib = import ./lib { lib = nixpkgs-lib.lib; }; # Systems for checks and packages systems = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ]; forAllSystems = f: nixpkgs-lib.lib.genAttrs systems f; in { # Primary library output lib = ipLib; overlays = { default = final: prev: { lib = prev.lib.extend self.overlays.lib; }; lib = final: prev: { iputils = ipLib; }; }; # Tests checks = forAllSystems ( system: let lib = nixpkgs-lib.lib; runTests = import ./tests { inherit lib system; ipLib = ipLib; }; in { tests = runTests; } ); }; }