Added a system service

This commit is contained in:
2026-03-19 23:20:13 +01:00 Verified
parent 34a5582b58
commit bf3c6595ac
2 changed files with 59 additions and 0 deletions
+38
View File
@@ -1,3 +1,41 @@
# Weather Station
Code for the indoor Weather Station
## Step 1: Install and Pass the "Variable"
Move the template file to the system folder and reload the daemon:
* `sudo cp weather-station@.service /etc/systemd/system/`
* `sudo systemctl daemon-reload`
---
## Step 2: Enable and Start
Now, when you enable and start the service, you **append your actual username** right after the `@` symbol.
If your username was `pi-user`:
* **Enable it to start on boot:**
`sudo systemctl enable weather-station@pi-user.service`
* **Start the script right now:**
`sudo systemctl start weather-station@pi-user.service`
---
## Step 3: How to check on it
* **To see if it's running:**
`sudo systemctl status weather-station@pi-user.service`
* **To read the live console output (like seeing the print statements):**
`sudo journalctl -u weather-station@pi-user.service -f`
*(Press `Ctrl+C` to exit the log view)*
* **To manually restart it (if you update your code):**
`sudo systemctl restart weather-station@pi-user.service`
+21
View File
@@ -0,0 +1,21 @@
# weather-station@.service
[Unit]
Description=E-Ink Weather Station Daemon
After=network-online.target
Wants=network-online.target
[Service]
User=%i
Group=%i
WorkingDirectory=/home/%i/weather-station
ExecStart=/home/%i/weather-station/.venv/bin/python /home/%i/weather-station/main.py
# Auto-restart logic
Restart=always
RestartSec=10
Environment=PYTHONUNBUFFERED=1
[Install]
WantedBy=multi-user.target