[Snaps][1] are self-contained squashfs images. Add basic support for
using them as inputs and outputs.
Typically Snapcraft is used to create snaps, but #1149 indicated a
desire to not use Snapcraft, so the snap is created natively, using
mksquashfs at the end to actually create the squashfs image. This may
not work for all use-cases (e.g. when the source doesn't already have
its dependencies bundled).
[1]: https://snapcraft.io/
Resolve #1181
Signed-off-by: Kyle Fazzari <kyrofa@ubuntu.com>
Basic support for OS X flat packages (.pkg)
- input/output
- output supports scripts, postinstall actions (using --info option),
ownership option and bundle-id-prefix option
- requires pkgbuild (therefore OS X 10.7+ only), pkgutil for input
- no tests yet
ignore .DS_Store
ignore .pkg
identifier gets its own method
first few osxpkg spec tests
osxpkg: extract name and version from PackageInfo on input
osxpkg: rename option bundle-id-prefix to identifier-prefix
- 'bundle-id' is ambiguous, given the various 'bundle'-related logic possible with OS X packages
osxpkg: fix old 'osx_' attribute prefix to 'osxpkg' in osxpkg.erb
New option: --osxpkg-dont-obsolete, to add files to 'dont-obsolete' element in PackageInfo.
osxpkg: Define public/private methods.
osxpkg_spec: Tests for basic attributes through input/output
- md5sums aren't needed by most packages, disable it by default.
In the future, should move the md5sums generator to the .deb package
target and keep it away from other stuff.
* Uses 'easy_install' to download packages from pypi.
* You can also give the path to a setup.py to use if you already have
the project locally.
* Automatically chooses 'native' or 'all' arch depending on whether
the python project has C extensions