From 528b4d8727dd47d681b664198e49c47cc080f30c Mon Sep 17 00:00:00 2001 From: chessai Date: Sat, 17 Nov 2018 11:26:43 -0500 Subject: [PATCH 01/13] add openconnect fork that has support for Palo Alto Network's globalprotect protocol --- pkgs/tools/networking/openconnect/default.nix | 2 +- .../networking/openconnect_pa/default.nix | 46 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 4 ++ 3 files changed, 51 insertions(+), 1 deletion(-) create mode 100644 pkgs/tools/networking/openconnect_pa/default.nix diff --git a/pkgs/tools/networking/openconnect/default.nix b/pkgs/tools/networking/openconnect/default.nix index 132ae3cf0da..421cec1a36f 100644 --- a/pkgs/tools/networking/openconnect/default.nix +++ b/pkgs/tools/networking/openconnect/default.nix @@ -9,7 +9,7 @@ stdenv.mkDerivation rec { urls = [ "ftp://ftp.infradead.org/pub/openconnect/${name}.tar.gz" ]; - sha256 = "00wacb79l2c45f94gxs63b9z25wlciarasvjrb8jb8566wgyqi0w"; + sha256 = "00wacb79l2c45f94gxs63b9z25wlciarasvjrb8jb8566wgyqi00"; }; outputs = [ "out" "dev" ]; diff --git a/pkgs/tools/networking/openconnect_pa/default.nix b/pkgs/tools/networking/openconnect_pa/default.nix new file mode 100644 index 00000000000..86e5c0aeb8b --- /dev/null +++ b/pkgs/tools/networking/openconnect_pa/default.nix @@ -0,0 +1,46 @@ +{ stdenv, fetchFromGitHub, pkgconfig, vpnc, openssl ? null, gnutls ? null, gmp, libxml2, stoken, zlib, autoreconfHook } : + +assert (openssl != null) == (gnutls == null); + +let + version = "7.08"; + name = "openconnect_pa-${version}"; +in stdenv.mkDerivation { + inherit name; + + src = fetchFromGitHub { + owner = "dlenski"; + repo = "openconnect"; + rev = "e5fe063a087385c5b157ad7a9a3fa874181f6e3b"; + sha256 = "0ywacqs3nncr2gpjjcz2yc9c6v4ifjssh0vb07h0qff06whqhdax"; + }; + + outputs = [ "out" ]; + + preConfigure = '' + export PKG_CONFIG=${pkgconfig}/bin/pkg-config + export LIBXML2_CFLAGS="-I ${libxml2.dev}/include/libxml2" + export LIBXML2_LIBS="-L${libxml2.out}/lib -lxml2" + ''; + + configureFlags = [ + "--with-vpnc-script=${vpnc}/etc/vpnc/vpnc-script" + "--disable-nls" + "--without-openssl-version-check" + ]; + + postInstall = '' + # ldconfig + ''; + + nativeBuildInputs = [ pkgconfig autoreconfHook ]; + propagatedBuildInputs = [ vpnc openssl gnutls gmp libxml2 stoken zlib ]; + + meta = { + description = "OpenConnect client extended to support Palo Alto Networks' GlobalProtect VPN"; + homepage = https://github.com/dlenski/openconnect/; + license = stdenv.lib.licenses.lgpl21; + maintainers = with stdenv.lib.maintainers; [ chessai ]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 64422c346c6..546e9be4240 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5976,6 +5976,10 @@ with pkgs; SDL = SDL_sixel; }; + openconnect_pa = callPackage ../tools/networking/openconnect_pa { + openssl = null; + }; + openconnect = openconnect_gnutls; openconnect_openssl = callPackage ../tools/networking/openconnect { From 5da470d9fd48ac79647d526e71154babc26bdf96 Mon Sep 17 00:00:00 2001 From: chessai Date: Sat, 17 Nov 2018 11:28:31 -0500 Subject: [PATCH 02/13] openconnect_pa: init at 7.08 --- pkgs/tools/networking/openconnect/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/networking/openconnect/default.nix b/pkgs/tools/networking/openconnect/default.nix index 421cec1a36f..132ae3cf0da 100644 --- a/pkgs/tools/networking/openconnect/default.nix +++ b/pkgs/tools/networking/openconnect/default.nix @@ -9,7 +9,7 @@ stdenv.mkDerivation rec { urls = [ "ftp://ftp.infradead.org/pub/openconnect/${name}.tar.gz" ]; - sha256 = "00wacb79l2c45f94gxs63b9z25wlciarasvjrb8jb8566wgyqi00"; + sha256 = "00wacb79l2c45f94gxs63b9z25wlciarasvjrb8jb8566wgyqi0w"; }; outputs = [ "out" "dev" ]; From 978272e8a915670f356d419a0732a5214a1d4b8b Mon Sep 17 00:00:00 2001 From: chessai Date: Sat, 17 Nov 2018 12:18:53 -0500 Subject: [PATCH 03/13] maintainers: add chessai --- maintainers/maintainer-list.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 6c57edb074b..4b3361f0816 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -762,6 +762,11 @@ github = "ChengCat"; name = "Yucheng Zhang"; }; + chessai = { + email = "chessai1996@gmail.com"; + github = "chessai"; + name = "Daniel Cartwright"; + }; chiiruno = { email = "okinan@protonmail.com"; github = "chiiruno"; From e5df59548e391593da35c49115840e3312bf4e2e Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Sat, 17 Nov 2018 14:29:09 -0500 Subject: [PATCH 04/13] Apply suggestions from code review Co-Authored-By: chessai --- pkgs/tools/networking/openconnect_pa/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/networking/openconnect_pa/default.nix b/pkgs/tools/networking/openconnect_pa/default.nix index 86e5c0aeb8b..c85ff4e8261 100644 --- a/pkgs/tools/networking/openconnect_pa/default.nix +++ b/pkgs/tools/networking/openconnect_pa/default.nix @@ -36,10 +36,10 @@ in stdenv.mkDerivation { nativeBuildInputs = [ pkgconfig autoreconfHook ]; propagatedBuildInputs = [ vpnc openssl gnutls gmp libxml2 stoken zlib ]; - meta = { + meta = with stdenv.lib; { description = "OpenConnect client extended to support Palo Alto Networks' GlobalProtect VPN"; homepage = https://github.com/dlenski/openconnect/; - license = stdenv.lib.licenses.lgpl21; + license = licenses.lgpl21; maintainers = with stdenv.lib.maintainers; [ chessai ]; platforms = stdenv.lib.platforms.linux; }; From b3ce4cd77fa239cfde89377bf6f5862460263419 Mon Sep 17 00:00:00 2001 From: chessai Date: Sat, 17 Nov 2018 14:29:34 -0500 Subject: [PATCH 05/13] remove unused postInstall --- pkgs/tools/networking/openconnect_pa/default.nix | 4 ---- 1 file changed, 4 deletions(-) diff --git a/pkgs/tools/networking/openconnect_pa/default.nix b/pkgs/tools/networking/openconnect_pa/default.nix index c85ff4e8261..5bb1f09374f 100644 --- a/pkgs/tools/networking/openconnect_pa/default.nix +++ b/pkgs/tools/networking/openconnect_pa/default.nix @@ -29,10 +29,6 @@ in stdenv.mkDerivation { "--without-openssl-version-check" ]; - postInstall = '' - # ldconfig - ''; - nativeBuildInputs = [ pkgconfig autoreconfHook ]; propagatedBuildInputs = [ vpnc openssl gnutls gmp libxml2 stoken zlib ]; From b3525cd2105a5e14a55b92005129eb0342c334f1 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Sat, 17 Nov 2018 14:45:35 -0500 Subject: [PATCH 06/13] Apply suggestions from code review Co-Authored-By: chessai --- pkgs/tools/networking/openconnect_pa/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/networking/openconnect_pa/default.nix b/pkgs/tools/networking/openconnect_pa/default.nix index 5bb1f09374f..2070af11e88 100644 --- a/pkgs/tools/networking/openconnect_pa/default.nix +++ b/pkgs/tools/networking/openconnect_pa/default.nix @@ -36,7 +36,7 @@ in stdenv.mkDerivation { description = "OpenConnect client extended to support Palo Alto Networks' GlobalProtect VPN"; homepage = https://github.com/dlenski/openconnect/; license = licenses.lgpl21; - maintainers = with stdenv.lib.maintainers; [ chessai ]; - platforms = stdenv.lib.platforms.linux; + maintainers = with maintainers; [ chessai ]; + platforms = platforms.linux; }; } From d812e296b6a9d7a4c996fc9f73652da9ad6a69b3 Mon Sep 17 00:00:00 2001 From: chessai Date: Sat, 17 Nov 2018 14:48:07 -0500 Subject: [PATCH 07/13] change version to unstable-YYYY-MM-DD as per policy --- pkgs/tools/networking/openconnect_pa/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/networking/openconnect_pa/default.nix b/pkgs/tools/networking/openconnect_pa/default.nix index 2070af11e88..827446fe78d 100644 --- a/pkgs/tools/networking/openconnect_pa/default.nix +++ b/pkgs/tools/networking/openconnect_pa/default.nix @@ -3,7 +3,7 @@ assert (openssl != null) == (gnutls == null); let - version = "7.08"; + version = "2018-10-08"; name = "openconnect_pa-${version}"; in stdenv.mkDerivation { inherit name; From d79d7fbde9efcb8f74223acf56ebe586a69e4a4a Mon Sep 17 00:00:00 2001 From: chessai Date: Sat, 17 Nov 2018 14:48:34 -0500 Subject: [PATCH 08/13] add missing unstable --- pkgs/tools/networking/openconnect_pa/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/networking/openconnect_pa/default.nix b/pkgs/tools/networking/openconnect_pa/default.nix index 827446fe78d..83e7cac14f1 100644 --- a/pkgs/tools/networking/openconnect_pa/default.nix +++ b/pkgs/tools/networking/openconnect_pa/default.nix @@ -3,7 +3,7 @@ assert (openssl != null) == (gnutls == null); let - version = "2018-10-08"; + version = "unstable-2018-10-08"; name = "openconnect_pa-${version}"; in stdenv.mkDerivation { inherit name; From b8ff9f5cf195467e68496f99d1036ac6f22f4b3c Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Sat, 17 Nov 2018 14:49:13 -0500 Subject: [PATCH 09/13] Update pkgs/tools/networking/openconnect_pa/default.nix Co-Authored-By: chessai --- pkgs/tools/networking/openconnect_pa/default.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/tools/networking/openconnect_pa/default.nix b/pkgs/tools/networking/openconnect_pa/default.nix index 83e7cac14f1..5b74614cb31 100644 --- a/pkgs/tools/networking/openconnect_pa/default.nix +++ b/pkgs/tools/networking/openconnect_pa/default.nix @@ -15,7 +15,6 @@ in stdenv.mkDerivation { sha256 = "0ywacqs3nncr2gpjjcz2yc9c6v4ifjssh0vb07h0qff06whqhdax"; }; - outputs = [ "out" ]; preConfigure = '' export PKG_CONFIG=${pkgconfig}/bin/pkg-config From 2517ca5488e83f83178ad964c3bf88b97b6d741d Mon Sep 17 00:00:00 2001 From: chessai Date: Sat, 17 Nov 2018 15:01:18 -0500 Subject: [PATCH 10/13] add outsputs 'out' and 'dev' --- pkgs/tools/networking/openconnect_pa/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/tools/networking/openconnect_pa/default.nix b/pkgs/tools/networking/openconnect_pa/default.nix index 5b74614cb31..4fbae644f18 100644 --- a/pkgs/tools/networking/openconnect_pa/default.nix +++ b/pkgs/tools/networking/openconnect_pa/default.nix @@ -8,6 +8,8 @@ let in stdenv.mkDerivation { inherit name; + outputs = [ "out" "dev" ]; + src = fetchFromGitHub { owner = "dlenski"; repo = "openconnect"; From 86dc05c920e9c529202a036508f678a9bd149439 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Sat, 17 Nov 2018 15:03:53 -0500 Subject: [PATCH 11/13] Apply suggestions from code review Co-Authored-By: chessai --- pkgs/tools/networking/openconnect_pa/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/networking/openconnect_pa/default.nix b/pkgs/tools/networking/openconnect_pa/default.nix index 4fbae644f18..ec928d0e40d 100644 --- a/pkgs/tools/networking/openconnect_pa/default.nix +++ b/pkgs/tools/networking/openconnect_pa/default.nix @@ -5,7 +5,7 @@ assert (openssl != null) == (gnutls == null); let version = "unstable-2018-10-08"; name = "openconnect_pa-${version}"; -in stdenv.mkDerivation { +in stdenv.mkDerivation rec { inherit name; outputs = [ "out" "dev" ]; From 5b0f33a8abde7678e3b2bb9e76e46de61db0c30f Mon Sep 17 00:00:00 2001 From: chessai Date: Sat, 17 Nov 2018 15:08:41 -0500 Subject: [PATCH 12/13] use `rec` instead of `let ... in` --- pkgs/tools/networking/openconnect_pa/default.nix | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/pkgs/tools/networking/openconnect_pa/default.nix b/pkgs/tools/networking/openconnect_pa/default.nix index ec928d0e40d..6b2499e36f7 100644 --- a/pkgs/tools/networking/openconnect_pa/default.nix +++ b/pkgs/tools/networking/openconnect_pa/default.nix @@ -2,12 +2,10 @@ assert (openssl != null) == (gnutls == null); -let +stdenv.mkDerivation rec { version = "unstable-2018-10-08"; name = "openconnect_pa-${version}"; -in stdenv.mkDerivation rec { - inherit name; - + outputs = [ "out" "dev" ]; src = fetchFromGitHub { From 88eb07017fdec25b3747b04c455cdc2258171ef4 Mon Sep 17 00:00:00 2001 From: chessai Date: Sat, 17 Nov 2018 15:11:59 -0500 Subject: [PATCH 13/13] remove unnecessary whitespace --- pkgs/tools/networking/openconnect_pa/default.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/tools/networking/openconnect_pa/default.nix b/pkgs/tools/networking/openconnect_pa/default.nix index 6b2499e36f7..d261e571705 100644 --- a/pkgs/tools/networking/openconnect_pa/default.nix +++ b/pkgs/tools/networking/openconnect_pa/default.nix @@ -15,7 +15,6 @@ stdenv.mkDerivation rec { sha256 = "0ywacqs3nncr2gpjjcz2yc9c6v4ifjssh0vb07h0qff06whqhdax"; }; - preConfigure = '' export PKG_CONFIG=${pkgconfig}/bin/pkg-config export LIBXML2_CFLAGS="-I ${libxml2.dev}/include/libxml2"