User Tools

Site Tools


setup_weeder.sh

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
setup_weeder.sh [2025/12/20 15:04] – created 46.109.187.144setup_weeder.sh [2025/12/20 15:45] (current) 46.109.187.144
Line 1: Line 1:
 +**chmod +x setup_weeder.sh && sudo ./setup_weeder.sh**
 +
 <code> <code>
-TER+#!/bin/bash 
 +set -euo pipefail 
 + 
 +# ====== CONFIG ====== 
 +USER="pi" 
 +HOME_DIR="/home/$USER" 
 +APP_DIR="$HOME_DIR/Desktop/WEEDER_PREMIUM_MULTI" 
 +SERVICE_NAME="weeder.service" 
 + 
 +echo "=== Install & enable NetworkManager ===" 
 +sudo apt update || true 
 +sudo apt install -y network-manager openssh-server 
 +sudo systemctl enable --now NetworkManager 
 +sudo systemctl enable --now ssh 
 + 
 +echo "=== Netplan: NetworkManager renderer + static eth0 (link-local) ===" 
 +sudo bash -c "cat <<'EOF' > /etc/netplan/99-nm.yaml 
 +network: 
 +  version: 2 
 +  renderer: NetworkManager 
 +  ethernets: 
 +    eth0: 
 +      dhcp4: no 
 +      addresses: 
 +        - 169.254.1.244/24 
 +EOF" 
 +sudo netplan apply 
 + 
 +echo "=== Create systemd service: $SERVICE_NAME ===" 
 +sudo bash -c "cat <<EOF > /etc/systemd/system/$SERVICE_NAME 
 +[Unit] 
 +Description=Weeder Premium Multi 2 startup script 
 +Wants=network-online.target 
 +After=network-online.target 
 + 
 +[Service] 
 +Type=simple 
 +User=$USER 
 +WorkingDirectory=$APP_DIR 
 +ExecStart=/usr/bin/python3 $APP_DIR/server.py 
 +Environment=PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin 
 +Restart=always 
 +RestartSec=5 
 +StandardOutput=append:$APP_DIR/startup.log 
 +StandardError=append:$APP_DIR/startup_error.log 
 + 
 +[Install] 
 +WantedBy=multi-user.target 
 +EOF" 
 + 
 +echo "=== Enable and start service ===" 
 +sudo systemctl daemon-reload 
 +sudo systemctl enable "$SERVICE_NAME" 
 +sudo systemctl restart "$SERVICE_NAME" 
 + 
 +echo "=== Desktop shortcut (optional) ===" 
 +mkdir -p "$HOME_DIR/Desktop" 
 +cat <<EOF > "$HOME_DIR/Desktop/weeder.desktop" 
 +[Desktop Entry] 
 +Version=1.0 
 +Name=weeder 
 +Comment=Run WEEDER server 
 +Exec=/usr/bin/python3 $APP_DIR/server.py 
 +Terminal=true 
 +Type=Application 
 +Categories=Utility; 
 +EOF 
 +gio set "$HOME_DIR/Desktop/weeder.desktop" metadata::trusted true || true 
 +chmod +x "$HOME_DIR/Desktop/weeder.desktop" 
 +chown "$USER:$USER" "$HOME_DIR/Desktop/weeder.desktop" || true 
 + 
 +echo "=== Sudoers (safe) ===" 
 +sudo bash -c "cat <<EOF > /etc/sudoers.d/weeder 
 +$USER ALL=(ALL) NOPASSWD: /sbin/shutdown, /sbin/iwlist, /usr/bin/nmcli, /bin/dmesg 
 +EOF" 
 +sudo chmod 0440 /etc/sudoers.d/weeder 
 + 
 +echo "=== Setup complete. Rebooting in 5 seconds... ===" 
 +sleep 5 
 +sudo reboot 
 + 
 </code> </code>
setup_weeder.sh.1766243054.txt.gz · Last modified: by 46.109.187.144 · Currently locked by: 216.73.216.181