Merge pull request #170726 from WolfangAukang/protonvpn-cli-legacy

main
Sandro 2 years ago committed by GitHub
commit 4c4133e86d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 51
      pkgs/applications/networking/protonvpn-cli/2.nix
  2. 44
      pkgs/applications/networking/protonvpn-cli/default.nix
  3. 22
      pkgs/development/python-modules/protonvpn-nm-lib/0001-Patching-GIRepository.patch
  4. 16
      pkgs/development/python-modules/protonvpn-nm-lib/default.nix
  5. 3
      pkgs/top-level/all-packages.nix

@ -0,0 +1,51 @@
{ lib
, buildPythonApplication
, fetchFromGitHub
, pythonOlder
, requests
, docopt
, pythondialog
, jinja2
, distro
, dialog
, iptables
, openvpn }:
buildPythonApplication rec {
pname = "protonvpn-cli_2";
version = "2.2.11";
format = "setuptools";
disabled = pythonOlder "3.5";
src = fetchFromGitHub {
owner = "Rafficer";
repo = "linux-cli-community";
# There is a tag and branch with the same name
rev = "refs/tags/v${version}";
sha256 = "sha256-CWQpisJPBXbf+d5tCGuxfSQQZBeF36WFF4b6OSUn3GY=";
};
propagatedBuildInputs = [
requests
docopt
pythondialog
jinja2
distro
dialog
openvpn
iptables
];
# No tests
doCheck = false;
meta = with lib; {
description = "Linux command-line client for ProtonVPN using Openvpn";
homepage = "https://github.com/Rafficer/linux-cli-community";
maintainers = with maintainers; [ jtcoolen jefflabonte shamilton ];
license = licenses.gpl3Plus;
platforms = platforms.linux;
mainProgram = "protonvpn";
};
}

@ -1,37 +1,41 @@
{ lib, fetchFromGitHub, python3Packages, openvpn, dialog, iptables }: { lib
, buildPythonApplication
, pythonOlder
, fetchFromGitHub
, protonvpn-nm-lib
, pythondialog
, dialog
}:
python3Packages.buildPythonApplication rec { buildPythonApplication rec {
pname = "protonvpn-linux-cli"; pname = "protonvpn-cli";
version = "2.2.6"; version = "3.11.1";
format = "setuptools";
disabled = pythonOlder "3.5";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "protonvpn"; owner = "protonvpn";
repo = "linux-cli"; repo = "linux-cli";
rev = "v${version}"; rev = version;
sha256 = "0y7v9ikrmy5dbjlpbpacp08gy838i8z54m8m4ps7ldk1j6kyia3n"; sha256 = "sha256-u+POtUz7NoGS23aOmvDCZPUp2HW1xXGtfbZR88cWCBc=";
}; };
propagatedBuildInputs = (with python3Packages; [ propagatedBuildInputs = [
requests protonvpn-nm-lib
docopt pythondialog
setuptools dialog
jinja2 ];
pythondialog
]) ++ [
dialog
openvpn
iptables
];
# No tests # Project has a dummy test
doCheck = false; doCheck = false;
meta = with lib; { meta = with lib; {
description = "Linux command-line client for ProtonVPN"; description = "Linux command-line client for ProtonVPN";
homepage = "https://github.com/protonvpn/linux-cli"; homepage = "https://github.com/protonvpn/linux-cli";
maintainers = with maintainers; [ jtcoolen jefflabonte shamilton ]; maintainers = with maintainers; [ wolfangaukang ];
license = licenses.gpl3Plus; license = licenses.gpl3Plus;
platforms = platforms.linux; platforms = platforms.linux;
mainProgram = "protonvpn"; mainProgram = "protonvpn-cli";
}; };
} }

@ -0,0 +1,22 @@
From 2867f022aad754fe54d95222b3ae52f6e7f14c2f Mon Sep 17 00:00:00 2001
From: "P. R. d. O" <d.ol.rod@tutanota.com>
Date: Wed, 27 Apr 2022 21:49:12 -0600
Subject: [PATCH] Patching GIRepository
---
protonvpn_nm_lib/__init__.py | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/protonvpn_nm_lib/__init__.py b/protonvpn_nm_lib/__init__.py
index e69de29..00b95f4 100644
--- a/protonvpn_nm_lib/__init__.py
+++ b/protonvpn_nm_lib/__init__.py
@@ -0,0 +1,5 @@
+import gi
+gi.require_version('GIRepository', '2.0')
+from gi.repository import GIRepository
+repo = GIRepository.Repository.get_default()
+repo.prepend_search_path('@networkmanager_path@')
--
2.35.1

@ -2,6 +2,7 @@
, buildPythonPackage , buildPythonPackage
, fetchFromGitHub , fetchFromGitHub
, pythonOlder , pythonOlder
, substituteAll
, distro , distro
, jinja2 , jinja2
, keyring , keyring
@ -9,18 +10,19 @@
, pygobject3 , pygobject3
, pyxdg , pyxdg
, systemd , systemd
, networkmanager
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "protonvpn-nm-lib"; pname = "protonvpn-nm-lib";
version = "3.8.0"; version = "3.9.0";
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ProtonVPN"; owner = "ProtonVPN";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "sha256-fAaP9c66LcbZgezadGPUt400YRnrnFoBvpzlc1zxuc4="; sha256 = "sha256-yV3xeIyPc2DJj5DOa5PA1MHt00bjJ/Y9zZK77s/XRAA=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [
@ -33,7 +35,15 @@ buildPythonPackage rec {
systemd systemd
]; ];
# Project has a dummy test. patches = [
(substituteAll {
src = ./0001-Patching-GIRepository.patch;
networkmanager_path = "${networkmanager}/lib/girepository-1.0";
})
];
# Checks cannot be run in the sandbox
# "Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory"
doCheck = false; doCheck = false;
pythonImportsCheck = [ "protonvpn_nm_lib" ]; pythonImportsCheck = [ "protonvpn_nm_lib" ];

@ -29046,7 +29046,8 @@ with pkgs;
protonmail-bridge = callPackage ../applications/networking/protonmail-bridge { }; protonmail-bridge = callPackage ../applications/networking/protonmail-bridge { };
protonvpn-cli = callPackage ../applications/networking/protonvpn-cli { }; protonvpn-cli = python3Packages.callPackage ../applications/networking/protonvpn-cli { };
protonvpn-cli_2 = python3Packages.callPackage ../applications/networking/protonvpn-cli/2.nix { };
protonvpn-gui = python3Packages.callPackage ../applications/networking/protonvpn-gui { }; protonvpn-gui = python3Packages.callPackage ../applications/networking/protonvpn-gui { };

Loading…
Cancel
Save