Paquet debian , lancement dès son installation dans les sessions utilisateur

Yep
Ai fait un programme tout simple en python et l’ai packagé. Pas de soucis
C’est un programme qui doit tourner en toile de fond (il fait de la lecture aléatoire de mp3, ne sert strictement à rien, juste pour s’amuser… BIOT Cyrille / Naheulbeuk · GitLab )

J’aimerais dès lors qu’il se lance automatiquement dès son installation dans les sessions des utilisateurs

Je pense qu’il faut que je crée un service mon_script_python dans /etc/systemd/system/ de ce style

[Unit]
Description = Mon Programme Python
After = network.target

[Service]
ExecStart = /usr/bin/mon_script_python

[Install]
WantedBy = multi-user.target

Et dans le postinstall

systemctl daemon-reload
systemctl enable mon_script_python
systemctl start mon_script_python

Sera t il pris en compte pour les users connectés ? Ou seulement à leur prochaine connexion ?

Pour la suppression, j’imagine que c’est dans prerm que ça se passe et non le postrm
Je mets ?

systemctl stop mon_script_python
systemctl disable mon_script_python

Et dans postrm

systemctl daemon-reload

Ce service touchera t il bien l’ensemble des user ayant un compte sur cette machine ?

Est ce la bonne façon de procéder ou y a t il mieux ?

D’avance merci !

Bon à priori ça n’inspire pas grand monde :wink:
Je dois mal m’y prendre

A force lire j’ai trouvé qu’il ne fallait pas mettre le service dans /etc/systemd/system/ mais dans
~/.config/systemd/user et le lancer en tant qu’–user

https://wiki.archlinux.org/title/Systemd/User#Xorg_as_a_systemd_user_service

Reste la question d’installer et de lancer ce service pour tous les users via le postint, sans doute une boucle bash sur ls -l /home

Je continue à penser que ma démarche est bancale, tout avis est le bienvenue :wink:

D’où peut-être le manque d’enthousiasme.

Ça ne semble pas logique comme démarche.
Par analogie à cron, je regarderai plutôt dans /etc/systemd/system/multi-user.target.wants/

├── multi-user.target.wants
│ ├── cron.service → /lib/systemd/system/cron.service
│ ├── cups.path → /lib/systemd/system/cups.path
│ ├── cups.service → /lib/systemd/system/cups.service
│ ├── haveged.service → /lib/systemd/system/haveged.service
│ ├── irqbalance.service → /lib/systemd/system/irqbalance.service
│ ├── remote-fs.target → /lib/systemd/system/remote-fs.target
│ ├── smartmontools.service → /lib/systemd/system/smartmontools.service
│ ├── systemd-networkd.service → /lib/systemd/system/systemd-networkd.service
│ └── systemd-resolved.service → /lib/systemd/system/systemd-resolved.service

1 J'aime