organization of wireguard linux kernel repos moving forward

Jason A. Donenfeld Jason at
Mon Dec 9 12:56:49 CET 2019

[Cross-posted to wireguard mailing list and netdev.]

Hey folks,

With WireGuard in net-next, it's time to break up the monolithic repo
we've been using for development into something a bit more manageable
and in line with ordinary kernel development.

Right now the "WireGuard.git" repo has been structured as an out of
tree module, alongside a subdirectory for tools, one for scripts, one
for tests, and another for a super gnarly compat layer that makes the
thing work on all kernels going back to 3.10. We're going to break
this up into three repositories:

1) wireguard-linux.git will be a full Linux tree, with wireguard
changes, and regularly merge in net/net-next, and have things from
there posted on netdev like usual for review. This repo won't be an
out of tree module any more, obviously. This lives at:

2) wireguard-tools.git will have the userspace utilities and scripts,
such as wg(8) and wg-quick(8), and be easily packageable by distros.
This repo won't be live until we get a bit closer to the 5.6 release,
but when it is live, it will live at: [currently 404s]
[currently 404s]

3) wireguard-linux-compat.git will be an out-of-tree module containing
the aforementioned horrific compat.h layer. New development will go
into upstream wireguard-linux.git, but we'll do our best to keep
things mostly working for as long as it makes sense and is feasible.
This repo won't be live until we get a bit closer to the 5.6 release,
but when it is live, it will live at: [currently 404s]
[currently 404s]

Since 5.6 is a long ways off, we'll probably have a few more snapshots
posted out of the monolithic WireGuard.git repo, but in the next few
months we'll be transitioning things over and working with distro
packagers to make sure the new tarball URLs for the tools are all set.

The CI that runs on will also see some updates to
reflect these adjustments, and also more closely align with the
net-next tree. Additionally, I'm interested to see if I can make our
CI useful for a variety of things in net/ and drivers/net/ instead of
just for wireguard.

More generally, wireguard linux development will be moving to the
release cadence, development, and review practices of netdev, rather
than living sequestered as an out-of-tree snapshot-only thing.


More information about the WireGuard mailing list