This commit adds a snapcraft.yaml file to allow lz4 to be distributed as a snap (see https://snapcraft.io/ for more info on snaps). Building the Snap ----------------- To build the snap simply install snapcraft and build the snap e.g. on Ubuntu by doing: $ sudo apt install snapcraft $ cd contrib; snapcraft This will build a snap that can be published [1] to e.g. https://snapcraft.io/lz4 If you want to test the snap before publishing you can do: $ snap install <snapname>.snap --dangerous And that will install it on your local host. You will then have lz4 as a command to run. Installing the Snap ------------------- Once published and released in the snapstore your snap can be installed on any platform that supports snaps by doing: snap install lz4 [1] https://docs.snapcraft.io/releasing-to-the-snap-store
1.1 KiB
Snap Packaging
This directory contains the config required to generate a snap package of lz4. Snaps are universal Linux packages that allow you to easily build your application from any source and ship it to any Linux distribution by publishing it to https://snapcraft.io/. A key attribute of a snap package is that it is (ideally) confined such that it executes within a controlled environmenti with all its dependencies bundled with it and does not share dependencies with of from any other package on the system (with a couple of minor exceptions).
The basic anatomy and workflow is:
-
ensure snap.snapcraft.yaml is up-to-date e.g. with version info
-
build the snap by installing the snapcraft package and running it
-
push snap/* changes to the repo (excluding any crud generated by a build of course)
-
register yourself as owner of lz4 name in snapstore
-
publish new snap to the snap store
-
install snap by doing 'snap install lz4' on any Linux distro
-
all installed copies of lz4 will be automatically updated to your new version
For more information on Snaps see https://docs.snapcraft.io and https://forum.snapcraft.io/