You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(sandbox): enable LibreOffice in nsjail for document skills
LibreOffice (soffice) needs three things to work in nsjail that the
default sandbox doesn't provide:
1. Access to its config and font discovery directories
→ bind-mount /etc/libreoffice, /etc/fonts, /usr/share/fonts (read-only)
2. /proc visibility — soffice hard-fails with "ERROR: /proc not mounted -
LibreOffice is unlikely to work well if at all" otherwise. Extend the
/proc-keeping language allowlist from {java, rs, bash} to also include
{py, python}. nsjail's PID namespace still restricts /proc visibility
to sandbox processes; only /proc/cpuinfo and /proc/meminfo leak host
info, acceptable in the trusted-tenant model.
3. bind(2) syscall — LibreOffice's oosplash and soffice.bin communicate
via AF_UNIX sockets. The original BUG-006c blocked bind to prevent
server sockets, but network namespace isolation (--iface_no_lo) already
prevents external connections, so AF_UNIX bind is safe. Extend the
allowlist from {bash} to {py, python, java, bash}.
Same /proc handling applied to pool.py (Python REPL) and programmatic.py
(PTC) since they also drive document-processing skills.
Add XDG_CONFIG_HOME=/tmp/.config to the Python env so LibreOffice can
write its first-run profile to a writable location.
0 commit comments