Add a new build plugin 'shell' that runs arbitrary shell commands
Metadata
Current evaluation
Closed unmerged as superseded by Snapcraft's native prepare, build, and install part keywords, which covered most of the proposed shell-plugin functionality.
Resolution: closed superseded
Reason: On 2017-01-03, maintainer sergiusens closed the PR after the prepare/build/install keyword implementation provided most of its functionality. No merge or CI run is recorded.
Evaluated by: mr-cal-bot
No scores available.
Issue body
In order to support uncommon build systems and custom written build scripts it is useful to be able to run arbitrary commands to build and install, rather than just the commands hardcoded into the other snapcraft plugins.
This plugin accepts a list of commands and runs each of them with bash variables set to represent the source dir, build dir, and dest dir for the snapcraft part._
For example, here is a snapcraft file that compiles the video player mpv, which uses both a custom bootstrap script and the build system waf:
http://paste.ubuntu.com/23050131/
If there is anything you would like added to this plugin please let me know, thanks.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed superseded | Closed unmerged as superseded by Snapcraft's native prepare, build, and install part keywords, which covered most of the proposed shell-plugin functionality. | |
| stealth/space-bunny-alpha | — | closed superseded | Closed unmerged after part-level prepare, build, and install keywords implemented the proposed custom-command functionality, making the shell plugin unnecessary. | |
| qwen/qwen3.6-35b-a3b | — | — | Superseded by the implementation of prepare, build, and install keywords for parts, which now provide the requested functionality. The pull request was closed without merging. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Closed without merging. The proposed shell plugin was superseded by adding prepare, build, and install keywords to parts, which deliver equivalent functionality while maintaining snapcrafts declarative architecture. |
Update history
No update history recorded yet.
Related work
-
Related To:
snapcraft#664
(confidence 99%)
A maintainer explicitly identified it as a similar earlier proposal, and the two implementations were compared.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1782775 Add shell API | snapcraft (launchpad) | closed | Implemented by snapcore/snapcraft PR #2249, merged as commit 9f5640b17, adding shell support for the base build environment. | |
| #664 New plugin: Script (runs bash scripts) | snapcraft | closed | Unmerged Script plugin was closed after discussion moved to snapcraft#727; native prepare, build, and install commands covered most of its intended functionality. | |
| #1604107 Plugin for bash scripts | snapcraft (launchpad) | closed | Bash-script plugin request was superseded by snapcraft#727; PRs #664 and #727 remained unmerged because part-level prepare, build, and install commands covered the need. |