Raspberry Pi 4 autostart Qt aplikacija u vrijeme pokretanja

Ako ste stvorili Qt aplikaciju - ili bilo koju drugu aplikaciju - za Raspberry Pi 4, često želite da se aplikacija pozove odmah nakon ponovnog pokretanja maline nakon završetka prijave.
To se često pokušava s polaznim skriptama koje se mogu unijeti na različitim mjestima.
Međutim, razumnije je to postaviti putem sustavnog . Koristio sam raspbian-buster-lite sliku i Qt instalaciju kako je opisano u Qt na Raspberry Pi 4 kao početnu točku.
Aplikacija Qt nalazi se u direktoriju "/home/pi/application" i u ovom je primjeru nazvana "application_one".

Stvaranje .service datoteke

Prvo što trebate učiniti je stvoriti .service datoteku u direktoriju "/etc/systemd/systemd/system":

sudo nano application_one.service

Ovdje je sada uneseno sljedeće:

[Unit]
Description=Qt application autostart
After=graphical.target
After=network-online.target
Wants=network-online.target

[Service]
Type=simple
User=pi
WorkingDirectory=/home/pi/application
ExecStart=/home/pi/application/application_one

[Install]
WantedBy=multi-user.target

Unosi su zapravo samorazumljivi. Aplikacija "application_one" (ExecStart=/home/pi/application/application_one) pokreće se s korisničkim računom "pi" (User=pi). Unos "After=network-online.target" i dalje navodi da se aplikacija pokreće dok se ne uspostavi mrežna veza.

</:code2:></:code1:>

Obavještavanje servisa sustavu

Tada morate reći sustavu da bi nova usluga trebala biti aktivna:

sudo systemctl enable application_one.service

Zatim izvršite ponovno pokretanje i aplikacija bi se trebala automatski pokrenuti.

</:code3:>

Aplikacija se ne pokreće?

Ako se aplikacija ne pokrene automatski, možete se prijaviti pomoću

sudo systemctl status application_one.service

Prikažite status i pomoću informacija otklonite poteškoće. </:code4:>