feat(nix): install packaged shell completions - #947
Conversation
There was a problem hiding this comment.
Your free trial has ended. If you'd like to continue receiving code reviews, you can add a payment method here.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
🚧 Files skipped from review as they are similar to previous changes (1)
Included review availability: Your plan provides up to 10 included reviews per hour; 2 remain after this review. 📝 WalkthroughWalkthroughThe Nix derivation now packages Bash, Fish, and Zsh completions when the build platform can execute the host platform. CI generates each completion with telemetry disabled and compares it with the packaged file. ChangesNix shell completion packaging
Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: ⚪ Minimal · up to This change packages Bash, Fish, and Zsh completions and validates them in CI; it is localized and introduces no actionable merge-blocking risk beyond normal checks and review. Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Full details: Docstring CoverageExplanation No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0 files. (2 skipped: 2 unsupported.) ✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
d98d602 to
4cad923
Compare
|
@TabishB is there anything missing here? :) |
669f581 to
253838a
Compare
|
it's rather unusual in nixpkgs to make the installation of completions optional. The problem described in #948 is pretty much ruled out in nix/nixos. some additional detail: |
|
Note GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer. |
Status
Implementation LGTM after independent review. The Nix packaging policy is approved: bundle completion files, let the shell control activation, and leave user startup files untouched. All required CI checks and Security passed for implementation commit
3cd948038df2157c2cb09fe2980345666f471f39; the follow-up only clarifies documentation. Not merged.Motivation
Nix users should receive completion files with the package, without running a separate installer or modifying shell startup files. Keeping the files in the package also keeps them aligned with the installed CLI version.
What it does
installShellFileshook.Proof it works
aarch64-linux; packaged CLI reports1.11.0.nix flake check --no-build --all-systemsevaluates all four supported systems.Notes
OPENSPEC_NO_COMPLETIONS=1suppresses the tip; it does not disable active completions. No core-code expansion is proposed to manage the Nix store.main; retained its Node.js and dependency versions. No application code or dependency changes..bashrc,.zshrc, or Fish configuration. Users still need their shell's completion subsystem enabled.