Como fazer com que um serviço /etc/xdg/autostart/app.desktop espere por um serviço (systemd)?

Como fazer com que um serviço /etc/xdg/autostart/app.desktop espere por um serviço (systemd)?

TLDR:

Como fazer com que um /etc/xdg/autostart/app.desktopserviço espere por um serviço do systemd?

Longo:

Eu tenho um aplicativo iniciado /etc/xdg/autostart/app.desktopque requer que um serviço systemd seja iniciado primeiro.

Eu gostaria de evitar algum código de suspensão/espera/customizado se houver uma ferramenta para tais fins.

Existe algum tipo de wait_for_service_to_be_running <service-name>ferramenta de linha de comando (systemd)?

Responder1

Crie yourservice.serviceo arquivo, coloque-o /etc/systemd/system/e execute-o systemctl start yourserviceem seu arquivo .desktop.

[Unit]
Requires=somesystemd.service
After=somesystemd.service

[Service]
ExecStart=/path/to/yourservice

Ou você pode substituir app.desktoppela configuração do systemd. Crie replacement.servicecomo acima com seção adicional:

[Install]
WantedBy=multi-user.target

Em seguida, execute-o com systemctl enable replacement.service.

Serviço Systemd - o que é `multi-user.target`pode dar mais detalhes.

informação relacionada