serviço do sistema para fluxo de informações de serviço do usuário

serviço do sistema para fluxo de informações de serviço do usuário

Estou tentando abstrair alguns arquivos/dev/input para que os sistemas de nível de usuário possam saber quando a tela sensível ao toque está sendo usada e quando o touchpad está sendo usado (sem ter acesso aos dados brutos do mouse).

Para fazer isso, quero criar um serviço de sistema raiz que monitore os arquivos /dev/input em busca de alterações e publique mensagens "atualmente usando touchpad" ou "atualmente usando touchscreen" que serviços de sessão não-root podem captar (por exemplo, então um serviço em /etc/systemd/user/ pode aproveitar as informações)

Métodos potenciais em que pensei:

  1. Faça com que o serviço raiz gerencie um arquivo no qual os serviços não-root possam monitorar atualizações
  2. Publique em algum tipo de barramento, como dbus (não trabalhei com dbus antes, mas parece que o barramento do sistema versus o barramento de sessão está isolado)

Quais são alguns padrões recomendados aqui? Não trabalhei muito com processo -> comunicação de processo no Linux, mas acho que deve haver uma maneira limpa de fazer algo assim.

editar: estou procurando especificamente um fluxo um para muitos, ao contrário dos pipes nomeados que parecem ser um para tom.

informação relacionada