Commit Graph

74 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
acb0612ea4 Allow setting up wifi from config
Add WPA_ESSID, WPA_PASSWORD and WPA_COUNTRY options to config.
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
5c8fb97259
Remove NOOBS export (#20) 2019-01-01 22:00:02 -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
378a2bdfa7 stage2: remove left-over debconf file 2018-10-11 16:24:38 +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
Serge Schneider
6000d5871f stage2: accept Mathematica EULA here instead of stage5 2018-09-10 09:58:17 +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
56da271499 Remove unnecessary files 2018-03-13 12:37:13 +00:00
Serge Schneider
e6f7cd5cd6 stage2: don't set 'country' in wpa_supplicant.conf 2018-03-01 15:54:13 +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
dc0fb57fb9 stage2: install net-tools explicitly 2017-08-24 16:31:15 +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
c77669ad9f stage2: firmware-ralink renamed to firmware-misc-nonfree 2017-07-28 13:35:46 +01:00
Serge Schneider
6618df4b08 stage2: update wait.conf 2017-07-28 13:35:46 +01:00