Avviare IRSSI al boot con Systemd su RaspberryPi

In realtà il sistema che propongo vale per qualsiasi sistema Linux con systemd.

Questo tutorial è il seguito naturale di quello in cui ho spiegato come usare il client IRC su Raspberry via SSH e screen, in modo tale da rimanere sempre agganciati ai nostri canali preferiti.

Il problema è che questa sera per colpa di un sovraccarico (lavatrice, lavastoviglie, ecc. ecc.) è saltata la luce e mi sono reso conto che avrei dovuto riavviare a mano tutto quanto.

Per lanciare Irssi al boot come utente (pi) è necessario creare una Unit utente (sì, systemctl può essere usato anche dagli utenti semplici col flag --user) nella cartella ~/.config/systemd/user/.

Creiamo dunque un file chiamato irssi.service con questo contenuto:

[Unit]
Description=IRSSI on SCREEN

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/bin/screen -dmS irc irssi -n axettone
ExecStop=/usr/bin/screen -S irc -X quit

[Install]
WantedBy=default.target

Dove -n axettone mi consente di usare il mio nome utente con cui sono registrato su Freenode.

A questo punto è necessario configurare Irssi affinché si colleghi di default ai nostri server preferiti ed effettui le join ai canali.

Infine, abilitiamo la Unit in modo tale che parta da sola:

systemctl --user enable irssi.service
systemctl --user start irssi.service