Fix WiFi connect: add polkit rule for NetworkManager + hostname in /etc/hosts
The Flask service runs as user 'pi' in a non-interactive session. nmcli device wifi connect requires polkit authorization which was missing, causing 'Not authorized to control networking' errors. - config/50-babycam-network.rules: grants pi full NetworkManager access via polkit - setup.sh: installs polkit rule, restarts polkit, fixes /etc/hosts hostname entry (missing 127.0.1.1 entry caused harmless but annoying sudo warnings) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
27f98f049b
commit
00cf83b04e
|
|
@ -0,0 +1,6 @@
|
|||
polkit.addRule(function(action, subject) {
|
||||
if (action.id.indexOf("org.freedesktop.NetworkManager") === 0 &&
|
||||
subject.user === "pi") {
|
||||
return polkit.Result.YES;
|
||||
}
|
||||
});
|
||||
18
setup.sh
18
setup.sh
|
|
@ -93,7 +93,23 @@ if [ -f /etc/systemd/resolved.conf ]; then
|
|||
fi
|
||||
|
||||
# ------------------------------------------------------------------------------
|
||||
# 6. NetworkManager: wlan1 als unmanaged markieren
|
||||
# 6. polkit: pi darf NetworkManager steuern (für WLAN-Verbindungen im Webinterface)
|
||||
# ------------------------------------------------------------------------------
|
||||
info "polkit-Regel für NetworkManager installieren..."
|
||||
mkdir -p /etc/polkit-1/rules.d
|
||||
cp "$REPO_DIR/config/50-babycam-network.rules" /etc/polkit-1/rules.d/
|
||||
chmod 644 /etc/polkit-1/rules.d/50-babycam-network.rules
|
||||
systemctl restart polkit
|
||||
|
||||
# Hostname in /etc/hosts eintragen (verhindert sudo-Warnings)
|
||||
HOSTNAME=$(hostname)
|
||||
if ! grep -q "127.0.1.1.*$HOSTNAME" /etc/hosts; then
|
||||
sed -i "s/127.0.1.1\s*raspberrypi/127.0.1.1\t\t$HOSTNAME/" /etc/hosts || \
|
||||
echo "127.0.1.1 $HOSTNAME" >> /etc/hosts
|
||||
fi
|
||||
|
||||
# ------------------------------------------------------------------------------
|
||||
# 7. NetworkManager: wlan1 als unmanaged markieren
|
||||
# ------------------------------------------------------------------------------
|
||||
info "wlan1 aus NetworkManager-Verwaltung nehmen..."
|
||||
mkdir -p /etc/NetworkManager/conf.d
|
||||
|
|
|
|||
Loading…
Reference in New Issue