VDR4Arch / vdr4arch

VDR PKGBUILDs for Arch Linux
34 stars 22 forks source link

vdrpbd : No Systemd Service Unit #222

Closed jlp2 closed 4 years ago

jlp2 commented 4 years ago

There is a problem with the vdrpbd-Package. After installation, the service can not be activated via systemctl, cause the vdrpbd.service is missing.

[xbmc@server ~]$ sudo systemctl start vdrpbd && sudo systemctl enable vdrpbd
Failed to start vdrpbd.service: Unit vdrpbd.service not found.

After clean install, only these files can be found:

[xbmc@server ~]$ locate vdrpbd
/etc/vdrpbd.conf
/usr/bin/vdrpbd
/usr/share/man/man1/vdrpbd.1.gz
/usr/share/man/man5/vdrpbd.conf.5.gz

In the original Package there is a file named "vdrpbd.service" but it was never copied through the installation. The "vdrpbd.service" should be in /usr/lib/systemd/system/vdrpbd.service

ls -l /etc/systemd/system/multi-user.target.wants/vdrpbd.service
lrwxrwxrwx 1 root root 38 31. Aug 2018  /etc/systemd/system/multi-user.target.wants/vdrpbd.service -> /usr/lib/systemd/system/vdrpbd.service
M-Reimer commented 4 years ago

This is may be a vdrpbd related problem so this is at least partially invalid here. VDRPBD is a separate project which is also used by other distributions.

Please run the following command on your system and post the result:

pkg-config --variable systemdsystemunitdir systemd
jlp2 commented 4 years ago
pkg-config --variable systemdsystemunitdir systemd
/usr/lib/systemd/system
M-Reimer commented 4 years ago

Then a "make install" (if done as "root") should install the service file. Can you please share the output of a "make install" call?

jlp2 commented 4 years ago

Yes, this did the trick...

$ sudo make install
mkdir -p /usr/local/share/man/man1
gzip -c vdrpbd.1 > /usr/local/share/man/man1/vdrpbd.1.gz
mkdir -p /usr/local/share/man/man5
gzip -c vdrpbd.conf.5 > /usr/local/share/man/man5/vdrpbd.conf.5.gz
mkdir -p /etc
cp -pn vdrpbd.conf /etc
install -D -m 755 vdrpbd /usr/local/sbin/vdrpbd
install -D -m 644 vdrpbd.service /usr/lib/systemd/system/vdrpbd.service
sed -i "s#/usr/sbin/vdrpbd#/usr/local/sbin/vdrpbd#" /usr/lib/systemd/system/vdrpbd.service
$ locate vdrpbd
/etc/vdrpbd.conf
/etc/systemd/system/multi-user.target.wants/vdrpbd.service
/usr/bin/vdrpbd
/usr/lib/systemd/system/vdrpbd.service
/usr/local/man/man1/vdrpbd.1.gz
/usr/local/man/man5/vdrpbd.conf.5.gz
/usr/local/sbin/vdrpbd
/usr/share/man/man1/vdrpbd.1.gz
/usr/share/man/man5/vdrpbd.conf.5.gz