Skip to content

shini4i/openfortivpn-gui

Repository files navigation

openfortivpn-gui

GitHub go.mod Go version GitHub release Go Report Card GitHub license

openfortivpn-gui screenshot

A modern GTK4/libadwaita GUI client for Fortinet SSL VPN on Linux, wrapping the openfortivpn CLI tool.

Features

  • Multiple VPN Profiles - Create, edit, and manage multiple VPN connection profiles
  • Multiple Authentication Methods: Username/Password, OTP, Client Certificate, SAML/SSO
  • System Tray Integration - Minimize to tray, quick connect/disconnect
  • Desktop Notifications - Connection status notifications
  • Secure Credential Storage - Passwords stored in system keyring (libsecret)
  • Auto-Connect - Optionally connect to last used profile on startup
  • Configurable Routing - DNS, routes, and split tunneling options

Installation

NixOS / Nix

Add shini4i/nixpkgs as a flake input or install directly:

# Enable binary cache for faster installs
cachix use shini4i

# Install
nix profile install github:shini4i/nixpkgs#openfortivpn-gui

A NixOS module is also available for declarative configuration.

Fedora

Download the .rpm package from GitHub Releases:

sudo dnf install ./openfortivpn-gui-*.rpm

After installation, enable passwordless VPN operations:

sudo usermod -aG openfortivpn-gui $USER
# Log out and back in, then:
sudo systemctl enable --now openfortivpn-gui-helper

Debian/Ubuntu

Note: Debian/Ubuntu packages are not available yet due to libadwaita version requirements (needs 1.7+). Packages will be provided once compatible versions reach Debian/Ubuntu repositories.

Building from Source

# Enter development shell with all dependencies
nix develop

# Build and run
task build
task run

Usage

  1. Launch openfortivpn-gui
  2. Click "+" to create a VPN profile
  3. Configure server, authentication method, and routing options
  4. Select a profile and click "Connect"

Set OPENFORTIVPN_GUI_DEBUG=1 for debug logging.

License

GPL-3.0 - see LICENSE for details.

Acknowledgments

About

Modern GTK4/libadwaita GUI for Fortinet SSL VPN on Linux, wrapping openfortivpn with multi-profile support, SAML/SSO auth, and secure keyring storage.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages