JavaSaBr / kiosk

Repository from Github https://github.comJavaSaBr/kioskRepository from Github https://github.comJavaSaBr/kiosk

Kiosk

License Apache 2.0

Requires

1. Java 13+

How to build for Desktop

./gradlew build -PtargetArch=x64
or
./gradlew build -PtargetArch=x86

How to build for Arm

./gradlew build -PtargetArch=arm

How to use

java --enable-preview -jar build/distributions/Kiosk-shadow-0.0.1/lib/Kiosk-0.0.1-all.jar

Installation

--

  • nano /root/.xinitrc
unclutter &
bash /root/kiosk.sh
  • nano /root/kiosk.sh
#!/usr/bin/env sh

echo "The script you are running has basename $(basename "$0"), dirname $(dirna$
echo "The present working directory is $(pwd)"

FOLDER=$(dirname "$0")
CONFIG_PATH=""$FOLDER/application.yml""
APP_PATH="$FOLDER/kiosk.jar"

echo "FOLDER $FOLDER"
echo "CONFIG_PATH is $CONFIG_PATH"
echo "APP_PATH is $APP_PATH"

xrandr -s 1920x1080

java "-Dmicronaut.config.files=$CONFIG_PATH" --enable-preview -jar "$APP_PATH"

Autorun

  • nano /etc/rc.local
sh -c "export HOME=/root; startx" &
  • chmod +x /root/kiosk.sh

Set armbian default screen resolution

  • nano /boot/armbianEnv.txt
setenv video-mode sunxi:1920x1080-24@60,monitor=hdmi,hpd=5000,edid=0

Image repository API

You can configure any endpoint in properties file like:

image-repository:
  method: GET
  url: https://your-repository.com/images
  reload-interval: 30

Which should return json content like:

[
  {
    "name": "Image1.jpg",
    "url": "https://your-repository.com/image/Image1.jpg",
    "lastModified": "2021-01-03T10:15:30+01:00"
  },
  {
    "name": "Image2.jpg",
    "url": "https://your-repository.com/image/Image2.jpg",
    "lastModified": "2021-01-01T15:00:30+01:00"
  }
]

About

License:Apache License 2.0


Languages

Language:Java 97.0%Language:Shell 3.0%