GNU bug report logs - #40400
[PATCH] gnu: Add wireguard-linux-compat.

Previous Next

Package: guix-patches;

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

Date: Fri, 3 Apr 2020 05:37: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 40400 in the body.
You can then email your comments to 40400 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#40400; Package guix-patches. (Fri, 03 Apr 2020 05:37: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. (Fri, 03 Apr 2020 05:37: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: [PATCH] gnu: Add wireguard-linux-compat.
Date: Fri,  3 Apr 2020 01:35:39 -0400
Since WireGuard was added to Linux 5.6, the WireGuard upstream split
their old 'wireguard' codebase into 'wireguard-tools' (the userspace
tools) and 'wireguard-linux-compat' (the kernel patch for older
kernels).

This commit adds the new upstream for the kernel patch and deprecates
the obselete 'wireguard' package.

* gnu/packages/vpn.scm (wireguard-linux-compat): New variable.
(wireguard): Deprecate in favor of wireguard-tools.
---
 gnu/packages/vpn.scm | 61 ++++++++++++++++++--------------------------
 1 file changed, 25 insertions(+), 36 deletions(-)

diff --git a/gnu/packages/vpn.scm b/gnu/packages/vpn.scm
index becc505b34..e9d9ab8be4 100644
--- a/gnu/packages/vpn.scm
+++ b/gnu/packages/vpn.scm
@@ -453,61 +453,47 @@ The peer-to-peer VPN implements a Layer 2 (Ethernet) network between the peers
     ;; 3-clause BSD license.
     (license license:bsd-3)))
 
-(define-public wireguard
+(define-public wireguard-linux-compat
   (package
-    (name "wireguard")
-    (version "0.0.20191219")
+    (name "wireguard-linux-compat")
+    (version "1.0.20200401")
     (source (origin
               (method url-fetch)
-              (uri (string-append "https://git.zx2c4.com/WireGuard/snapshot/"
-                                  "WireGuard-" version ".tar.xz"))
+              (uri (string-append "https://git.zx2c4.com/wireguard-linux-compat/"
+                                  "snapshot/wireguard-linux-compat-" version
+                                  ".tar.xz"))
               (sha256
                (base32
-                "1rxhhf18vnlbxpaxib6y55gbvr5h9dcvl8sn2l5slzz97066zfjs"))))
+                "0ymprz3h4b92wlcqm5k5vmcgap8pjv202bgkdx0axmp12n1lmyvx"))))
     (build-system gnu-build-system)
-    (outputs '("out" ; The WireGuard userspace tools
-               "kernel-patch")) ; A patch to build Linux with WireGuard support
     (arguments
-     `(#:tests? #f ; No tests available.
-       #:make-flags
-       (list "CC=gcc"
-             "--directory=src/tools"
-             "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"))
+     `(#:tests? #f ; No test suite
        #:modules ((guix build gnu-build-system)
                   (guix build utils)
                   (ice-9 popen)
                   (ice-9 textual-ports))
        #:phases
        (modify-phases %standard-phases
-         ;; There is no ./configure script.
-         (delete 'configure)
-         ;; Until WireGuard is added to the upstream Linux kernel, it is
-         ;; distributed as a kernel patch generated by this script.
-         (add-after 'patch-source-shebangs 'make-patch
+         (delete 'configure) ; No ./configure script
+         (replace 'build
            (lambda* (#:key outputs #:allow-other-keys)
-             (let* ((output (string-append (assoc-ref outputs "kernel-patch")
-                                           "/wireguard.patch"))
-                    (patch-builder "./contrib/kernel-tree/create-patch.sh")
+             (let* ((patch-builder "./kernel-tree-scripts/create-patch.sh")
                     (port (open-input-pipe patch-builder))
                     (str (get-string-all port)))
                (close-pipe port)
-               (mkdir-p (dirname output))
-               (call-with-output-file output
+               (call-with-output-file "wireguard.patch"
                  (lambda (port)
                    (format port "~a" str))))
-               #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.")
+               #t))
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (install-file "wireguard.patch"
+                           (assoc-ref %outputs "out"))
+             #t)))))
+    (home-page "https://git.zx2c4.com/wireguard-linux-compat/")
+    (synopsis "WireGuard kernel module for Linux 3.10 through 5.5")
+    (description "This is an out-of-tree Linux kernel patch for kernel versions
+3.10 through 5.5.  WireGuard was added to Linux 5.6.")
     (license license:gpl2)))
 
 (define-public wireguard-tools
@@ -556,6 +542,9 @@ public keys and can roam across IP addresses.")
      (list license:lgpl2.1+    ; src/netlink.h & contrib/embeddable-wg-library
            license:gpl2))))    ; everything else
 
+(define-public wireguard
+  (deprecated-package "wireguard" wireguard-tools))
+
 (define-public xl2tpd
   (package
     (name "xl2tpd")
-- 
2.26.0





Reply sent to Leo Famulari <leo <at> famulari.name>:
You have taken responsibility. (Mon, 06 Apr 2020 16:21:02 GMT) Full text and rfc822 format available.

Notification sent to Leo Famulari <leo <at> famulari.name>:
bug acknowledged by developer. (Mon, 06 Apr 2020 16:21:02 GMT) Full text and rfc822 format available.

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

From: Leo Famulari <leo <at> famulari.name>
To: 40400-done <at> debbugs.gnu.org
Subject: Re: [PATCH] gnu: Add wireguard-linux-compat.
Date: Mon, 6 Apr 2020 12:20:20 -0400
Pushed as 336d7644b39d6c5509d9d1498faf3dc973b9743c




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

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

Previous Next


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