Hey everyone!
I wanted to share a Docker container I’ve been using to build Pebble apps without needing to install the Pebble SDK locally. It’s been working great for me and thought others might find it useful. There was an existing Docker container for the Rebble SDK but not for the Core Devices one, so I created it.
GitHub repo: https://github.com/skylord123/docker-coredevices-pebble-tool
I use this for building my own projects:
-
Home Assistant WebSocket app: https://github.com/skylord123/pebble-home-assistant-ws
-
Forecal watchface: https://github.com/skylord123/forecal
Automated builds with GitHub Actions:
One of the best features is the CI/CD integration. I have two workflow examples in the readme (that I also use for my own projects):
-
Continuous builds - Every time I push code to any branch or create a pull request, GitHub Actions automatically builds the app/watchface and uploads the compiled
.pbwfile as an artifact attached to the workflow run. This makes it super easy to test changes without building locally. The artifact includes the commit SHA in the filename so I can track exactly which version I’m testing. -
Release automation - When I create a release or push a version tag (like
v1.0.0), the workflow automatically builds the app and attaches the.pbwfile directly to the GitHub release. This means every release has a permanent download link for the compiled watchface/app without me having to manually build and upload it.
The image is published to GitHub Container Registry, so you can pull it directly without building it yourself. The README has examples for local builds, GitHub Actions workflows, and more. Before this I had a workflow that installed the SDK manually and it was quite slow. Using the Docker container sped it up significantly.
Hope you find it useful!