Skip to content

Releases: CoderZCC/VPNMenuBar

v0.2.7

26 Apr 13:44

Choose a tag to compare

What's new

  • First-time setup now auto-triggers a connection when you click Done on the final onboarding step — no need to open the menu and pick Connect manually for the very first run.

Install

git pull
cp -R VPNMenuBar.app /Applications/
xattr -dr com.apple.quarantine /Applications/VPNMenuBar.app

Existing users will be prompted to update via Sparkle on next launch.

v0.2.6

24 Apr 16:41

Choose a tag to compare

What's new

  • Added a new Settings toggle Auto-connect on launch — when enabled, the app automatically connects to VPN about 5 seconds after launch.
  • The auto-connect only fires when setup is complete (all required fields filled), so it never triggers spurious failures on a half-configured install.
  • Once the auto-connect handshake succeeds, the existing network-drop auto-reconnect path takes over, so switching WiFi or sleeping/waking transparently recovers the tunnel.

Install

  1. Download VPNMenuBar-0.2.6.zip, unzip, and drag VPNMenuBar.app into /Applications/.
  2. Strip the quarantine flag: xattr -dr com.apple.quarantine /Applications/VPNMenuBar.app
  3. Existing users on v0.2.x will be auto-updated via Sparkle.

v0.2.5

24 Apr 13:26

Choose a tag to compare

Hotfix — strongly recommended for v0.2.3 / v0.2.4 users

  • Fixed: a failed openconnect handshake could leave a zombie child behind, with vpnc-script's DNS and route mutations applied but never reverted. Symptom: "WiFi connected but nothing has network access" until the user quit the app. connect() now always SIGTERMs any residual child on failure so vpnc-script's disconnect phase runs and restores DNS/routes.
  • Safety gate: the pre-connect host-route flush now only deletes when route get returns a concrete IPv4 destination. Previously, when no dedicated host route existed, the fall-through destination="default" was passed to route delete, wiping the system default route.

Users on v0.2.0+ get this via "Check for Updates…" (Sparkle). Otherwise see INSTALL.md.

v0.2.4

24 Apr 13:07

Choose a tag to compare

Improvement

  • Per-day log files~/Library/Logs/VPNMenuBar/vpnmenubar-YYYY-MM-DD.log. Individual files stay small, easy to pick through by date when triaging issues.
  • 14-day auto-retention — old files are purged at launch, no disk buildup.
  • "Show Logs…" menu and Settings → Reveal in Finder always resolve to the current day's file.

Install

Users on v0.2.0+ get this via "Check for Updates…" (Sparkle). Otherwise see INSTALL.md.

v0.2.3

24 Apr 13:06

Choose a tag to compare

Fix

  • Unconditional pre-connect route flush — fixes "connection failed immediately after openconnect spawn" when the cached host route to the VPN gateway looks correct (nexthop matches the default gateway) but traffic still doesn't route. Common after a gateway IP rotation or network change.
  • Previously the pre-connect cleanup only deleted routes whose nexthop obviously differed from the current default gateway; this missed cases where the cached IP rotated but the route table still pointed at the default gateway. Now every connect flushes the cached route unconditionally — safe because no active tunnel exists at that moment, and the kernel rebuilds the route on the next packet.
  • Each connect now logs the flush outcome (route IP, previous gateway, delete success/failure) to ~/Library/Logs/VPNMenuBar/vpnmenubar.log.

Install

Users on v0.2.0+ get this via "Check for Updates…" (Sparkle). Otherwise see INSTALL.md.

v0.2.2

24 Apr 12:54

Choose a tag to compare

Highlights

  • Whitespace-safe credential fields — fixes silent auth/cert failures from pasting values out of chat apps / PDFs
    • Strips surrounding whitespace and invisible characters (zero-width, NBSP, full-width space, newlines)
    • Applied on both save and load, so legacy configs are self-healing without waiting for a user-initiated save
    • Covers username, passwordPrefix, totpSecret, gateway, serverCertPin, openconnectPath, vpncScriptPath
  • Persistent file log at ~/Library/Logs/VPNMenuBar/vpnmenubar.log
    • Launch banner (version / arch / OS / bundle path)
    • Full connect flow (config load, dependency check summary, openconnect argv, handshake outcome)
    • Network reachable/unreachable events and interface changes
    • Watchdog-detected unexpected disconnects
    • Dependency-installer results (brew install, sudoers rule, vpnc-script reset)
    • Sensitive fields (password prefix, TOTP secret, generated code) are never written
    • 1 MB rolling limit with single .1.log archive
  • Menu-bar "Show Logs…" and Settings → "Reveal in Finder" for one-click log access

Install

Users on v0.2.0+ will get this via the in-app "Check for Updates…" (Sparkle).

For manual install, download the zip, unzip, and copy to /Applications/:
```sh
xattr -dr com.apple.quarantine /Applications/VPNMenuBar.app
```

See INSTALL.md for the full walkthrough.

v0.2.1

13 Apr 11:29

Choose a tag to compare

What's New

  • Redesigned status bar icon: white rounded-rect badge with cutout shield + colored status dot
  • Onboarding: gateway and server cert pin are now required fields
  • Settings: save closes the window and auto-reconnects; save button disabled when unchanged
  • About window: shows version, build number, copyright and GitHub link

Install

git clone https://github.com/CoderZCC/VPNMenuBar.git
cp -R VPNMenuBar/VPNMenuBar.app /Applications/
xattr -dr com.apple.quarantine /Applications/VPNMenuBar.app

Or download VPNMenuBar-0.2.1.zip below, unzip, and copy to /Applications.

v0.2.0

13 Apr 11:00

Choose a tag to compare

What's New

  • Auto-update via Sparkle — the app now checks for updates automatically and installs them with one
    click from the menu bar
  • Check for Updates menu item — manually trigger an update check anytime

Install

Download VPNMenuBar-0.2.0.zip, unzip, drag to /Applications, then run:
xattr -dr com.apple.quarantine /Applications/VPNMenuBar.app

See INSTALL.md for the full walkthrough.