1{
2 lib,
3 buildNpmPackage,
4 fetchFromGitHub,
5 nix-update-script,
6 npm-lockfile-fix,
7}:
8
9buildNpmPackage rec {
10 pname = "opencommit";
11 version = "3.2.9";
12
13 src = fetchFromGitHub {
14 owner = "di-sukharev";
15 repo = "opencommit";
16 rev = "v${version}";
17 hash = "sha256-nn+Whjs3qLXhydrELXzogr66H6btY/TPbmWT/MH6w+M=";
18 postFetch = ''
19 cd $out
20 # Fix lockfile issues with bundled dependencies
21 ${lib.getExe npm-lockfile-fix} package-lock.json
22 '';
23 };
24
25 npmDepsHash = "sha256-1lUMtQFGlM1Z2oQ4nktsePyce/EwAu75BbkBiqBrdnQ=";
26
27 passthru.updateScript = nix-update-script { };
28
29 meta = {
30 description = "AI-powered commit message generator";
31 homepage = "https://www.npmjs.com/package/opencommit";
32 license = lib.licenses.mit;
33 maintainers = [ lib.maintainers.matteopacini ];
34 mainProgram = "oco";
35 };
36
37}