diff options
| author | Adam Malczewski <[email protected]> | 2026-06-14 16:51:22 +0900 |
|---|---|---|
| committer | Adam Malczewski <[email protected]> | 2026-06-14 16:51:22 +0900 |
| commit | d337b8bf0e8f4b2e54ef76d093e76e5841fcf184 (patch) | |
| tree | d028ae38227b40a7f6309bf6be7384e579f3540d /packaging/remote.local.example | |
| parent | 117ad49b2f9bfb6822e94df2706fd7cd0cf2121a (diff) | |
| download | unbox-d337b8bf0e8f4b2e54ef76d093e76e5841fcf184.tar.gz unbox-d337b8bf0e8f4b2e54ef76d093e76e5841fcf184.zip | |
packaging: remote-build helpers (distcc offload + remote pkg build)
Transparent distributed compilation: setup-distcc.sh configures ccache
(prefix_command=distcc) + ~/.distcc/hosts locally and a locked-down distccd on a
remote builder, so a plain ninja/meson test offloads compiles automatically and
falls back to local when the remote is down. build-remote.sh (renamed from the
machine-specific build-remote.sh) builds + installs the pacman package on the
fast box. start-unbox now takes its wallpaper from $HOME/.config/unbox/wallpaper
(or $UNBOX_WALLPAPER) instead of a hardcoded filename.
Machine/network specifics (hosts, private IPs) are NOT committed: the helpers
read packaging/remote.local (gitignored); packaging/remote.local.example is the
committed template with setup instructions for a new network.
Diffstat (limited to 'packaging/remote.local.example')
| -rw-r--r-- | packaging/remote.local.example | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/packaging/remote.local.example b/packaging/remote.local.example new file mode 100644 index 0000000..9505a55 --- /dev/null +++ b/packaging/remote.local.example @@ -0,0 +1,31 @@ +# remote.local.example — template for the remote-builder settings. +# +# These are machine/network specifics and are deliberately NOT committed. To use +# the remote-build helpers (setup-distcc.sh, build-remote.sh), copy this file and +# fill in your own values: +# +# cp packaging/remote.local.example packaging/remote.local +# $EDITOR packaging/remote.local # packaging/remote.local is gitignored +# +# Prerequisites on a NEW set of systems: +# * A fast "builder" box reachable over a private network (Tailscale/WireGuard/ +# LAN), with the SAME gcc version as this machine (distcc plain mode requires +# matching compilers), passwordless SSH from here, and sudo on the builder. +# * `distcc` (and `ccache`) installed on BOTH machines. +# Then run: packaging/setup-distcc.sh + +# SSH host/alias of the fast remote builder. +REMOTE_HOST=builder.example.ts.net + +# Private IP of the remote builder (Tailscale/WireGuard/LAN). distccd binds +# (--listen) ONLY to this address, so it is never exposed on public interfaces. +REMOTE_TS=100.64.0.2 + +# Private IP of THIS machine. distccd will --allow ONLY this address. +LOCAL_TS=100.64.0.1 + +# Parallel compile slots the remote offers (roughly its CPU core count). +REMOTE_JOBS=16 + +# (Optional) working dir name created in the builder's home for build-remote.sh. +REMOTE_DIR=unbox |
