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.10";
12
13 src = fetchFromGitHub {
14 owner = "di-sukharev";
15 repo = "opencommit";
16 rev = "v${version}";
17 hash = "sha256-FsPtTuvBvbDIldwxLbuXOxNfOIQ8THboRB6ghTSzTbI=";
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-Ilf9lfFegraQRkYU5v7Zv6MubpN5m6bck3j5UkTXk+4=";
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}