Sanad_Package_1/.env.example

39 lines
1.8 KiB
Plaintext

# Copy to .env — docker compose reads it automatically from this directory.
# Signed license for THIS robot (default = the bundled example, entitles P1).
SANAD_LICENSE_FILE=./license/sanad.lic.example
# Enforce machine-fingerprint binding (1 on a delivered robot). When 1, also
# uncomment the /etc/machine-id mount in docker-compose.yml so the in-container
# fingerprint matches the host.
SANAD_LICENSE_BIND=0
# Audio: builtin (G1 chest mic+speaker over DDS) | plugged (USB e.g. Anker via PulseAudio)
SANAD_AUDIO_PROFILE=builtin
# DDS interface to the G1 firmware.
SANAD_DDS_INTERFACE=eth0
# --- Plugged/Bluetooth speaker volume (Anker/JBL) ---------------------------
# The volume slider drives ALL speaker types like SanadV3: the G1 chest over DDS
# (always) AND the active PulseAudio sink (plugged/BT). The container runs as root,
# so it needs the HOST pulse socket + cookie to reach a uid-1000 PulseAudio.
# One-time host setup (stable socket at boot, no stray dir):
# loginctl enable-linger unitree
# Override these only if your pulse runs under a different uid or cookie path:
SANAD_PULSE_DIR=/run/user/1000/pulse
PULSE_SERVER=unix:/run/user/1000/pulse/native
# Cookie location varies by distro; if plugged volume/output is silent, try
# /home/<user>/.config/pulse/cookie instead and mount it accordingly.
PULSE_COOKIE=/run/user/1000/pulse/cookie
# Conversation language (overrides the license `language` feature if set).
# e.g. ar, en, hi, ur, zh, ru, fr ... (any Gemini-supported language)
SANAD_LANGUAGE=
# Bundle the chest-audio Unitree SDK into the image at build time
# (1 = yes, default; 0 = leaner USB/plugged-only image).
WITH_UNITREE_SDK=1
# Base image (override only for a GPU build).
BASE_OS_IMAGE=python:3.10-slim-bookworm
# Image name/tag (e.g. a registry path for pull-and-run).
# SANAD_IMAGE=sanad-p1:latest