From b599f672e44270d2c6154b7855ddec11e4d43a93 Mon Sep 17 00:00:00 2001 From: Kirill Elagin Date: Sat, 19 May 2018 11:15:26 +0300 Subject: [PATCH 1/5] wireguard-go: init at 0.0.20180514 --- .../tools/networking/wireguard-go/default.nix | 27 +++++++++++++++++ pkgs/tools/networking/wireguard-go/deps.nix | 30 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 3 files changed, 59 insertions(+) create mode 100644 pkgs/tools/networking/wireguard-go/default.nix create mode 100644 pkgs/tools/networking/wireguard-go/deps.nix diff --git a/pkgs/tools/networking/wireguard-go/default.nix b/pkgs/tools/networking/wireguard-go/default.nix new file mode 100644 index 00000000000..28acdefd7b5 --- /dev/null +++ b/pkgs/tools/networking/wireguard-go/default.nix @@ -0,0 +1,27 @@ +{ stdenv, buildGoPackage, fetchurl }: + +buildGoPackage rec { + name = "wireguard-go-${version}"; + version = "0.0.20180514"; + + goPackagePath = "wireguard-go"; + + src = fetchurl { + url = "https://git.zx2c4.com/wireguard-go/snapshot/wireguard-go-${version}.tar.xz"; + sha256 = "1bn49a67m2ab0l9lq3zh2mfbbppmyg34klqi3069sjn6lg2hlajs"; + }; + + goDeps = ./deps.nix; + + patchPhase = '' + # Replace local imports so that go tools do not trip on them + find . -name '*.go' -exec sed -i '/import (/,/)/s@"./@"${goPackagePath}/@' {} \; + ''; + + meta = with stdenv.lib; { + description = "Userspace Go implementation of WireGuard"; + homepage = https://git.zx2c4.com/wireguard-go/about/; + license = licenses.gpl2; + platforms = with platforms; linux ++ darwin ++ windows; + }; +} diff --git a/pkgs/tools/networking/wireguard-go/deps.nix b/pkgs/tools/networking/wireguard-go/deps.nix new file mode 100644 index 00000000000..e480896f664 --- /dev/null +++ b/pkgs/tools/networking/wireguard-go/deps.nix @@ -0,0 +1,30 @@ +# This file was generated by https://github.com/kamilchm/go2nix v1.2.1 +[ + { + goPackagePath = "golang.org/x/crypto"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/crypto"; + rev = "1a580b3eff7814fc9b40602fd35256c63b50f491"; + sha256 = "11adgxc6fzcb3dxr5v2g4nk6ggrz04qnx633hzgmzfh2wv3blgv7"; + }; + } + { + goPackagePath = "golang.org/x/net"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/net"; + rev = "2491c5de3490fced2f6cff376127c667efeed857"; + sha256 = "1wmijnrxi9p2rv8g6clqkzdihn5ncv29j0s4s1bz9ksncdr36ll3"; + }; + } + { + goPackagePath = "golang.org/x/sys"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/sys"; + rev = "7c87d13f8e835d2fb3a70a2912c811ed0c1d241b"; + sha256 = "03fhkng37rczqwfgah5hd7d373jps3hcfx79dmky2fh62yvpcyn3"; + }; + } +] diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 63e9be24226..2129477e4b6 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5718,6 +5718,8 @@ with pkgs; wipe = callPackage ../tools/security/wipe { }; + wireguard-go = callPackage ../tools/networking/wireguard-go { }; + wkhtmltopdf = callPackage ../tools/graphics/wkhtmltopdf { overrideDerivation = lib.overrideDerivation; }; From 3b44015e1a32cca88a3feca1a282733c2d4e79ff Mon Sep 17 00:00:00 2001 From: Kirill Elagin Date: Sat, 19 May 2018 12:42:13 +0300 Subject: [PATCH 2/5] wireguard-go: use postPatch instead of patchPhase --- pkgs/tools/networking/wireguard-go/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/networking/wireguard-go/default.nix b/pkgs/tools/networking/wireguard-go/default.nix index 28acdefd7b5..ac6e95f3f0a 100644 --- a/pkgs/tools/networking/wireguard-go/default.nix +++ b/pkgs/tools/networking/wireguard-go/default.nix @@ -13,7 +13,7 @@ buildGoPackage rec { goDeps = ./deps.nix; - patchPhase = '' + postPatch = '' # Replace local imports so that go tools do not trip on them find . -name '*.go' -exec sed -i '/import (/,/)/s@"./@"${goPackagePath}/@' {} \; ''; From 5f3480e04da97ad368b47b41c7a9bae10cd437c5 Mon Sep 17 00:00:00 2001 From: Kirill Elagin Date: Sat, 19 May 2018 12:59:10 +0300 Subject: [PATCH 3/5] wireguard-go: use deps2nix for dependencies --- pkgs/tools/networking/wireguard-go/deps.nix | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/pkgs/tools/networking/wireguard-go/deps.nix b/pkgs/tools/networking/wireguard-go/deps.nix index e480896f664..88381d5f207 100644 --- a/pkgs/tools/networking/wireguard-go/deps.nix +++ b/pkgs/tools/networking/wireguard-go/deps.nix @@ -1,30 +1,30 @@ -# This file was generated by https://github.com/kamilchm/go2nix v1.2.1 +# file generated from Gopkg.lock using dep2nix (https://github.com/nixcloud/dep2nix) [ { - goPackagePath = "golang.org/x/crypto"; + goPackagePath = "golang.org/x/crypto"; fetch = { type = "git"; url = "https://go.googlesource.com/crypto"; - rev = "1a580b3eff7814fc9b40602fd35256c63b50f491"; + rev = "1a580b3eff7814fc9b40602fd35256c63b50f491"; sha256 = "11adgxc6fzcb3dxr5v2g4nk6ggrz04qnx633hzgmzfh2wv3blgv7"; }; } { - goPackagePath = "golang.org/x/net"; + goPackagePath = "golang.org/x/net"; fetch = { type = "git"; url = "https://go.googlesource.com/net"; - rev = "2491c5de3490fced2f6cff376127c667efeed857"; + rev = "2491c5de3490fced2f6cff376127c667efeed857"; sha256 = "1wmijnrxi9p2rv8g6clqkzdihn5ncv29j0s4s1bz9ksncdr36ll3"; }; } { - goPackagePath = "golang.org/x/sys"; + goPackagePath = "golang.org/x/sys"; fetch = { type = "git"; url = "https://go.googlesource.com/sys"; - rev = "7c87d13f8e835d2fb3a70a2912c811ed0c1d241b"; + rev = "7c87d13f8e835d2fb3a70a2912c811ed0c1d241b"; sha256 = "03fhkng37rczqwfgah5hd7d373jps3hcfx79dmky2fh62yvpcyn3"; }; } -] +] \ No newline at end of file From ab1dd9c5857af7b25fb2e0c9c896c8f448195a59 Mon Sep 17 00:00:00 2001 From: Kirill Elagin Date: Sat, 19 May 2018 13:01:59 +0300 Subject: [PATCH 4/5] wireguard-go: use fetchzip instead of fetchurl --- pkgs/tools/networking/wireguard-go/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/networking/wireguard-go/default.nix b/pkgs/tools/networking/wireguard-go/default.nix index ac6e95f3f0a..61ca16b0f64 100644 --- a/pkgs/tools/networking/wireguard-go/default.nix +++ b/pkgs/tools/networking/wireguard-go/default.nix @@ -1,4 +1,4 @@ -{ stdenv, buildGoPackage, fetchurl }: +{ stdenv, buildGoPackage, fetchzip }: buildGoPackage rec { name = "wireguard-go-${version}"; @@ -6,9 +6,9 @@ buildGoPackage rec { goPackagePath = "wireguard-go"; - src = fetchurl { + src = fetchzip { url = "https://git.zx2c4.com/wireguard-go/snapshot/wireguard-go-${version}.tar.xz"; - sha256 = "1bn49a67m2ab0l9lq3zh2mfbbppmyg34klqi3069sjn6lg2hlajs"; + sha256 = "1i1w4vj8w353b92nfhs92k0f7fifrwi067qfmgckdk0kk76nv2id"; }; goDeps = ./deps.nix; From 388b21436a5617a0932a2edf5b2bd3f19165e051 Mon Sep 17 00:00:00 2001 From: Kirill Elagin Date: Sat, 19 May 2018 14:25:57 +0300 Subject: [PATCH 5/5] wireguard-go: add myself as a maintainer --- maintainers/maintainer-list.nix | 5 +++++ pkgs/tools/networking/wireguard-go/default.nix | 1 + 2 files changed, 6 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 9fa89838d16..6fd5c335ad1 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -1997,6 +1997,11 @@ github = "kini"; name = "Keshav Kini"; }; + kirelagin = { + email = "kirelagin@gmail.com"; + github = "kirelagin"; + name = "Kirill Elagin"; + }; kkallio = { email = "tierpluspluslists@gmail.com"; name = "Karn Kallio"; diff --git a/pkgs/tools/networking/wireguard-go/default.nix b/pkgs/tools/networking/wireguard-go/default.nix index 61ca16b0f64..e27b241e755 100644 --- a/pkgs/tools/networking/wireguard-go/default.nix +++ b/pkgs/tools/networking/wireguard-go/default.nix @@ -22,6 +22,7 @@ buildGoPackage rec { description = "Userspace Go implementation of WireGuard"; homepage = https://git.zx2c4.com/wireguard-go/about/; license = licenses.gpl2; + maintainers = with maintainers; [ kirelagin ]; platforms = with platforms; linux ++ darwin ++ windows; }; }