aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2025-02-19 00:41:51 +0900
committerOphestra <cat@gensokyo.uk>2025-02-19 00:41:51 +0900
commit9a10eeab903705a3a033d36bfdc583ccd1bf586e (patch)
treee2f7571fc96f3edd06268d5a4d874146789676e7 /internal
parentd1f83f40d6eb3458bb01d39cf6177d5e6285b27f (diff)
app/seal: embed enablements
Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'internal')
-rw-r--r--internal/app/seal.go5
-rw-r--r--internal/app/share.go8
2 files changed, 6 insertions, 7 deletions
diff --git a/internal/app/seal.go b/internal/app/seal.go
index 35a025ca..e6efacd7 100644
--- a/internal/app/seal.go
+++ b/internal/app/seal.go
@@ -48,8 +48,6 @@ type appSeal struct {
// process-specific share directory path local to XDG_RUNTIME_DIR
shareLocal string
- // pass-through enablement tracking from config
- et system.Enablements
// initial config gob encoding buffer
ct io.WriterTo
// wayland socket direct access
@@ -62,6 +60,7 @@ type appSeal struct {
// seal system-level component
sys *appSealSys
+ system.Enablements
fst.Paths
// protected by upstream mutex
@@ -258,7 +257,7 @@ func (a *app) Seal(config *fst.Config) error {
seal.sys.I.WrapErr = fmsg.WrapError
// pass through enablements
- seal.et = config.Confinement.Enablements
+ seal.Enablements = config.Confinement.Enablements
// this method calls all share methods in sequence
if err := seal.setupShares([2]*dbus.Config{config.Confinement.SessionBus, config.Confinement.SystemBus}, a.os); err != nil {
diff --git a/internal/app/share.go b/internal/app/share.go
index 4fd77466..7252add2 100644
--- a/internal/app/share.go
+++ b/internal/app/share.go
@@ -140,7 +140,7 @@ func (seal *appSeal) setupShares(bus [2]*dbus.Config, os sys.State) error {
}
// set up wayland
- if seal.et.Has(system.EWayland) {
+ if seal.Has(system.EWayland) {
var socketPath string
if name, ok := os.LookupEnv(wl.WaylandDisplay); !ok {
fmsg.Verbose(wl.WaylandDisplay + " is not set, assuming " + wl.FallbackName)
@@ -175,7 +175,7 @@ func (seal *appSeal) setupShares(bus [2]*dbus.Config, os sys.State) error {
}
// set up X11
- if seal.et.Has(system.EX11) {
+ if seal.Has(system.EX11) {
// discover X11 and grant user permission via the `ChangeHosts` command
if d, ok := os.LookupEnv(display); !ok {
return fmsg.WrapError(ErrXDisplay,
@@ -191,7 +191,7 @@ func (seal *appSeal) setupShares(bus [2]*dbus.Config, os sys.State) error {
PulseAudio server and authentication
*/
- if seal.et.Has(system.EPulse) {
+ if seal.Has(system.EPulse) {
// check PulseAudio directory presence (e.g. `/run/user/%d/pulse`)
pd := path.Join(seal.RuntimePath, "pulse")
ps := path.Join(pd, "native")
@@ -243,7 +243,7 @@ func (seal *appSeal) setupShares(bus [2]*dbus.Config, os sys.State) error {
D-Bus proxy
*/
- if seal.et.Has(system.EDBus) {
+ if seal.Has(system.EDBus) {
// ensure dbus session bus defaults
if bus[0] == nil {
bus[0] = dbus.NewConfig(seal.fid, true, true)