syncthingtray: 1.6.3 -> 1.6.4 (#364825)
[NixPkgs.git] / pkgs / tools / package-management / yarn-lock-converter / default.nix
blob4bba600ea02038df15b6ce6e4cc1865e1d3a5f87
2   lib,
3   buildNpmPackage,
4   fetchurl,
5   nodejs,
6   testers,
7   yarn-lock-converter,
8 }:
10 let
11   source = lib.importJSON ./source.json;
13 buildNpmPackage rec {
14   pname = "yarn-lock-converter";
15   inherit (source) version;
17   src = fetchurl {
18     url = "https://registry.npmjs.org/@vht/yarn-lock-converter/-/yarn-lock-converter-${version}.tgz";
19     hash = "sha256-CP1wI33fgtp4GSjasktbfWuUjGzCuK3XR+p64aPAryQ=";
20   };
22   npmDepsHash = source.deps;
24   dontBuild = true;
26   nativeBuildInputs = [ nodejs ];
28   postPatch = ''
29     # Use generated package-lock.json as upstream does not provide one
30     ln -s ${./package-lock.json} package-lock.json
31   '';
33   postInstall = ''
34     mv $out/bin/@vht/yarn-lock-converter $out/bin/yarn-lock-converter
35     rmdir $out/bin/@vht
36   '';
37   passthru = {
38     tests.version = testers.testVersion {
39       package = yarn-lock-converter;
40     };
41     updateScript = ./update.sh;
42   };
44   meta = with lib; {
45     description = "Converts modern Yarn v2+ yarn.lock files into a Yarn v1 format";
46     homepage = "https://github.com/VHT/yarn-lock-converter";
47     license = licenses.mit;
48     maintainers = with maintainers; [ gador ];
49     mainProgram = "yarn-lock-converter";
50   };