Comments (9)
But eventually in the long run we do plan to add support so that the app start once the user has logged in (mainly because we need access to the keyring which only gets unlocked after the user has logged in).
Hmm I do not understand your point here: I did add ProtonVPN to startup apps in GNOME and it works perfectly. What we need imo here is clearly a --no-window command line option, as Bridge does when I activate the autostart pref in app settings.
But there is a specific reason why we disconnect at app quit (as do other clients on their respective platforms), and is mainly for reliability.
Ok but when I close the app window (or apply request_quit() to GNOME Shell app), the app is still running. So maybe offer a pref to the user (really quit the app on window closed) vs (keep the app running on window closed), whatever could the user have installed once Ubuntu AppIndicators?
If we get some command line options, I can add them to icon's menu (atm there is no menu).
from proton-vpn-gtk-app.
Ok, here is the extension:
https://extensions.gnome.org/extension/6631/proton-vpn-button/
That's a very light extension. I checked carefully at logs to track bugs.
This has to be tested against a Flatpak setup.
from proton-vpn-gtk-app.
Using Ubuntu/GNOME too but official gtk app package.
I told Proton customer service that there is an odd behaviour here:
- install gtk app and run VPN
- closing the app does close VPN
- activate Ubuntu appindocators extension
- closing the app does hide the window app
- deactivate Ubuntu appindicators extension
- closing the app does hide the window app
Useful for those who want Proton VPN app silently running. But clearly a not intended behaviour.
I'll write now an extension that can hide Proton VPN window at start-up (+ button show/hide in systray).
from proton-vpn-gtk-app.
@calexandru2018
@jllaneras
@ProtonVPN
from proton-vpn-gtk-app.
And FYI I just did the same for bridge (that can natively start hidden, though):
https://extensions.gnome.org/extension/6634/proton-bridge-button/
from proton-vpn-gtk-app.
@fhtx, thanks for sharing those extensions.
Do you mean Bridge --no-window
argument? Didn't work for some reason. Maybe because of flatpak... Anyway, we have workarounds for now. One day devs might hopefully look into it. Seems like a very basic functionality to expect from something running at boot.
from proton-vpn-gtk-app.
I reverted these two extensions to a simple open/close app. It's for my usage fully ok, once the trick (I told about above) done for VPN app, to make the window close without quitting VPN app. It's annoying to simply have these apps minimized since they take place in overview anyway.
Since it seems we don't have API for VPN app yet, I don't know how to do better.
I can repeat what I told to customer service: Ubuntu AppIndicators is a very heavy and buggy extension with thousands lines of code and I don't think it's a good idea to use it in GNOME. Just my opinion.
from proton-vpn-gtk-app.
Hey @fthx,
Really appreciate your contribution 🚀 I read your code and saw that you communicate directly to gnome shell, which definitely is a cleaner solution then going via the extensions route. I wonder though if this would this work with KDE backends (I suspect not but I haven't tested) ? I'm saying this mainly because even though we have limited support for other DEs other then GNOME, the ExtensionIndicator works quite well cross-DEs (mainly Gnome, KDE, Mint, Cinnamon), that's why we resorted to that one.
But eventually in the long run we do plan to add support so that the app start once the user has logged in (mainly because we need access to the keyring which only gets unlocked after the user has logged in).
I told Proton customer service that there is an odd behaviour here:
install gtk app and run VPN closing the app does close VPN activate Ubuntu appindocators extension closing the app does hide the window app deactivate Ubuntu appindicators extension closing the app does hide the window app
Useful for those who want Proton VPN app silently running. But clearly a not intended behavior.
I see your point here, in the last step it should close the app, and it's indeed a bug that has to be fixed. But there is a specific reason why we disconnect at app quit (as do other clients on their respective platforms), and is mainly for reliability. If a server goes into maintenance, or there is a network drop/switch, you'd be left without internet connection because NM does not re-enable VPN connection automatically unless you add it as secondaries to your main connection, and to rely on secondaries is honestly not a very robust approach because your main connection could switch anytime and you'd be left unprotected. This also includes KS management which needs to work in tandem with the connection module. If you'd like to understand a bit more about this I'd suggest you take a look at the following packages (in the following order):
- https://github.com/ProtonVPN/python-proton-vpn-connection
- https://github.com/ProtonVPN/python-proton-vpn-network-manager
- https://github.com/ProtonVPN/python-proton-vpn-network-manager-openvpn
- https://github.com/ProtonVPN/python-proton-vpn-killswitch
- https://github.com/ProtonVPN/python-proton-vpn-killswitch-network-manager
- https://github.com/ProtonVPN/python-proton-vpn-api-core
from proton-vpn-gtk-app.
We have this in the plans but no ETA on this.
Edit: see my answer here
from proton-vpn-gtk-app.
Related Issues (20)
- Support VNC session HOT 10
- Adding a simple toggle to enable auto connect to fastest p2p/stream servers only HOT 3
- [Solved] Internet stops working after some times. `auth-failure` HOT 8
- `proton-vpn-gtk-app` not opening withing 2 minute (120 second) of system startup! HOT 8
- Please fix these basic and extremely annoying issues (probably just need to stop using gnome keyring/kwallet) HOT 6
- `proton-vpn-gtk-app` beta on Arch linux HOT 2
- Will you add an OpenRC support? HOT 1
- Instructions or a way to install the app on unsupported linux distribution HOT 1
- Facing many and annoying connection drops HOT 2
- Pytest fails with Segmentation fault on headless session HOT 1
- Fail to start if app crash or get killed unexpected last time HOT 5
- Locked Gnome keyring causes race condition and authentication denied HOT 2
- AttributeError: 'KeyringBackendLinuxSecretService' object has no attribute 'KEYRING_SERVICE' HOT 6
- Alternative API endpoint should have other ports HOT 1
- ProtonVPN Fatal Error on Connect in Ubuntu 23.10 on Raspberry Pi 5
- Consider using a monorepo for all python-proton-vpn-* packages HOT 1
- Proton-vpn not working on manjaro anymore HOT 1
- ProtonVPN App (from Proton repos) slow and unresponsive HOT 2
- Will there be a patch for Novel attack HOT 2
- Fedora 40 Killswitch Problem
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from proton-vpn-gtk-app.