Add a pty-mock workspace crate (echo/alt-screen/paste-echo/buffer-fill/ sync-blocks subcommands) plus an in-process integration test suite that drives Proxy directly via a new_for_test constructor and #[cfg(test)] state accessors. Sets up the regression net needed before swapping the underlying VT emulator from vt100 to termwiz. Pulled from upstream draft PR #35; the alt-screen feed-order semantic change is intentionally deferred (its dedicated test is left #[ignore]).
42 lines
1014 B
Nix
42 lines
1014 B
Nix
{
|
|
inputs = {
|
|
flake-utils.url = "github:numtide/flake-utils";
|
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
|
};
|
|
|
|
outputs = inputs @ { self, ... }:
|
|
(inputs.flake-utils.lib.eachDefaultSystem (system:
|
|
let
|
|
|
|
pkgs = import inputs.nixpkgs {
|
|
inherit system;
|
|
};
|
|
|
|
inherit (builtins) readFile fromTOML;
|
|
|
|
claude-chill = pkgs.rustPlatform.buildRustPackage {
|
|
pname = (fromTOML (readFile ./crates/claude-chill/Cargo.toml)).package.name;
|
|
version = (fromTOML (readFile ./Cargo.toml)).workspace.package.version;
|
|
src = pkgs.lib.cleanSourceWith {
|
|
src = ./.;
|
|
filter = path: type: !(pkgs.lib.hasSuffix ".nix" path);
|
|
};
|
|
cargoLock = {
|
|
lockFile = ./Cargo.lock;
|
|
};
|
|
cargoBuildFlags = [ "-p" "claude-chill" ];
|
|
};
|
|
|
|
in
|
|
{
|
|
|
|
packages = {
|
|
default = claude-chill;
|
|
|
|
claude-chill = claude-chill;
|
|
};
|
|
|
|
}
|
|
));
|
|
}
|