Commit 9fff16821c
Verified · cmc
Layout: unified · split
macos/motd/motd.sh +46 −4
| @@ -2,11 +2,53 @@ BOLD='\033[1m' | ||
| 2 | 2 | DIM='\033[2m' |
| 3 | 3 | RESET='\033[0m' |
| 4 | 4 | |
| 5 | VPN=$(mullvad status 2>/dev/null | head -1 || echo "disconnected") | |
| 6 | IP=$(mullvad status | rg -o '(\d{1,3}\.){3}\d{1,3}') | |
| 5 | HOST=$(scutil --get ComputerName 2>/dev/null || hostname) | |
| 6 | ||
| 7 | IP=$(ipconfig getifaddr en0 2>/dev/null || ipconfig getifaddr en1 2>/dev/null) | |
| 8 | IP=${IP:-unavailable} | |
| 9 | ||
| 10 | SSID=$(networksetup -getairportnetwork en0 2>/dev/null | sed 's/^Current Wi-Fi Network: //') | |
| 11 | case "$SSID" in | |
| 12 | ""|"You are not associated with an AirPort network.") | |
| 13 | SSID="unavailable" | |
| 14 | ;; | |
| 15 | esac | |
| 16 | ||
| 17 | BATTERY=$(pmset -g batt 2>/dev/null | awk -F'; *' ' | |
| 18 | NR==2 { | |
| 19 | gsub(/^ +| +$/, "", $2) | |
| 20 | gsub(/^ +| +$/, "", $3) | |
| 21 | sub(/ present: true$/, "", $3) | |
| 22 | print $2 ", " $3 | |
| 23 | } | |
| 24 | ') | |
| 25 | BATTERY=${BATTERY:-unavailable} | |
| 26 | ||
| 27 | UPTIME=$(uptime | sed 's/^.*up //; s/, [0-9]* user.*//; s/, load averages.*//') | |
| 28 | UPTIME=${UPTIME:-unavailable} | |
| 29 | ||
| 30 | if profiles status -type enrollment 2>/dev/null | grep -qi "MDM enrollment: Yes"; then | |
| 31 | MANAGED="yes" | |
| 32 | else | |
| 33 | MANAGED="no" | |
| 34 | fi | |
| 35 | ||
| 36 | VPN="unavailable" | |
| 37 | ||
| 38 | if command -v mullvad >/dev/null 2>&1; then | |
| 39 | STATUS=$(mullvad status 2>/dev/null) | |
| 40 | VPN=$(printf '%s\n' "$STATUS" | head -1) | |
| 41 | VPN=${VPN:-unavailable} | |
| 42 | fi | |
| 7 | 43 | |
| 8 | 44 | printf "\n" |
| 9 | 45 | printf " ${BOLD}%s${RESET} ${DIM}%s${RESET}\n" "$USER" "$(uname -sr)" |
| 10 | printf " ${DIM}vpn ${RESET}%s\n" "$VPN" | |
| 11 | printf " ${DIM}ip ${RESET}%s\n" "$IP" | |
| 46 | printf " ${DIM}%-14s${RESET}%s\n" "host" "$HOST" | |
| 47 | printf " ${DIM}%-14s${RESET}%s\n" "managed" "$MANAGED" | |
| 48 | printf " ${DIM}%-14s${RESET}%s\n" "wifi" "$SSID" | |
| 49 | printf " ${DIM}%-14s${RESET}%s\n" "ip" "$IP" | |
| 50 | printf " ${DIM}%-14s${RESET}%s\n" "mullvad" "$VPN" | |
| 51 | printf " ${DIM}%-14s${RESET}%s\n" "battery" "$BATTERY" | |
| 52 | printf " ${DIM}%-14s${RESET}%s\n" "uptime" "$UPTIME" | |
| 12 | 53 | printf "\n" |
| 54 | ||