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.
Addresses #62
Because of the use of volumes the .img files (and everything else) will stay around on disk even when you do `docker rm pigen_work`. Passing `-v` deletes the volume as well and frees up disk space.
Added some documentation of environment variables to README.md,
specifically WORK_DIR and DEPLOY_DIR. Explicitly did not include
SCRIPT_DIR at this time because that appears to require some small work
before it can be changed.
Took the chance for some other syntax cleanups while I was at it, mostly
breaking long lines and inserting whitespace where some Markdown parsers
require it.
* 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
The additional space between the # at the beginning of a section and
title conforms to correct markdown spec (and works in all markdown
renderers, as opposed to just GitHub)
* Add MAX_STAGES variable
If set, only runs up to that stage
* Show "Skipping stageX" message for all skipped stages
* Add RUN_STAGE variable to run a single stage
* Document RUN_STAGE and MAX_STAGE
* Removed SKIP file support for main stage
* README.md: document config file
Still pretty sparse, but as this bit is necessary to actually use
pi-gen, here it is.
* README.md: Overview of Raspbian's stages
* README.md: Stages -> Raspbian Stages + heading
Decided that the Stages heading probably made more sense as being
retitled to refer specifically to Raspbian since it has no direct
bearing on pi-gen itself which could produce any Debianish system for
the pi, and also that there ought to be a Stage Anatomy section first
talking about the nuts and bolts of what goes into these stages.
Stage Anatomy is just a heading for now.
* README.md: Make Config section less conversational
Left the stage overview as it was since it's intended more as a plain
language explanation than a technically complete look. I believe that
kind of information is useful to have, but perhaps as README.md becomes
longer it may be advisable to move it to another location.