GNU bug report logs - #34643
WireGuard tools and kernel support

Previous Next

Package: guix-patches;

Reported by: Leo Famulari <leo <at> famulari.name>

Date: Mon, 25 Feb 2019 01:14:02 UTC

Severity: normal

Tags: patch

Done: Leo Famulari <leo <at> famulari.name>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 34643 in the body.
You can then email your comments to 34643 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#34643; Package guix-patches. (Mon, 25 Feb 2019 01:14:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Leo Famulari <leo <at> famulari.name>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Mon, 25 Feb 2019 01:14:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: guix-patches <at> gnu.org
Subject: WireGuard tools and kernel support
Date: Sun, 24 Feb 2019 20:12:57 -0500
[Message part 1 (text/plain, inline)]
Here are patches that add the WireGuard [0] userspace tools and a Linux
kernel patch that can be used to build WireGuard support into the kernel.

When building linux-libre with the WireGuard patch, WireGuard is built
as a module that will be loaded on demand.

The second patch in the series is just for demonstration and personal
use until WireGuard is added to the official kernel tree; I don't think
we need to add it to Guix.

Feedback?

[0] https://www.wireguard.com/
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#34643; Package guix-patches. (Mon, 25 Feb 2019 01:16:01 GMT) Full text and rfc822 format available.

Message #8 received at 34643 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: 34643 <at> debbugs.gnu.org
Subject: [PATCH 2/2] gnu: Add linux-libre with WireGuard.
Date: Sun, 24 Feb 2019 20:15:03 -0500
This is a demonstration patch. We don't need to actually include it in Guix.

* gnu/packages/linux.scm (linux-libre-with-wireguard): New variable.
---
 gnu/packages/linux.scm | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 983e335e30..816c920e48 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -5180,3 +5180,20 @@ retrieving configuration of WireGuard network tunnel interfaces, and a patch
 that can be applied to a Linux kernel source tree in order to build it with
 WireGuard support.")
     (license license:gpl2)))
+
+(define-public linux-libre-with-wireguard
+  (package
+    (inherit linux-libre)
+    (name "linux-libre-with-wireguard")
+    (native-inputs
+     `(("wireguard-patch" ,wireguard "kernel-patch")
+       ,@(package-native-inputs linux-libre)))
+    (arguments
+     (substitute-keyword-arguments (package-arguments linux-libre)
+       ((#:phases phases)
+        `(modify-phases ,phases
+           (add-before 'patch-source-shebangs 'add-wireguard
+             (lambda* (#:key inputs #:allow-other-keys)
+               (let* ((wireguard-patch (string-append (assoc-ref inputs "wireguard-patch")
+                                                      "/wireguard.patch")))
+                 (invoke "patch" "-p1" "-i" wireguard-patch))))))))))
-- 
2.20.1





Information forwarded to guix-patches <at> gnu.org:
bug#34643; Package guix-patches. (Mon, 25 Feb 2019 01:16:02 GMT) Full text and rfc822 format available.

Message #11 received at 34643 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: 34643 <at> debbugs.gnu.org
Subject: [PATCH 1/2] gnu: Add WireGuard.
Date: Sun, 24 Feb 2019 20:15:02 -0500
* gnu/packages/linux.scm (wireguard): New variable.
---
 gnu/packages/linux.scm | 50 +++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 49 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 6463510eeb..983e335e30 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -19,7 +19,7 @@
 ;;; Copyright © 2016, 2018 Rene Saavedra <pacoon <at> protonmail.com>
 ;;; Copyright © 2016 Carlos Sánchez de La Lama <csanchezdll <at> gmail.com>
 ;;; Copyright © 2016, 2017 Nils Gillmann <ng0 <at> n0.is>
-;;; Copyright © 2017, 2018 Leo Famulari <leo <at> famulari.name>
+;;; Copyright © 2017, 2018, 2019 Leo Famulari <leo <at> famulari.name>
 ;;; Copyright © 2017 José Miguel Sánchez García <jmi2k <at> openmailbox.com>
 ;;; Copyright © 2017 Gábor Boskovits <boskovits <at> gmail.com>
 ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe <at> gmail.com>
@@ -5132,3 +5132,51 @@ the correct permissions and ownership, and then pack them up, or one would
 have to construct the archives directly, without using the archiver.")
     (home-page "http://freshmeat.sourceforge.net/projects/fakeroot")
     (license license:gpl3+)))
+
+(define-public wireguard
+  (package
+    (name "wireguard")
+    (version "0.0.20190123")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://git.zx2c4.com/WireGuard/snapshot/"
+                                  "WireGuard-" version ".tar.xz"))
+              (sha256
+               (base32
+                "16yzzy4i0z2zslmyr3kppkvkrxryzwdil6v270w9w5mg65v3rlgd"))))
+    (build-system gnu-build-system)
+    (outputs '("out" ; The WireGuard userspace tools
+               "kernel-patch")) ; A patch to build Linux with WireGuard support
+    (arguments
+     `(#:make-flags
+       (list "CC=gcc"
+             "WITH_BASHCOMPLETION=yes"
+             ;; Build and install the helper script wg-quick(8).
+             "WITH_WGQUICK=yes"
+             (string-append "PREFIX=" (assoc-ref %outputs "out"))
+             (string-append "SYSCONFDIR=" (assoc-ref %outputs "out") "/etc"))
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure) ; No ./configure script
+         (add-after 'unpack 'make-patch
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((output (assoc-ref outputs "kernel-patch"))
+                    (patch-file (string-append output "/wireguard.patch"))
+                    (patch-builder "./contrib/kernel-tree/create-patch.sh"))
+               (mkdir-p output)
+               ;; XXX Do this in Scheme?
+               (zero? (system (string-append "bash " patch-builder " > " patch-file)))
+               #t)))
+         (add-after 'make-patch 'chdir
+           (lambda _
+             (chdir "src/tools")
+             #t)))))
+    (inputs
+     `(("libmnl" ,libmnl)))
+    (home-page "https://www.wireguard.com/")
+    (synopsis "Tools for configuring WireGuard")
+    (description "This package provides the userspace tools for setting and
+retrieving configuration of WireGuard network tunnel interfaces, and a patch
+that can be applied to a Linux kernel source tree in order to build it with
+WireGuard support.")
+    (license license:gpl2)))
-- 
2.20.1





Added tag(s) patch. Request was from Leo Famulari <leo <at> famulari.name> to control <at> debbugs.gnu.org. (Tue, 26 Feb 2019 00:38:01 GMT) Full text and rfc822 format available.

Reply sent to Leo Famulari <leo <at> famulari.name>:
You have taken responsibility. (Sat, 02 Mar 2019 00:34:02 GMT) Full text and rfc822 format available.

Notification sent to Leo Famulari <leo <at> famulari.name>:
bug acknowledged by developer. (Sat, 02 Mar 2019 00:34:02 GMT) Full text and rfc822 format available.

Message #18 received at 34643-done <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: 34643-done <at> debbugs.gnu.org
Subject: Re: [PATCH 1/2] gnu: Add WireGuard.
Date: Fri, 1 Mar 2019 19:33:50 -0500
[Message part 1 (text/plain, inline)]
On Sun, Feb 24, 2019 at 08:15:02PM -0500, Leo Famulari wrote:
> * gnu/packages/linux.scm (wireguard): New variable.

I pushed a modified version of this patch as
7a0479bb7b8535acad2bf36c7a0b0498a1313422
[signature.asc (application/pgp-signature, inline)]

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sat, 30 Mar 2019 11:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 5 years and 27 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.