{inputs, ...}: { perSystem = { pkgs, beamPackages, gleam, ... }: let chrome-headless-shell = pkgs.callPackage ./chrome-headless-shell.nix {}; render = pkgs.callPackage ./render.nix {}; usageCore = pkgs.callPackage ./usage-core.nix {src = inputs.usage-core;}; tg = pkgs.callPackage "${inputs.tg}/nix/tg.nix" {}; daemon = pkgs.callPackage ./daemon.nix { inherit beamPackages gleam chrome-headless-shell render usageCore; }; web = pkgs.callPackage ./web.nix {}; tui = pkgs.callPackage ./tui.nix {inherit daemon;}; albedo = pkgs.callPackage ./albedo.nix { inherit tui daemon web render usageCore; }; in { packages = { inherit chrome-headless-shell render usageCore albedo tg; albedo-lint = pkgs.callPackage ./albedo-lint.nix { inherit beamPackages gleam; # Not `../../tools/lint`: that copies the directory to a store path of its own, # which `nix flake check --no-build` does not create, so it fails on new content. src = inputs.self + "/tools/lint"; }; albedo-client = tui; albedo-server = daemon; albedo-web = web; inherit daemon; default = albedo; }; }; }