← Back to issue list

snapcraft does not allow vendor/platform patching of upstream sources (aka: add patch phase to lifecycle)

View original Launchpad issue

Metadata

Project
snapcraft
Number
#1551716
Type
issue
State
open
Author
~removed2831044
Labels
Created
2016-03-01 12:54:14.823048+00:00
Updated
2017-03-10 01:16:55.105781+00:00
Closed
2017-03-10 01:16:54.168817+00:00

Current evaluation

No evaluation has been recorded for this issue yet.

Issue body

Snapcraft has no clean way to do vendor/platform patching of upstream sources in common plugins. E.g. the make and autotools plugins always init the upstream build systems without allowing for a hook to enable patching the provided source. It should be clarified, if this is by design, requiring even minor adoptions or build fixes to be either upstreamed (which isnt always possible) or categorically requiring to maintain an upstream fork with its own VCS. The workaround for bug 1548232 is an example. Because of it we essentially can use none of the snapcraft plugins directly on the project at all, but need use a wrapper Makefile run in the make plugin. Having a "patch" lifecycle phase between "fetch" and "build" would solve this. Note that e.g. LibreOffice carries between 40 and 70 vendor patches: https://git.launchpad.net/~libreoffice/ubuntu/+source/libreoffice/tree/patches?h=ubuntu-xenial-5.1 https://git.launchpad.net/~libreoffice/ubuntu/+source/libreoffice/tree/patches?h=ubuntu-precise-3.5

Evaluation history

No evaluation history available.