Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Python 3.13 rebuild not connection anymore (packages got correctly rebuild) #87

Open
ptr1337 opened this issue Dec 22, 2024 · 20 comments
Open

Comments

@ptr1337
Copy link

ptr1337 commented Dec 22, 2024

Hi together,

ArchLinux has pushed today the python 3.13 rebuild. After updating the system and recompiling the proton-vpn packages (api-core, network-manager ,... ) the app is not able to connect anymore with the services.

Following is visible in the log:

2024-12-22T23:31:46.623910+00:00 | asyncio:1864 | ERROR | Exception in callback AgentListener._on_background_task_stopped()
handle: <Handle AgentListener._on_background_task_stopped()>
Traceback (most recent call last):
  File "/usr/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/protocol/wireguard/local_agent/fallback_local_agent.py", line 135, in connect
    return await loop.run_in_executor(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
        None, self._connect_sync, vpn_server_domain, credentials
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/lib/python3.13/concurrent/futures/thread.py", line 59, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/protocol/wireguard/local_agent/fallback_local_agent.py", line 168, in _connect_sync
    return self._establish_tls_connection(
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
        server_hostname=vpn_server_domain,
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    ...<3 lines>...
        ca_path=ca_path
        ^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/protocol/wireguard/local_agent/fallback_local_agent.py", line 186, in _establish_tls_connection
    with context.wrap_socket(sock, server_hostname=server_hostname):
         ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/ssl.py", line 455, in wrap_socket
    return self.sslsocket_class._create(
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
        sock=sock,
        ^^^^^^^^^^
    ...<5 lines>...
        session=session
        ^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/lib/python3.13/ssl.py", line 1076, in _create
    self.do_handshake()
    ~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/ssl.py", line 1372, in do_handshake
    self._sslobj.do_handshake()
    ~~~~~~~~~~~~~~~~~~~~~~~~~^^
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: Basic Constraints of CA cert not marked critical (_ssl.c:1018)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/lib/python3.13/asyncio/events.py", line 89, in _run
    self._context.run(self._callback, *self._args)
    ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/protocol/wireguard/local_agent/listener.py", line 133, in _on_background_task_stopped
    background_task.result()
    ~~~~~~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/protocol/wireguard/local_agent/listener.py", line 75, in _run_in_background
    self._connection = await self._connector.connect(domain, credentials)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/protocol/wireguard/local_agent/fallback_local_agent.py", line 139, in connect
    raise LocalAgentError(
        f"Local agent connection to {vpn_server_domain} failed."
    ) from exc
proton.vpn.backend.linux.networkmanager.protocol.wireguard.local_agent.fallback_local_agent.LocalAgentError: Local agent connection to node-de-19.protonvpn.net failed.

@ptr1337 ptr1337 changed the title after Python 3.13 rebuild not connection anymore (packages got correctly rebuild) Python 3.13 rebuild not connection anymore (packages got correctly rebuild) Dec 22, 2024
@0xl30
Copy link

0xl30 commented Dec 23, 2024

Same Error In Arch Linux

@RomainMorlevat
Copy link

RomainMorlevat commented Dec 23, 2024

I also had an error this morning after updating my system yesterday:

❯ protonvpn-app
Traceback (most recent call last):
File "/usr/lib/python3.13/importlib/metadata/init.py", line 407, in from_name
return next(iter(cls.discover(name=name)))
StopIteration
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/bin/protonvpn-app", line 33, in
sys.exit(load_entry_point('proton-vpn-gtk-app==4.8.1', 'console_scripts', 'protonvpn-app')())
~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/bin/protonvpn-app", line 22, in importlib_load_entry_point
for entry_point in distribution(dist_name).entry_points
~~~~~~~~~~~~^^^^^^^^^^^
File "/usr/lib/python3.13/importlib/metadata/init.py", line 960, in distribution
return Distribution.from_name(distribution_name)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.13/importlib/metadata/init.py", line 409, in from_name
raise PackageNotFoundError(name)
importlib.metadata.PackageNotFoundError: No package metadata was found for proton-vpn-gtk-app

I've tried reinstalling proton-vpn-gtk-app, had another error:

❯ protonvpn-app
Traceback (most recent call last):
File "/usr/bin/protonvpn-app", line 33, in
sys.exit(load_entry_point('proton-vpn-gtk-app==4.8.1', 'console_scripts', 'protonvpn-app')())
~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/bin/protonvpn-app", line 25, in importlib_load_entry_point
return next(matches).load()
~~~~~~~~~~~~~~~~~~^^
File "/usr/lib/python3.13/importlib/metadata/init.py", line 179, in load
module = import_module(match.group('module'))
File "/usr/lib/python3.13/importlib/init.py", line 88, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "", line 1387, in _gcd_import
File "", line 1360, in _find_and_load
File "", line 1310, in _find_and_load_unlocked
File "", line 488, in _call_with_frames_removed
File "", line 1387, in _gcd_import
File "", line 1360, in _find_and_load
File "", line 1331, in _find_and_load_unlocked
File "", line 935, in _load_unlocked
File "", line 1026, in exec_module
File "", line 488, in _call_with_frames_removed
File "/usr/lib/python3.13/site-packages/proton/vpn/app/gtk/init.py", line 33, in
from proton.vpn import logging # pylint: disable=C0413 # noqa: E402
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ImportError: cannot import name 'logging' from 'proton.vpn' (unknown location)

Then I've uninstalled it with -Rns and reinstalled, now it's working again. I hope this will help.

edit: wireguard connexion is not working, only TCP/UDP 😕

@0xl30
Copy link

0xl30 commented Dec 23, 2024

I also had an error this morning after updating my system yesterday:

❯ protonvpn-app
Traceback (most recent call last):
File "/usr/lib/python3.13/importlib/metadata/init.py", line 407, in from_name
return next(iter(cls.discover(name=name)))
StopIteration
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/bin/protonvpn-app", line 33, in
sys.exit(load_entry_point('proton-vpn-gtk-app==4.8.1', 'console_scripts', 'protonvpn-app')())

File "/usr/bin/protonvpn-app", line 22, in importlib_load_entry_point
for entry_point in distribution(dist_name).entry_points
~~~~~~~~~~~~^^^^^^^^^^^
File "/usr/lib/python3.13/importlib/metadata/**init**.py", line 960, in distribution
return Distribution.from_name(distribution_name)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.13/importlib/metadata/**init**.py", line 409, in from_name
raise PackageNotFoundError(name)
importlib.metadata.PackageNotFoundError: No package metadata was found for proton-vpn-gtk-app

I've tried reinstalling proton-vpn-gtk-app, had another error:

❯ protonvpn-app
Traceback (most recent call last):
File "/usr/bin/protonvpn-app", line 33, in
sys.exit(load_entry_point('proton-vpn-gtk-app==4.8.1', 'console_scripts', 'protonvpn-app')())

File "/usr/bin/protonvpn-app", line 25, in importlib_load_entry_point
return next(matches).load()
~~~~~~~~~~~~~~~~~~^^
File "/usr/lib/python3.13/importlib/metadata/**init**.py", line 179, in load
module = import_module(match.group('module'))
File "/usr/lib/python3.13/importlib/**init**.py", line 88, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "", line 1387, in _gcd_import
File "", line 1360, in _find_and_load
File "", line 1310, in _find_and_load_unlocked
File "", line 488, in _call_with_frames_removed
File "", line 1387, in _gcd_import
File "", line 1360, in _find_and_load
File "", line 1331, in _find_and_load_unlocked
File "", line 935, in _load_unlocked
File "", line 1026, in exec_module
File "", line 488, in _call_with_frames_removed
File "/usr/lib/python3.13/site-packages/proton/vpn/app/gtk/**init**.py", line 33, in 
from proton.vpn import logging  # pylint: disable=C0413 # noqa: E402
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ImportError: cannot import name 'logging' from 'proton.vpn' (unknown location)

Then I've uninstalled it with -Rns and reinstalled, now it's working again. I hope this will help.

I try it but giving another error connection timeout🥲only work OpenVPN UDP/TCP,Wiregaurd giving timeout..
but openvpn required nm-applet with ugly system tray icon(I cannot remove or hide it tray icon).
Info:-
arch Linux
sway/hyprland
waybar

@RomainMorlevat
Copy link

@0xl30
Yes, sorry, I've edited my message at the same time. wireguard is not working (Gnome here).

@0xl30
Copy link

0xl30 commented Dec 23, 2024

@0xl30 Yes, sorry, I've edited my message at the same time. wireguard is not working (Gnome here).

I don't think the protonvpn team will fix this very quickly,we will find the solution.

@Stephixus
Copy link

  • Idem: no more wireguard connection working.
  • But wireguard connection is OK at boot and within network-manager-applet (so with no proton-vpn-gtk-app usage, on Archlinux btw).

@calexandru2018
Copy link
Member

Hey @ptr1337 , thanks for the report, we'll look into this but can't promise any timelines as of the moment. Though I wonder if Ali managed to implement our rust backend, because if so then this wouldn't be an issue. Looking at your log file backend/linux/networkmanager/protocol/wireguard/local_agent/fallback_local_agent.py this is what indicates that is using the fallback LA instead of the rust one.

@ptr1337
Copy link
Author

ptr1337 commented Dec 23, 2024

Alright - an user found a way to fix this. The local-agent python path was hardcoded, and therefore not in the proper directory.
He posted a comment here: https://aur.archlinux.org/packages/proton-vpn-gtk-app#comment-1003347

Please apply the diff and then rebuild the package. Wireguard is working then.

@Bill-Joe-Tech
Copy link

Alright - an user found a way to fix this. The local-agent python path was hardcoded, and therefore not in the proper directory. He posted a comment here: https://aur.archlinux.org/packages/proton-vpn-gtk-app#comment-1003347

Please apply the diff and then rebuild the package. Wireguard is working then.

The link you have sent leads to a 404.

@ptr1337
Copy link
Author

ptr1337 commented Jan 8, 2025

Alright - an user found a way to fix this. The local-agent python path was hardcoded, and therefore not in the proper directory. He posted a comment here: https://aur.archlinux.org/packages/proton-vpn-gtk-app#comment-1003347
Please apply the diff and then rebuild the package. Wireguard is working then.

The link you have sent leads to a 404.

I have started to maintain the proton-vpn package into the official archlinux repository. The AUR Link does not exist anymore.

@iamkartiknayak
Copy link

Same issue on Pop!_OS COSMIC

screenshot-2025-01-07-12-18-15
screenshot-2025-01-07-12-18-17

@Bill-Joe-Tech
Copy link

Bill-Joe-Tech commented Jan 9, 2025

--- Logging error ---
Traceback (most recent call last):
  File "/usr/lib/python3.13/site-packages/secretstorage/util.py", line 48, in send_and_get_reply
    raise DBusErrorResponse(resp_msg)
jeepney.wrappers.DBusErrorResponse: [org.freedesktop.DBus.Error.ServiceUnknown] ('The name is not activatable',)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/lib/python3.13/site-packages/keyring/backends/SecretService.py", line 62, in get_preferred_collection
    collection = secretstorage.get_default_collection(bus)
  File "/usr/lib/python3.13/site-packages/secretstorage/collection.py", line 177, in get_default_collection
    return Collection(connection)
  File "/usr/lib/python3.13/site-packages/secretstorage/collection.py", line 45, in __init__
    self._collection.get_property('Label')
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/secretstorage/util.py", line 67, in get_property
    (signature, value), = self.send_and_get_reply(msg)
                          ~~~~~~~~~~~~~~~~~~~~~~~^^^^^
  File "/usr/lib/python3.13/site-packages/secretstorage/util.py", line 58, in send_and_get_reply
    raise SecretServiceNotAvailableException(data) from resp
secretstorage.exceptions.SecretServiceNotAvailableException: The name is not activatable

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/lib/python3.13/site-packages/proton/keyring_linux/core/keyring_linux.py", line 111, in _is_backend_working
    keyring_backend.get_password(
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
        "ProtonVPN",
        ^^^^^^^^^^^^
        "TestingThatBackendIsWorking"
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/lib/python3.13/site-packages/keyring/backends/SecretService.py", line 79, in get_password
    collection = self.get_preferred_collection()
  File "/usr/lib/python3.13/site-packages/keyring/backends/SecretService.py", line 64, in get_preferred_collection
    raise InitError(f"Failed to create the collection: {e}.") from e
keyring.errors.InitError: Failed to create the collection: The name is not activatable.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.13/logging/__init__.py", line 1150, in emit
    msg = self.format(record)
  File "/usr/lib/python3.13/logging/__init__.py", line 998, in format
    return fmt.format(record)
           ~~~~~~~~~~^^^^^^^^
  File "/usr/lib/python3.13/logging/__init__.py", line 711, in format
    record.message = record.getMessage()
                     ~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/logging/__init__.py", line 400, in getMessage
    msg = msg % self.args
          ~~~~^~~~~~~~~~~
  File "/usr/lib/python3.13/site-packages/keyring/backend.py", line 122, in __str__
    return f"{keyring_class.__module__}.{keyring_class.__name__} (priority: {keyring_class.priority:g})"
                                                                             ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/jaraco/classes/properties.py", line 202, in __get__
    return self.fget.__get__(None, owner)()
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/site-packages/keyring/backends/SecretService.py", line 44, in priority
    raise RuntimeError(
    ...<2 lines>...
    )
RuntimeError: The Secret Service daemon is neither running nor activatable through D-Bus
Call stack:
  File "/usr/lib/python3.13/threading.py", line 1012, in _bootstrap
    self._bootstrap_inner()
  File "/usr/lib/python3.13/threading.py", line 1041, in _bootstrap_inner
    self.run()
  File "/usr/lib/python3.13/threading.py", line 992, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/lib/python3.13/site-packages/proton/vpn/app/gtk/utils/executor.py", line 89, in _run_asyncio_loop_forever
    self._loop.run_forever()
  File "/usr/lib/python3.13/asyncio/base_events.py", line 678, in run_forever
    self._run_once()
  File "/usr/lib/python3.13/asyncio/base_events.py", line 2033, in _run_once
    handle._run()
  File "/usr/lib/python3.13/asyncio/events.py", line 89, in _run
    self._context.run(self._callback, *self._args)
  File "/usr/lib/python3.13/site-packages/proton/vpn/app/gtk/controller.py", line 97, in initialize_vpn_connector
    self._connector = await self._api.get_vpn_connector()
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/api.py", line 60, in get_vpn_connector
    self._vpn_connector = await VPNConnector.get(
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 94, in get
    await connector.initialize_state()
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 255, in initialize_state
    settings = await self.get_settings()
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 135, in get_settings
    user_tier = self._session_holder.user_tier or 0
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/session_holder.py", line 89, in user_tier
    if self.session.loaded:
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/session_holder.py", line 80, in session
    self._session = self._proton_sso.get_default_session(
  File "/usr/lib/python3.13/site-packages/proton/sso/sso.py", line 195, in get_default_session
    sessions = self.sessions
  File "/usr/lib/python3.13/site-packages/proton/sso/sso.py", line 133, in sessions
    keyring = self._keyring
  File "/usr/lib/python3.13/site-packages/proton/sso/sso.py", line 114, in _keyring
    self.__keyring_backend = Keyring.get_from_factory(self.__keyring_backend_name)
  File "/usr/lib/python3.13/site-packages/proton/keyring/_base.py", line 49, in get_from_factory
    keyring_backend = Loader.get("keyring", class_name=backend)
  File "/usr/lib/python3.13/site-packages/proton/loader/loader.py", line 122, in get
    entry_is_valid = entry.cls._validate()  # pylint: disable=protected-access
  File "/usr/lib/python3.13/site-packages/proton/keyring_linux/secretservice/secretservice_backend.py", line 43, in _validate
    return cls._is_backend_working(SecretService.Keyring())
  File "/usr/lib/python3.13/site-packages/proton/keyring_linux/core/keyring_linux.py", line 120, in _is_backend_working
    logger.exception("Keyring %s error", keyring_backend)
Message: 'Keyring %s error'
Arguments: (<keyring.backends.SecretService.Keyring object at 0x7ef60cf76e40>,)
--- Logging error ---
Traceback (most recent call last):
  File "/usr/lib/python3.13/site-packages/secretstorage/util.py", line 48, in send_and_get_reply
    raise DBusErrorResponse(resp_msg)
jeepney.wrappers.DBusErrorResponse: [org.freedesktop.DBus.Error.ServiceUnknown] ('The name is not activatable',)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/lib/python3.13/site-packages/keyring/backends/SecretService.py", line 62, in get_preferred_collection
    collection = secretstorage.get_default_collection(bus)
  File "/usr/lib/python3.13/site-packages/secretstorage/collection.py", line 177, in get_default_collection
    return Collection(connection)
  File "/usr/lib/python3.13/site-packages/secretstorage/collection.py", line 45, in __init__
    self._collection.get_property('Label')
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/secretstorage/util.py", line 67, in get_property
    (signature, value), = self.send_and_get_reply(msg)
                          ~~~~~~~~~~~~~~~~~~~~~~~^^^^^
  File "/usr/lib/python3.13/site-packages/secretstorage/util.py", line 58, in send_and_get_reply
    raise SecretServiceNotAvailableException(data) from resp
secretstorage.exceptions.SecretServiceNotAvailableException: The name is not activatable

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/lib/python3.13/site-packages/proton/keyring_linux/core/keyring_linux.py", line 111, in _is_backend_working
    keyring_backend.get_password(
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
        "ProtonVPN",
        ^^^^^^^^^^^^
        "TestingThatBackendIsWorking"
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/lib/python3.13/site-packages/keyring/backends/SecretService.py", line 79, in get_password
    collection = self.get_preferred_collection()
  File "/usr/lib/python3.13/site-packages/keyring/backends/SecretService.py", line 64, in get_preferred_collection
    raise InitError(f"Failed to create the collection: {e}.") from e
keyring.errors.InitError: Failed to create the collection: The name is not activatable.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.13/logging/handlers.py", line 79, in emit
    if self.shouldRollover(record):
       ~~~~~~~~~~~~~~~~~~~^^^^^^^^
  File "/usr/lib/python3.13/logging/handlers.py", line 203, in shouldRollover
    msg = "%s\n" % self.format(record)
                   ~~~~~~~~~~~^^^^^^^^
  File "/usr/lib/python3.13/logging/__init__.py", line 998, in format
    return fmt.format(record)
           ~~~~~~~~~~^^^^^^^^
  File "/usr/lib/python3.13/logging/__init__.py", line 711, in format
    record.message = record.getMessage()
                     ~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/logging/__init__.py", line 400, in getMessage
    msg = msg % self.args
          ~~~~^~~~~~~~~~~
  File "/usr/lib/python3.13/site-packages/keyring/backend.py", line 122, in __str__
    return f"{keyring_class.__module__}.{keyring_class.__name__} (priority: {keyring_class.priority:g})"
                                                                             ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/jaraco/classes/properties.py", line 202, in __get__
    return self.fget.__get__(None, owner)()
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/site-packages/keyring/backends/SecretService.py", line 44, in priority
    raise RuntimeError(
    ...<2 lines>...
    )
RuntimeError: The Secret Service daemon is neither running nor activatable through D-Bus
Call stack:
  File "/usr/lib/python3.13/threading.py", line 1012, in _bootstrap
    self._bootstrap_inner()
  File "/usr/lib/python3.13/threading.py", line 1041, in _bootstrap_inner
    self.run()
  File "/usr/lib/python3.13/threading.py", line 992, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/lib/python3.13/site-packages/proton/vpn/app/gtk/utils/executor.py", line 89, in _run_asyncio_loop_forever
    self._loop.run_forever()
  File "/usr/lib/python3.13/asyncio/base_events.py", line 678, in run_forever
    self._run_once()
  File "/usr/lib/python3.13/asyncio/base_events.py", line 2033, in _run_once
    handle._run()
  File "/usr/lib/python3.13/asyncio/events.py", line 89, in _run
    self._context.run(self._callback, *self._args)
  File "/usr/lib/python3.13/site-packages/proton/vpn/app/gtk/controller.py", line 97, in initialize_vpn_connector
    self._connector = await self._api.get_vpn_connector()
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/api.py", line 60, in get_vpn_connector
    self._vpn_connector = await VPNConnector.get(
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 94, in get
    await connector.initialize_state()
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 255, in initialize_state
    settings = await self.get_settings()
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 135, in get_settings
    user_tier = self._session_holder.user_tier or 0
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/session_holder.py", line 89, in user_tier
    if self.session.loaded:
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/session_holder.py", line 80, in session
    self._session = self._proton_sso.get_default_session(
  File "/usr/lib/python3.13/site-packages/proton/sso/sso.py", line 195, in get_default_session
    sessions = self.sessions
  File "/usr/lib/python3.13/site-packages/proton/sso/sso.py", line 133, in sessions
    keyring = self._keyring
  File "/usr/lib/python3.13/site-packages/proton/sso/sso.py", line 114, in _keyring
    self.__keyring_backend = Keyring.get_from_factory(self.__keyring_backend_name)
  File "/usr/lib/python3.13/site-packages/proton/keyring/_base.py", line 49, in get_from_factory
    keyring_backend = Loader.get("keyring", class_name=backend)
  File "/usr/lib/python3.13/site-packages/proton/loader/loader.py", line 122, in get
    entry_is_valid = entry.cls._validate()  # pylint: disable=protected-access
  File "/usr/lib/python3.13/site-packages/proton/keyring_linux/secretservice/secretservice_backend.py", line 43, in _validate
    return cls._is_backend_working(SecretService.Keyring())
  File "/usr/lib/python3.13/site-packages/proton/keyring_linux/core/keyring_linux.py", line 120, in _is_backend_working
    logger.exception("Keyring %s error", keyring_backend)
Message: 'Keyring %s error'
Arguments: (<keyring.backends.SecretService.Keyring object at 0x7ef60cf76e40>,)
--- Logging error ---
Traceback (most recent call last):
  File "/usr/lib/python3.13/site-packages/secretstorage/util.py", line 48, in send_and_get_reply
    raise DBusErrorResponse(resp_msg)
jeepney.wrappers.DBusErrorResponse: [org.freedesktop.DBus.Error.ServiceUnknown] ('The name is not activatable',)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/lib/python3.13/site-packages/keyring/backends/SecretService.py", line 62, in get_preferred_collection
    collection = secretstorage.get_default_collection(bus)
  File "/usr/lib/python3.13/site-packages/secretstorage/collection.py", line 177, in get_default_collection
    return Collection(connection)
  File "/usr/lib/python3.13/site-packages/secretstorage/collection.py", line 45, in __init__
    self._collection.get_property('Label')
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/secretstorage/util.py", line 67, in get_property
    (signature, value), = self.send_and_get_reply(msg)
                          ~~~~~~~~~~~~~~~~~~~~~~~^^^^^
  File "/usr/lib/python3.13/site-packages/secretstorage/util.py", line 58, in send_and_get_reply
    raise SecretServiceNotAvailableException(data) from resp
secretstorage.exceptions.SecretServiceNotAvailableException: The name is not activatable

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/lib/python3.13/site-packages/proton/keyring_linux/core/keyring_linux.py", line 111, in _is_backend_working
    keyring_backend.get_password(
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
        "ProtonVPN",
        ^^^^^^^^^^^^
        "TestingThatBackendIsWorking"
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/lib/python3.13/site-packages/keyring/backends/SecretService.py", line 79, in get_password
    collection = self.get_preferred_collection()
  File "/usr/lib/python3.13/site-packages/keyring/backends/SecretService.py", line 64, in get_preferred_collection
    raise InitError(f"Failed to create the collection: {e}.") from e
keyring.errors.InitError: Failed to create the collection: The name is not activatable.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.13/logging/__init__.py", line 1150, in emit
    msg = self.format(record)
  File "/usr/lib/python3.13/logging/__init__.py", line 998, in format
    return fmt.format(record)
           ~~~~~~~~~~^^^^^^^^
  File "/usr/lib/python3.13/logging/__init__.py", line 711, in format
    record.message = record.getMessage()
                     ~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/logging/__init__.py", line 400, in getMessage
    msg = msg % self.args
          ~~~~^~~~~~~~~~~
  File "/usr/lib/python3.13/site-packages/keyring/backend.py", line 122, in __str__
    return f"{keyring_class.__module__}.{keyring_class.__name__} (priority: {keyring_class.priority:g})"
                                                                             ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/jaraco/classes/properties.py", line 202, in __get__
    return self.fget.__get__(None, owner)()
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/site-packages/keyring/backends/SecretService.py", line 44, in priority
    raise RuntimeError(
    ...<2 lines>...
    )
RuntimeError: The Secret Service daemon is neither running nor activatable through D-Bus
Call stack:
  File "/usr/lib/python3.13/threading.py", line 1012, in _bootstrap
    self._bootstrap_inner()
  File "/usr/lib/python3.13/threading.py", line 1041, in _bootstrap_inner
    self.run()
  File "/usr/lib/python3.13/threading.py", line 992, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/lib/python3.13/site-packages/proton/vpn/app/gtk/utils/executor.py", line 89, in _run_asyncio_loop_forever
    self._loop.run_forever()
  File "/usr/lib/python3.13/asyncio/base_events.py", line 678, in run_forever
    self._run_once()
  File "/usr/lib/python3.13/asyncio/base_events.py", line 2033, in _run_once
    handle._run()
  File "/usr/lib/python3.13/asyncio/events.py", line 89, in _run
    self._context.run(self._callback, *self._args)
  File "/usr/lib/python3.13/site-packages/proton/vpn/app/gtk/controller.py", line 97, in initialize_vpn_connector
    self._connector = await self._api.get_vpn_connector()
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/api.py", line 60, in get_vpn_connector
    self._vpn_connector = await VPNConnector.get(
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 94, in get
    await connector.initialize_state()
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 255, in initialize_state
    settings = await self.get_settings()
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 135, in get_settings
    user_tier = self._session_holder.user_tier or 0
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/session_holder.py", line 89, in user_tier
    if self.session.loaded:
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/session_holder.py", line 80, in session
    self._session = self._proton_sso.get_default_session(
  File "/usr/lib/python3.13/site-packages/proton/sso/sso.py", line 195, in get_default_session
    sessions = self.sessions
  File "/usr/lib/python3.13/site-packages/proton/sso/sso.py", line 140, in sessions
    cleaned_index = [account_name for account_name in keyring_index if len(self._get_session_data(account_name)) > 0]
  File "/usr/lib/python3.13/site-packages/proton/sso/sso.py", line 239, in _get_session_data
    data = self._keyring[self.__keyring_key_name(account_name)]
  File "/usr/lib/python3.13/site-packages/proton/sso/sso.py", line 115, in _keyring
    elif not isinstance(self.__keyring_backend, type(Keyring.get_from_factory(self.__keyring_backend_name))):
  File "/usr/lib/python3.13/site-packages/proton/keyring/_base.py", line 49, in get_from_factory
    keyring_backend = Loader.get("keyring", class_name=backend)
  File "/usr/lib/python3.13/site-packages/proton/loader/loader.py", line 122, in get
    entry_is_valid = entry.cls._validate()  # pylint: disable=protected-access
  File "/usr/lib/python3.13/site-packages/proton/keyring_linux/secretservice/secretservice_backend.py", line 43, in _validate
    return cls._is_backend_working(SecretService.Keyring())
  File "/usr/lib/python3.13/site-packages/proton/keyring_linux/core/keyring_linux.py", line 120, in _is_backend_working
    logger.exception("Keyring %s error", keyring_backend)
Message: 'Keyring %s error'
Arguments: (<keyring.backends.SecretService.Keyring object at 0x7ef60cfed310>,)
--- Logging error ---
Traceback (most recent call last):
  File "/usr/lib/python3.13/site-packages/secretstorage/util.py", line 48, in send_and_get_reply
    raise DBusErrorResponse(resp_msg)
jeepney.wrappers.DBusErrorResponse: [org.freedesktop.DBus.Error.ServiceUnknown] ('The name is not activatable',)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/lib/python3.13/site-packages/keyring/backends/SecretService.py", line 62, in get_preferred_collection
    collection = secretstorage.get_default_collection(bus)
  File "/usr/lib/python3.13/site-packages/secretstorage/collection.py", line 177, in get_default_collection
    return Collection(connection)
  File "/usr/lib/python3.13/site-packages/secretstorage/collection.py", line 45, in __init__
    self._collection.get_property('Label')
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/secretstorage/util.py", line 67, in get_property
    (signature, value), = self.send_and_get_reply(msg)
                          ~~~~~~~~~~~~~~~~~~~~~~~^^^^^
  File "/usr/lib/python3.13/site-packages/secretstorage/util.py", line 58, in send_and_get_reply
    raise SecretServiceNotAvailableException(data) from resp
secretstorage.exceptions.SecretServiceNotAvailableException: The name is not activatable

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/lib/python3.13/site-packages/proton/keyring_linux/core/keyring_linux.py", line 111, in _is_backend_working
    keyring_backend.get_password(
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
        "ProtonVPN",
        ^^^^^^^^^^^^
        "TestingThatBackendIsWorking"
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/lib/python3.13/site-packages/keyring/backends/SecretService.py", line 79, in get_password
    collection = self.get_preferred_collection()
  File "/usr/lib/python3.13/site-packages/keyring/backends/SecretService.py", line 64, in get_preferred_collection
    raise InitError(f"Failed to create the collection: {e}.") from e
keyring.errors.InitError: Failed to create the collection: The name is not activatable.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.13/logging/handlers.py", line 79, in emit
    if self.shouldRollover(record):
       ~~~~~~~~~~~~~~~~~~~^^^^^^^^
  File "/usr/lib/python3.13/logging/handlers.py", line 203, in shouldRollover
    msg = "%s\n" % self.format(record)
                   ~~~~~~~~~~~^^^^^^^^
  File "/usr/lib/python3.13/logging/__init__.py", line 998, in format
    return fmt.format(record)
           ~~~~~~~~~~^^^^^^^^
  File "/usr/lib/python3.13/logging/__init__.py", line 711, in format
    record.message = record.getMessage()
                     ~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/logging/__init__.py", line 400, in getMessage
    msg = msg % self.args
          ~~~~^~~~~~~~~~~
  File "/usr/lib/python3.13/site-packages/keyring/backend.py", line 122, in __str__
    return f"{keyring_class.__module__}.{keyring_class.__name__} (priority: {keyring_class.priority:g})"
                                                                             ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/jaraco/classes/properties.py", line 202, in __get__
    return self.fget.__get__(None, owner)()
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/site-packages/keyring/backends/SecretService.py", line 44, in priority
    raise RuntimeError(
    ...<2 lines>...
    )
RuntimeError: The Secret Service daemon is neither running nor activatable through D-Bus
Call stack:
  File "/usr/lib/python3.13/threading.py", line 1012, in _bootstrap
    self._bootstrap_inner()
  File "/usr/lib/python3.13/threading.py", line 1041, in _bootstrap_inner
    self.run()
  File "/usr/lib/python3.13/threading.py", line 992, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/lib/python3.13/site-packages/proton/vpn/app/gtk/utils/executor.py", line 89, in _run_asyncio_loop_forever
    self._loop.run_forever()
  File "/usr/lib/python3.13/asyncio/base_events.py", line 678, in run_forever
    self._run_once()
  File "/usr/lib/python3.13/asyncio/base_events.py", line 2033, in _run_once
    handle._run()
  File "/usr/lib/python3.13/asyncio/events.py", line 89, in _run
    self._context.run(self._callback, *self._args)
  File "/usr/lib/python3.13/site-packages/proton/vpn/app/gtk/controller.py", line 97, in initialize_vpn_connector
    self._connector = await self._api.get_vpn_connector()
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/api.py", line 60, in get_vpn_connector
    self._vpn_connector = await VPNConnector.get(
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 94, in get
    await connector.initialize_state()
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 255, in initialize_state
    settings = await self.get_settings()
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 135, in get_settings
    user_tier = self._session_holder.user_tier or 0
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/session_holder.py", line 89, in user_tier
    if self.session.loaded:
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/session_holder.py", line 80, in session
    self._session = self._proton_sso.get_default_session(
  File "/usr/lib/python3.13/site-packages/proton/sso/sso.py", line 195, in get_default_session
    sessions = self.sessions
  File "/usr/lib/python3.13/site-packages/proton/sso/sso.py", line 140, in sessions
    cleaned_index = [account_name for account_name in keyring_index if len(self._get_session_data(account_name)) > 0]
  File "/usr/lib/python3.13/site-packages/proton/sso/sso.py", line 239, in _get_session_data
    data = self._keyring[self.__keyring_key_name(account_name)]
  File "/usr/lib/python3.13/site-packages/proton/sso/sso.py", line 115, in _keyring
    elif not isinstance(self.__keyring_backend, type(Keyring.get_from_factory(self.__keyring_backend_name))):
  File "/usr/lib/python3.13/site-packages/proton/keyring/_base.py", line 49, in get_from_factory
    keyring_backend = Loader.get("keyring", class_name=backend)
  File "/usr/lib/python3.13/site-packages/proton/loader/loader.py", line 122, in get
    entry_is_valid = entry.cls._validate()  # pylint: disable=protected-access
  File "/usr/lib/python3.13/site-packages/proton/keyring_linux/secretservice/secretservice_backend.py", line 43, in _validate
    return cls._is_backend_working(SecretService.Keyring())
  File "/usr/lib/python3.13/site-packages/proton/keyring_linux/core/keyring_linux.py", line 120, in _is_backend_working
    logger.exception("Keyring %s error", keyring_backend)
Message: 'Keyring %s error'
Arguments: (<keyring.backends.SecretService.Keyring object at 0x7ef60cfed310>,)
--- Logging error ---
Traceback (most recent call last):
  File "/usr/lib/python3.13/site-packages/secretstorage/util.py", line 48, in send_and_get_reply
    raise DBusErrorResponse(resp_msg)
jeepney.wrappers.DBusErrorResponse: [org.freedesktop.DBus.Error.ServiceUnknown] ('The name is not activatable',)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/lib/python3.13/site-packages/keyring/backends/SecretService.py", line 62, in get_preferred_collection
    collection = secretstorage.get_default_collection(bus)
  File "/usr/lib/python3.13/site-packages/secretstorage/collection.py", line 177, in get_default_collection
    return Collection(connection)
  File "/usr/lib/python3.13/site-packages/secretstorage/collection.py", line 45, in __init__
    self._collection.get_property('Label')
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/secretstorage/util.py", line 67, in get_property
    (signature, value), = self.send_and_get_reply(msg)
                          ~~~~~~~~~~~~~~~~~~~~~~~^^^^^
  File "/usr/lib/python3.13/site-packages/secretstorage/util.py", line 58, in send_and_get_reply
    raise SecretServiceNotAvailableException(data) from resp
secretstorage.exceptions.SecretServiceNotAvailableException: The name is not activatable

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/lib/python3.13/site-packages/proton/keyring_linux/core/keyring_linux.py", line 111, in _is_backend_working
    keyring_backend.get_password(
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
        "ProtonVPN",
        ^^^^^^^^^^^^
        "TestingThatBackendIsWorking"
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/lib/python3.13/site-packages/keyring/backends/SecretService.py", line 79, in get_password
    collection = self.get_preferred_collection()
  File "/usr/lib/python3.13/site-packages/keyring/backends/SecretService.py", line 64, in get_preferred_collection
    raise InitError(f"Failed to create the collection: {e}.") from e
keyring.errors.InitError: Failed to create the collection: The name is not activatable.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.13/logging/__init__.py", line 1150, in emit
    msg = self.format(record)
  File "/usr/lib/python3.13/logging/__init__.py", line 998, in format
    return fmt.format(record)
           ~~~~~~~~~~^^^^^^^^
  File "/usr/lib/python3.13/logging/__init__.py", line 711, in format
    record.message = record.getMessage()
                     ~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/logging/__init__.py", line 400, in getMessage
    msg = msg % self.args
          ~~~~^~~~~~~~~~~
  File "/usr/lib/python3.13/site-packages/keyring/backend.py", line 122, in __str__
    return f"{keyring_class.__module__}.{keyring_class.__name__} (priority: {keyring_class.priority:g})"
                                                                             ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/jaraco/classes/properties.py", line 202, in __get__
    return self.fget.__get__(None, owner)()
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/site-packages/keyring/backends/SecretService.py", line 44, in priority
    raise RuntimeError(
    ...<2 lines>...
    )
RuntimeError: The Secret Service daemon is neither running nor activatable through D-Bus
Call stack:
  File "/usr/lib/python3.13/threading.py", line 1012, in _bootstrap
    self._bootstrap_inner()
  File "/usr/lib/python3.13/threading.py", line 1041, in _bootstrap_inner
    self.run()
  File "/usr/lib/python3.13/threading.py", line 992, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/lib/python3.13/site-packages/proton/vpn/app/gtk/utils/executor.py", line 89, in _run_asyncio_loop_forever
    self._loop.run_forever()
  File "/usr/lib/python3.13/asyncio/base_events.py", line 678, in run_forever
    self._run_once()
  File "/usr/lib/python3.13/asyncio/base_events.py", line 2033, in _run_once
    handle._run()
  File "/usr/lib/python3.13/asyncio/events.py", line 89, in _run
    self._context.run(self._callback, *self._args)
  File "/usr/lib/python3.13/site-packages/proton/vpn/app/gtk/controller.py", line 97, in initialize_vpn_connector
    self._connector = await self._api.get_vpn_connector()
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/api.py", line 60, in get_vpn_connector
    self._vpn_connector = await VPNConnector.get(
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 94, in get
    await connector.initialize_state()
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 255, in initialize_state
    settings = await self.get_settings()
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 135, in get_settings
    user_tier = self._session_holder.user_tier or 0
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/session_holder.py", line 89, in user_tier
    if self.session.loaded:
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/session_holder.py", line 80, in session
    self._session = self._proton_sso.get_default_session(
  File "/usr/lib/python3.13/site-packages/proton/sso/sso.py", line 201, in get_default_session
    return self.get_session(account_name, override_class)
  File "/usr/lib/python3.13/site-packages/proton/sso/sso.py", line 176, in get_session
    session_data = self._get_session_data(account_name)
  File "/usr/lib/python3.13/site-packages/proton/sso/sso.py", line 239, in _get_session_data
    data = self._keyring[self.__keyring_key_name(account_name)]
  File "/usr/lib/python3.13/site-packages/proton/sso/sso.py", line 115, in _keyring
    elif not isinstance(self.__keyring_backend, type(Keyring.get_from_factory(self.__keyring_backend_name))):
  File "/usr/lib/python3.13/site-packages/proton/keyring/_base.py", line 49, in get_from_factory
    keyring_backend = Loader.get("keyring", class_name=backend)
  File "/usr/lib/python3.13/site-packages/proton/loader/loader.py", line 122, in get
    entry_is_valid = entry.cls._validate()  # pylint: disable=protected-access
  File "/usr/lib/python3.13/site-packages/proton/keyring_linux/secretservice/secretservice_backend.py", line 43, in _validate
    return cls._is_backend_working(SecretService.Keyring())
  File "/usr/lib/python3.13/site-packages/proton/keyring_linux/core/keyring_linux.py", line 120, in _is_backend_working
    logger.exception("Keyring %s error", keyring_backend)
Message: 'Keyring %s error'
Arguments: (<keyring.backends.SecretService.Keyring object at 0x7ef60c99de50>,)
--- Logging error ---
Traceback (most recent call last):
  File "/usr/lib/python3.13/site-packages/secretstorage/util.py", line 48, in send_and_get_reply
    raise DBusErrorResponse(resp_msg)
jeepney.wrappers.DBusErrorResponse: [org.freedesktop.DBus.Error.ServiceUnknown] ('The name is not activatable',)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/lib/python3.13/site-packages/keyring/backends/SecretService.py", line 62, in get_preferred_collection
    collection = secretstorage.get_default_collection(bus)
  File "/usr/lib/python3.13/site-packages/secretstorage/collection.py", line 177, in get_default_collection
    return Collection(connection)
  File "/usr/lib/python3.13/site-packages/secretstorage/collection.py", line 45, in __init__
    self._collection.get_property('Label')
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/secretstorage/util.py", line 67, in get_property
    (signature, value), = self.send_and_get_reply(msg)
                          ~~~~~~~~~~~~~~~~~~~~~~~^^^^^
  File "/usr/lib/python3.13/site-packages/secretstorage/util.py", line 58, in send_and_get_reply
    raise SecretServiceNotAvailableException(data) from resp
secretstorage.exceptions.SecretServiceNotAvailableException: The name is not activatable

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/lib/python3.13/site-packages/proton/keyring_linux/core/keyring_linux.py", line 111, in _is_backend_working
    keyring_backend.get_password(
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
        "ProtonVPN",
        ^^^^^^^^^^^^
        "TestingThatBackendIsWorking"
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/lib/python3.13/site-packages/keyring/backends/SecretService.py", line 79, in get_password
    collection = self.get_preferred_collection()
  File "/usr/lib/python3.13/site-packages/keyring/backends/SecretService.py", line 64, in get_preferred_collection
    raise InitError(f"Failed to create the collection: {e}.") from e
keyring.errors.InitError: Failed to create the collection: The name is not activatable.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.13/logging/handlers.py", line 79, in emit
    if self.shouldRollover(record):
       ~~~~~~~~~~~~~~~~~~~^^^^^^^^
  File "/usr/lib/python3.13/logging/handlers.py", line 203, in shouldRollover
    msg = "%s\n" % self.format(record)
                   ~~~~~~~~~~~^^^^^^^^
  File "/usr/lib/python3.13/logging/__init__.py", line 998, in format
    return fmt.format(record)
           ~~~~~~~~~~^^^^^^^^
  File "/usr/lib/python3.13/logging/__init__.py", line 711, in format
    record.message = record.getMessage()
                     ~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/logging/__init__.py", line 400, in getMessage
    msg = msg % self.args
          ~~~~^~~~~~~~~~~
  File "/usr/lib/python3.13/site-packages/keyring/backend.py", line 122, in __str__
    return f"{keyring_class.__module__}.{keyring_class.__name__} (priority: {keyring_class.priority:g})"
                                                                             ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/jaraco/classes/properties.py", line 202, in __get__
    return self.fget.__get__(None, owner)()
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/site-packages/keyring/backends/SecretService.py", line 44, in priority
    raise RuntimeError(
    ...<2 lines>...
    )
RuntimeError: The Secret Service daemon is neither running nor activatable through D-Bus
Call stack:
  File "/usr/lib/python3.13/threading.py", line 1012, in _bootstrap
    self._bootstrap_inner()
  File "/usr/lib/python3.13/threading.py", line 1041, in _bootstrap_inner
    self.run()
  File "/usr/lib/python3.13/threading.py", line 992, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/lib/python3.13/site-packages/proton/vpn/app/gtk/utils/executor.py", line 89, in _run_asyncio_loop_forever
    self._loop.run_forever()
  File "/usr/lib/python3.13/asyncio/base_events.py", line 678, in run_forever
    self._run_once()
  File "/usr/lib/python3.13/asyncio/base_events.py", line 2033, in _run_once
    handle._run()
  File "/usr/lib/python3.13/asyncio/events.py", line 89, in _run
    self._context.run(self._callback, *self._args)
  File "/usr/lib/python3.13/site-packages/proton/vpn/app/gtk/controller.py", line 97, in initialize_vpn_connector
    self._connector = await self._api.get_vpn_connector()
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/api.py", line 60, in get_vpn_connector
    self._vpn_connector = await VPNConnector.get(
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 94, in get
    await connector.initialize_state()
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 255, in initialize_state
    settings = await self.get_settings()
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 135, in get_settings
    user_tier = self._session_holder.user_tier or 0
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/session_holder.py", line 89, in user_tier
    if self.session.loaded:
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/session_holder.py", line 80, in session
    self._session = self._proton_sso.get_default_session(
  File "/usr/lib/python3.13/site-packages/proton/sso/sso.py", line 201, in get_default_session
    return self.get_session(account_name, override_class)
  File "/usr/lib/python3.13/site-packages/proton/sso/sso.py", line 176, in get_session
    session_data = self._get_session_data(account_name)
  File "/usr/lib/python3.13/site-packages/proton/sso/sso.py", line 239, in _get_session_data
    data = self._keyring[self.__keyring_key_name(account_name)]
  File "/usr/lib/python3.13/site-packages/proton/sso/sso.py", line 115, in _keyring
    elif not isinstance(self.__keyring_backend, type(Keyring.get_from_factory(self.__keyring_backend_name))):
  File "/usr/lib/python3.13/site-packages/proton/keyring/_base.py", line 49, in get_from_factory
    keyring_backend = Loader.get("keyring", class_name=backend)
  File "/usr/lib/python3.13/site-packages/proton/loader/loader.py", line 122, in get
    entry_is_valid = entry.cls._validate()  # pylint: disable=protected-access
  File "/usr/lib/python3.13/site-packages/proton/keyring_linux/secretservice/secretservice_backend.py", line 43, in _validate
    return cls._is_backend_working(SecretService.Keyring())
  File "/usr/lib/python3.13/site-packages/proton/keyring_linux/core/keyring_linux.py", line 120, in _is_backend_working
    logger.exception("Keyring %s error", keyring_backend)
Message: 'Keyring %s error'
Arguments: (<keyring.backends.SecretService.Keyring object at 0x7ef60c99de50>,)
2025-01-09T06:54:19.694452+00:00 | proton.vpn.core.connection:461 | INFO | CONN:STATE_CHANGED | Disconnected (initial state)
2025-01-09T06:54:19.696715+00:00 | proton.vpn.app.gtk.app:57 | INFO | APP:PROCESS_START | self=<app.App object at 0x7ef5f7443800 (proton+vpn+app+gtk+app+App at 0x5ce4f7366a30)>
2025-01-09T06:54:19.765943+00:00 | proton.vpn.core.refresher.vpn_data_refresher:167 | INFO | APP.VPN_DATA_REFRESHER:ENABLE | VPN data refresher service enabled.
2025-01-09T06:54:19.766118+00:00 | proton.vpn.core.refresher.vpn_data_refresher:175 | INFO | Next client config refresh scheduled in 3:09:48.885490
2025-01-09T06:54:19.766243+00:00 | proton.vpn.core.refresher.vpn_data_refresher:184 | INFO | Next server list refresh scheduled in 0:09:52.084569
2025-01-09T06:54:19.766938+00:00 | proton.vpn.core.refresher.vpn_data_refresher:193 | INFO | Next certificate refresh scheduled in 5 days, 5:57:12.233115
2025-01-09T06:54:19.767070+00:00 | proton.vpn.core.refresher.vpn_data_refresher:202 | INFO | Next feature flags refresh scheduled in 2:10:29.871362
2025-01-09T06:54:19.796893+00:00 | proton.vpn.app.gtk.services.reconnector.reconnector:94 | INFO | VPN reconnector enabled.
2025-01-09T06:54:19.991108+00:00 | proton.vpn.app.gtk.controller:147 | INFO | APP.STARTUP:STARTUP_ACTIONS | Running startup actions
2025-01-09T06:54:19.991232+00:00 | proton.vpn.app.gtk.widgets.vpn.vpn_widget:214 | INFO | APP.VPN:WIDGET_READY | VPN widget is ready (load time: 0.23 seconds)
2025-01-09T06:54:19.997670+00:00 | proton.vpn.app.gtk.services.reconnector.reconnector:174 | INFO | Network connectivity was detected.
2025-01-09T06:54:21.650653+00:00 | proton.vpn.app.gtk.widgets.vpn.quick_connect_widget:96 | INFO | UI.TRAY:CONNECT | Connect to fastest server
2025-01-09T06:54:21.712876+00:00 | proton.vpn.core.connection:354 | INFO | CONN.CONNECT:START | Server: US-FREE#40 / Domain: node-us-149.protonvpn.net / IP: 37.19.221.193 / OpenVPN Ports: ProtocolPorts(udp=[80, 51820, 4569, 1194, 5060], tcp=[443, 7770, 8443]) / WireGuard Ports: ProtocolPorts(udp=[443, 88, 1224, 51820, 500, 4500], tcp=[443]) / Protocol: openvpn-udp / Backend: None
2025-01-09T06:54:21.714353+00:00 | proton.vpn.core.connection:373 | INFO | Using certificate based authentication for openvpn: False
2025-01-09T06:54:21.775098+00:00 | proton.vpn.core.connection:461 | INFO | CONN:STATE_CHANGED | Connecting
2025-01-09T06:54:26.782982+00:00 | proton.vpn.app.gtk.utils.exception_handler:257 | CRITICAL | APP:CRASH | Unexpected error.
Traceback (most recent call last):
  File "/usr/lib/python3.13/asyncio/tasks.py", line 507, in wait_for
    return await fut
           ^^^^^^^^^
asyncio.exceptions.CancelledError

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/lib/python3.13/concurrent/futures/_base.py", line 449, in result
    return self.__get_result()
           ~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/concurrent/futures/_base.py", line 401, in __get_result
    raise self._exception
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 383, in connect
    await self._on_connection_event(
        events.Up(events.EventContext(connection=connection))
    )
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 452, in _on_connection_event
    event = await self._handle_on_event(event)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 437, in _handle_on_event
    return await self._update_state(new_state)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 472, in _update_state
    new_event = await self._current_state.run_tasks()
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/proton/vpn/connection/states.py", line 232, in run_tasks
    await self.context.kill_switch.enable(
    ...<2 lines>...
    )
  File "/usr/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/killswitch/default/nmkillswitch.py", line 64, in enable
    await self._ks_handler.add_full_killswitch_connection(permanent)
  File "/usr/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/killswitch/default/killswitch_connection_handler.py", line 136, in add_full_killswitch_connection
    await _wrap_future(
        self.nm_client.add_connection_async(kill_switch.connection, save_to_disk=permanent)
    )
  File "/usr/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/killswitch/default/killswitch_connection_handler.py", line 51, in _wrap_future
    return await asyncio.wait_for(
           ^^^^^^^^^^^^^^^^^^^^^^^
    ...<2 lines>...
    )
    ^
  File "/usr/lib/python3.13/asyncio/tasks.py", line 506, in wait_for
    async with timeouts.timeout(timeout):
               ~~~~~~~~~~~~~~~~^^^^^^^^^
  File "/usr/lib/python3.13/asyncio/timeouts.py", line 116, in __aexit__
    raise TimeoutError from exc_val
TimeoutError
2025-01-09T06:54:26.952985+00:00 | urllib3.connectionpool:868 | WARNING | Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7ef5e675e270>: Failed to resolve 'vpn-api.proton.me' ([Errno -3] Temporary failure in name resolution)")': /core/v4/reports/sentry/api/25/envelope/
2025-01-09T06:54:26.986831+00:00 | urllib3.connectionpool:868 | WARNING | Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7ef5e67a5810>: Failed to resolve 'vpn-api.proton.me' ([Errno -3] Temporary failure in name resolution)")': /core/v4/reports/sentry/api/25/envelope/
2025-01-09T06:54:27.022168+00:00 | urllib3.connectionpool:868 | WARNING | Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7ef5e67a5a90>: Failed to resolve 'vpn-api.proton.me' ([Errno -3] Temporary failure in name resolution)")': /core/v4/reports/sentry/api/25/envelope/

Same issues with the package from offical Arch repository (proton-vpn-gtk-app). Wayback machine does not capture the diff patch. Perhaps you have the diff patch to help others with this issue?

@ptr1337
Copy link
Author

ptr1337 commented Jan 9, 2025

Your secret daemon is not running, see the dependecy in proton-keyring:
https://archlinux.org/packages/extra/any/python-proton-keyring-linux/

e.g following packages are suitable and need to run:
gnome-keyring, keepassxc, kwallet5, kwallet

@Bill-Joe-Tech
Copy link

Bill-Joe-Tech commented Jan 9, 2025

I had uninstalled kdeconnect as it seemed to interfere with proton-vpn-gtk-app. I deleted the .config/Proton folder, removed proton-vpn-gtk-app with -Rns, and installed again. Upon running proton-vpn-gtk-app, I am not receiving any logs from terminal, and the application does not show (despite its' presence in the process tree). Running on i3-wm.

@Bill-Joe-Tech
Copy link

After a reboot, the app was able to load. I am still unable to quick connect. Here are the logs:

2025-01-09T22:40:42.243222+00:00 | proton.vpn.app.gtk.app:57 | INFO | APP:PROCESS_START | self=<app.App object at 0x7ad675198400 (proton+vpn+app+gtk+app+App at 0x5fbb46069e40)>
2025-01-09T22:40:42.312790+00:00 | proton.vpn.core.refresher.vpn_data_refresher:167 | INFO | APP.VPN_DATA_REFRESHER:ENABLE | VPN data refresher service enabled.
2025-01-09T22:40:42.312926+00:00 | proton.vpn.core.refresher.vpn_data_refresher:175 | INFO | Next client config refresh scheduled in 2:35:59.101032
2025-01-09T22:40:42.313043+00:00 | proton.vpn.core.refresher.vpn_data_refresher:184 | INFO | Next server list refresh scheduled in 0:09:44.093992
2025-01-09T22:40:42.313694+00:00 | proton.vpn.core.refresher.vpn_data_refresher:193 | INFO | Next certificate refresh scheduled in 5 days, 5:51:42.686345
2025-01-09T22:40:42.313789+00:00 | proton.vpn.core.refresher.vpn_data_refresher:202 | INFO | Next feature flags refresh scheduled in 2:06:21.261280
2025-01-09T22:40:42.343016+00:00 | proton.vpn.app.gtk.services.reconnector.reconnector:94 | INFO | VPN reconnector enabled.
2025-01-09T22:40:42.539701+00:00 | proton.vpn.app.gtk.controller:147 | INFO | APP.STARTUP:STARTUP_ACTIONS | Running startup actions
2025-01-09T22:40:42.539830+00:00 | proton.vpn.app.gtk.widgets.vpn.vpn_widget:214 | INFO | APP.VPN:WIDGET_READY | VPN widget is ready (load time: 0.23 seconds)
2025-01-09T22:40:42.593102+00:00 | proton.vpn.app.gtk.services.reconnector.reconnector:174 | INFO | Network connectivity was detected.

(protonvpn-app:5783): Gdk-CRITICAL **: 16:40:42.593: gdk_window_thaw_toplevel_updates: assertion 'window->update_and_descendants_freeze_count > 0' failed
2025-01-09T22:40:49.208229+00:00 | proton.vpn.app.gtk.widgets.vpn.quick_connect_widget:96 | INFO | UI.TRAY:CONNECT | Connect to fastest server
2025-01-09T22:40:49.278236+00:00 | proton.vpn.core.connection:354 | INFO | CONN.CONNECT:START | Server: NL-FREE#113 / Domain: node-nl-149.protonvpn.net / IP: 149.34.244.134 / OpenVPN Ports: ProtocolPorts(udp=[80, 51820, 4569, 1194, 5060], tcp=[443, 7770, 8443]) / WireGuard Ports: ProtocolPorts(udp=[443, 88, 1224, 51820, 500, 4500], tcp=[443]) / Protocol: openvpn-udp / Backend: None
2025-01-09T22:40:49.280145+00:00 | proton.vpn.core.connection:373 | INFO | Using certificate based authentication for openvpn: False
2025-01-09T22:40:49.343421+00:00 | proton.vpn.core.connection:461 | INFO | CONN:STATE_CHANGED | Connecting
2025-01-09T22:40:54.349525+00:00 | proton.vpn.app.gtk.utils.exception_handler:257 | CRITICAL | APP:CRASH | Unexpected error.
Traceback (most recent call last):
  File "/usr/lib/python3.13/asyncio/tasks.py", line 507, in wait_for
    return await fut
           ^^^^^^^^^
asyncio.exceptions.CancelledError

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/lib/python3.13/concurrent/futures/_base.py", line 449, in result
    return self.__get_result()
           ~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/concurrent/futures/_base.py", line 401, in __get_result
    raise self._exception
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 383, in connect
    await self._on_connection_event(
        events.Up(events.EventContext(connection=connection))
    )
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 452, in _on_connection_event
    event = await self._handle_on_event(event)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 437, in _handle_on_event
    return await self._update_state(new_state)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 472, in _update_state
    new_event = await self._current_state.run_tasks()
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/proton/vpn/connection/states.py", line 232, in run_tasks
    await self.context.kill_switch.enable(
    ...<2 lines>...
    )
  File "/usr/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/killswitch/default/nmkillswitch.py", line 64, in enable
    await self._ks_handler.add_full_killswitch_connection(permanent)
  File "/usr/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/killswitch/default/killswitch_connection_handler.py", line 136, in add_full_killswitch_connection
    await _wrap_future(
        self.nm_client.add_connection_async(kill_switch.connection, save_to_disk=permanent)
    )
  File "/usr/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/killswitch/default/killswitch_connection_handler.py", line 51, in _wrap_future
    return await asyncio.wait_for(
           ^^^^^^^^^^^^^^^^^^^^^^^
    ...<2 lines>...
    )
    ^
  File "/usr/lib/python3.13/asyncio/tasks.py", line 506, in wait_for
    async with timeouts.timeout(timeout):
               ~~~~~~~~~~~~~~~~^^^^^^^^^
  File "/usr/lib/python3.13/asyncio/timeouts.py", line 116, in __aexit__
    raise TimeoutError from exc_val
TimeoutError
2025-01-09T22:40:54.522706+00:00 | urllib3.connectionpool:868 | WARNING | Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7ad65157e270>: Failed to resolve 'vpn-api.proton.me' ([Errno -3] Temporary failure in name resolution)")': /core/v4/reports/sentry/api/25/envelope/
2025-01-09T22:40:54.558015+00:00 | urllib3.connectionpool:868 | WARNING | Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7ad6515c5950>: Failed to resolve 'vpn-api.proton.me' ([Errno -3] Temporary failure in name resolution)")': /core/v4/reports/sentry/api/25/envelope/
2025-01-09T22:40:54.593143+00:00 | urllib3.connectionpool:868 | WARNING | Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7ad6515c5bd0>: Failed to resolve 'vpn-api.proton.me' ([Errno -3] Temporary failure in name resolution)")': /core/v4/reports/sentry/api/25/envelope/

@ptr1337
Copy link
Author

ptr1337 commented Jan 10, 2025

After a reboot, the app was able to load. I am still unable to quick connect. Here are the logs:

2025-01-09T22:40:42.243222+00:00 | proton.vpn.app.gtk.app:57 | INFO | APP:PROCESS_START | self=<app.App object at 0x7ad675198400 (proton+vpn+app+gtk+app+App at 0x5fbb46069e40)>
2025-01-09T22:40:42.312790+00:00 | proton.vpn.core.refresher.vpn_data_refresher:167 | INFO | APP.VPN_DATA_REFRESHER:ENABLE | VPN data refresher service enabled.
2025-01-09T22:40:42.312926+00:00 | proton.vpn.core.refresher.vpn_data_refresher:175 | INFO | Next client config refresh scheduled in 2:35:59.101032
2025-01-09T22:40:42.313043+00:00 | proton.vpn.core.refresher.vpn_data_refresher:184 | INFO | Next server list refresh scheduled in 0:09:44.093992
2025-01-09T22:40:42.313694+00:00 | proton.vpn.core.refresher.vpn_data_refresher:193 | INFO | Next certificate refresh scheduled in 5 days, 5:51:42.686345
2025-01-09T22:40:42.313789+00:00 | proton.vpn.core.refresher.vpn_data_refresher:202 | INFO | Next feature flags refresh scheduled in 2:06:21.261280
2025-01-09T22:40:42.343016+00:00 | proton.vpn.app.gtk.services.reconnector.reconnector:94 | INFO | VPN reconnector enabled.
2025-01-09T22:40:42.539701+00:00 | proton.vpn.app.gtk.controller:147 | INFO | APP.STARTUP:STARTUP_ACTIONS | Running startup actions
2025-01-09T22:40:42.539830+00:00 | proton.vpn.app.gtk.widgets.vpn.vpn_widget:214 | INFO | APP.VPN:WIDGET_READY | VPN widget is ready (load time: 0.23 seconds)
2025-01-09T22:40:42.593102+00:00 | proton.vpn.app.gtk.services.reconnector.reconnector:174 | INFO | Network connectivity was detected.

(protonvpn-app:5783): Gdk-CRITICAL **: 16:40:42.593: gdk_window_thaw_toplevel_updates: assertion 'window->update_and_descendants_freeze_count > 0' failed
2025-01-09T22:40:49.208229+00:00 | proton.vpn.app.gtk.widgets.vpn.quick_connect_widget:96 | INFO | UI.TRAY:CONNECT | Connect to fastest server
2025-01-09T22:40:49.278236+00:00 | proton.vpn.core.connection:354 | INFO | CONN.CONNECT:START | Server: NL-FREE#113 / Domain: node-nl-149.protonvpn.net / IP: 149.34.244.134 / OpenVPN Ports: ProtocolPorts(udp=[80, 51820, 4569, 1194, 5060], tcp=[443, 7770, 8443]) / WireGuard Ports: ProtocolPorts(udp=[443, 88, 1224, 51820, 500, 4500], tcp=[443]) / Protocol: openvpn-udp / Backend: None
2025-01-09T22:40:49.280145+00:00 | proton.vpn.core.connection:373 | INFO | Using certificate based authentication for openvpn: False
2025-01-09T22:40:49.343421+00:00 | proton.vpn.core.connection:461 | INFO | CONN:STATE_CHANGED | Connecting
2025-01-09T22:40:54.349525+00:00 | proton.vpn.app.gtk.utils.exception_handler:257 | CRITICAL | APP:CRASH | Unexpected error.
Traceback (most recent call last):
  File "/usr/lib/python3.13/asyncio/tasks.py", line 507, in wait_for
    return await fut
           ^^^^^^^^^
asyncio.exceptions.CancelledError

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/lib/python3.13/concurrent/futures/_base.py", line 449, in result
    return self.__get_result()
           ~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/concurrent/futures/_base.py", line 401, in __get_result
    raise self._exception
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 383, in connect
    await self._on_connection_event(
        events.Up(events.EventContext(connection=connection))
    )
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 452, in _on_connection_event
    event = await self._handle_on_event(event)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 437, in _handle_on_event
    return await self._update_state(new_state)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 472, in _update_state
    new_event = await self._current_state.run_tasks()
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/proton/vpn/connection/states.py", line 232, in run_tasks
    await self.context.kill_switch.enable(
    ...<2 lines>...
    )
  File "/usr/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/killswitch/default/nmkillswitch.py", line 64, in enable
    await self._ks_handler.add_full_killswitch_connection(permanent)
  File "/usr/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/killswitch/default/killswitch_connection_handler.py", line 136, in add_full_killswitch_connection
    await _wrap_future(
        self.nm_client.add_connection_async(kill_switch.connection, save_to_disk=permanent)
    )
  File "/usr/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/killswitch/default/killswitch_connection_handler.py", line 51, in _wrap_future
    return await asyncio.wait_for(
           ^^^^^^^^^^^^^^^^^^^^^^^
    ...<2 lines>...
    )
    ^
  File "/usr/lib/python3.13/asyncio/tasks.py", line 506, in wait_for
    async with timeouts.timeout(timeout):
               ~~~~~~~~~~~~~~~~^^^^^^^^^
  File "/usr/lib/python3.13/asyncio/timeouts.py", line 116, in __aexit__
    raise TimeoutError from exc_val
TimeoutError
2025-01-09T22:40:54.522706+00:00 | urllib3.connectionpool:868 | WARNING | Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7ad65157e270>: Failed to resolve 'vpn-api.proton.me' ([Errno -3] Temporary failure in name resolution)")': /core/v4/reports/sentry/api/25/envelope/
2025-01-09T22:40:54.558015+00:00 | urllib3.connectionpool:868 | WARNING | Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7ad6515c5950>: Failed to resolve 'vpn-api.proton.me' ([Errno -3] Temporary failure in name resolution)")': /core/v4/reports/sentry/api/25/envelope/
2025-01-09T22:40:54.593143+00:00 | urllib3.connectionpool:868 | WARNING | Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7ad6515c5bd0>: Failed to resolve 'vpn-api.proton.me' ([Errno -3] Temporary failure in name resolution)")': /core/v4/reports/sentry/api/25/envelope/

Did you try to install the rust based local-agent?

@menteb
Copy link

menteb commented Jan 15, 2025

I get the following on Arch

Traceback (most recent call last):
  File "/bin/protonvpn-app", line 33, in <module>
    sys.exit(load_entry_point('proton-vpn-gtk-app==4.8.2', 'console_scripts', 'protonvpn-app')())
             ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/bin/protonvpn-app", line 25, in importlib_load_entry_point
    return next(matches).load()
           ~~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/importlib/metadata/__init__.py", line 179, in load
    module = import_module(match.group('module'))
  File "/usr/lib/python3.13/importlib/__init__.py", line 88, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1310, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1310, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1310, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1310, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 935, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 1026, in exec_module
  File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
  File "/usr/lib/python3.13/site-packages/proton/__init__.py", line 1, in <module>
    from .api import Session # noqa
    ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/proton/api.py", line 29, in <module>
    from .metadata import MetadataBackend
  File "/usr/lib/python3.13/site-packages/proton/metadata/__init__.py", line 1, in <module>
    from . import textfile_metadata # noqa
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/proton/metadata/textfile_metadata.py", line 6, in <module>
    from ._base import MetadataBackend
  File "/usr/lib/python3.13/site-packages/proton/metadata/_base.py", line 2, in <module>
    from ..utils import SubclassesMixin
ImportError: cannot import name 'SubclassesMixin' from 'proton.utils' (/usr/lib/python3.13/site-packages/proton/utils/__init__.py)

@Bill-Joe-Tech
Copy link

After a reboot, the app was able to load. I am still unable to quick connect. Here are the logs:

2025-01-09T22:40:42.243222+00:00 | proton.vpn.app.gtk.app:57 | INFO | APP:PROCESS_START | self=<app.App object at 0x7ad675198400 (proton+vpn+app+gtk+app+App at 0x5fbb46069e40)>
2025-01-09T22:40:42.312790+00:00 | proton.vpn.core.refresher.vpn_data_refresher:167 | INFO | APP.VPN_DATA_REFRESHER:ENABLE | VPN data refresher service enabled.
2025-01-09T22:40:42.312926+00:00 | proton.vpn.core.refresher.vpn_data_refresher:175 | INFO | Next client config refresh scheduled in 2:35:59.101032
2025-01-09T22:40:42.313043+00:00 | proton.vpn.core.refresher.vpn_data_refresher:184 | INFO | Next server list refresh scheduled in 0:09:44.093992
2025-01-09T22:40:42.313694+00:00 | proton.vpn.core.refresher.vpn_data_refresher:193 | INFO | Next certificate refresh scheduled in 5 days, 5:51:42.686345
2025-01-09T22:40:42.313789+00:00 | proton.vpn.core.refresher.vpn_data_refresher:202 | INFO | Next feature flags refresh scheduled in 2:06:21.261280
2025-01-09T22:40:42.343016+00:00 | proton.vpn.app.gtk.services.reconnector.reconnector:94 | INFO | VPN reconnector enabled.
2025-01-09T22:40:42.539701+00:00 | proton.vpn.app.gtk.controller:147 | INFO | APP.STARTUP:STARTUP_ACTIONS | Running startup actions
2025-01-09T22:40:42.539830+00:00 | proton.vpn.app.gtk.widgets.vpn.vpn_widget:214 | INFO | APP.VPN:WIDGET_READY | VPN widget is ready (load time: 0.23 seconds)
2025-01-09T22:40:42.593102+00:00 | proton.vpn.app.gtk.services.reconnector.reconnector:174 | INFO | Network connectivity was detected.

(protonvpn-app:5783): Gdk-CRITICAL **: 16:40:42.593: gdk_window_thaw_toplevel_updates: assertion 'window->update_and_descendants_freeze_count > 0' failed
2025-01-09T22:40:49.208229+00:00 | proton.vpn.app.gtk.widgets.vpn.quick_connect_widget:96 | INFO | UI.TRAY:CONNECT | Connect to fastest server
2025-01-09T22:40:49.278236+00:00 | proton.vpn.core.connection:354 | INFO | CONN.CONNECT:START | Server: NL-FREE#113 / Domain: node-nl-149.protonvpn.net / IP: 149.34.244.134 / OpenVPN Ports: ProtocolPorts(udp=[80, 51820, 4569, 1194, 5060], tcp=[443, 7770, 8443]) / WireGuard Ports: ProtocolPorts(udp=[443, 88, 1224, 51820, 500, 4500], tcp=[443]) / Protocol: openvpn-udp / Backend: None
2025-01-09T22:40:49.280145+00:00 | proton.vpn.core.connection:373 | INFO | Using certificate based authentication for openvpn: False
2025-01-09T22:40:49.343421+00:00 | proton.vpn.core.connection:461 | INFO | CONN:STATE_CHANGED | Connecting
2025-01-09T22:40:54.349525+00:00 | proton.vpn.app.gtk.utils.exception_handler:257 | CRITICAL | APP:CRASH | Unexpected error.
Traceback (most recent call last):
  File "/usr/lib/python3.13/asyncio/tasks.py", line 507, in wait_for
    return await fut
           ^^^^^^^^^
asyncio.exceptions.CancelledError

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/lib/python3.13/concurrent/futures/_base.py", line 449, in result
    return self.__get_result()
           ~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/concurrent/futures/_base.py", line 401, in __get_result
    raise self._exception
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 383, in connect
    await self._on_connection_event(
        events.Up(events.EventContext(connection=connection))
    )
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 452, in _on_connection_event
    event = await self._handle_on_event(event)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 437, in _handle_on_event
    return await self._update_state(new_state)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 472, in _update_state
    new_event = await self._current_state.run_tasks()
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/proton/vpn/connection/states.py", line 232, in run_tasks
    await self.context.kill_switch.enable(
    ...<2 lines>...
    )
  File "/usr/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/killswitch/default/nmkillswitch.py", line 64, in enable
    await self._ks_handler.add_full_killswitch_connection(permanent)
  File "/usr/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/killswitch/default/killswitch_connection_handler.py", line 136, in add_full_killswitch_connection
    await _wrap_future(
        self.nm_client.add_connection_async(kill_switch.connection, save_to_disk=permanent)
    )
  File "/usr/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/killswitch/default/killswitch_connection_handler.py", line 51, in _wrap_future
    return await asyncio.wait_for(
           ^^^^^^^^^^^^^^^^^^^^^^^
    ...<2 lines>...
    )
    ^
  File "/usr/lib/python3.13/asyncio/tasks.py", line 506, in wait_for
    async with timeouts.timeout(timeout):
               ~~~~~~~~~~~~~~~~^^^^^^^^^
  File "/usr/lib/python3.13/asyncio/timeouts.py", line 116, in __aexit__
    raise TimeoutError from exc_val
TimeoutError
2025-01-09T22:40:54.522706+00:00 | urllib3.connectionpool:868 | WARNING | Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7ad65157e270>: Failed to resolve 'vpn-api.proton.me' ([Errno -3] Temporary failure in name resolution)")': /core/v4/reports/sentry/api/25/envelope/
2025-01-09T22:40:54.558015+00:00 | urllib3.connectionpool:868 | WARNING | Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7ad6515c5950>: Failed to resolve 'vpn-api.proton.me' ([Errno -3] Temporary failure in name resolution)")': /core/v4/reports/sentry/api/25/envelope/
2025-01-09T22:40:54.593143+00:00 | urllib3.connectionpool:868 | WARNING | Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7ad6515c5bd0>: Failed to resolve 'vpn-api.proton.me' ([Errno -3] Temporary failure in name resolution)")': /core/v4/reports/sentry/api/25/envelope/

Did you try to install the rust based local-agent?

What is the package called? Is it a dependency of proton-vpn-gtk-app? I have tried the kwallet, kwallet5, keepassxc, and gnome-keyring, and I have gotten the same issue each time. Somewhat frustrating since the app works on every other distribution besides Arch.

@ptr1337
Copy link
Author

ptr1337 commented Jan 16, 2025

After a reboot, the app was able to load. I am still unable to quick connect. Here are the logs:

2025-01-09T22:40:42.243222+00:00 | proton.vpn.app.gtk.app:57 | INFO | APP:PROCESS_START | self=<app.App object at 0x7ad675198400 (proton+vpn+app+gtk+app+App at 0x5fbb46069e40)>
2025-01-09T22:40:42.312790+00:00 | proton.vpn.core.refresher.vpn_data_refresher:167 | INFO | APP.VPN_DATA_REFRESHER:ENABLE | VPN data refresher service enabled.
2025-01-09T22:40:42.312926+00:00 | proton.vpn.core.refresher.vpn_data_refresher:175 | INFO | Next client config refresh scheduled in 2:35:59.101032
2025-01-09T22:40:42.313043+00:00 | proton.vpn.core.refresher.vpn_data_refresher:184 | INFO | Next server list refresh scheduled in 0:09:44.093992
2025-01-09T22:40:42.313694+00:00 | proton.vpn.core.refresher.vpn_data_refresher:193 | INFO | Next certificate refresh scheduled in 5 days, 5:51:42.686345
2025-01-09T22:40:42.313789+00:00 | proton.vpn.core.refresher.vpn_data_refresher:202 | INFO | Next feature flags refresh scheduled in 2:06:21.261280
2025-01-09T22:40:42.343016+00:00 | proton.vpn.app.gtk.services.reconnector.reconnector:94 | INFO | VPN reconnector enabled.
2025-01-09T22:40:42.539701+00:00 | proton.vpn.app.gtk.controller:147 | INFO | APP.STARTUP:STARTUP_ACTIONS | Running startup actions
2025-01-09T22:40:42.539830+00:00 | proton.vpn.app.gtk.widgets.vpn.vpn_widget:214 | INFO | APP.VPN:WIDGET_READY | VPN widget is ready (load time: 0.23 seconds)
2025-01-09T22:40:42.593102+00:00 | proton.vpn.app.gtk.services.reconnector.reconnector:174 | INFO | Network connectivity was detected.

(protonvpn-app:5783): Gdk-CRITICAL **: 16:40:42.593: gdk_window_thaw_toplevel_updates: assertion 'window->update_and_descendants_freeze_count > 0' failed
2025-01-09T22:40:49.208229+00:00 | proton.vpn.app.gtk.widgets.vpn.quick_connect_widget:96 | INFO | UI.TRAY:CONNECT | Connect to fastest server
2025-01-09T22:40:49.278236+00:00 | proton.vpn.core.connection:354 | INFO | CONN.CONNECT:START | Server: NL-FREE#113 / Domain: node-nl-149.protonvpn.net / IP: 149.34.244.134 / OpenVPN Ports: ProtocolPorts(udp=[80, 51820, 4569, 1194, 5060], tcp=[443, 7770, 8443]) / WireGuard Ports: ProtocolPorts(udp=[443, 88, 1224, 51820, 500, 4500], tcp=[443]) / Protocol: openvpn-udp / Backend: None
2025-01-09T22:40:49.280145+00:00 | proton.vpn.core.connection:373 | INFO | Using certificate based authentication for openvpn: False
2025-01-09T22:40:49.343421+00:00 | proton.vpn.core.connection:461 | INFO | CONN:STATE_CHANGED | Connecting
2025-01-09T22:40:54.349525+00:00 | proton.vpn.app.gtk.utils.exception_handler:257 | CRITICAL | APP:CRASH | Unexpected error.
Traceback (most recent call last):
  File "/usr/lib/python3.13/asyncio/tasks.py", line 507, in wait_for
    return await fut
           ^^^^^^^^^
asyncio.exceptions.CancelledError

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/lib/python3.13/concurrent/futures/_base.py", line 449, in result
    return self.__get_result()
           ~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/concurrent/futures/_base.py", line 401, in __get_result
    raise self._exception
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 383, in connect
    await self._on_connection_event(
        events.Up(events.EventContext(connection=connection))
    )
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 452, in _on_connection_event
    event = await self._handle_on_event(event)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 437, in _handle_on_event
    return await self._update_state(new_state)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 472, in _update_state
    new_event = await self._current_state.run_tasks()
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/proton/vpn/connection/states.py", line 232, in run_tasks
    await self.context.kill_switch.enable(
    ...<2 lines>...
    )
  File "/usr/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/killswitch/default/nmkillswitch.py", line 64, in enable
    await self._ks_handler.add_full_killswitch_connection(permanent)
  File "/usr/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/killswitch/default/killswitch_connection_handler.py", line 136, in add_full_killswitch_connection
    await _wrap_future(
        self.nm_client.add_connection_async(kill_switch.connection, save_to_disk=permanent)
    )
  File "/usr/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/killswitch/default/killswitch_connection_handler.py", line 51, in _wrap_future
    return await asyncio.wait_for(
           ^^^^^^^^^^^^^^^^^^^^^^^
    ...<2 lines>...
    )
    ^
  File "/usr/lib/python3.13/asyncio/tasks.py", line 506, in wait_for
    async with timeouts.timeout(timeout):
               ~~~~~~~~~~~~~~~~^^^^^^^^^
  File "/usr/lib/python3.13/asyncio/timeouts.py", line 116, in __aexit__
    raise TimeoutError from exc_val
TimeoutError
2025-01-09T22:40:54.522706+00:00 | urllib3.connectionpool:868 | WARNING | Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7ad65157e270>: Failed to resolve 'vpn-api.proton.me' ([Errno -3] Temporary failure in name resolution)")': /core/v4/reports/sentry/api/25/envelope/
2025-01-09T22:40:54.558015+00:00 | urllib3.connectionpool:868 | WARNING | Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7ad6515c5950>: Failed to resolve 'vpn-api.proton.me' ([Errno -3] Temporary failure in name resolution)")': /core/v4/reports/sentry/api/25/envelope/
2025-01-09T22:40:54.593143+00:00 | urllib3.connectionpool:868 | WARNING | Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7ad6515c5bd0>: Failed to resolve 'vpn-api.proton.me' ([Errno -3] Temporary failure in name resolution)")': /core/v4/reports/sentry/api/25/envelope/

Did you try to install the rust based local-agent?

What is the package called? Is it a dependency of proton-vpn-gtk-app? I have tried the kwallet, kwallet5, keepassxc, and gnome-keyring, and I have gotten the same issue each time. Somewhat frustrating since the app works on every other distribution besides Arch.

Yes, if you do "sudo pacman -Syu" it will install it OOB.
I made it hard depend on proton-vpn-gtk-app in the archlinux repository:
https://archlinux.org/packages/extra/x86_64/python-proton-vpn-local-agent/

I will test on the weekend on my second ssd a fresh archlinux install and will check if proton-vpn is working with the official packages.

@Bill-Joe-Tech
Copy link

After a reboot, the app was able to load. I am still unable to quick connect. Here are the logs:

2025-01-09T22:40:42.243222+00:00 | proton.vpn.app.gtk.app:57 | INFO | APP:PROCESS_START | self=<app.App object at 0x7ad675198400 (proton+vpn+app+gtk+app+App at 0x5fbb46069e40)>
2025-01-09T22:40:42.312790+00:00 | proton.vpn.core.refresher.vpn_data_refresher:167 | INFO | APP.VPN_DATA_REFRESHER:ENABLE | VPN data refresher service enabled.
2025-01-09T22:40:42.312926+00:00 | proton.vpn.core.refresher.vpn_data_refresher:175 | INFO | Next client config refresh scheduled in 2:35:59.101032
2025-01-09T22:40:42.313043+00:00 | proton.vpn.core.refresher.vpn_data_refresher:184 | INFO | Next server list refresh scheduled in 0:09:44.093992
2025-01-09T22:40:42.313694+00:00 | proton.vpn.core.refresher.vpn_data_refresher:193 | INFO | Next certificate refresh scheduled in 5 days, 5:51:42.686345
2025-01-09T22:40:42.313789+00:00 | proton.vpn.core.refresher.vpn_data_refresher:202 | INFO | Next feature flags refresh scheduled in 2:06:21.261280
2025-01-09T22:40:42.343016+00:00 | proton.vpn.app.gtk.services.reconnector.reconnector:94 | INFO | VPN reconnector enabled.
2025-01-09T22:40:42.539701+00:00 | proton.vpn.app.gtk.controller:147 | INFO | APP.STARTUP:STARTUP_ACTIONS | Running startup actions
2025-01-09T22:40:42.539830+00:00 | proton.vpn.app.gtk.widgets.vpn.vpn_widget:214 | INFO | APP.VPN:WIDGET_READY | VPN widget is ready (load time: 0.23 seconds)
2025-01-09T22:40:42.593102+00:00 | proton.vpn.app.gtk.services.reconnector.reconnector:174 | INFO | Network connectivity was detected.

(protonvpn-app:5783): Gdk-CRITICAL **: 16:40:42.593: gdk_window_thaw_toplevel_updates: assertion 'window->update_and_descendants_freeze_count > 0' failed
2025-01-09T22:40:49.208229+00:00 | proton.vpn.app.gtk.widgets.vpn.quick_connect_widget:96 | INFO | UI.TRAY:CONNECT | Connect to fastest server
2025-01-09T22:40:49.278236+00:00 | proton.vpn.core.connection:354 | INFO | CONN.CONNECT:START | Server: NL-FREE#113 / Domain: node-nl-149.protonvpn.net / IP: 149.34.244.134 / OpenVPN Ports: ProtocolPorts(udp=[80, 51820, 4569, 1194, 5060], tcp=[443, 7770, 8443]) / WireGuard Ports: ProtocolPorts(udp=[443, 88, 1224, 51820, 500, 4500], tcp=[443]) / Protocol: openvpn-udp / Backend: None
2025-01-09T22:40:49.280145+00:00 | proton.vpn.core.connection:373 | INFO | Using certificate based authentication for openvpn: False
2025-01-09T22:40:49.343421+00:00 | proton.vpn.core.connection:461 | INFO | CONN:STATE_CHANGED | Connecting
2025-01-09T22:40:54.349525+00:00 | proton.vpn.app.gtk.utils.exception_handler:257 | CRITICAL | APP:CRASH | Unexpected error.
Traceback (most recent call last):
  File "/usr/lib/python3.13/asyncio/tasks.py", line 507, in wait_for
    return await fut
           ^^^^^^^^^
asyncio.exceptions.CancelledError

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/lib/python3.13/concurrent/futures/_base.py", line 449, in result
    return self.__get_result()
           ~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/concurrent/futures/_base.py", line 401, in __get_result
    raise self._exception
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 383, in connect
    await self._on_connection_event(
        events.Up(events.EventContext(connection=connection))
    )
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 452, in _on_connection_event
    event = await self._handle_on_event(event)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 437, in _handle_on_event
    return await self._update_state(new_state)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/proton/vpn/core/connection.py", line 472, in _update_state
    new_event = await self._current_state.run_tasks()
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/proton/vpn/connection/states.py", line 232, in run_tasks
    await self.context.kill_switch.enable(
    ...<2 lines>...
    )
  File "/usr/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/killswitch/default/nmkillswitch.py", line 64, in enable
    await self._ks_handler.add_full_killswitch_connection(permanent)
  File "/usr/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/killswitch/default/killswitch_connection_handler.py", line 136, in add_full_killswitch_connection
    await _wrap_future(
        self.nm_client.add_connection_async(kill_switch.connection, save_to_disk=permanent)
    )
  File "/usr/lib/python3.13/site-packages/proton/vpn/backend/linux/networkmanager/killswitch/default/killswitch_connection_handler.py", line 51, in _wrap_future
    return await asyncio.wait_for(
           ^^^^^^^^^^^^^^^^^^^^^^^
    ...<2 lines>...
    )
    ^
  File "/usr/lib/python3.13/asyncio/tasks.py", line 506, in wait_for
    async with timeouts.timeout(timeout):
               ~~~~~~~~~~~~~~~~^^^^^^^^^
  File "/usr/lib/python3.13/asyncio/timeouts.py", line 116, in __aexit__
    raise TimeoutError from exc_val
TimeoutError
2025-01-09T22:40:54.522706+00:00 | urllib3.connectionpool:868 | WARNING | Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7ad65157e270>: Failed to resolve 'vpn-api.proton.me' ([Errno -3] Temporary failure in name resolution)")': /core/v4/reports/sentry/api/25/envelope/
2025-01-09T22:40:54.558015+00:00 | urllib3.connectionpool:868 | WARNING | Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7ad6515c5950>: Failed to resolve 'vpn-api.proton.me' ([Errno -3] Temporary failure in name resolution)")': /core/v4/reports/sentry/api/25/envelope/
2025-01-09T22:40:54.593143+00:00 | urllib3.connectionpool:868 | WARNING | Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7ad6515c5bd0>: Failed to resolve 'vpn-api.proton.me' ([Errno -3] Temporary failure in name resolution)")': /core/v4/reports/sentry/api/25/envelope/

Did you try to install the rust based local-agent?

What is the package called? Is it a dependency of proton-vpn-gtk-app? I have tried the kwallet, kwallet5, keepassxc, and gnome-keyring, and I have gotten the same issue each time. Somewhat frustrating since the app works on every other distribution besides Arch.

Yes, if you do "sudo pacman -Syu" it will install it OOB. I made it hard depend on proton-vpn-gtk-app in the archlinux repository: https://archlinux.org/packages/extra/x86_64/python-proton-vpn-local-agent/

I will test on the weekend on my second ssd a fresh archlinux install and will check if proton-vpn is working with the official packages.

A system upgrade did not fix the issue for me. Also the /etc/resolved.conf file is being changed each time I run the application:

# Generated by NetworkManager
nameserver 0.0.0.0
nameserver ::1

Appreciation for the support,
Bill Joe

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants