Skip to content

chore(ci): install cmake for snapcraft builds - #11974

Merged
jdx merged 1 commit into
mainfrom
codex/fix-snapcraft-cmake
Aug 13, 2026
Merged

jdx merged 1 commit into
mainfrom
codex/fix-snapcraft-cmake

Conversation

@jdx

@jdx jdx commented Aug 13, 2026 •

Copy link
Copy Markdown
Owner

Summary

  • install cmake in the Snapcraft build environment
  • allow libz-ng-sys to compile for amd64 and arm64 Snap packages

Context

Snap publishing has failed since v2026.7.12 because libz-ng-sys invokes CMake, but the Snapcraft build environment does not include the cmake executable. This leaves the stable Snap at v2026.7.11, as reported in discussion #11967.

Validation

  • mise run lint-fix
  • hk safe check (schema, formatting, shell, workflow, Markdown, and cargo check)

AI-assisted — Tool: Codex; model: openai/GPT-5; version: unavailable.


Note

Low Risk
Packaging-only change to the Snap build environment; no runtime or application logic changes.

Overview
Adds cmake to the Snapcraft mise part build-packages so the Rust build can compile libz-ng-sys (which runs CMake at build time).

This aligns Snap packaging with other Linux release paths that already list CMake and should unblock amd64 and arm64 Snap publishes that have failed since v2026.7.12.

Reviewed by Cursor Bugbot for commit a7b3418. Bugbot is set up for automated code reviews on this repo. Configure here.

Summary by CodeRabbit

  • Chores
    • Added CMake as a build dependency for the application package.

@greptile-apps

greptile-apps Bot commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

Adds CMake to the Snapcraft build environment so CMake-dependent Rust crates can compile when producing Snap packages.

  • Adds the Ubuntu cmake package to the mise part’s build dependencies.
  • Applies the dependency to all declared Snap platforms.

Confidence Score: 5/5

The PR appears safe to merge, with no actionable build, runtime, or security issues identified.

The added CMake package is available for the Snap build targets and directly supplies the executable required by CMake-dependent Rust crates without altering the resulting application’s runtime behavior.

Important Files Changed

Filename Overview
snapcraft.yaml Adds the missing CMake build dependency without changing runtime packaging behavior; no actionable issues identified.

Fix All in Greploop

Reviews (1): Last reviewed commit: "chore(ci): install cmake for snapcraft b..." | Re-trigger Greptile

@coderabbitai

coderabbitai Bot commented Aug 13, 2026 •

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited), Organization UI (inherited)

Review profile: CHILL

Plan: Pro Plus

Run ID: e41026bf-0797-4e6a-a583-807cb222f756

📥 Commits

Reviewing files that changed from the base of the PR and between d85c46d and a7b3418.

📒 Files selected for processing (1)
  • snapcraft.yaml

📝 Walkthrough

Walkthrough

The Snapcraft configuration adds cmake to the mise part’s build dependencies.

Changes

Snapcraft build configuration

Layer / File(s) Summary
Add CMake build dependency
snapcraft.yaml
The mise part now installs cmake as a build package.

Estimated code review effort: 1 (Trivial) | ~2 minutes

Mergeability Score: ⚪ Minimal · up to a7b34

This localized change installs CMake for Snapcraft builds so the affected packages can compile; no actionable merge-blocking risk remains after normal checks and review.

Possibly related PRs

  • jdx/mise#11209: Adds CMake as a build dependency in the Docker packaging configuration.

Poem

A rabbit hopped through the build pack,
Found CMake neatly on the stack.
The Snap now knows just what to do,
With tools assembled, fresh and true.
“Hop onward, mise!” the bunny sings.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the addition of CMake to support Snapcraft builds.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

Copy link
Copy Markdown
Contributor

Instruction counts

benchmark trend instructions Δ wall (min) Δ
env ▄▃▂▁▁▂▁▃▅█▇▅▅▇▆▇▄▄ 80,766,167 → 80,785,719 +0.02% 19.88 → 17.99ms -9.50%
hook-env ▂▃▁▁▂▂▁▅█▇█▆▅▅▄▆▄▆ 82,288,744 → 82,356,851 +0.08% 19.66 → 18.64ms -5.23%
ls ▃▁▁▂▁▁▂▃███▄▄▇█▇▅▃ 73,341,878 → 73,292,873 -0.07% 17.39 → 16.18ms -6.96%
registry ▃▂▂▂▂▁▂▂▂▃▂▃▃▄▅▆▄█ 43,246,058 → 43,432,479 +0.43% 12.29 → 11.81ms -3.96%
startup ▅█▂▁▃▂▂▇▆▅▆▂▂▆▆█▄▄ 15,563,705 → 15,561,162 -0.02% 9.72 → 9.21ms -5.20%

No instruction-count regression above 1%.

Only instruction counts gate. Wall clock is shown for context — on identical hardware it moves 4-20% run to run.

Measured by tak — instruction-counted CLI benchmarks, stored in this repository's git notes.

a7b3418e8c6b vs d7f7197e4c18 · measured on the runner, not pushed to the history.

@jdx
jdx merged commit 4054df7 into main Aug 13, 2026
31 checks passed
@jdx
jdx deleted the codex/fix-snapcraft-cmake branch August 13, 2026 17:02
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.

1 participant