Create the core tree and DONBOX_PATH #15

Closed
opened 2026-08-22 19:00:28 +01:00 by joshquinlan · 2 comments
Owner

New layout (bin, lib, default, shell, plugins, themes, migrations, install, test); the session exports DONBOX_PATH; nothing derives paths from HOME.

New layout (bin, lib, default, shell, plugins, themes, migrations, install, test); the session exports DONBOX_PATH; nothing derives paths from HOME.
Author
Owner

Done on branch core as 4e6aa80.

bin/, lib/, default/, install/ and test/ exist only where a real
file lands. bin/donbox takes DONBOX_PATH from the environment
and, when it is unset, resolves it from its own resolved
location (symlinks followed) and exports it.

The session gets the variable from
~/.config/environment.d/50-donbox.conf, written by
install/environment, which resolves the checkout from its own
location and rewrites the file only when it has changed. A
systemd user environment generator was the first attempt and
was dropped: systemd has no per-user search path for those, so
it would have needed root to install.

default/systemd/user/donbox-session.target verifies clean
under systemd-analyze --user verify. test/shell and
test/shell.d/base-test.sh are carried over, with the XDG
trees pointed at a sandbox so no suite can reach the real ones,
and test/shell.d/path-test.sh covers the resolution.

Done on branch `core` as 4e6aa80. bin/, lib/, default/, install/ and test/ exist only where a real file lands. `bin/donbox` takes DONBOX_PATH from the environment and, when it is unset, resolves it from its own resolved location (symlinks followed) and exports it. The session gets the variable from `~/.config/environment.d/50-donbox.conf`, written by `install/environment`, which resolves the checkout from its own location and rewrites the file only when it has changed. A systemd user environment generator was the first attempt and was dropped: systemd has no per-user search path for those, so it would have needed root to install. `default/systemd/user/donbox-session.target` verifies clean under `systemd-analyze --user verify`. `test/shell` and `test/shell.d/base-test.sh` are carried over, with the XDG trees pointed at a sandbox so no suite can reach the real ones, and `test/shell.d/path-test.sh` covers the resolution.
Author
Owner

Integrated on master (f9cbe76): tree, DONBOX_PATH resolved by the router and exported through ~/.config/environment.d/50-donbox.conf by install/environment, donbox-session.target, sandboxed test runner.

Integrated on master (f9cbe76): tree, DONBOX_PATH resolved by the router and exported through ~/.config/environment.d/50-donbox.conf by install/environment, donbox-session.target, sandboxed test runner.
joshquinlan 2026-08-22 20:05:53 +01:00
  • closed this issue
  • removed the
    now
    label
Sign in to join this conversation.
No description provided.