# This Source Code Form is subject to the terms of the Mozilla Public # License, v. 2.0. If a copy of the MPL was not distributed with this # file, You can obtain one at https://mozilla.org/MPL/2.0/. [unix_http_server] file=/tmp/supervisor.sock chmod=0700 [supervisord] logfile=/dev/null loglevel=info pidfile=/tmp/supervisord.pid childlogdir=/tmp nodaemon=true [rpcinterface:supervisor] supervisor.rpcinterface_factory=supervisor.rpcinterface:make_main_rpcinterface [supervisorctl] serverurl=unix:///tmp/supervisor.sock [include] files=/etc/supervisor/conf.d/*.conf # Starts Xorg and the XFCE session. [program:entrypoint] command=/usr/bin/dbus-run-session -- /etc/entrypoint.sh stdout_logfile=/dev/fd/1 stdout_logfile_maxbytes=0 redirect_stderr=true stopasgroup=true killasgroup=true stopsignal=INT autostart=true autorestart=true startretries=20 priority=1 # A lightweight system bus at a writable, rootless-compatible path. [program:dbus] command=/bin/bash -c 'install -d -m 0700 "${XDG_RUNTIME_DIR}" && dbus-daemon --system --nofork --nosyslog --nopidfile --address="${DBUS_SYSTEM_BUS_ADDRESS}"' environment=DISPLAY="%(ENV_DISPLAY)s",XDG_RUNTIME_DIR="%(ENV_XDG_RUNTIME_DIR)s",DBUS_SYSTEM_BUS_ADDRESS="%(ENV_DBUS_SYSTEM_BUS_ADDRESS)s" stdout_logfile=/dev/fd/1 stdout_logfile_maxbytes=0 redirect_stderr=true stopasgroup=true killasgroup=true stopsignal=INT autostart=true autorestart=true startretries=20 priority=1 [group:pipewire-group] programs=pipewire,wireplumber,pipewire-pulse priority=10 [program:pipewire] command=/bin/bash -c 'until [ -S "/tmp/.X11-unix/X${DISPLAY#*:}" ]; do sleep 0.5; done; exec dbus-run-session -- /usr/bin/pipewire' environment=PIPEWIRE_LATENCY="128/48000",DISPLAY="%(ENV_DISPLAY)s",DISABLE_RTKIT="y",XDG_RUNTIME_DIR="%(ENV_XDG_RUNTIME_DIR)s",DBUS_SYSTEM_BUS_ADDRESS="%(ENV_DBUS_SYSTEM_BUS_ADDRESS)s",PIPEWIRE_RUNTIME_DIR="%(ENV_XDG_RUNTIME_DIR)s",PULSE_RUNTIME_PATH="%(ENV_XDG_RUNTIME_DIR)s/pulse" stdout_logfile=/dev/fd/1 stdout_logfile_maxbytes=0 redirect_stderr=true stopasgroup=true killasgroup=true stopsignal=INT autostart=true autorestart=true startretries=20 [program:wireplumber] command=/bin/bash -c 'until compgen -G "${XDG_RUNTIME_DIR}/pipewire-*.lock" >/dev/null; do sleep 0.5; done; exec dbus-run-session -- /usr/bin/wireplumber' environment=PIPEWIRE_LATENCY="128/48000",DISPLAY="%(ENV_DISPLAY)s",DISABLE_RTKIT="y",XDG_RUNTIME_DIR="%(ENV_XDG_RUNTIME_DIR)s",DBUS_SYSTEM_BUS_ADDRESS="%(ENV_DBUS_SYSTEM_BUS_ADDRESS)s",PIPEWIRE_RUNTIME_DIR="%(ENV_XDG_RUNTIME_DIR)s",PULSE_RUNTIME_PATH="%(ENV_XDG_RUNTIME_DIR)s/pulse" stdout_logfile=/dev/fd/1 stdout_logfile_maxbytes=0 redirect_stderr=true stopasgroup=true killasgroup=true stopsignal=INT autostart=true autorestart=true startretries=20 [program:pipewire-pulse] command=/bin/bash -c 'until compgen -G "${XDG_RUNTIME_DIR}/pipewire-*.lock" >/dev/null; do sleep 0.5; done; exec dbus-run-session -- /usr/bin/pipewire-pulse' environment=PIPEWIRE_LATENCY="128/48000",DISPLAY="%(ENV_DISPLAY)s",DISABLE_RTKIT="y",XDG_RUNTIME_DIR="%(ENV_XDG_RUNTIME_DIR)s",DBUS_SYSTEM_BUS_ADDRESS="%(ENV_DBUS_SYSTEM_BUS_ADDRESS)s",PIPEWIRE_RUNTIME_DIR="%(ENV_XDG_RUNTIME_DIR)s",PULSE_RUNTIME_PATH="%(ENV_XDG_RUNTIME_DIR)s/pulse" stdout_logfile=/dev/fd/1 stdout_logfile_maxbytes=0 redirect_stderr=true stopasgroup=true killasgroup=true stopsignal=INT autostart=true autorestart=true startretries=20 # Selkies now serves its own web client directly; no NGINX or VNC process. [program:selkies] command=/etc/selkies-entrypoint.sh environment=DISPLAY="%(ENV_DISPLAY)s",XDG_RUNTIME_DIR="%(ENV_XDG_RUNTIME_DIR)s",PIPEWIRE_RUNTIME_DIR="%(ENV_PIPEWIRE_RUNTIME_DIR)s",PULSE_RUNTIME_PATH="%(ENV_PULSE_RUNTIME_PATH)s",PULSE_SERVER="%(ENV_PULSE_SERVER)s" stdout_logfile=/dev/fd/1 stdout_logfile_maxbytes=0 redirect_stderr=true stopasgroup=true killasgroup=true stopsignal=INT autostart=true autorestart=true startsecs=1 startretries=20 priority=20 [program:nginx] command=/etc/nginx-entrypoint.sh stdout_logfile=/dev/fd/1 stdout_logfile_maxbytes=0 redirect_stderr=true stopasgroup=true killasgroup=true stopsignal=QUIT autostart=true autorestart=true startsecs=1 startretries=20 priority=30