ProtonVPN / proton-vpn-gtk-app

Official ProtonVPN Linux app
https://protonvpn.com/download-linux
GNU General Public License v3.0
155 stars 20 forks source link

Asking for password after switching servers couple times #4

Closed github2099 closed 3 months ago

github2099 commented 8 months ago

Related to https://github.com/ProtonVPN/linux-cli/issues/108

Anonymous941 commented 8 months ago

@calexandru2018 Similar problem here, but where it asks for it every time I quit or reboot. I have 3 computers running Ubuntu, and none of them worked, but when I clean installed on one of them, the problem stopped happening.

When I quit the app, the following is logged:

2023-10-28T18:00:19.520283 | proton.vpn.app.gtk.widgets.headerbar.menu.menu:200 | INFO | UI.DIALOG:QUIT | Yes
2023-10-28T18:00:19.522838 | proton.vpn.connection.states:120 | WARNING | CONN:WARNING | DISCONNECTED state received unexpected event: Down
2023-10-28T18:00:19.523318 | proton.vpn.app.gtk.services.reconnector.reconnector:98 | INFO | VPN reconnector disabled.
2023-10-28T18:00:19.523518 | proton.vpn.app.gtk.services.refresher.client_config_refresher:76 | INFO | Client config refresher disabled.
2023-10-28T18:00:19.523672 | proton.vpn.app.gtk.services.refresher.server_list_refresher:81 | INFO | Server list refresher disabled.
2023-10-28T18:00:19.523811 | proton.vpn.app.gtk.services.refresher.vpn_data_refresher:141 | INFO | APP.VPN_DATA_REFRESHER:DISABLE | VPN data refresher service disabled.
2023-10-28T18:00:19.645674 | asyncio:1758 | ERROR | Task was destroyed but it is pending!
task: <Task pending name='Task-5' coro=<TCPConnector._resolve_host() running at /usr/lib/python3/dist-packages/aiohttp/connector.py:880> wait_for=<Future pending cb=[_chain_future.<locals>._call_check_cancel() at /usr/lib/python3.10/asyncio/futures.py:385, Task.task_wakeup()]> cb=[TCPConnector._create_direct_connection.<locals>.drop_exception() at /usr/lib/python3/dist-packages/aiohttp/connector.py:1157]>

After restarting, this is logged:

2023-10-28T18:01:15.481436 | proton.vpn.app.gtk.app:58 | INFO | APP:PROCESS_START | self=<app.App object at 0x... (proton+vpn+app+gtk+app+App at 0x...)>
2023-10-28T18:01:16.144833 | proton.vpn.connection.vpnconnector:185 | INFO | CONN:STATE_CHANGED | Disconnected (initial state)

The second line doesn't appear if I quit before logging in, then reopen the app. This is incredibly annoying that I constantly have to log in, but even worse when the kill switch is enabled, as the app can't log in without an internet connection. I have to manually run

nmcli connection delete pvpn-killswitch

...or reboot the computer every time.

calexandru2018 commented 8 months ago

@Anonymous941 not sure I fully understand the issue here. Could you explain exactly the steps that you take please. @github2099 this could either be due to KS or something else, what plan are you on ?

Anonymous941 commented 8 months ago

not sure I fully understand the issue here. Could you explain exactly the steps that you take please

The problem is that it requires logging in every time the app is quit:

  1. I reboot the computer or quit the app When this happens, the following is logged just before exiting:
    2023-10-28T18:00:19.520283 | proton.vpn.app.gtk.widgets.headerbar.menu.menu:200 | INFO | UI.DIALOG:QUIT | Yes
    2023-10-28T18:00:19.522838 | proton.vpn.connection.states:120 | WARNING | CONN:WARNING | DISCONNECTED state received unexpected event: Down
    2023-10-28T18:00:19.523318 | proton.vpn.app.gtk.services.reconnector.reconnector:98 | INFO | VPN reconnector disabled.
    2023-10-28T18:00:19.523518 | proton.vpn.app.gtk.services.refresher.client_config_refresher:76 | INFO | Client config refresher disabled.
    2023-10-28T18:00:19.523672 | proton.vpn.app.gtk.services.refresher.server_list_refresher:81 | INFO | Server list refresher disabled.
    2023-10-28T18:00:19.523811 | proton.vpn.app.gtk.services.refresher.vpn_data_refresher:141 | INFO | APP.VPN_DATA_REFRESHER:DISABLE | VPN data refresher service disabled.
    2023-10-28T18:00:19.645674 | asyncio:1758 | ERROR | Task was destroyed but it is pending!
    task: <Task pending name='Task-5' coro=<TCPConnector._resolve_host() running at /usr/lib/python3/dist-packages/aiohttp/connector.py:880> wait_for=<Future pending cb=[_chain_future.<locals>._call_check_cancel() at /usr/lib/python3.10/asyncio/futures.py:385, Task.task_wakeup()]> cb=[TCPConnector._create_direct_connection.<locals>.drop_exception() at /usr/lib/python3/dist-packages/aiohttp/connector.py:1157]>
  2. I then restart the app This line is logged only once, if I restart the app again without logging in, it doesn't appear:
    2023-10-28T18:01:16.144833 | proton.vpn.connection.vpnconnector:185 | INFO | CONN:STATE_CHANGED | Disconnected (initial state)
  3. The GNOME or KDE keyring prompts me for a password to create a new one, every time
  4. I now must enter my Proton username and password again, and since this requires Internet, I have to disable the killswitch manually

Again, thank you for looking into this and for making the new client! It's a very big improvement and not nearly as frustrating

Anonymous941 commented 8 months ago

@calexandru2018 Any updates to this?

calexandru2018 commented 3 months ago

Closing this and any further discussions should be on https://github.com/ProtonVPN/proton-vpn-gtk-app/issues/30