Radish alpha
h
rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5
Radicle Heartwood Protocol & Stack
Radicle
Git
systemd: Update for system install
Merged did:key:z6MksFqX...wzpT opened 2 years ago

While these unit files were good for a user install, they were not appropriate for running system services. Since most users nowadays use rad node to manage their node, it makes more sense for the unit files to be oriented towards server use.

2 files changed +18 -24 137961c1 292ff019
modified systemd/radicle-httpd.service
@@ -3,23 +3,21 @@
# When running radicle-httpd on a server, it should be run as a separate user.
#
# Copy this file into /etc/systemd/system and set the User/Group parameters
-
# under [Service] appropriately, or copy it into the user's systemd directory.
-
#
-
# For example:
-
#
-
#   mkdir -p $HOME/.config/systemd/user/
-
#   cp radicle-node.service $HOME/.config/systemd/user/radicle-node.service
+
# under [Service] appropriately, as well as the `RAD_HOME` environment variable.
#
[Unit]
-
After=syslog.target network.target
-
Description=Radicle HTTPd
+
Description=Radicle HTTP Daemon
+
After=network.target network-online.target
+
Requires=network-online.target

[Service]
-
ExecStart=%h/.radicle/bin/radicle-httpd --listen 127.0.0.1:8080
-
Environment=RAD_HOME=%h/.radicle RUST_BACKTRACE=1 RUST_LOG=info
+
User=seed
+
Group=seed
+
ExecStart=/usr/local/bin/radicle-httpd --listen 127.0.0.1:8080
+
Environment=RAD_HOME=/home/seed/.radicle RUST_BACKTRACE=1 RUST_LOG=info
KillMode=process
Restart=always
RestartSec=1

[Install]
-
WantedBy=default.target
+
WantedBy=multi-user.target
modified systemd/radicle-node.service
@@ -3,32 +3,28 @@
# When running radicle-node on a server, it should be run as a separate user.
#
# Copy this file into /etc/systemd/system and set the User/Group parameters
-
# under [Service] appropriately, or copy it into the user's systemd directory.
-
#
-
# For example:
-
#
-
#   mkdir -p $HOME/.config/systemd/user/
-
#   cp radicle-node.service $HOME/.config/systemd/user/radicle-node.service
+
# under [Service] appropriately, as well as the `RAD_HOME` environment variable.
#
# If your Radicle key is passphrase-protected, you will have to set the
-
# RAD_PASSPHRASE environment variable to the passphrase supplied during
+
# `RAD_PASSPHRASE` environment variable to the passphrase supplied during
# `rad auth`, eg.
#
#   [Service]
#   Environment=RAD_PASSPHRASE=snickerdoodle
#
-
# Also ensure RAD_HOME is set appropriately.
-
#
[Unit]
Description=Radicle Node
-
After=syslog.target network.target
+
After=network.target network-online.target
+
Requires=network-online.target

[Service]
-
ExecStart=%h/.radicle/bin/radicle-node --listen 0.0.0.0:8776 --force
-
Environment=RAD_HOME=%h/.radicle RUST_BACKTRACE=1 RUST_LOG=info
+
User=seed
+
Group=seed
+
ExecStart=/usr/local/bin/radicle-node --listen 0.0.0.0:8776 --force
+
Environment=RAD_HOME=/home/seed/.radicle RUST_BACKTRACE=1 RUST_LOG=info
KillMode=process
Restart=always
RestartSec=3

[Install]
-
WantedBy=default.target
+
WantedBy=multi-user.target