35 lines
713 B
Bash
35 lines
713 B
Bash
#!/usr/bin/env bash
|
|
set -e
|
|
|
|
export DISPLAY=:99
|
|
mkdir -p /tmp/fluxbox
|
|
|
|
# Start Xvfb
|
|
Xvfb :99 -screen 0 1280x720x24 -nolisten tcp &
|
|
|
|
# Wait for X socket
|
|
for i in {1..50}; do
|
|
[ -S /tmp/.X11-unix/X99 ] && break
|
|
sleep 0.1
|
|
done
|
|
|
|
# Start window manager
|
|
fluxbox -display :99 &
|
|
|
|
# Start VNC server
|
|
x11vnc -display :99 -nopw -forever -shared -rfbport 5900 &
|
|
|
|
# Start noVNC web
|
|
websockify --web=/usr/share/novnc/ 0.0.0.0:6080 localhost:5900 &
|
|
|
|
# Start login watcher (MUST be before tail)
|
|
if [ -x /app/login_watcher.sh ]; then
|
|
/app/login_watcher.sh &
|
|
echo "[login] watcher started"
|
|
else
|
|
echo "[login] watcher missing: /app/login_watcher.sh"
|
|
fi
|
|
|
|
echo "[noVNC] Ready on :6080 (open /vnc_auto.html)"
|
|
tail -f /dev/null
|