PiKVM/install.sh

47 lines
995 B
Bash
Raw Normal View History

2024-07-26 23:19:51 -04:00
#!/bin/bash
2024-07-27 09:27:30 -04:00
# Root check
2024-07-26 23:19:51 -04:00
if [ "$UID" != "0" ]; then
echo "Error: Please run as root"
exit 1
fi
2024-07-27 09:27:30 -04:00
# Setup
2024-07-26 23:36:10 -04:00
rw
./bin/swap-manager.sh
git status > /dev/null
if [ "$?" != "0" ]; then
echo "Missing dependencies, cloning..."
git clone https://git.zakscode.com/ztimson/PiKVM.git
cd PiKVM
fi
2024-07-26 23:19:51 -04:00
2024-07-27 09:27:30 -04:00
# Static MAC fix
echo ""
read -p "Enable static MAC (y/n): " YN
if [ "${YN,,}" == "y" ]; then
2024-07-27 09:27:30 -04:00
printf "Define vendor ID (defaults to Intel): " && read MAC_PREFIX
if [ -z "$MAC_PREFIX" ]; then MAC_PREFIX="80:86:00"; fi
files=(
"/etc/systemd/network/eth0.network"
"/etc/systemd/network/wlan0.network"
)
2024-07-27 09:27:30 -04:00
for file in "${files[@]}"; do
if [ -n "$(cat $file | grep MACAddress )" ]; then continue; fi
mac_address=$(printf '%02X:%02X:%02X' $((RANDOM % 256)) $((RANDOM % 256)) $((RANDOM % 256)))
cat <<EOF >> "$file"
2024-07-27 09:27:30 -04:00
[Link]
MACAddress=$MAC_PREFIX:$mac_address
2024-07-27 09:27:30 -04:00
EOF
done
2024-07-27 09:27:30 -04:00
fi
# pacman -S cronie python-pipx
# pipx install pillow RPI.GPIO spidev
./bin/swap-manager.sh --disable