Bonjour,

Oui le titre n'est pas des plus parlant mais j'ai pas trouvé mieux.

Alors voilà le problème, j'aimerais que git-daemon exporte mes repos mais ceux-ci ne se trouvent pas dans le répertoire par défaut et une modification du unit file est nécessaire pour que cela fonctionne

Avant: /usr/lib/systemd/system/git@.service
[Unit]
Description=Git Repositories Server Daemon
Documentation=man:git-daemon(1)

[Service]
User=nobody
ExecStart=-/usr/libexec/git-core/git-daemon --base-path=/var/lib/git --export-all --user-path=public_git --syslog --inetd --verbose
StandardInput=socket
Après: /usr/lib/systemd/system/git@.service
[Unit]
Description=Git Repositories Server Daemon
Documentation=man:git-daemon(1)

[Service]
User=git
ExecStart=-/usr/libexec/git-core/git-daemon --base-path=/var/lib/git/repositories --export-all --user-path=public_git --syslog --inetd --verbose
StandardInput=socket
et en démarrant l'écoute socket ça fonctionne
systemctl start git.socket
Ben il est où le problème si ça marche :hammer:

le problème c'est qu'un simple
yum reinstall git-daemon
et tout est à refaire.

Le fait de copier le fichier /usr/lib/systemd/system/git@.service dans /etc/systemd/system/multi-user.target.wants/ ne change rien c'est toujours celui de /usr/lib/systemd/system qui est démarré à la connexion sur la socket.

Si quelqu'un a une solution ....
Bonjour,

Je n'ai pas encore eu l'occasion de tester, mais la documentation ici http://doc.fedora-fr.org/wiki/Systemd#Emplacement_des_fichiers_de_configuration dit justement :
Il est possible d'utiliser le répertoire /etc/systemd/system pour effectuer des modifications sans risque quelles soient perdues suite à une mise à jour du système
Pour cela, il suffit de créer le fichier /etc/systemd/system/XXX.service avec le contenu du fichier /lib/systemd/system/xxx.service, puis de modifier à votre convenance ce nouveau fichier.
Donc si tu le copie plutot dans /etc/systemd/system/git.socket et que tu fais tes modif dans ce fichier plutot?
Ben y a rien à modifier dans le fichier socket, mis à part le port de git
[Unit]
Description=Git Activation Socket

[Socket]
ListenStream=9418
Accept=true

[Install]
WantedBy=sockets.target
dans le doute, reboot, heu j'ai essayé et ça ne change rien. Le seul moyen est de modifier le fichier directement le fichier /usr/lib/systemd/system/git@.service

... ou de contacter le mainteneur et de lui demander de mettre base-path en conf

EDIT: c'est le unit service qui a le unit socket en dépendance.