Fixes#17.
Stage 2 is fairly minimal, stage 3 builds/installs OpenCV and WPILib et al, and stage 4
builds/installs the FRCVision webdash and adds the vision examples.
Other changes:
- OpenCV compiled with ffmpeg, OpenBLAS, and libgtk (fixes#79, fixes#80)
- OpenBLAS added to image (fixes#65)
- C++ Makefile is more easily extensible (fixes#71)
- Sources for everything are bundled into image into /usr/src
- README updated (fixes#16)
- pkg-config files for wpilibc et al are now installed and C++ Makefile uses them (if compiled local to Pi)
- Both dynamic and static libs are included in image
The only downside of all these changes (particularly the ffmpeg, OpenBLAS, and libgtk inclusion)
is the image size is now over 3GB (800MB compressed). The previous image didn't quite fit on a
2GB card however.
* Added Docker support
- replaced necessity for devicemapper (through kpartx) by using parted and
losetup with offsets
- added Dockerfile
- added dependency for parted and grep
- added hints to README.md
- common: loop through unmounts, fix shellcheck warnings
* stage2: use debconf instead of console-setup patch. Fixes#41
* export-noobs/prerun.sh: Use nested mountpoint
While it seems elegant and intuitive to use separate bootfs and rootfs
mountpoints for compressing the partitions, doing so violates a
precondition of unmount_image that they be mounted as a tree. This
causes the image to not be properly unmounted and detached. A better
solution might be to pack up the previous stage's chroot directory, but
that rework can wait for the time being.
scripts/common.sh: Output device name correctly
A misplaced ) in unmount_image caused the loop device to be incorrectly
identified, resulting in a fair bit of chaos trying to unmount other
filesystems on /dev/mapper devices. Such as / on a LUKS-encrypted
installation, for example. The unmount will fail as it should and
build.sh will abort the build without any cleanup. Best to avoid that.
These changes closeRPi-Distro/pi-gen#19