dotfiles/.bin/wifi-ticket.sh
2026-01-29 17:55:03 -03:00

34 lines
874 B
Bash
Executable file

#!/bin/bash
set -e -o pipefail
PASS_ROOT="$HOME/.password-store"
pass_path=$(find "$PASS_ROOT/sci/wifi" -type f -name "*.gpg" \
| sed -e "s:^$PASS_ROOT/::" -e 's:.gpg$::' \
| fzf)
wifi_pass=$(pass $pass_path)
wifi_ssid=$(echo $pass_path | cut -d/ -f4)
wifi_qr="WIFI:T:WPA;S:$wifi_ssid;P:$wifi_pass;;"
wifi_qr_svg="/tmp/wifi_$wifi_ssid.svg"
wifi_qr_png="/tmp/wifi_$wifi_ssid.png"
qrencode -t svg --output=$wifi_qr_svg "$wifi_qr"
convert -resize 576x576 $wifi_qr_svg $wifi_qr_png
echo "ssid: $wifi_ssid"
echo "pass: $wifi_pass"
# print QR code on escpos printer
python3 <<EOF
# from escpos.constants import QR_MICRO
from escpos.printer import Network
p = Network('192.168.0.26')
# p.image("$wifi_qr_png")
p.set(align='center')
p.qr("$wifi_qr", size=16)
p.set(align='left', width=2, height=2)
p.text(" ssid: $wifi_ssid\n")
p.text(" pass: $wifi_pass")
p.cut()
EOF