Skip to content

feat(tool): add nub package manager#7054

Open
colinhacks wants to merge 1 commit into
containerbase:mainfrom
colinhacks:feat/nub-tool
Open

feat(tool): add nub package manager#7054
colinhacks wants to merge 1 commit into
containerbase:mainfrom
colinhacks:feat/nub-tool

Conversation

@colinhacks

Copy link
Copy Markdown

Adds a nub tool.

Nub is a Node package manager published as @nubjs/nub on npm. This lets Containerbase provision it the same way it provisions the other Node package managers, so a runtime using the default binarySource=install can install nub to run lockfile updates.

Implementation

NubInstallService extends NpmBaseInstallService and overrides tool() to return @nubjs/nub — the tool name (nub) differs from the npm package, the same shape as YarnInstallService returning @yarnpkg/cli-dist for Yarn berry. It installs via npm install @nubjs/nub@<version> and is added to NoPrepareTools.

Scripts run on install (no --ignore-scripts): @nubjs/nub's postinstall selects and places the per-platform binary from its @nubjs/nub-<platform> optional dependencies (glibc and musl variants for linux-x64 and linux-arm64), so the tool is usable after install.

Context

A companion Renovate manager PR (nub package-manager manager) depends on this tool for its default binarySource=install runtime; it references this PR.

AI assistance disclosure

This change was written with substantive assistance from an AI coding agent (Claude).

Add nub (https://nubjs.com) as an npm-distributed tool. Installs @nubjs/nub via the shared NpmBaseInstallService; the tool name (nub) differs from the npm package (@nubjs/nub), so tool() is overridden like YarnInstallService does for berry.
Copilot AI review requested due to automatic review settings July 7, 2026 17:41
@github-actions github-actions Bot requested a review from viceice July 7, 2026 17:41

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants