← Back to issue list

craftctl support for plugs

View original Github issue

Metadata

Project
snapcraft
Number
#5975
Type
issue
State
open
Author
pinaraf
Labels
Status: Triaged Type: Enhancement
Created
Updated
Closed
—

Current evaluation

Triaged enhancement to let craftctl set dynamically set app plugs, automating kernel-module plug metadata; maintainers discussed the design and the reporter has a working interim pre-processor.

Suggested action: keep open

Reason: The issue is labeled Status: Triaged, and maintainer @mr-cal discussed the requested craftctl path as option 3; the reporter confirmed the interim pre-processor works and @mr-cal said, “I’ll add it to our list.” No resolving commit or PR is identified, so this valid, scoped enhancement should remain open.

Evaluated by: mr-cal-bot

Impact: 52 Quick Win: 18 Complexity: 58 Confidence: 93 Actionability: 84

Issue body

### Check existing issues - [x] I've verified that this request isn't described by any existing issues. ### Request We, builders of a kernel snap for UC, would like to be able to use the modprobe.d configuration we have in our source deb file in the generated snap. In order to do that, we use the kernel-module-load interface, thus plugs, but there is currently no solution to build that except manually synchronizing the plugs and the modprobe.d configuration used for our classic ubuntu images. Current solution for that would be a specific script to run before snapcraft that would fetch the .deb, parse its content and append the right yaml to snapcraft.yaml. This is tedious, complicated and error-prone. If a command like `craftctl add-plug`, `craftctl set-plug` or similar was available, we could use it to implement this from snapcraft.yaml itself, making the system easier and safer to use. ### The problem it solves <!-- Describe the impact your request would have. --> Being able to automate this would make our maintenance work much easier, prevent issues from appearing or remainding on UC while being fixed on classic ubuntu. source: https://chat.canonical.com/canonical/pl/4dfd6hzbcbbyzjmw6krydzsedw

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha
Impact: 52
Quick Win: 18
Complexity: 58
Confidence: 93
Actionability: 84
keep open Triaged enhancement to let craftctl set dynamically set app plugs, automating kernel-module plug metadata; maintainers discussed the design and the reporter has a working interim pre-processor.
qwen/qwen3.6-35b-a3b
Impact: 35
Quick Win: 15
Complexity: 45
Confidence: 80
Actionability: 80
keep open Enhancement request to add craftctl set support for dynamically configuring plugs at build time. Triaged, acknowledged by maintainers, and added to backlog for next cycle.
qwen/qwen3.8-27b
Impact: 50
Quick Win: 22
Staleness: 45
Complexity: 55
Confidence: 75
Support Request: 0
keep open Feature request to add craftctl set support for plugs in snapcraft, enabling dynamic plug configuration at build time. Triaged by maintainer who proposed 3 options; reporter has workaround (option 1) and agreed to wait for implementation next cycle. No implementation yet.
qwen/qwen3.6-35b-a3b
Staleness: 40
Complexity: 45
Confidence: 85
Support Request: 10
keep open Feature request to add craftctl commands for dynamically setting plugs during snap builds. Currently triaged, author implemented a workaround script, and maintainer agreed to add it to the roadmap for a future cycle.
qwen3.6-35b-a3b-mtp-q6
Staleness: 45
Complexity: 40
Confidence: 90
Support Request: 10
keep open Enhancement request to add craftctl set support for dynamically configuring snap plugs at build time. Author implemented a workaround and agreed to wait for implementation next cycle.

Update history

No update history recorded yet.

Related work

  • Related To: SNAPCRAFT#1279 (confidence 100%)

    The issue comments link this enhancement to internal ticket SNAPCRAFT-1279.

  • Related To: SNAPCRAFT#29 (confidence 95%)

    The issue body explicitly says the implementation will leverage SNAPCRAFT-29.

Related issues

No related issues found above the similarity threshold.