Finally, Arduino toolchain on the CLI (in only 20 MB OTW/41 MB unpacked)
2.8K
Finally a CLI for the Arduino toolchain, and in a container too.
Testing some base-images for different Linux distros, maybe to pick one already cached by docker. Though with Alpine there is little need to fuss about size: just a few 10s of megabytes.
The AVR-GCC toolchain does not run with Musl libc, so the official Alpine is
out. But there is frolvlad/alpine-glibc github.
There are some missing packages that arduino installs itself (into ~/.arduino15/packages/builtin/tools): ctags, serial-discovery. This is also where the
support for different boards go. Like the ~/Arduino folder (with libraries)
it is kept outside of the image (ie. in a volume).
:alpine :minideb :debian-slim :debian :ubuntu :centos :fedora Usage:
docker run -ti --rm --name arduino --device /dev/ttyUSB0:/dev/ttyUSB0 \
-v $HOME/.arduino15:/home/arduino/.arduino15 \
-v $HOME/Arduino:/home/arduino/Arduino \
dotmpe/arduino:alpine \
help
The Alpine/glibc image is working for my AVR/Atmega328p needs so far. Every package but curl and certificates has been removed from the images, idk. if those (make, git) are needed somewhere.
The fedora and centos images have permission issues on the USB tty device, but I'm not too experienced with RH-based OS; its probably some apparmor thing?
Maybe should add sudo, or cleanup sudoers stuff.
The Docker hub build is fairly long, would be nice to split up to branches. And add version numbers to keep older versions. Also Hub does not want to run tests the way I set it up now.
Might want to test with proper docker volumes iso. mounts.
Also up for build/test is a golang based install.
See customized highlander-build hooks
for tags.
The latest tag is put on the Alpine image.
See wiki at github, or local
docs directory.
Content type
Image
Digest
Size
18.7 MB
Last updated
about 6 years ago
docker pull dotmpe/arduino