← Back to issue list

fix: change pebble dir in 24.04 from /.rock/bin to /usr/bin

View original Github issue

Metadata

Project
rockcraft
Number
#552
Type
pull request
State
merged
Author
linostar
Labels
Created
Updated
Closed

Current evaluation

Merged a fix updating the pebble binary path from /.rock/bin to /usr/bin for Ubuntu 24.04+ rocks. Approved by two reviewers, passed CI, and builds on PR #528 to ensure stable runtime paths.

Suggested action:

No scores available.

Issue body

- [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)? ----- ## Description After discussion with the Starcraft team, it has been agreed on to move the `pebble` binary to `/usr/bin` instead of `/.rock/bin` for 24.04, since we're quite sure that the `/usr/bin` dir won't change for 24.04. This PR builds over the previous PR https://github.com/canonical/rockcraft/pull/528 but replaces the pebble path for 24.04 and onwards to `/usr/bin`, and change . ## Related PRs PR https://github.com/canonical/rockcraft/pull/528 ## Testing Aside from spread tests, this is a manual test using the Hello World rock with build-base of 24.04 to confirm the path of pebble binary. Rock: ```yaml name: chiselled-hello summary: Hello world from Chisel slices description: A "bare" rock containing the "hello" package binaries from Chisel slices. license: Apache-2.0 version: "latest" base: bare build_base: ubuntu@24.04 platforms: amd64: services: hello_service: startup: disabled command: hello override: replace parts: hello: plugin: nil stage-packages: - hello_bins ``` ### Results ![image](https://github.com/canonical/rockcraft/assets/719022/1358d455-76e3-439c-bc36-5f71881514f0)

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.6-35b-a3b Merged a fix updating the pebble binary path from /.rock/bin to /usr/bin for Ubuntu 24.04+ rocks. Approved by two reviewers, passed CI, and builds on PR #528 to ensure stable runtime paths.
qwen3.6-35b-a3b-mtp-q6 Merged a fix updating the pebble binary path for Ubuntu 24.04 from /.rock/bin to /usr/bin. The change builds on PR #528 and was verified via manual and spread tests.
qwen3.6-35b-a3b-mtp-q6 Merged. Updates the pebble binary directory for Ubuntu 24.04 from /.rock/bin to /usr/bin. The change supersedes previous path handling and was verified via manual testing.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#528 fix(pebble): place pebble in a separate location rockcraft merged Merged. Relocates the pebble binary to .rock/bin/ to resolve conflicts with Ubuntu 24.04's bin symlink. Approved by reviewers and passed CI. Reviewers confirmed adding .rocks/bin to $PATH for docker exec compatibility, tracked as ROCKS-1088.
85%
#525 Update pebble part for 24.04 rocks rockcraft closed Resolved usrmerge symlink conflicts by updating the pebble binary location for 24.04 rocks. Closed after being fixed by pull request #528.
81%
#1211 Reconsider the Pebble binary location rockcraft open Issue about Pebble binary location conflict with Ubuntu packages. Resolved by merged PRs #528 and #552 which relocated pebble to .rock/bin/ then back to /usr/bin for Ubuntu 24.04+ rocks.
81%
#725 fix: set PATH on bare-based rocks rockcraft merged Merged fix that sets the default Ubuntu PATH on bare-based rocks images to mitigate security risks if the Pebble entrypoint is bypassed. Approved by three reviewers, passed CI, and resolves issue #711.
78%
#473 fix(pebble): /var/lib/pebble/default has mode 0777 rockcraft merged Merged fix ensuring /var/lib/pebble/default always uses 0777 permissions, preventing non-root Pebble failures. Approved by three reviewers, passed CI, and includes a new spread test to verify the fix.
75%
#1026 fix: use (build-)base's coreutils in pebble part rockcraft merged Merged after dual reviewer approval. Resolves issue #1023 by configuring the pebble part to use the build-base coreutils. The change modifies seven files and passed all CI checks.
71%
#177 project: use pebble snap instead of building rockcraft merged Merged changes replacing local pebble binary builds with the published pebble snap. The update primes the binary as /usr/bin/pebble, reducing spread test runtime from ~32 to ~26 minutes.
71%