flake-update-20260201
 1{
 2  buildGoModule,
 3  lib,
 4}:
 5
 6buildGoModule {
 7  pname = "claude-hooks";
 8  version = "0.1.0";
 9  src = ./.;
10
11  vendorHash = "sha256-bdpAteulG3045jPdEpjcT4yGlnxLKDMlK7lk9WVRTKc=";
12
13  # Build all binaries
14  subPackages = [
15    "cmd/capture-tool-output"
16    "cmd/initialize-session"
17    "cmd/update-terminal-title"
18    "cmd/validate-docs"
19    "cmd/save-session"
20    "cmd/session-stats"
21    "cmd/validate-git-push"
22  ];
23
24  # Rename binaries to have consistent prefix
25  postInstall = ''
26    mv $out/bin/capture-tool-output $out/bin/claude-hooks-capture-tool-output
27    mv $out/bin/initialize-session $out/bin/claude-hooks-initialize-session
28    mv $out/bin/update-terminal-title $out/bin/claude-hooks-update-terminal-title
29    mv $out/bin/validate-docs $out/bin/claude-hooks-validate-docs
30    mv $out/bin/save-session $out/bin/claude-hooks-save-session
31    mv $out/bin/session-stats $out/bin/claude-hooks-session-stats
32    mv $out/bin/validate-git-push $out/bin/claude-hooks-validate-git-push
33  '';
34
35  meta = {
36    description = "Claude Code hooks for session management, tool output capture, and documentation validation";
37    license = lib.licenses.mit;
38    platforms = lib.platforms.unix;
39    mainProgram = "claude-hooks-capture-tool-output";
40  };
41}