{ inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; flake-utils.url = "github:numtide/flake-utils"; }; outputs = { nixpkgs, flake-utils, ... }: let mkPackages = pkgs: { madd-client = pkgs.callPackage ./madd-client.nix { }; madd-server = pkgs.callPackage ./madd-server.nix { }; }; in flake-utils.lib.eachDefaultSystem ( system: let pkgs = import nixpkgs { inherit system; }; in { devShells.default = pkgs.mkShell { buildInputs = with pkgs; [ cargo clippy rustfmt rustc ]; }; packages = mkPackages pkgs; } ) // rec { overlays.madd = final: prev: mkPackages final; overlays.default = overlays.madd; nixosModules.madd = import ./nixos.nix; nixosModules.default = nixosModules.madd; }; }