Week 32 In Snapcraft
by Sergio Schvezov on 15 August 2017
Welcome to the weekly development notes for snapcraft! This covers work from August 7 until August 13 of 2017.
Development in master
The theme of code landing into master this week was mostly about robotics, from polishing and refactoring to ease the development of ROS 2 support (ament
plugin) as well as supporting new features.
Aside from that, worth mentioning is that the next release of snapcraft (2.34) will have support for a Windows msi to ease the installation and get snapcraft working on that operating system (sans local building support).
- kbuild plugin: support Makefile without install target PR: #1432
- recording: record the original snapcraft.yaml PR: #1407
- options: properly handle missing compiler prefix PR: #1425
- kbuild plugin: move over the cross-compiling logic from the kernel plugin PR: #1417
- catkin plugin: include-roscore is a boolean PR: #1472
- catkin plugin: default to release build PR: #1470
- catkin plugin: rosinstall-files is a pull property PR: #1473
- catkin plugin: support passing args to cmake PR: #1471
- Extract rosdep into its own package PR: #1464
- Add cx_Freeze options targeting bin/snapcraft PR: #1478
- cli: better error message for missing mksquashfs PR: #1481
- ci: skip the CLA check for pull requests from the bot PR: #1482
This weeks Pull Requests
These are the pull requests that showed up during the week:
- lxd: configure user in container PR: #1484
- lxd: path cannot have extra forward slashes PR: #1483
- rosdep: add support for multiple dependency types PR: #1479
- kbuild plugin: use ARCH from environment if set PR: #1474
- add support for the “contact” field in snapcraft PR: #1447
- cli: properly handle exceptions PR: #1436
For a full list of pull requests go to https://github.com/snapcore/snapcraft/pulls
Current active design forum discussions
- Support the
on
statement forbuild-packages
- Running snapcraft as a unprivilidged user
- Updating persistent containers once and explicitly
- Recording build details from the python plugin
- Plugin design: how to organize components
- The meson plugin requires a specific target to exist
- Telling snapcraft not to generate wrappers
Ecosystem
More snaps!
If you needed to install these look no more and follow the installation instructions:
- geocoder: https://github.com/DenisCarriere/geocoder#snap-install
- internetarchive: https://internetarchive.readthedocs.io/en/latest/installation.html#snap
And some more snaps coming soon (blockchain related) with recently landed snapcraft.yaml
and being added to ci/cd:
- solium: https://github.com/duaraghav8/Solium/blob/master/snap/snapcraft.yaml
- decentraland: https://github.com/decentraland/bronzeage-node/blob/master/snap/snapcraft.yaml
Conferences
This week, on the 18th and 19th, you can catch part of the snapcraft team, Leo and Sergio, speaking at the UbuconLA 2017, these are the sessions (they will be carried out in Spanish):
- snapcraft and the new free software communities
- Getting to your users
- Workshop on creating snaps and doing continous delivery through the snap store
This article originally appeared at the snapcraft github