aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal/app
AgeCommit message (Collapse)Author
2024-09-12app: handle launch method in New functionOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-09-09app/run: empty launcher environmentOphestra Umiker
The launcher process should not receive the child's environment. Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-09-09app/dbus: accept system bus configOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-09-09app/dbus: set dbusAddress earlyOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-09-09app/dbus: manage dbus proxy and pass address to childOphestra Umiker
This commit adds code that starts and registers the D-Bus proxy, as well as cleanup code that tracks and closes the daemon once our child exits. A few more flags were added to pass D-Bus config to xdg-dbus-proxy. Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-09-09app: treat display server variable unset as fatalOphestra Umiker
This is yet another remnant of Ego, as Ego unconditionally shares these resources and the absence of them are ignored and warned about in verbose logging. In our case they are individually opt-in so silently dropping them while the enablement is still set makes very little sense. Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-09-09app/run: remove bare launch optionOphestra Umiker
This flag serves no use and is only a leftover from Ego. Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-09-08clean up setup/launcher code and enable better control over sharesOphestra Umiker
In the past Wayland, X and PulseAudio are shared unconditionally. This can unnecessarily increase attack surface as some of these resources might not be needed at all. This commit moves all environment preparation code to the internal app package and selectively call them based on flags. An "enablements" bitfield is introduced tracking all enabled shares. This value is registered after successful child process launch and stored in launcher states. Code responsible for running the child process is isolated to its own app/run file and cleaned up. Launch method selection is also extensively cleaned up. The internal state/track readLaunchers function now takes uid as an argument. Launcher state is now printed using text/tabwriter and argv is only emitted when verbose. Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-09-04app/launch: set argv when launching shellOphestra Umiker
Signed-off-by: Ophestra Umiker <cat@ophivana.moe>
2024-09-04rename to fortify and restructureOphestra Umiker
More sandbox features will be added and this will no longer track ego's features and behaviour. Signed-off-by: Ophestra Umiker <cat@ophivana.moe>