Connect to a Fortinet SSL-VPN from the top bar with one click. * Several profiles: switch between accounts and gateways from the menu * OTP: save your secret and the code is made for you, or type it when you connect * Passwords and OTP secrets are kept in the GNOME Keyring * Safe DNS: VPN DNS first, your normal DNS stays as backup, everything restored on disconnect * Live connection steps and notifications Needs openfortivpn and a small root helper (not part of this zip). Easiest: install the forti-gnome .deb package from the project page, it installs everything. Manual: sudo apt install openfortivpn ppp pkexec gir1.2-secret-1, then install the 3 helper files as shown in the project README (Manual install). Not supported: push-only 2FA and SAML/SSO logins.
Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.
EGO-L-002 warning
objects created by extension should be destroyed in disable()
Objects assigned in `enable()` are missing matching `.destroy()` calls in `disable()` or its helper methods.
extension.js:129
this._detail = new St.BoxLayout({vertical: true, style_class: 'forti-tiles'})
extension.js:138
this._plist = new St.BoxLayout({vertical: true, style_class: 'forti-prows'})
extension.js:136
this._plistBox = new St.BoxLayout({vertical: true, style_class: 'forti-plist'})
extension.js:110
this._power = new St.Button({can_focus: true, x_align: CENTER, accessible_name: 'Connect or disconnect',
child: new St.Icon({icon_name: 'system-shutdown-symbolic', style_class: 'forti-power-icon',
x_align: CENTER, y_align: CENTER, x_expand: true, y_expand: true})}
EGO-L-001 warning
extension must not create GObject instances or modify shell before enable()
Resource creation or signal/source setup was found outside `enable()`.
Only use initialization for static resources
secrets.js:6
new Secret.Schema(
'org.forti-gnome.Secret',
Secret.SchemaFlags.NONE,
{profile: Secret.SchemaAttributeType.STRING, field: Secret.SchemaAttributeType.STRING})
EGO-L-005 warning
owned object references should be released in disable()
Owned references that are cleaned up in `disable()` should also be released with `null` or `undefined`.
extension.js:129
this._detail = new St.BoxLayout({vertical: true, style_class: 'forti-tiles'})
extension.js:138
this._plist = new St.BoxLayout({vertical: true, style_class: 'forti-prows'})
extension.js:136
this._plistBox = new St.BoxLayout({vertical: true, style_class: 'forti-plist'})
extension.js:110
this._power = new St.Button({can_focus: true, x_align: CENTER, accessible_name: 'Connect or disconnect',
child: new St.Icon({icon_name: 'system-shutdown-symbolic', style_class: 'forti-power-icon',
x_align: CENTER, y_align: CENTER, x_expand: true, y_expand: true})}
extension.js:52
this._settings = ext.getSettings()
EGO-L-003 warning
signals connected by extension should be disconnected in disable()
Signals assigned in `enable()` are missing matching disconnect calls in `disable()` or its helper methods.
extension.js:113
this._power.connect('clicked', () => this._onButton())
extension.js:321
entry.clutter_text.connect('activate', submit)
extension.js:312
d.connect('closed', () => d.destroy())
| Version | Status |
|---|---|
| 4 | Unreviewed |
| 3 | Rejected |
| 2 | Rejected |
| 1 | Rejected |