diff --git a/cmake/install/clio.service.in b/cmake/install/clio.service.in new file mode 100644 index 000000000..1ecdddb66 --- /dev/null +++ b/cmake/install/clio.service.in @@ -0,0 +1,17 @@ +[Unit] +Description=Clio XRPL API server +Documentation=https://github.com/XRPLF/clio.git + +After=network-online.target +Wants=network-online.target + +[Service] +Type=simple +ExecStart=@CLIO_INSTALL_DIR@/bin/clio_server @CLIO_INSTALL_DIR@/etc/config.json +Restart=on-failure +User=clio +Group=clio +LimitNOFILE=65536 + +[Install] +WantedBy=multi-user.target diff --git a/cmake/install/install.cmake b/cmake/install/install.cmake index 21f1da1e9..848197969 100644 --- a/cmake/install/install.cmake +++ b/cmake/install/install.cmake @@ -11,3 +11,6 @@ file(READ docs/examples/config/example-config.json config) string(REGEX REPLACE "./clio_log" "/var/log/clio/" config "${config}") file(WRITE ${CMAKE_BINARY_DIR}/install-config.json "${config}") install(FILES ${CMAKE_BINARY_DIR}/install-config.json DESTINATION etc RENAME config.json) + +configure_file("${CMAKE_SOURCE_DIR}/cmake/install/clio.service.in" "${CMAKE_BINARY_DIR}/clio.service") +install(FILES "${CMAKE_BINARY_DIR}/clio.service" DESTINATION /lib/systemd/system)