ovhcloud-mcp: add bin wrapper (upstream has no bin field) #11

Merged
luis merged 1 commits from fix/ovhcloud-bin-wrapper into main 2026-08-13 22:13:45 +02:00
+12
View File
@@ -2,6 +2,8 @@
lib,
buildNpmPackage,
fetchFromGitHub,
makeWrapper,
nodejs,
}:
buildNpmPackage rec {
@@ -17,12 +19,22 @@ buildNpmPackage rec {
npmDepsHash = "sha256-myeqksb3mjJ1GJej/4D7iuyOOTsGJBdkka9zUpH+flY=";
nativeBuildInputs = [ makeWrapper ];
postPatch = ''
cp ${./package-lock.json} package-lock.json
'';
# dist/ is NOT committed to the repo; buildNpmPackage runs "npm run build"
# (tsc) by default, which emits dist/index.js.
#
# The upstream package.json has NO "bin" field, so buildNpmPackage produces
# no executable. Create a wrapper that runs node dist/index.js.
postInstall = ''
mkdir -p $out/bin
makeWrapper ${nodejs}/bin/node $out/bin/ovhcloud-mcp \
--add-flags "$out/lib/node_modules/ovhcloud-mcp/dist/index.js"
'';
meta = with lib; {
description = "OVHcloud MCP server - VPS, domains, DNS, billing, SSH, and API explorer";