set(BIN_NAME uos-recovery-service)


aux_source_directory(${UTILS_DIR} SERVICE_SRCS)
aux_source_directory(${UTILS_DIR}/data-collection SERVICE_SRCS)
aux_source_directory(${SERVER_DIR} SERVICE_SRCS)

find_package(PkgConfig REQUIRED)
find_package(Qt5Core REQUIRED)
find_package(DtkCMake REQUIRED)
find_package(DtkWidget REQUIRED)
find_package(Qt5Widgets REQUIRED)
find_package(Qt5DBus REQUIRED)
find_package(Qt5Sql REQUIRED)
find_package(PolkitQt5-1 REQUIRED)

include_directories(${CMAKE_SOURCE_DIR}/src)

aux_source_directory(${SERVER_DIR} SERVICE_SRCS)

add_executable(uos-recovery-service
        ${SERVICE_SRCS}
        )

target_include_directories(${BIN_NAME} PUBLIC
        ${DtkWidget_INCLUDE_DIRS}
        )


target_link_libraries(${BIN_NAME}
        ${Qt5Widgets_LIBRARIES}
        ${Qt5DBus_LIBRARIES}
        ${Qt5Sql_LIBRARIES}
        ${DtkWidget_LIBRARIES}
        PolkitQt5-1::Agent
        )


#translations

# bin
install(TARGETS ${BIN_NAME}
        DESTINATION /usr/lib/deepin-daemon)

#scripts
#file(GLOB SCRIPTS "scripts/*")
#install(FILES ${SCRIPTS}
#        DESTINATION lib/uos-recovery/scripts/)

install(FILES scripts/recovery-hooks
        DESTINATION /usr/share/initramfs-tools/hooks/
        PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
install(FILES scripts/initrd-recovery
        DESTINATION /usr/share/initramfs-tools/scripts/local-bottom/
        PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
install(FILES scripts/recovery-utils
        DESTINATION /usr/share/initramfs-tools/scripts/local-bottom/
        PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)

# grub 还原脚本和配置文件
install(FILES scripts/recovery-by-grub
        DESTINATION /var/lib/uos-recovery/scripts/
        PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
install(FILES config/recovery.json
        DESTINATION /var/lib/deepin-boot-kit/config)

#app ini
install(FILES config/uos-recovery.ini
        DESTINATION /etc/uos-recovery/)

# dbus conf
install(FILES service/com.deepin.uosrecovery.conf
        DESTINATION /usr/share/dbus-1/system.d/)

#dbus service
install(FILES service/com.deepin.uosrecovery.service
        DESTINATION /usr/share/dbus-1/system-services/)

# dbus policy
install(FILES service/com.deepin.uosrecovery.policy
        DESTINATION /usr/share/polkit-1/actions/)
