diff --git a/Makefile.am b/Makefile.am index ecd1c228..6f4be384 100644 --- a/Makefile.am +++ b/Makefile.am @@ -148,6 +148,9 @@ systemd_unit_DATA = dbus_busdir = @DBUS_BUSDIR@ dbus_bus_DATA = +systemd_networkdir = @SYSTEMD_NETWORKDIR@ +systemd_network_DATA = + systemd_modloaddir = @SYSTEMD_MODLOADDIR@ systemd_modload_DATA = src/pkcs8.conf endif @@ -248,6 +251,8 @@ src_iwd_DEPENDENCIES += src/iwd.service systemd_unit_DATA += src/iwd.service dbus_bus_DATA += src/net.connman.iwd.service + +systemd_network_DATA += src/50-iwd.link endif if MANUAL_PAGES @@ -507,7 +512,8 @@ TESTS = $(unit_tests) EXTRA_DIST = src/genbuiltin src/iwd.service.in src/net.connman.iwd.service \ wired/ead.service.in wired/net.connman.ead.service \ - src/pkcs8.conf doc/main.conf unit/gencerts.cnf \ + src/50-iwd.link src/pkcs8.conf unit/gencerts.cnf \ + doc/main.conf \ $(manual_pages) $(patsubst %.1,%.rst, \ $(patsubst %.5,%.rst, \ $(patsubst %.8,%.rst,$(manual_pages)))) diff --git a/configure.ac b/configure.ac index 35b71a8d..e54e5ea5 100644 --- a/configure.ac +++ b/configure.ac @@ -222,6 +222,20 @@ if (test "${enable_systemd_service}" != "no" && test -z "${path_systemd_unitdir} fi AC_SUBST(SYSTEMD_UNITDIR, [${path_systemd_unitdir}]) +AC_ARG_WITH([systemd-networkdir], AC_HELP_STRING([--with-systemd-networkdir=DIR], + [path to systemd network directory]), + [path_systemd_networkdir=${withval}]) +if (test "${enable_systemd_service}" != "no" && test -z "${path_systemd_networkdir}"); then + AC_MSG_CHECKING([systemd network directory]) + path_systemd_networkdir="`$PKG_CONFIG --variable=systemdutildir systemd`" + if (test -z "${path_systemd_networkdir}"); then + AC_MSG_ERROR([systemd network directory is required]) + fi + path_systemd_networkdir="${path_systemd_networkdir}/network" + AC_MSG_RESULT([${path_systemd_networkdir}]) +fi +AC_SUBST(SYSTEMD_NETWORKDIR, [${path_systemd_networkdir}]) + AC_ARG_WITH([systemd-modloaddir], AC_HELP_STRING([--with-systemd-modloaddir=DIR], [path to systemd modules load directory]), [path_systemd_modloaddir=${withval}]) diff --git a/src/50-iwd.link b/src/50-iwd.link new file mode 100644 index 00000000..19d9ed0e --- /dev/null +++ b/src/50-iwd.link @@ -0,0 +1,5 @@ +[Match] +Type=wlan + +[Link] +NamePolicy=keep kernel