Unverified Commit 06aa4d5f authored by Aleksana's avatar Aleksana Committed by GitHub
Browse files

conventional-changelog-cli: wrap with nodejs (#462688)

parents 58687ba9 20001d5c
Loading
Loading
Loading
Loading
+14 −4
Original line number Diff line number Diff line
@@ -4,6 +4,8 @@
  fetchFromGitHub,
  nodejs,
  pnpm,
  makeBinaryWrapper,
  versionCheckHook,
  nix-update-script,
}:

@@ -27,6 +29,7 @@ stdenv.mkDerivation (finalAttrs: {
  nativeBuildInputs = [
    nodejs
    pnpm.configHook
    makeBinaryWrapper
  ];

  buildPhase = ''
@@ -43,9 +46,10 @@ stdenv.mkDerivation (finalAttrs: {
    mkdir -p $out/lib/node_modules/conventional-changelog/
    mkdir $out/bin
    mv * $out/lib/node_modules/conventional-changelog/
    chmod +x $out/lib/node_modules/conventional-changelog/packages/conventional-changelog/dist/cli/index.js
    ln -s $out/lib/node_modules/conventional-changelog/packages/conventional-changelog/dist/cli/index.js $out/bin/conventional-changelog
    patchShebangs $out/bin/conventional-changelog

    makeBinaryWrapper ${lib.getExe nodejs} $out/bin/conventional-changelog \
      --add-flags "$out/lib/node_modules/conventional-changelog/packages/conventional-changelog/dist/cli/index.js" \
      --set NODE_PATH "$out/lib/node_modules/conventional-changelog/node_modules"

    runHook postInstall
  '';
@@ -55,6 +59,12 @@ stdenv.mkDerivation (finalAttrs: {
      --replace-warn '"exports": "./src/index.ts"' '"exports": "./dist/index.js"'
  '';

  nativeInstallCheckInputs = [
    versionCheckHook
  ];
  versionCheckProgramArg = "--version";
  doInstallCheck = true;

  passthru.updateScript = nix-update-script {
    extraArgs = [
      "--use-github-releases"
@@ -64,7 +74,7 @@ stdenv.mkDerivation (finalAttrs: {
  };

  meta = {
    changelog = "https://github.com/conventional-changelog/conventional-changelog/releases/tag/conventional-changelog-v${finalAttrs.version}";
    changelog = "https://github.com/conventional-changelog/conventional-changelog/releases/tag/${finalAttrs.src.tag}";
    description = "Generate a CHANGELOG from git metadata";
    homepage = "https://github.com/conventional-changelog/conventional-changelog";
    license = lib.licenses.isc;