VPN Bar is a native macOS application that lives in the menu bar and provides quick access to VPN connection management. The app automatically detects all configured VPN connections on your system and allows you to connect or disconnect with a single click.
|
|
|
Click on an image to view full size
- VPN Status Indication — the menu bar icon shows whether there's an active VPN connection
- Semi-transparent gray icon when no connection is active
- Colored shield icon when VPN is connected
- Quick Toggle — left-click the icon to toggle the active VPN connection
- Global Hotkeys — configurable keyboard shortcut to toggle VPN from any application
- Notifications — system notifications when VPN connects or disconnects
- Convenient Menu — right-click opens a menu with all available VPN connections
- Visual Indicators — each VPN in the menu displays a status icon (connected/disconnected)
- Flexible Settings — configure refresh interval, notifications, and display options
- Multilingual — supports English, Russian, and Chinese (Simplified)
- Lightweight — minimal system resource usage
Install VPN Bar via Homebrew:
brew tap borzov/vpn-bar https://github.com/borzov/vpn-bar
brew install --cask vpn-barBy default, Homebrew installs apps to ~/Applications. To install to /Applications instead:
brew install --cask --appdir="/Applications" vpn-barTo update:
brew upgrade --cask vpn-barNote: The Cask applies xattr -cr automatically after installation, so extra steps are usually not needed for first launch. Homebrew is the recommended installation method to avoid manual quarantine removal.
If the app is still blocked or shows "damaged" after brew install --cask vpn-bar, run sudo xattr -cr /Applications/VPNBarApp.app (or ~/Applications/VPNBarApp.app) and, if macOS shows a security message, go to System Settings → Privacy & Security and click Open Anyway.
- Download the latest version from Releases
- Extract the
VPNBarApp.ziparchive - Drag
VPNBarApp.appto your Applications folder - Launch the application from Applications
Note: The technical name remains VPNBarApp.app, but it displays as "VPN Bar" in the system.
Note: On first launch, macOS may request permission to access the network extension. Allow access for the app to work correctly.
Note: If macOS shows a security warning, open System Settings → Privacy & Security and click Open Anyway next to the message about the app.
If the app does not start and no process appears in Activity Monitor, try the following.
The Cask applies xattr -cr after installation. If the app still does not start:
- Check for quarantine:
xattr -l /Applications/VPNBarApp.app(or~/Applications/VPNBarApp.app). Ifcom.apple.quarantineis present, run:sudo xattr -cr /Applications/VPNBarApp.app - Open System Settings → Privacy & Security and, if there is a message about a blocked app, click Open Anyway
Before the first launch, run:
sudo xattr -cr /Applications/VPNBarApp.appIf macOS still blocks the app, open System Settings → Privacy & Security and click Open Anyway.
If the process still does not appear:
/Applications/VPNBarApp.app/Contents/MacOS/VPNBarAppWatch stderr. Alternatively: open /Applications/VPNBarApp.app and, if it crashes, check Console.app or run:
log show --predicate 'processImagePath contains "VPNBar"' --last 5m- macOS 12.0 (Monterey) or later. On Intel Macs, a universal (x86_64) build is required; recent releases provide it.
This app is menu bar only: there is no window and no Dock icon. Look for the icon on the right side of the menu bar (near the clock, Wi‑Fi, battery).
- Left-click the icon — toggles the active VPN connection (or the first available if none are active)
- Right-click the icon — opens the menu with VPN connections list
- Click a VPN in the menu — connects or disconnects the selected VPN
- Hotkey — configurable keyboard shortcut to toggle VPN from any application
Open the menu and select "Settings" to access app preferences:
- Status Update Interval — configure how often the app checks VPN connection status (recommended: 10-15 seconds)
- Notifications — enable/disable system notifications when VPN connects or disconnects
- Display — show connection name in tooltip when hovering over the icon
- Launch at Login — automatically start the app at system login (macOS 13+)
- Toggle VPN — set a global hotkey for quick VPN toggling
- Enhanced shortcut recording interface with visual modifier display and validation
- App information, version, and author
- Brief functionality description
- Direct link to the GitHub repository
- macOS 12.0 (Monterey) or later
- Configured VPN connections in the system
To automatically launch the app at login:
- Open System Settings
- Go to Users & Groups
- Select the Login Items tab
- Click the + button and add
VPNBarApp.app(displays as "VPN Bar")
The application is built with Swift and follows Apple's guidelines for native macOS app development.
swift build -c release
./Scripts/package_app.shReleases are created automatically when pushing a tag in the v* format (e.g., v0.6.0):
# After finishing work on a version
git tag v0.6.0
git push origin v0.6.0GitHub Actions will automatically:
- Build the application
- Create the .app bundle
- Package it into a ZIP archive
- Create a GitHub Release with the attached archive