{ description = "Standard images that Greg wants to build"; inputs = { flake-parts.url = "github:hercules-ci/flake-parts"; nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; }; outputs = inputs@{ nixpkgs, flake-parts, ... }: flake-parts.lib.mkFlake { inherit inputs; } { flake = { }; systems = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ]; perSystem = { pkgs, system, ... }: let lib' = import ./lib.nix { inherit pkgs; }; in { _module.args = { pkgs = import nixpkgs { inherit system; config.allowUnfree = true; lib = lib'; }; }; packages = let inherit (pkgs) callPackage; name = n: "src.thehellings.com/greg/${n}"; in { base = lib'.baseImage pkgs; bitwarden = callPackage ./img/bitwarden.nix { inherit name; }; builder = callPackage ./img/builder.nix { inherit name lib'; }; immich = callPackage ./img/immich.nix { inherit name; }; sword-container-builder = callPackage ./img/sword-container-builder.nix { inherit name; }; vm-test = callPackage ./img/vm-test.nix { inherit name; }; }; }; }; }