-
-
Notifications
You must be signed in to change notification settings - Fork 14.4k
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
protonvpn-gui: 4.4.4 -> 4.6.0 #343204
protonvpn-gui: 4.4.4 -> 4.6.0 #343204
Conversation
ad72ea5
to
6b0edb7
Compare
6b0edb7
to
29ac10f
Compare
Result of 26 packages built:
|
Gave it a few tries and from what I've observed the only dependency is for proton-vpn-api-core to be updated at the same time with protonvpn-app to 4.4.5. This is why this PR contains 2 commits. That being said, I haven't tested all possibilities, so indeed, might be a good idea to update everything at once. |
There is some issue when running all updated packages together and only using wireguard:
A new (partial) rust-module with python-bindings got released here - so I guess we need this one for the update as well: https://github.com/ProtonVPN/python-proton-vpn-local-agent |
There isn't a tag/release for that yet. Should we pack that using the latest current commit? |
I've checked that with the team, we can use the latest commit - for the python-bindings
|
Can you push a commit for this on the PR branch? |
Hey, I gave it a try but could use some help here - I can see when building
but when building it with nix the folder contains only the other also present data not the build artifact - maybe I'm doing something wrong here not sure:
(These are also present when building with nix-shell) Building the ".so" file for the python-bindings worked easily - prepared the code to merge them into one package I would expect that makes sense as they are in the same repo? You can reproduce my nixpkgs-build state with |
I also think that they should be in a single package since that is also the way they were packaged upstream. Regarding the build artifacts, I don't know the reason why that is happening or have an idea. Sorry about this. P.S.: I know that is work in progress, but on the changes branch, the meta was not updated for the packages. |
I was wrong. With the merge of #343208, it seems that protonvpn is no longer working on master without updating protonvpn-gui as well. |
I would advise in such situations to create a revert PR and ping in the original ones. Another one seems to got merged as well today. I'm currently not able to respond in short time. I've got the info we only need to build
the local_agent_rs is included in the built-result. This said I updated my branch with this changes and added the new package to There seems to be no difference in putting the build-result in $out or $out/lib. I've also asked here in matrix for help on this issue: https://matrix.to/#/!FBuJyWXTGcGtHTPphC:nixos.org/$Fl_LLhWapJS740g-yQKYZDOpzfIz2ah8XBazSylfqOA?via=nixos.org&via=matrix.org&via=envs.net |
29ac10f
to
f0ee4f4
Compare
Based on the install scripts located in the python-proton-vpn-local-agent git repository, I've installed the library in the same location where the scripts would have. Unfortunately, I can't replicate the issue, but can you give it a try and see if it's still reproducing? I've added the library commit on top of this PR. As a related note, there were some new package updates that target Wireguard, so I've updated everything again in this PR as well. Please, let me know if this works for you. |
b630c94
to
9a6800e
Compare
Result of 19 packages built:
|
You are right, I could reproduce it working with the reproduced directory structure - thought that's somehow not needed/handled by nix as it prefers (without renaming) to put it into "lib/name.so". Again something learned. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A few nits about the diffs, otherwise LGTM and this works for me in WireGuard mode.
c13d610
to
d3e30e5
Compare
Simplified the commit tree based on your suggestions. Please give it a try to see if everything is still working as expected. |
d3e30e5
to
9da6813
Compare
This should be merged only after #349048 gets merged. |
9da6813
to
c6a712a
Compare
#349048 was merged. I rebased this PR and verified that everything still works as expected. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hm, I'm getting this error now when I try to connect via WG:
2024-10-17T09:20:40.882006 | proton.vpn.backend.linux.networkmanager.core.networkmanager:130 | ERROR | Error starting NetworkManager connection.
Traceback (most recent call last):
File "/nix/store/zj9zckgxzbm6dq6psi0s91ia1s9j0lwy-python3.12-proton-vpn-network-manager-0.9.1/lib/python3.12/site-packages/proton/vpn/backend/linux/networkmanager/core/networkmanager.py", line 121, in start
vpn_connection = await loop.run_in_executor(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/nix/store/wfbjq35kxs6x83c3ncpfxdyl5gbhdx4h-python3-3.12.6/lib/python3.12/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/nix/store/wfbjq35kxs6x83c3ncpfxdyl5gbhdx4h-python3-3.12.6/lib/python3.12/concurrent/futures/_base.py", line 456, in result
return self.__get_result()
^^^^^^^^^^^^^^^^^^^
File "/nix/store/wfbjq35kxs6x83c3ncpfxdyl5gbhdx4h-python3-3.12.6/lib/python3.12/concurrent/futures/_base.py", line 401, in __get_result
raise self._exception
File "/nix/store/zj9zckgxzbm6dq6psi0s91ia1s9j0lwy-python3.12-proton-vpn-network-manager-0.9.1/lib/python3.12/site-packages/proton/vpn/backend/linux/networkmanager/core/nmclient.py", line 131, in callback
result = getattr(source_object, finish_method_name)(res)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
gi.repository.GLib.GError: nm-manager-error-quark: Authorization request cancelled (1)
2024-10-17T09:20:41.021725 | asyncio:1820 | ERROR | Exception in callback Publisher._on_notification_task_done(<Task finishe...seException')>)
handle: <Handle Publisher._on_notification_task_done(<Task finishe...seException')>)>
Traceback (most recent call last):
File "/nix/store/wfbjq35kxs6x83c3ncpfxdyl5gbhdx4h-python3-3.12.6/lib/python3.12/asyncio/events.py", line 88, in _run
self._context.run(self._callback, *self._args)
File "/nix/store/npmq55wb7dvf5c3j8qy3xx1ahhgyw2d8-python3.12-proton-vpn-api-core-0.35.5/lib/python3.12/site-packages/proton/vpn/connection/publisher.py", line 92, in _on_notification_task_done
task.result()
File "/nix/store/npmq55wb7dvf5c3j8qy3xx1ahhgyw2d8-python3.12-proton-vpn-api-core-0.35.5/lib/python3.12/site-packages/proton/vpn/core/connection.py", line 439, in _on_connection_event
event = await self._handle_on_event(event)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/nix/store/npmq55wb7dvf5c3j8qy3xx1ahhgyw2d8-python3.12-proton-vpn-api-core-0.35.5/lib/python3.12/site-packages/proton/vpn/core/connection.py", line 422, in _handle_on_event
raise excp
File "/nix/store/npmq55wb7dvf5c3j8qy3xx1ahhgyw2d8-python3.12-proton-vpn-api-core-0.35.5/lib/python3.12/site-packages/proton/vpn/core/connection.py", line 414, in _handle_on_event
new_state = self.current_state.on_event(event)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/nix/store/npmq55wb7dvf5c3j8qy3xx1ahhgyw2d8-python3.12-proton-vpn-api-core-0.35.5/lib/python3.12/site-packages/proton/vpn/connection/states.py", line 120, in on_event
event.check_for_errors()
File "/nix/store/npmq55wb7dvf5c3j8qy3xx1ahhgyw2d8-python3.12-proton-vpn-api-core-0.35.5/lib/python3.12/site-packages/proton/vpn/connection/events.py", line 62, in check_for_errors
raise self.context.error
TypeError: exceptions must derive from BaseException
Weird. It worked on my side without any issues. From what I've seen there are some issues where the application is not starting as expected (I expect some race condition in the app itself), but other than that, I haven't seen anything. I also did a diff between the previous working version before the commit squash and this one and they are identical. I know it's annoying, but can you try to log in again in the app? |
Nope, same issue. As it turns out, this is actually caused by the rebase onto a newer nixpkgs. When I backport the working PR's commits (eccba9f) onto unstable, it also doesn't work anymore. |
Update to the latest version.
Update the package to the latest version.
Update to the latest versions. The proton-vpn-network-manager-wireguard and proton-vpn-network-manager-openvpn modules are now legacy: The same functionality is now in proton-vpn-network-manager module, version 0.6.3 and upwards.
Update the package to the latest version.
Update the protonvpn-gui package to the latest version. The proton-vpn-network-manager-wireguard and proton-vpn-network-manager-openvpn modules are now legacy: The same functionality is now in proton-vpn-network-manager module, version 0.6.3 and upwards. proton-vpn-connection functionality was integrated in the proton-vpn-api-core module. proton-vpn-session functionality was integrated in the proton-vpn-api-core module. proton-vpn-killswitch functionality was integrated in the proton-vpn-api-core module. proton-keyring-linux-secretservice functionality was integrated in the proton-keyring-linux module proton-vpn-killswitch-network-manager-wireguard functionality was integrated in the proton-vpn-network-manager module proton-vpn-killswitch-network-manager functionality was integrated in the proton-vpn-network-manager module proton-vpn-logger functionality was integrated in the proton-vpn-api-core module
c6a712a
to
74cdad8
Compare
I rebased it on the latest master branch and it still works on my machine. I don't know exactly why this is happening on your machine: That being said, I don't feel comfortable pushing this into master until we have a clear confirmation that the package works as expected for everybody (and hopefully root-cause the previously mentioned issue). |
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, tested OpenVPN (TCP/UDP) and wireguard against unstable:
- system: `"x86_64-linux"`
- host os: `Linux 6.11.4, NixOS, 24.11 (Vicuna), 24.11.20241021.ce1b562`
- multi-user?: `yes`
- sandbox: `yes`
- version: `nix-env (Lix, like Nix) 2.91.0
System type: x86_64-linux
Additional system types: aarch64-linux, i686-linux
Features: gc, signed-caches
System configuration file: /etc/nix/nix.conf
User configuration files: /home/sebtm/.config/nix/nix.conf:/etc/xdg/nix/nix.conf:/home/sebtm/.nix-profile/etc/xdg/nix/nix.conf:/nix/profile/etc/xdg/nix/nix.conf:/home/sebtm/.local/state/nix/profile/etc/xdg/nix/nix.conf:/etc/profiles/per-user/sebtm/etc/xdg/nix/nix.conf:/nix/var/nix/profiles/default/etc/xdg/nix/nix.conf:/run/current-system/sw/etc/xdg/nix/nix.conf:/nix/store/rjvx7znypvvircyfz99pa00a3a596661-gnome-settings-daemon-46.0/etc/xdg/nix/nix.conf
Store directory: /nix/store
State directory: /nix/var/nix
Data directory: /nix/store/g839w7gjl0v4vc1gc9gd80ns57hb2kgm-lix-2.91.0/share`
- nixpkgs: `/nix/store/g9n71srms32l7p3s21vbk9az587fjf2l-source`
worked for me without issues.
You can try to delete the cache if you switch between versions (especially multiple releases): ~/.cache/Proton/VPN/
If there is a persistent issue ~/.cache/Proton/VPN/logs/vpn-app.log
and journalctl -u NetworkManager
/ nmcli c monitor
can be helpful.
The trouble is that it worked on this same versoin but with an older state of the rest of nixpkgs which is very weird. If it still works for you, this is probably a me issue though. |
Description of changes
Update the package to the latest version.
Things done
nix.conf
? (See Nix manual)sandbox = relaxed
sandbox = true
nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD"
. Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/
)Add a 👍 reaction to pull requests you find important.