aboutsummaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2025-01-25helper/seccomp: do not call F_println if not verboseOphestra
This (slightly) improves performance. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-25helper/seccomp: separate seccomp packageOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-25nix: expose compat flag in nixos moduleOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-25helper: block more unusual/privileged syscallsOphestra
These are toggled by F_EXT and exposed as SyscallPolicy.Compat in the Go interface. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-24nix: set deny_devel correctlyOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-24workflows: rename integration test artifactOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-24workflows: gc store and purge old cachesOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-24workflows: merge test build job into testOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-23wl: separate inline COphestra
Having a huge blurb of inline C hurts readability on web pages and some text editors. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-23release: 0.2.11Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-23nix: apply shared home config to reserved aidOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-23nix: expose syscall filter policyOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-23nix: configure target users via nixosOphestra
This makes patching home-manager no longer necessary. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-23nix: redirect sway output to journalOphestra
This makes swaymsg exec output appear in test output. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-22fst: add missing fields to templateOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-22cmd/fpkg: expose syscall policy optionsOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-22app/share: clean BaseError messageOphestra
This removes trailing '\n' in the PulseAudio warning. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-22dbus: enable syscall filterOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-22ldd: enable syscall filterOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-22fortify: set up seccomp verbose logging earlyOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-22helper/bwrap: integrate seccomp into helper interfaceOphestra
This makes API usage much cleaner, and encapsulates all bwrap arguments in argsWt. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-21proc: append to ExtraFiles slice pointerOphestra
This is useful for initialising extra files before command. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-21state: store config in separate gob streamOphestra
This enables early serialisation of config. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-21fortify: print permissive defaults warning earlyOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-20proc/priv/shim: resolve and load seccomp rulesOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-20proc/priv/shim: seccomp bpf filter via libseccompOphestra
Rulesets adapted from Flatpak for compatibility. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-20fst: include syscall filter configurationOphestra
This value is passed through to shim. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-20nix: test show without --shortOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-20proc/priv/shim: do not log bwrap argsOphestra
This message is very long and does not serve much real purpose. Remove it to de-clutter verbose messages. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-20helper/bwrap: generic extra file interfaceOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-19helper/bwrap: move sync to helper stateOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-19proc/priv/shim: remove unnecessary stateOphestra
These values are only used during process creation. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-18release: 0.2.10Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-18helper/bwrap: append --sync-fd before --Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-18proc/priv/init: early init checkOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-18proc: remove duplicate compile-time fortify referenceOphestra
This is no longer needed since shim and init are now part of the main program. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-18proc/priv/init: merge init into main programOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-17proc/priv/shim: merge shim into main programOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-17internal: do PR_SET_PDEATHSIG onceOphestra
This prctl affects the entire process, doing it on every OS thread is pointless. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-17nix: do not force static linking on nixOphestra
In a typical Nix or NixOS-based setup, the entire /nix/store directory is available to the sandbox. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-16fortify: switch to static linkingOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-15app: expose single run methodOphestra
App is no longer just a simple [exec.Cmd] wrapper, so exposing these steps separately no longer makes sense and actually hinders proper error handling, cleanup and cancellation. This change removes the five-second wait when the shim dies before receiving the payload, and provides caller the ability to gracefully stop execution of the confined process. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-15release: 0.2.9Ophestra
This release mostly contains permissive defaults fixes and optimisations. It also contains a proof of concept version of fpkg. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-15helper/bwrap: separate sequential/static argsOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-15fst: hide sockets exposed via FilesystemOphestra
This is mostly useful for permissive defaults. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-15fst: move sandbox struct to separate fileOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-14helper/bwrap: register OverlayConfig with gobOphestra
This is required for copying bwrap configurations across processes. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-12dbus: implement dbus_parse_addressOphestra
This parses D-Bus addresses according to spec. It does significantly fewer copies than dbus_parse_address. Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-12dbus: rename makeTestCasesOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2025-01-05helper/bwrap: implement overlayfs builderOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>