aboutsummarylogtreecommitdiffstats
path: root/astrbot@.service
AgeCommit message (Collapse)Author
2026-03-27fix: add CARGO_TARGET_DIR to redirect maturin/Rust build outputLIghtJUNction
maturin (pyo3 build backend) defaults to writing wheels under $CARGO_HOME/../../../rust/target relative to the source, which resolves to /opt/astrbot/rust/target/wheels — not writable by the astrbot user. Setting CARGO_TARGET_DIR=/var/cache/astrbot/cargo_target redirects all cargo/maturin build artifacts to a writable location.
2026-03-27fix: redirect Rust cargo builds to /var/cache/astrbotLIghtJUNction
Set CARGO_HOME and RUSTUP_HOME to /var/cache/astrbot/cargo and /var/cache/astrbot/rustup so that uv pip install can build Rust extensions without needing write access to /opt/astrbot/rust/target. Changes: - setup_runtime_env: export CARGO_HOME and RUSTUP_HOME - .env file generation: include CARGO_HOME and RUSTUP_HOME - ensure_instance_env_synced: pass CARGO_HOME/RUSTUP_HOME to uv pip install - run_astrbot: pass CARGO_HOME/RUSTUP_HOME to uv pip install - astrbot@.service: add ReadWritePaths for cargo and rustup dirs - astrbot-git.install: create cargo/rustup/python dirs on install
2026-03-25fix: add ReadWritePaths for /opt/astrbot (rust build) and python install dirLIghtJUNction
2026-03-25fix: move venv to instance data dir, simplify service BindPaths onlyLIghtJUNction
2026-03-24fix: move uv cache to instance data dir, bypass ProtectSystem=strict restrictionLIghtJUNction
2026-03-24fix: move venv to /tmp as well, ReadWritePaths doesn't cover venv path with ↵LIghtJUNction
ProtectSystem=strict
2026-03-24fix: use /tmp for uv cache to bypass systemd namespace read-only fs, remove ↵LIghtJUNction
hardcoded UV_CACHE_DIR
2026-03-24fix: use RuntimeDirectory= for venv paths to avoid systemd namespace mount ↵LIghtJUNction
issues
2026-03-22simplify: streamline startup flowLIghtJUNction
- systemd ExecStart now calls __run_astrbot directly, skipping the 'run' command wrapper that parses --host/--port arguments - 'astrbotctl run <instance>' now calls run_astrbot directly with user-passed args; config-based host/port come from .env (generated by setup_runtime_env) - removed pointless '_runuser_with_env ... :' no-op call in run_astrbot - init and cli commands unchanged; they still call run_astrbot correctly - shellcheck still clean, all tests pass
2026-03-22fix(service): simplify systemd unit, remove conflicting XDG env varsLIghtJUNction
The script's setup_runtime_env() overwrites all XDG_* variables computed by the systemd service, so they are redundant and can cause path mismatches (e.g. XDG_DATA_HOME=.../data vs script computing .../home/.local/share). Keep only what the script cannot derive: ASTRBOT_SYSTEMD, ASTRBOT_DESKTOP_CLIENT, and UV cache/install dirs. All per-instance paths (ASTRBOT_HOME, XDG_*, UV_PROJECT_ENVIRONMENT) are set by setup_runtime_env() which runs before the Python process starts.
2026-03-20update to version 4.20.1.r180.g4fd77ea00LIghtJUNction
2026-03-20update to version 4.20.1.r166.g0e95a4727LIghtJUNction
2026-03-18update to version 4.20.1.r137.g6e90937abLIghtJUNction
2026-03-18update to version 4.20.1.r128.ge8c234f0cLIghtJUNction
2026-03-18update to version 4.20.1.r128.ge8c234f0cLIghtJUNction
2026-03-18update to version 4.20.1.r107.g294646048LIghtJUNction
2026-03-18Add missing source files: astrbotctl and service unitLIghtJUNction