Commit Graph

34 Commits (c85fd9f33c1765f5abdf297c988caa1491e59ab1)

Author SHA1 Message Date
Peter Johnson c85fd9f33c
Revamp image to build dependencies as part of stages (#83)
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.
2019-02-02 23:37:18 -08:00
Peter Johnson 42d270870e
Fix C++ example Makefile for cross-compilation (#67)
CXX can't be conditional.
2019-01-13 16:45:39 -08:00
Peter Johnson e17886dafc
Include libs and includes in C++ example zip file (#59)
- Fix up C++ Makefile for cross-compilation
- Put java depedency jars in correct location in java example zip file
2019-01-11 13:16:00 -08:00
Peter Johnson 63120aee69
Build wpilibc and wpilibj and include in image (#54)
This is mainly useful for Shuffleboard and SmartDashboard classes.
2019-01-11 13:13:15 -08:00
Peter Johnson 63f3040f00
Include opencv headers in the image (#38)
They were built, but not extracted to the actual filesystem.
2019-01-11 01:17:20 -08:00
Peter Johnson 3f2ab23563 Move default multiCameraServer from allwpilib to tools 2019-01-11 01:13:09 -08:00
Sam Tygier c80e5e9100 Allow enabling ssh server from config
Add ENABLE_SSH option
2019-01-01 22:00:28 -08:00
Sam Tygier bc7971ef03 Allow setting user name and password from config
Add FIRST_USER_NAME and FIRST_USER_PASS variables that can be set
in the config (or enviroment). Defaults to the standard pi and
raspberry.
2019-01-01 22:00:28 -08:00
Peter Johnson 43c710ec39
Build wpilib with cmake instead of gradle (#15)
* Move java lib install to /usr/local/frc/java
* Build and install both debug and normal OpenCV libraries
* Install OpenCV cmake files
* Build OpenCV Java with version 8 target
* Build static OpenCV for static allwpilib binaries
* Move netconsoleTee install to /usr/local/frc/bin
* Move multiCameraServer default app install to /usr/local/frc/bin
* Install more FRC binaries
* Fix /home/pi/zips/java-multiCameraServer.zip owner to pi:pi
* Remove azure 60 minute timeout
* Add openjdk-8-jdk to Azure docker image (this is needed for cmake to find javah as only cmake 3.9 is available)
2018-12-30 02:07:22 -08:00
Peter Johnson 170962deff
Enable rPi camera by default (#7)
Fixes #3.
2018-12-28 22:47:31 -06:00
Peter Johnson 7a7125b4f3
Properly symlink supervise in /service/camera/log 2018-12-21 01:24:11 -08:00
Peter Johnson ced1d8b736
Fix zips directory 2018-12-21 00:37:10 -08:00
Peter Johnson c559efc53a
Implement vision settings and start adding app settings 2018-12-20 13:26:14 -08:00
Peter Johnson 88f549108f
Add java, cpp, and python examples 2018-12-08 00:45:27 -08:00
Peter Johnson 26d7b94837
Use service log feature for robust kill/terminate 2018-11-30 21:26:58 -08:00
Peter Johnson 78f99637b9
Add pynetworktables and robotpy-cscore 2018-11-30 21:05:14 -08:00
Peter Johnson a0a68d9a7a
Use netconsoleTee instead of netconsoleServer 2018-11-30 20:03:52 -08:00
Peter Johnson bc480f82ca
Put the jar files in /home/pi/javalibs/ 2018-11-30 20:01:28 -08:00
Peter Johnson e2e18ddbc0
Use setuidgids instead of sudo -u for setting groups 2018-11-30 19:58:54 -08:00
Peter Johnson 1427b998cc
Put jars in /home/pi so they're on the default classpath 2018-11-30 11:45:19 -08:00
Peter Johnson 363cd449d2
Fix configServer supervise for read only filesystem 2018-11-30 03:22:07 -08:00
Peter Johnson dd04f57093
Various updates, start including rpiConfigServer
* Provide shell script to copy in external dependencies
* Install Python 3 and build-essential
* Install OpenCV libraries including Python 3 bindings
* Install rpiConfigServer as service
* Improve service scripts with exec, netconsoleServer
* Don't include JDK debug info (shrinks zip size a lot)
* Include libraries, headers, and jars for wpiutil, cscore, ntcore
2018-11-30 02:40:39 -08:00
Peter Johnson d687acb744
Initial FRCVision commit. 2018-11-16 00:52:05 -08:00
Serge Schneider ff2d5edee1 shellcheck 2018-03-13 12:50:50 +00:00
Serge Schneider c430f618d0 Remove ld.so.preload and policy-rc.d changes 2018-03-01 15:54:12 +00:00
Jacen 26fcf59f3f [adding] qemu emulation layout to test images with qemu 2017-09-14 10:12:30 +01:00
Serge Schneider f2060a8ee2 export-noobs: enable NOOBS config script here instead of stage2 2017-07-28 13:35:46 +01:00
Serge Schneider 207003b5ed stage2: Move ssh host key regen and NOOBS config scripts to raspberrypi-sys-mods 2017-07-28 13:35:46 +01:00
Serge Schneider 8f361a1c38 Switch to Stretch 2017-07-28 13:35:46 +01:00
Serge Schneider 51fbf45dd7 stage2: Manually install /etc/default/console-setup
debconf alone does not seem to work
2017-03-06 09:27:48 +00:00
Serge Schneider 21a681692a Port regenerate_ssh_host_key to a systemd service 2016-11-24 20:07:05 +00:00
Serge Schneider c4fb032d3b Use capsh to ensure file capabilities aren't set 2016-11-14 23:55:45 +00:00
Serge Schneider ea205dc387 Remove 98-rpi.conf (now handled by raspberrypi-sys-mods) 2016-09-15 15:30:44 +10:00
Serge Schneider 99bf2f4d61 Add Raspbian stages 2016-04-11 07:34:01 +01:00