← Back to issue list

different contents or permissions error

View original Github issue

Metadata

Project
rockcraft
Number
#790
Type
issue
State
open
Author
yanksyoon
Labels
—
Created
Updated
Closed
—

Current evaluation

Reproducible NPM bundled-Node /lib collision in bare Rockcraft builds; exact files are provided, but the 619-day-old report has no labels, maintainer response, or confirmed resolution

Suggested action: needs triage

Reason: The report provides package.json, rockcraft.yaml, build-base details, and the exact collision error, making it suitable for engineering triage. It has no labels, assignee, or maintainer response, and current usrmerge support is documented for Ubuntu 25.10+ while this reproducer uses a bare base with an Ubuntu 24.04 build base, so resolution cannot be assumed.

Evaluated by: mr-cal-bot

Impact: 46 Quick Win: 14 Complexity: 63 Confidence: 80 Actionability: 80

Issue body

### Bug Description Hello team! A follow up from the [Matrix thread](https://matrix.to/#/!NPPCseDHKRvSBMUEXN:ubuntu.com/$upouJFvo8bjWS08ZNTe9yDtELNuVPh4qbs-ue3vEbbM?via=ubuntu.com&via=matrix.org) regarding the error when trying to merge the `lib` directory together. The problem seems to be with the [NPM plugin](https://documentation.ubuntu.com/rockcraft/en/1.5.3/common/craft-parts/reference/plugins/npm_plugin/), when using `npm-include-node:true` and `npm-node-version` options, which writes `node_modules` to the `/lib` directory. This requires a dummy package.json at the source/root directory. ```package.json { "name": "app", "version": "0.0.0", "private": true, "scripts": { "start": "node ./bin/www" }, "dependencies": { "cookie-parser": "~1.4.4", "debug": "~2.6.9", "express": "~4.16.1", "http-errors": "~1.6.3", "jade": "~1.11.0", "morgan": "~1.9.1" } } ``` ### To Reproduce 1. Create the files above (rockcraft.yaml, package.json). 2. rockcraft pack 3. error: `Detailed information: Parts 'test/runtime' and 'expressjs-framework/install' list the following files, but with different contents or permissions: lib` ### Environment Ubuntu 22.04 LTS ### rockcraft.yaml ```yaml name: demo title: demo version: '0.1' summary: summary description: lib dir issue demo base: bare build-base: ubuntu@24.04 platforms: amd64: build-on: - amd64 build-for: - amd64 parts: test/install: plugin: npm npm-include-node: true npm-node-version: node source: . build-packages: [] stage-packages: - bash_bins test/runtime: plugin: nil stage-packages: - libpq5_libs ``` ### Relevant log output ```shell N/A ```

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha
Impact: 46
Quick Win: 14
Complexity: 63
Confidence: 80
Actionability: 80
needs triage Reproducible NPM bundled-Node /lib collision in bare Rockcraft builds; exact files are provided, but the 619-day-old report has no labels, maintainer response, or confirmed resolution
qwen/qwen3.6-35b-a3b
Impact: 45
Quick Win: 14
Complexity: 55
Confidence: 75
Actionability: 70
needs triage npm plugin with npm-include-node:true causes lib directory collision error when multiple parts stage to /lib
qwen/qwen3.8-27b
Impact: 40
Quick Win: 18
Staleness: 90
Complexity: 55
Confidence: 55
Support Request: 30
needs triage Rockcraft npm plugin with npm-include-node writes node_modules into /lib, colliding with a second part's libpq5_libs stage-packages, causing a 'different contents or permissions' merge error. No maintainer response in 587 days.
qwen/qwen3.6-35b-a3b
Staleness: 85
Complexity: 45
Confidence: 80
Support Request: 15
needs triage Bug report detailing a 'different contents or permissions' error when merging lib directories during rockcraft pack with the NPM plugin. Includes reproduction steps but remains completely unassessed and inactive for over 18 months.
qwen3.6-35b-a3b-mtp-q6
Staleness: 85
Complexity: 55
Confidence: 70
Support Request: 10
needs triage Unlabelled bug report describing a craft-parts staging conflict where the npm plugin writes node_modules to /lib, causing a permissions error during rockcraft pack. Currently inactive for over 1.5 years with no maintainer response.
qwen3.6-35b-a3b-mtp-q6
Staleness: 95
Complexity: 70
Confidence: 70
Support Request: 15
needs triage Bug report about a lib directory merge conflict error during rockcraft pack with the npm plugin. Submitted 530 days ago with no maintainer response, labels, or log output. Requires assessment for current relevance and reproducibility.

Update history

No update history recorded yet.

Related work

  • Related To: canonical/rockcraft#1003 (confidence 78%)

    The associated usrmerge documentation discusses /lib symlink conflicts, and the current Node tutorial maps lib to usr/lib, but this does not establish that the reported 24.04 bare build is fixed.

Related issues

No related issues found above the similarity threshold.