diff --git a/first-setup.sh b/first-setup.sh index 73f2fb5..b0dc4c0 100755 --- a/first-setup.sh +++ b/first-setup.sh @@ -82,7 +82,19 @@ argos ALL=(ALL) NOPASSWD: /bin/systemctl restart argos-analytics SUDOEOF chmod 440 /etc/sudoers.d/argos-systemctl visudo -cf /etc/sudoers.d/argos-systemctl > /dev/null -success "Sudoers per restart servizi configurato" +success "Sudoers per restart servizi configurato" + +# Permetti a user 'argos' di eseguire update.sh via UI (Release Notes -> Esegui update) +# Scope ristretto: SOLO update.sh, no wildcard, no shell generica. +# Path duplicato perché /usr/bin/bash e /bin/bash sono symlink ma sudoers +# matcha sul path esatto richiesto dall'invocatore. +cat > /etc/sudoers.d/argos-update <<'SUDOEOF' +argos ALL=(root) NOPASSWD: /usr/bin/bash /opt/argos/app/scripts/update.sh +argos ALL=(root) NOPASSWD: /bin/bash /opt/argos/app/scripts/update.sh +SUDOEOF +chmod 440 /etc/sudoers.d/argos-update +visudo -cf /etc/sudoers.d/argos-update > /dev/null +success "Sudoers per update.sh da UI configurato" # ══════════════════════════════════════════════════════════════════════════════ section "4. Struttura cartelle"