Skip to content

Commit 8d5e796

Browse files
committed
feat: add beadwork package (git-native work management tool for AI agents)
1 parent 73b8b53 commit 8d5e796

2 files changed

Lines changed: 55 additions & 0 deletions

File tree

packages/beadwork/data.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"_meta": { "default": "0.11.6", "releases": "https://github.com/jallum/beadwork/releases" },
3+
"0.11.6": {
4+
"sha256": "sha256-+WcNCXOjK8TuozVIbQME2U/cfwGPYgcOLONmmjqfqQ8=",
5+
"vendorHash": "sha256-/tmJPuL9xHsh3oTtlaW1nUxroAxyX5rhsSB1pkuE9Fo=",
6+
"go": "1.25.7"
7+
}
8+
}

packages/beadwork/default.nix

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
{ pkgs, lib, toolbox, toolboxLib }:
2+
3+
let
4+
inherit (toolboxLib.readData ./data.json) meta versions;
5+
6+
builders = {
7+
default = version: versionData:
8+
let
9+
go = toolbox.go.versions.${versionData.go};
10+
in
11+
(pkgs.buildGoModule.override { inherit go; }) {
12+
pname = "beadwork";
13+
inherit version;
14+
src = pkgs.fetchFromGitHub {
15+
owner = "jallum";
16+
repo = "beadwork";
17+
rev = "v${version}";
18+
hash = versionData.sha256;
19+
};
20+
vendorHash = versionData.vendorHash;
21+
subPackages = [ "cmd/bw" ];
22+
doCheck = false;
23+
24+
postPatch = ''
25+
goVer="$(${go}/bin/go env GOVERSION | sed 's/^go//')"
26+
sed -i "s/^go .*/go $goVer/" go.mod
27+
'';
28+
env.GOTOOLCHAIN = "auto";
29+
nativeBuildInputs = [ pkgs.git ];
30+
31+
postInstall = ''
32+
ln -s bw $out/bin/beadwork
33+
'';
34+
35+
meta = with lib; {
36+
description = "A git-native work management tool for AI coding agents";
37+
homepage = "https://github.com/jallum/beadwork";
38+
license = licenses.mit;
39+
mainProgram = "bw";
40+
};
41+
};
42+
};
43+
in
44+
{
45+
versions = toolboxLib.buildVersions "beadwork" builders versions;
46+
default = meta.default;
47+
}

0 commit comments

Comments
 (0)