diff --git a/res/CMakeLists.txt b/res/CMakeLists.txt index 770c36d..e2108b0 100644 --- a/res/CMakeLists.txt +++ b/res/CMakeLists.txt @@ -6,15 +6,34 @@ execute_process( OUTPUT_VARIABLE DBUS_SESSION_SERVICES_DIR OUTPUT_STRIP_TRAILING_WHITESPACE ) +execute_process( + COMMAND ${PKG_CONFIG_EXECUTABLE} --variable=systemdsystemunitdir systemd + OUTPUT_VARIABLE SYSTEMD_SYSTEM_UNIT_DIR + OUTPUT_STRIP_TRAILING_WHITESPACE + ) configure_file( - org.freedesktop.miracle.service.cmake - org.freedesktop.miracle.service + miracle-wifid.service.cmake + miracle-wifid.service ) install( - FILES ${CMAKE_CURRENT_BINARY_DIR}/org.freedesktop.miracle.service - DESTINATION ${DBUS_SESSION_SERVICES_DIR}/ + FILES ${CMAKE_CURRENT_BINARY_DIR}/miracle-wifid.service + DESTINATION ${SYSTEMD_SYSTEM_UNIT_DIR}/ + ) + +install( + CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink miracle-wifid.service ${SYSTEMD_SYSTEM_UNIT_DIR}/dbus-org.freedesktop.miracle.wifi.service)" + ) + +configure_file( + org.freedesktop.miracle.wifi.service.cmake + org.freedesktop.miracle.wifi.service + ) + +install( + FILES ${CMAKE_CURRENT_BINARY_DIR}/org.freedesktop.miracle.wifi.service + DESTINATION ${DBUS_SYSTEM_SERVICES_DIR}/ ) install( diff --git a/res/miracle-wifid.service.cmake b/res/miracle-wifid.service.cmake new file mode 100644 index 0000000..46366ce --- /dev/null +++ b/res/miracle-wifid.service.cmake @@ -0,0 +1,10 @@ +[Unit] +Description=Miraclecast WiFiD + +[Service] +BusName=org.freedesktop.miracle.wifi +Environment=PATH=/sbin:/usr/bin +ExecStart=@CMAKE_INSTALL_PREFIX@/bin/miracle-wifid --use-dev --log-level trace --lazy-managed + +[Install] +Allias=dbus-org.freedesktop.miracle.wifi.service diff --git a/res/org.freedesktop.miracle.service.cmake b/res/org.freedesktop.miracle.service.cmake deleted file mode 100644 index fbd23f0..0000000 --- a/res/org.freedesktop.miracle.service.cmake +++ /dev/null @@ -1,3 +0,0 @@ -[D-BUS Service] -Name=org.freedesktop.miracle -Exec=@CMAKE_INSTALL_PREFIX@/bin/miracle-sender diff --git a/res/org.freedesktop.miracle.wifi.service.cmake b/res/org.freedesktop.miracle.wifi.service.cmake new file mode 100644 index 0000000..bf7207c --- /dev/null +++ b/res/org.freedesktop.miracle.wifi.service.cmake @@ -0,0 +1,5 @@ +[D-BUS Service] +Name=org.freedesktop.miracle.wifi +Exec=/bin/sh -c 'PATH=/sbin:/usr/bin @CMAKE_INSTALL_PREFIX@/bin/miracle-wifid --use-dev --log-level trace' +User=root +SystemdService=dbus-org.freedesktop.miracle.wifi.service