Skip to content

Instantly share code, notes, and snippets.

@kc1awv
Last active July 3, 2024 12:43
Show Gist options
  • Save kc1awv/1da0fe5e52df7274c66316a8bc064aea to your computer and use it in GitHub Desktop.
Save kc1awv/1da0fe5e52df7274c66316a8bc064aea to your computer and use it in GitHub Desktop.

RNS Install (as local user) on fresh Debian Bookworm (12) for fun and profit

As root:

Create a new user (as root)

  • Add a new user, set password, you can leave all other questions blank
    • adduser reticulum

Enable linger for user (allows user unit to run when logged out)

  • loginctl enable-linger reticulum

Install prerequisites (as root)

  • Add in needed Python packages
    • apt install python3 python3-venv python3-pip

As new user:

Create Python virtual environment for RNS

  • python3 -m venv .venv

Enter new Python virtual environment

  • source .venv/bin/activate

Install RNS

  • pip install rns

Run rnsd to test and create new RNS config file

  • rnsd

Exit rnsd with ^C and edit the config file to your needs

  • nano .reticulum/config

Create path and systemd user unit file

  • mkdir -p .config/systemd/user
  • nano .config/systemd/user/rnsd.service
[Unit]
Description=Reticulum Network Stack Daemon
After=network.target

[Service]
Type=simple
Restart=always
RestartSec=3
ExecStart=/home/reticulum/.venv/bin/python3 rnsd

[Install]
WantedBy=default.target

Check that the service starts

  • systemctl --user start rnsd.service
  • systemctl --user status rnsd.service

If all is good, then enable the service

  • systemctl --user enable rnsd.service

All done!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment