Commit Graph
60 Commits
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 64b9491e15 Include libopenblas-base in image (#66) 2019-01-13 18:26:54 -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 f2e493831a Reboot at end of one-time filesystem resize (#42)
This results in the first "real" boot being read-only instead of half
writable (/boot read-only but / writable).
2019-01-11 01:14:24 -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 d174460384 Add gdb to image (#19) 2018-12-30 11:47: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 d0c39e088b Use sudo instead of setuidpid
This keeps the supplementary groups, most importantly video, which is
needed to access the video devices.
2018-11-30 14:09:18 -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 33e94c46f3 stage2: set timezone properly 2018-10-11 17:20:18 +01:00
Serge Schneider 59cd0a3d9c stage2: add ssh-import-id 2018-10-04 15:41:31 +01:00
Serge Schneider 37da6846dd stage2: Set default timezone to 'London' 2018-09-10 10:11:40 +01:00
Hugo Hromic 9d76d3a6a2 stage2: clean unused/obsolete patch (#187) 2018-06-04 09:42:52 +01: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
Serge Schneider 13185c8224 stage2: install policykit-1
Closes #116
2017-12-13 11:17:58 +00:00
Serge Schneider 5c44fc727e stage2: install man-db 2017-11-24 07:10:45 +00:00
Jacen 26fcf59f3f [adding] qemu emulation layout to test images with qemu 2017-09-14 10:12:30 +01:00
Serge Schneider 496e41575e Revert "stage2: install fdisk"
This reverts commit e7e04fcde3.
2017-09-05 14:34:19 +01:00
Serge Schneider e7e04fcde3 stage2: install fdisk 2017-09-05 14:29:33 +01:00
Serge Schneider 178b1e404b Remove NTP in favour of systemd-timesyncd 2017-07-28 13:35:46 +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 19fc4a367e stage2: Add htop 2017-07-28 13:35:46 +01:00
Serge Schneider 036e5242b3 stage2: Add libmtp-runtime and rsync 2017-07-28 13:35:46 +01:00
Serge Schneider 8f361a1c38 Switch to Stretch 2017-07-28 13:35:46 +01:00
Serge Schneider dc7b589e7a Move rpi-update from stage3 to stage2 2017-05-15 15:46:59 +01:00
Serge Schneider 3c0b364028 stage0: Install locales
fixes #65
2017-05-15 14:48:25 +01:00
Benjamin Parzella 762e20cc0a Minor error in stage2 sys-tweaks debconf file
Seems like there is a misplaced line break
2017-04-03 15:59:16 +01:00
Serge Schneider 8f22f2f27e stage2: install libpam-chksshpwd 2017-03-13 17:31:49 +00:00
Serge Schneider 718a4e8c21 Switch to PARTUUID 2017-03-07 15:14:03 +00: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