Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The "fbi" package is required for the boot loading screen, and the "mpg321" package is for being able to play media.

Now we will walk through the steps for downloading and building the DukePad JavaFX software and apps. The sources are held in the OpenJFX project repositories. You need to clone OpenJFX, but you don't need to build all of OpenJFX, but can just build the DukePad independently. On your desktop, clone http://hg.openjdk.java.net/openjfx/8/graphics/rt. If you are using IntelliJ IDEA, locate under rt/apps/experimental the DukePad project. Open it and build. It should build, auto-downloading dependencies from maven central. Alternatively, you can try using the gradle build file. To do so, cd into rt/apps/experimental/DukePad. Execute:

Code Block
languagebash
titleapt-get
me@my-computer:$ gradle artifacts

(For a while the IDEA project build wasn't working, so the gradle script was thrown together. The gradle script isn't being used by anybody, so it may have issues. Ultimately, gradle will download the dependencies into the lib/ directory. You can manually populate it if necessary).

After a successful build, the following libraries should be in rt/apps/experimental/DukePad/lib:

Code Block
languagebash
titleapt-get
grizzly-framework-2.3.1.jar
grizzly-http-2.3.1.jar
grizzly-http-server-2.3.1.jar
grizzly-rcm-2.3.1.jar
tyrus-core-1.0.jar
tyrus-spi-1.1.jar
tyrus-client-1.0.jar
tyrus-core-1.1.jar
tyrus-websocket-core-1.0.jar
tyrus-client-1.1.jar
tyrus-server-1.0.jar
tyrus-websocket-core-1.1.jar
tyrus-container-grizzly-1.0.jar
tyrus-spi-1.0.jar
pi4j-native-0.0.5-soft-float.so
pi4j-core-0.0.5.jar
pi4j-native-0.0.5-hard-float.so
javax.json-1.0.1.jar
javax.websocket-api-1.0.jar

The actual built artifacts are in DukePad/build/artifacts. Everything in this directory must be uploaded to the Raspberry PI. The following example will use SCP to copy the files from build/artifacts up to a directory on the pi called /opt/dukepad (you may have had to pre-create this directory on the server and assign full rwx permissions on it).

Code Block
languagebash
titleapt-get
me@my-computer:$ scp -r build/artifacts/* pi@dukepad:/opt/dukepad

Finally, back on the PI we need to .....

To enable auto-start:

Code Block
languagebash
titleapt-get
root@dukepad:~# nano /etc/inittab

...