Commit 9b41c827 authored by André Erdmann's avatar André Erdmann Committed by Thomas Petazzoni
Browse files

package/avahi: use upstream-provided systemd files



When using the buildroot-provided avahi-daemon.service file, bootup never
finishes, because multi-user.target is waiting for avahi-daemon to exit,
which is caused by "Type=oneshot" (in avahi-daemon.service).

Upstream's systemd files get already installed to /lib/systemd.
They're not an exact copy of S50avahi-daemon, but work flawlessly,
so use these units:

* avahi-daemon.service, auto-enabled (ln -fs in AVAHI_INSTALL_INIT_SYSTEMD)
* avahi-daemon.socket,
  not auto-enabled, but a dependency of avahi-daemon.service
* avahi-dnsconfd.service, auto-enabled

[Thomas: use simpler absolute paths for the symbolic links instead of
relative paths. Suggested by Maxime Hadjinlian.]

Signed-off-by: default avatarAndré Erdmann <dywi@mailerd.de>
Reviewed-by: default avatar"Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
parent bbd2948c
Loading
Loading
Loading
Loading
+0 −15
Original line number Diff line number Diff line
[Unit]
Description=Avahi daemon
Requires=dbus.target
After=syslog.target network.target auditd.service

[Service]
Type=oneshot
RemainAfterExit=ye
ExecStart=/usr/sbin/avahi-daemon -s
ExecReload=/usr/sbin/avahi-daemon -r
ExecStop=/usr/sbin/avahi-daemon -k
Restart=restart-always

[Install]
WantedBy=multi-user.target
+4 −4
Original line number Diff line number Diff line
@@ -164,14 +164,14 @@ endif
ifeq ($(BR2_PACKAGE_AVAHI_DAEMON),y)

define AVAHI_INSTALL_INIT_SYSTEMD
  $(INSTALL) -D -m 644 package/avahi/avahi-daemon.service \
    $(TARGET_DIR)/etc/systemd/system/avahi-daemon.service

  mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants

  ln -fs ../avahi-daemon.service \
  ln -fs /lib/systemd/system/avahi-daemon.service \
    $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/avahi-daemon.service

  ln -fs /lib/systemd/system/avahi-dnsconfd.service \
    $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/avahi-dnsconfd.service

  mkdir -p $(TARGET_DIR)/usr/lib/tmpfiles.d

  $(INSTALL) -D -m 644 package/avahi/avahi_tmpfiles.conf \