- Add packages/beads and packages/gastown with shared definitions - Expose custom-beads and custom-gastown in flake packages output - Consolidate CI from matrix (8 parallel jobs) to single job with loop - Saves ~12 minutes of redundant nix-setup time per run - Uses ::group:: for collapsible log sections per package Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
39 lines
1.2 KiB
Nix
39 lines
1.2 KiB
Nix
# Gastown package - multi-agent workspace manager
|
|
# Takes src as argument so it can be called from both overlay and flake packages
|
|
{ lib
|
|
, buildGoModule
|
|
, src
|
|
, version ? "unknown"
|
|
}:
|
|
|
|
buildGoModule {
|
|
pname = "gastown";
|
|
inherit version src;
|
|
vendorHash = "sha256-ripY9vrYgVW8bngAyMLh0LkU/Xx1UUaLgmAA7/EmWQU=";
|
|
subPackages = [ "cmd/gt" ];
|
|
doCheck = false;
|
|
|
|
# Must match ldflags from gastown Makefile - BuiltProperly=1 is required
|
|
# or gt will error with "This binary was built with 'go build' directly"
|
|
ldflags = [
|
|
"-X github.com/steveyegge/gastown/internal/cmd.Version=${version}"
|
|
"-X github.com/steveyegge/gastown/internal/cmd.Commit=${version}"
|
|
"-X github.com/steveyegge/gastown/internal/cmd.BuildTime=nix-build"
|
|
"-X github.com/steveyegge/gastown/internal/cmd.BuiltProperly=1"
|
|
];
|
|
|
|
# Bug fixes not yet merged upstream
|
|
patches = [
|
|
./gastown-fix-validate-recipient.patch
|
|
./gastown-fix-agent-bead-address-title.patch
|
|
./gastown-statusline-optimization.patch
|
|
];
|
|
|
|
meta = with lib; {
|
|
description = "Gas Town - multi-agent workspace manager by Steve Yegge";
|
|
homepage = "https://github.com/steveyegge/gastown";
|
|
license = licenses.mit;
|
|
mainProgram = "gt";
|
|
};
|
|
}
|