agent: use socket activation, port credential + provide nixos module

This commit is contained in:
Val Packett 2025-07-17 23:16:39 -03:00
parent 30e76e3291
commit efae851a9a
4 changed files with 134 additions and 14 deletions

View file

@ -41,6 +41,24 @@
packages.sidebus-agent = rustPackage "sidebus-agent";
packages.sidebus-broker = rustPackage "sidebus-broker";
nixosModules.sidebus-vm = { ... }: {
environment.sessionVariables.DBUS_SESSION_BUS_ADDRESS = "unix:path=/run/sidebus.sock";
systemd.sockets.sidebus-agent = {
# SocketMode= is 0666 by default
listenStreams = [ "/run/sidebus.sock" ];
wantedBy = [ "sockets.target" ];
documentation = [ "https://git.clan.lol/valpackett/sidebus" ];
};
systemd.services.sidebus-agent = {
# TODO: confinement (can do a lot)
serviceConfig = {
ExecStart = "${rustPackage "sidebus-agent"}/bin/sidebus-agent";
ImportCredential = "sidebus.*";
};
documentation = [ "https://git.clan.lol/valpackett/sidebus" ];
};
};
}
);
}