{ description = "T3 Code packages for Nix"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.11"; t3code.url = "github:pingdotgg/t3code"; t3code.flake = false; }; outputs = { self, nixpkgs, t3code, ... }: let lib = nixpkgs.lib; systems = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ]; forAllSystems = lib.genAttrs systems; in { packages = forAllSystems ( system: let pkgs = import nixpkgs {inherit system;}; t3code-desktop = pkgs.callPackage ./packages/t3code-desktop {src = t3code;}; t3code-server = pkgs.callPackage ./packages/t3code-server {src = t3code;}; in { inherit t3code-desktop t3code-server; desktop = t3code-desktop; server = t3code-server; default = t3code-desktop; } ); apps = forAllSystems (system: rec { t3code-desktop = { type = "app"; program = lib.getExe self.packages.${system}.t3code-desktop; }; t3code-server = { type = "app"; program = lib.getExe self.packages.${system}.t3code-server; }; desktop = t3code-desktop; server = t3code-server; default = t3code-desktop; }); checks = forAllSystems ( system: rec { t3code-desktop = self.packages.${system}.t3code-desktop; t3code-server = self.packages.${system}.t3code-server; desktop = t3code-desktop; server = t3code-server; } ); }; }