Botspot / pi-apps

Raspberry Pi App Store for Open Source Projects
GNU General Public License v3.0
1.93k stars 207 forks source link

VPNs #2617

Open GYKgamer opened 1 month ago

GYKgamer commented 1 month ago

What is the name of the app?

ProtonVPN

Where is the app hosted?

https://protonvpn.com/download-linux

About the app

ProtonVPN is simply, a vpn. Free to use, simple to install and works without box86/64.

Upload file or Add PR Link

https://repo.protonvpn.com/debian/dists/stable/main/binary-all/protonvpn-stable-release_1.0.3-3_all.deb

Confirmations

GYKgamer commented 1 month ago

image

Botspot commented 1 month ago

By any chance does this app add its own apt repository to the system? We had an issue with this happening once, though in that case I'm not sure if the user added this repo or if the app added it automatically. See: https://github.com/Botspot/pi-apps/issues/959

GYKgamer commented 1 month ago

It does add it's own apt repo, after installing the deb you sue apt to install protonvpn image

theofficialgman commented 1 month ago

the package linked is simply a package that contains the sources list and key. nothing else

image

that is fine and pretty common for 3rd party repositories

all that is needed for pi-apps would be something like

# install latest repo package at the time of writing
install_packages https://repo.protonvpn.com/debian/dists/stable/main/binary-all/protonvpn-stable-release_1.0.3-3_all.deb || exit 1

# check that repo works without error
apt_update
if [ $? != 0 ]; then
  sudo apt purge -y protonvpn-stable-release
  error "Failed to perform apt update after adding protonvpn repository."
fi
# update repo package if newer version is available
apt_lock_wait
sudo apt install --only-upgrade protonvpn-stable-release -y

# install proton vpn
install_packages proton-vpn-gnome-desktop || exit 1
theofficialgman commented 1 month ago

the above could be made simpler if we obtained the latest version of the protonvpn-stable-release package by parsing the debian repo ourselves. similar to how this script does that https://github.com/Botspot/pi-apps/blob/master/.github/workflows/update_debian_repo_script.sh

GYKgamer commented 1 month ago

If possible, I would like to add more vpns? In #586 Botspot at the end added he wanted to add vpns to pi-apps, for example some others ones I use and like: Windscribe VPN: https://github.com/Windscribe/Desktop-App NordVPN: https://support.nordvpn.com/hc/en-us/articles/20196094470929-Installing-NordVPN-on-Linux-distributions

Botspot commented 1 month ago

Yes, I'm still supportive of adding VPNs. @GYKgamer, if you had the time, it would help us if you did more than add a link to the deb. Doing that just means that I put this on a mental list to install it myself, try it out, find a good text source to write the description, find the homepage to put in the website field, figure out how to uninstall it... Most of those things would be easier for you to do, especially if you have prior experience with the app.

GYKgamer commented 1 month ago

I got a little something working for windscribe, it's just a starting point since I don't know how to determine a version number except for the one right one. windscribe.zip

github-actions[bot] commented 1 month ago

A zipfile was found in the body of an issue comment. The sha1sum of the zip was: 3075cee3e453043a25fcd2db70a421b998f41bf4

Click to show contents preview `uninstall.sh` ``` #!/bin/bash sudo dpkg --purge windscribe || error "Failed to uninstall Windscribe package!" sudo rm -f /usr/share/applications/windscribe.desktop || error "Failed to remove desktop entry" ``` `install32.sh` ``` #!/bin/bash deb_url="https://deploy.totallyacdn.com/desktop-apps/2.10.15/windscribe_2.10.15_arm64.deb" deb_file="$HOME/Downloads/windscribe_2.10.15_arm64.deb" wget -O "$deb_file" "$deb_url" || error "Failed to download Windscribe package!" sudo dpkg -i "$deb_file" || error "Failed to install Windscribe package!" echo "[Desktop Entry] Name=Windscribe Comment=Windscribe VPN Exec=/usr/bin/windscribe Icon=/usr/share/icons/hicolor/64x64/apps/windscribe.png Terminal=false Type=Application Categories=Network;Security; Keywords=VPN;Privacy; " | sudo tee /usr/share/applications/windscribe.desktop rm -f "$deb_file" ```
Botspot commented 1 month ago

@GYKgamer Were you using the pi-apps "create app" wizard for this? https://pi-apps.io/wiki/development/Creating-an-app/

GYKgamer commented 1 month ago

I read the documentation but I did not use the wizard

Botspot commented 1 month ago

I'm not sure where to begin. :(

Please use the wizard and read the documentation. That will save everyone time.

GYKgamer commented 1 month ago

😆 maybe I wasn't as good at coding as I remembered, i'll use the wizard

GYKgamer commented 1 month ago

Windscribe.zip Updated, I used the wizard and followed the docs, hopefully should be better

github-actions[bot] commented 1 month ago

A zipfile was found in the body of an issue comment. The sha1sum of the zip was: 1a87544d9de31ab09bc519d10ca84b49538eb1fb

Click to show contents preview `Windscribe/uninstall` ```bash #!/bin/bash purge_packages windscribe || { echo "Failed to uninstall Windscribe package!"; exit 1; } sudo rm -f /usr/share/applications/windscribe.desktop || { echo "Failed to remove desktop entry"; exit 1; } ``` `Windscribe/credits` ``` Windscribe for making this application. GYKgamer, Botspot and theofficalgman for implamenting this into Pi-apps. ``` `Windscribe/website` ``` https://windscribe.com ``` `Windscribe/install-64` ```bash #!/bin/bash version="2.10.15" deb_url="https://deploy.totallyacdn.com/desktop-apps/${version}/windscribe_${version}_arm64.deb" deb_file="$HOME/Downloads/windscribe-${version}.deb" wget -O "$deb_file" "$deb_url" || { echo "Failed to download Windscribe package!"; exit 1; } install_packages "$deb_file" || { echo "Failed to install Windscribe package!"; exit 1; } echo "Creating a Windscribe button in the Main Menu..." echo "[Desktop Entry] Name=Windscribe Comment=Windscribe VPN Exec=/opt/windscribe/Windscribe Icon=windscribe Path=/opt/windscribe/ Type=Application Categories=Network;Security; Keywords=VPN;Privacy; StartupNotify=true " | sudo tee /usr/share/applications/windscribe.desktop >/dev/null rm -f "$deb_file" ``` `Windscribe/description` ``` Simple VPN with 11 locations to choose from (using the free plan) and a 10gb limit. To run this you can type "windscribe" nito your terminal, or use the start menu -> Internet -> Windscribe. ```
Botspot commented 1 month ago

Better. Remaining issues:

GYKgamer commented 1 month ago

Windscribe.zip that should be it now

github-actions[bot] commented 1 month ago

A zipfile was found in the body of an issue comment. The sha1sum of the zip was: d571bb8a04095c1d981213174e5f66937998e1bd

Click to show contents preview `Windscribe/uninstall` ```bash #!/bin/bash purge_packages windscribe || { echo "Failed to uninstall Windscribe package!"; exit 1; } sudo rm -f /usr/share/applications/windscribe.desktop || { echo "Failed to remove desktop entry"; exit 1; } ``` `Windscribe/credits` ``` Windscribe for making this application. GYKgamer, Botspot and theofficalgman for implamenting this into Pi-apps. ``` `Windscribe/website` ``` https://windscribe.com ``` `Windscribe/install-64` ```bash #!/bin/bash version="2.10.15" deb_url="https://deploy.totallyacdn.com/desktop-apps/${version}/windscribe_${version}_arm64.deb" install_packages "$deb_url" || { echo "Failed to install Windscribe package!"; exit 1; } echo "Creating a Windscribe button in the Main Menu..." echo "[Desktop Entry] Name=Windscribe Comment=Windscribe VPN Exec=/opt/windscribe/Windscribe Icon=windscribe Path=/opt/windscribe/ Type=Application Categories=Network;Security; Keywords=VPN;Privacy; StartupNotify=true " | sudo tee /usr/share/applications/windscribe.desktop >/dev/null ``` `Windscribe/description` ``` Simple VPN with 11 locations to choose from (using the free plan) and a 10GB limit. To run this, you can type "windscribe" into your terminal, or use the start menu -> Internet -> Windscribe. ```
Botspot commented 1 month ago
GYKgamer commented 1 month ago

My bad, I'm not as good at programming as I thought I was. Windscribe.zip

github-actions[bot] commented 1 month ago

A zipfile was found in the body of an issue comment. The sha1sum of the zip was: 6d45077b79e0293834d36465a9247e6ccf0fb4cd

Click to show contents preview `Windscribe/uninstall` ```bash #!/bin/bash purge_packages || error "Failed to uninstall Windscribe package!" sudo rm -f /usr/share/applications/windscribe.desktop || error "Failed to remove desktop entry" ``` `Windscribe/credits` ``` Windscribe for making this application. GYKgamer, Botspot and theofficalgman for implamenting this into Pi-apps. ``` `Windscribe/website` ``` https://windscribe.com ``` `Windscribe/install-64` ```bash #!/bin/bash version="2.10.15" deb_url="https://deploy.totallyacdn.com/desktop-apps/${version}/windscribe_${version}_arm64.deb" install_packages "$deb_url" || error "Failed to install Windscribe package!" echo "Creating a Windscribe button in the Main Menu..." echo "[Desktop Entry] Name=Windscribe Comment=Windscribe VPN Exec=/opt/windscribe/Windscribe Icon=windscribe Path=/opt/windscribe/ Type=Application Categories=Network;Security; Keywords=VPN;Privacy; StartupNotify=true " | sudo tee /usr/share/applications/windscribe.desktop >/dev/null ``` `Windscribe/description` ``` Simple VPN with 11 locations to choose from (using the free plan) and a 10gb limit. To run this you can type "windscribe" nito your terminal, or use the start menu -> Internet -> Windscribe. ```
Botspot commented 1 month ago

@GYKgamer were you wanting to add Proton VPN or Windscribe, or both? IT seems that both are discussed in this issue.

GYKgamer commented 1 month ago

I kind of decided mid way through to change this into a discussion of vpns in general, If thats okay? image

Botspot commented 1 month ago

@GYKgamer Were you still wanting to add Proton VPN? What do you think about getting several vpns ready and then adding them to pi-apps all at once so I can put them in a new vpn category.

GYKgamer commented 1 month ago

@GYKgamer Were you still wanting to add Proton VPN? What do you think about getting several vpns ready and then adding them to pi-apps all at once so I can put them in a new vpn category.

That was exactly the plan I had in mind.

Combustion-is-fun commented 3 weeks ago

TLDR: It works on 64 bit RPI 5.

The first time installing this I got a bug with the keyring not going away. After following the instructions again I can confirm that it installs correctly which is step 1. The basic sign-in works as well as the 2nd-factor authentication. It then says connected and with disabling my ad-block on Chromium, I can confirm YouTube ads are speaking Dutch. This means it is working successfully. The only thing is that the app does not support full-screen size.

Other vpns

With adding other vpns, can we make sure that they have been independently verified as well as check that they encrypt network traffic not just change the IP address? Some vpns do not do this. Proton VPN does and has been independently verified by securitum in this report.

ProtonAG

ProtonAG is a good company. They have other apps (password manager, calender, drive, mail) which I also use. However, those are best used as web apps which are always going to be reliable so I would probably not recommend adding them to PI Apps.