Add login-to-wifi.sh to system-menu
This commit is contained in:
19
system-menu/login-to-wifi.sh
Executable file
19
system-menu/login-to-wifi.sh
Executable file
@ -0,0 +1,19 @@
|
||||
#!/usr/bin/env zsh
|
||||
|
||||
# Find the default route
|
||||
default_route="$(ip route | grep '^default' | grep -Po '(?<=via )[^ ]+')"
|
||||
|
||||
if (( ${?} != 0 )); then
|
||||
printf '\e[91merror\e[m: could not get default route\n'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Reverse lookup the default route (idk why, it works sometimes)
|
||||
login_addr="$(mullvad-exclude host "${default_route}" "${default_route}" | awk 'NR==6 { print $4 }')"
|
||||
|
||||
if (( ${?} != 0)); then
|
||||
login_addr="${default_route}"
|
||||
fi
|
||||
|
||||
exec mullvad-exclude firejail --dns="${default_route}" \
|
||||
firefox --new-instance --no-remote "${login_addr}"
|
@ -1,13 +1,22 @@
|
||||
#!/usr/bin/env zsh
|
||||
|
||||
function is-laptop-p {
|
||||
[[ "${HOST}" == *-portable ]] || [[ "${HOST}" == *-laptop ]]
|
||||
}
|
||||
|
||||
function is-desktop-p {
|
||||
is-laptop
|
||||
}
|
||||
|
||||
pgrep swayidle && swayidle_state="Enabled" || swayidle_state="Disabled"
|
||||
|
||||
# Format: label action condition
|
||||
local entries=('Select system sound output' 'select-sound-output.sh' 'true'
|
||||
"Enable or disable system sleep (Current: ${swayidle_state})" 'system-sleep-menu.sh' 'true'
|
||||
'Enable or disable TV' 'tv-power-menu.sh' '[[ "${HOST}" = "alexanders-desktop" ]]'
|
||||
'Enable or disable TV' 'tv-power-menu.sh' 'is-desktop-p'
|
||||
'Configure USB device access' 'usbguard-menu.py' 'pgrep usbguard-daemon'
|
||||
'Power settings (restart and shutdown)' 'system-power-menu.sh' 'true')
|
||||
'Power settings (restart and shutdown)' 'system-power-menu.sh' 'true'
|
||||
'Login to captive portal protected WiFi' 'login-to-wifi.sh' 'is-laptop-p')
|
||||
|
||||
local entry_array=()
|
||||
local enabled_entries=()
|
||||
|
Reference in New Issue
Block a user