Problem installing Riseup-VPN via Snap

Hello, I have encountered a problem when installing riseup-vpn via snap, in appvm in my qubes os.

I created a minimal debian-11 template and installed security enhancements from the kicksecure team into it, then I installed the packages qubes-core-agent-networking and snapd along with qubes-snapd-helper. After that I started installing riseup vpn with snap install --classic riseup-vpn and at the end I keep getting an error:

user@sys-vpn:~$ sudo snap install --classic riseup-vpn
2022-05-16T22:05:13-04:00 INFO Waiting for automatic snapd restart…
error: cannot perform the following tasks:

  • Run install hook of “riseup-vpn” snap if present (run hook “install”:

Traceback (most recent call last):
File “/snap/riseup-vpn/179/meta/hooks/install”, line 26, in
subprocess.call([‘update-desktop-database’])
File “/usr/lib/python3.9/subprocess.py”, line 349, in call
with Popen(*popenargs, **kwargs) as p:
File “/usr/lib/python3.9/subprocess.py”, line 951, in init
self._execute_child(args, executable, preexec_fn, close_fds,
File “/usr/lib/python3.9/subprocess.py”, line 1823, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: ‘update-desktop-database’
-----)

Maybe someone has encountered this? I’ve already tried installing qubes-core-agent-passwordless-root and different versions of python, but I still get the same error.

Thank you.

Are you running snap install in your template or AppVM? It should be done in the latter,

Also, you might benefit from this information:

Yes, I run snap install in my appvm.
Thanks for the instruction, but I need to get riseup-vpn installed first to do it, and I’m having some trouble with that
Thanks

I just tried sudo snap install --classic riseup-vpn in my kicksecure-snap template and I was able to install it without issues.
Try installing these packages in your template, then shut it down and restart your sys-vpn:

gnome-keyring
policykit-1
policykit-1-gnome
qubes-core-agent-networking
qubes-core-agent-passwordless-root
qubes-snapd-helper
snapd

I tried this in a clone of debian-11-minimal and got the exact same error as @grassdes

I then tried installing the packages in the template recommended by @BEBF738VD above, and still got the exact same error when trying to install the riseup-vpn snap in an app qube based said template.

i then tried using a template cloned from debian-11 (not minimal), installed policykit-1 policykit-1-gnome snapd qubes-snapd-helper. running sudo snap install --classic --beta riseup-vpn in an app qube based on that was successful.

@BEBF738VD is your kicksecure-snap template based on debian-11 or debian-11-minimal?

wondering if anyone peeking into this thread has any insights on what else could be done to a debian-11-minimal template to get this to work?

Add RiseUp buster repo + just use the official .deb?

Migrate/move to debian-12, it’s already in the repo?

I believe i tried that in the past (adding riseup’s repo) and it just did. not. work (RiseupVPN that is). their project page seems to mention that their own repo is not updated/seriously out of date leap / bitmask-vpn · GitLab and there are few issues about bugs running under qubes.

by “it’'s already in the repo” regarding debian-12 what do you mean exactly?

do you have a working set up for the riseup-vpn is some kind of minimal template-based qube?

Yes, both debian-11-minimal as well as debian-12-minimal worked just fine.

IIRC, with debian-11-minimal + RiseUp buster repo, the desktop launcher (.desktop) needed to be edited? Can’t remember which changes exactly though, sorry. :person_shrugging: :melting_face: :person_shrugging:

From a debian-12 qube, you can easily install with:

# apt install -y riseup-vpn

Just my $0.02, RiseUp is :poodle: :poop: but, go wild with it if only used for :pirate_flag: and the like.

@cayce

noted thank you. i’ll try seeing if riseup’s own repo works, a clue about the .desktop is still helpful.

given that creating a debian-12-minimal template is a little off the beaten path i am still curious if anyone has had luck with the snap running in debian-11-minimal, basically addressing the error the original post is asking about.

Just a quick followup for anyone reading, indeed following RiseUp’s own instructions for adding their own repo (found here: RiseupVPN for Linux - riseup.net) will not work in a debian-11-minimal template-based qube, or possibly at all anywhere since the version in that repo is so old and unmaintained: Not working properly on Ubuntu (#685) · Issues · leap / bitmask-vpn · GitLab

snap, or going a route with a debian-12 based template would seem to be the only way (so again, if there’s any clues about dealing with the original snap error that kicked off this thread…)

I really don’t know why I bother anymore …

I’m hard pressed to understand how/why so many these days refute another’s experience in favor of their own, uninformed “reality”.

@spacewagon is 100% incorrect as the following installs just fine on debian-11-minimal:

#!/bin/bash
apt install -y qubes-core-agent-networking leap-archive-keyring
echo "deb https://deb.leap.se/client release buster" | tee -a /etc/apt/sources.list.d/leap.list
apt update
apt install -y riseup-vpn
apt upgrade -y

Save this to something like icanhazriseuponbullseye.sh, copy to myawesomeriseuptemplate, open console and:

bash /home/user/Qubes*/*/icanhazriseuponbullseye.sh

+
Run from shell with:

$ riseup-vpn

OR

Manually create .desktop launcher. Profit.

no need to be rude. also you keep editing your post to be more snarky, for some reason?

i’m sitting here having followed your instructions, as written (they are they same as what RiseUp provides if I’m not mistaken). the only addition i made was also installing qubes-core-agent-networking in the template, (which you forgot before editing your post).

ran riseup-vpn in app qube, based on template.

stuck with same

Event: TCP_CONNECT
Event: WAIT
status: starting
Event: AUTH
status: starting
Event: RECONNECTING: tls-error

error loop as described in the issue i linked.

Not sure how any of the help I’ve offered is rude, just telling you what’s working here and, no I didn’t “forgot before editing your post”; I didn’t include qubes-core-agent-networking originally because anyone leveraging minimal templates ought know to install this is networking is required :person_shrugging: but, I edited it to avoid confusion & for the sake of completeness. :melting_face:

The official .desktop file (found in home autostart) for buster calls Exec for:

riseup-vpn ""

The official .desktop file for bookworm calls Exec for:

riseup-vpn %u

Try creating your .desktop and launch using it.

@cayce
still no success

i’m not enough of an expert in VPN stuff to explain the discrepancy in our differing experiences starting from the same instructions. maybe it has something to with geography and how riseup-vpn decides what gateway to use, the list of gateways or certificates in the older version in the deb.leap.se repo being out of date to the point of breaking functionality maybe? purely guessing. or maybe i’m just “100% incorrect” and i’m just doing something wrong (happy to admit if i could figure it out!) in which case disregard my posts :upside_down_face:

either way, for anyone reading looking for a solution who does end up with the same issue as me, it has been pointed out elsewhere that the package in that repo is very old and causes similar issues to what my testing showed for some other users besides me, eg: Not working properly on Ubuntu (#685) · Issues · leap / bitmask-vpn · GitLab

as mentioned above either snap, or a situation where you have a debian-12 based template will allow installing newer versions of riseup-vpn which seem to work better/for more users and is generally the recommendation from folks who work on riseup-vpn from browsing through the git. the snap installation of the beta version in a regular debian-11 based template with a few extra packages works for me as mentioned way up thread.

Have you verified network connectivity before starting the VPN?

Are you by any chance trying to start the VPN inside the actual template?

@spacewagon

I’m looking @ logs and, I “think” it’s due to SHA1 being retired within the latest version of OpenVPN. Is your debian-11-minimal template stock/virgin/pristine/unmodified since RPM install? Or, has it been “Updated”?

You could try to to apt-mark hold openvpn in a freshly reinstalled from backup debian-11-minimal

Seriously though, just install bookworm-minimal from unman and:

apt install -y riseup-vpn

(Which, won’t be functional until qubes-core-agent-networking can be installed for bookworm)


Again, the service is trash but, “free” :roll_eyes: :eyes: :roll_eyes: I suppose.

I only use minimal templates, this was no exception.

Thank you for the helpful replies all.

@sven, yes verified before starting VPN. no, starting the VPN in an app qube based on the template.

@cayce that seems like a possible explanation thank you for that insight, definitely worth trying. but i agree with you in general, and i don’t think it’s worth holding onto an older version of OpenVPN to run an older version of riseup-vpn… using a bookworm based template to get the newer version would be best, but it seems like better for the future. I am also asking on behalf of more novice users than myself, so I’m looking for an easier solution… hence why i keep going back to the original post and trying to suss out the cause of the snap error.

@BEBF738VD given that, I think I will see if i can replicate your results. how did you build your kicksecure-minimal-snap template? you just distromorphed from debian-11-minimal and installed the extra packages mentioned? anything else that might explain why the snap works for you?