User Tools

Site Tools


setup_weeder.sh

Differences

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

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
setup_weeder.sh [2025/12/20 15:34] 46.109.187.144setup_weeder.sh [2025/12/20 15:45] (current) 46.109.187.144
Line 3: Line 3:
 <code> <code>
 #!/bin/bash #!/bin/bash
 +set -euo pipefail
  
-Lietotājvārds +====== CONFIG ====== 
-USER=pi +USER="pi" 
-HOME_DIR=/home/$USER+HOME_DIR="/home/$USER
 +APP_DIR="$HOME_DIR/Desktop/WEEDER_PREMIUM_MULTI" 
 +SERVICE_NAME="weeder.service"
  
-sudo apt install -y network-manager+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 NetworkManager
 +sudo systemctl enable --now ssh
  
-# 0. Statiskā IP konfigurācija ar netplan +echo "=== Netplan: NetworkManager renderer + static eth0 (link-local) ===" 
-sudo bash -c "cat <<EOF > /etc/netplan/50-weeder-static-ip.yaml+sudo bash -c "cat <<'EOF> /etc/netplan/99-nm.yaml
 network: network:
   version: 2   version: 2
Line 19: Line 25:
     eth0:     eth0:
       dhcp4: no       dhcp4: no
-      addresses: [169.254.1.244/24+      addresses: 
-      routes: +        - 169.254.1.244/24
-        - to: default +
-          via: 169.254.1.1 +
-      nameservers: +
-        addresses: [8.8.8.8, 1.1.1.1] +
 EOF" EOF"
- 
-# Piemēro netplan konfigurāciju 
 sudo netplan apply sudo netplan apply
  
-# 1. Izveido .desktop saīsni +echo "=== Create systemd service: $SERVICE_NAME ===" 
-cat <<EOF > $HOME_DIR/Desktop/weeder.desktop +sudo bash -c "cat <<EOF > /etc/systemd/system/$SERVICE_NAME
-[Desktop Entry] +
-Version=1.0 +
-Name=weeder +
-Comment=Run my Python script +
-Exec=python3 $HOME_DIR/Desktop/WEEDER_PREMIUM_MULTI/server.py +
-Terminal=true +
-Type=Application +
-Category=Utility; +
-EOF +
- +
-# 2. Piešķir uzticamību un izpildes tiesības +
-gio set $HOME_DIR/Desktop/weeder.desktop metadata::trusted true +
-chmod +x $HOME_DIR/Desktop/weeder.desktop +
- +
-# 3. Pievienot /sbin/iwlist un /usr/bin/nmcli bez parolēm +
-echo "$USER ALL=(ALL) NOPASSWD: /sbin/shutdown, /sbin/iwlist, /usr/bin/nmcli" | sudo tee -a /etc/sudoers +
- +
-# 4. Pievienot /bin/dmesg bez parolēm +
-echo "$USER ALL=(ALL) NOPASSWD: /bin/dmesg" | sudo tee -a /etc/sudoers +
- +
-# 5. Izveidot systemd servisu automātiskai palaišanai +
-sudo bash -c "cat <<EOF > /etc/systemd/system/my_script.service+
 [Unit] [Unit]
-Description=WEEDER code +Description=Weeder Premium Multi 2 startup script 
-After=network.target+Wants=network-online.target 
 +After=network-online.target
  
 [Service] [Service]
-ExecStart=/usr/bin/python3 $HOME_DIR/Desktop/WEEDER_PREMIUM_MULTI/server.py +Type=simple
-Environment=\"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\" +
-WorkingDirectory=$HOME_DIR/Desktop/WEEDER_PREMIUM_MULTI +
-StandardOutput=journal +
-StandardError=journal +
-Restart=on-failure +
-RestartSec=2+
 User=$USER 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] [Install]
Line 73: Line 52:
 EOF" EOF"
  
-# 6. Aktivēt servisu+echo "=== Enable and start service ==="
 sudo systemctl daemon-reload sudo systemctl daemon-reload
-sudo systemctl enable my_script.service +sudo systemctl enable "$SERVICE_NAME" 
-sudo systemctl start my_script.service+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 " Iestatīšana pabeigtaRaspberry Pi tiks pārstartēts pēc sekundēm..."+echo "=== Setup completeRebooting in seconds... ==="
 sleep 5 sleep 5
 sudo reboot sudo reboot
setup_weeder.sh.1766244872.txt.gz · Last modified: by 46.109.187.144 · Currently locked by: 216.73.216.181