You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Go to file
Marvin Preuss d23218c14d
ci/woodpecker/push/woodpecker Pipeline was successful Details
ci/woodpecker/tag/woodpecker Pipeline was successful Details
ci: git checkout -- before running make release
2 years ago
assets happy linting 2 years ago
cmd feat: config dir short handle 2 years ago
init fixes checkconfig in open-rc init file 3 years ago
third_party build(make): tools not in go mod 2 years ago
tools/pidof happy linting 2 years ago
vendor build(make): tools not in go mod 2 years ago
wgquick happy linting 2 years ago
.gitignore adds ability to kill a process of a userland wireguard-go 3 years ago
.gitmodules adds wireguard-go as submodule 3 years ago
.goreleaser.yml fix(goreleaser): adds tar.gz archive an id and uses it in brews section 2 years ago
.woodpecker.yml ci: git checkout -- before running make release 2 years ago
LICENSE homebrew 3 years ago
Makefile build(make): tools not in go mod 2 years ago
README.md try to fix homebrew 3 years ago
go.mod build(make): tools not in go mod 2 years ago
go.sum build(make): tools not in go mod 2 years ago
logo.png docs: readme work 3 years ago
main.go happy linting 2 years ago

README.md

logo

wg-quick like library with batteries included

Go Reference Go Report Card


This is a friendly fork of wg-quick-go. So all glory to them!!!11!! It contains everything needed to get a system into a wireguard vpn network. If there is no wireguard kernel modul available, it will spin up the embedded wireguard-go to create a wireguard interface.

Installation

Prebuild packages

Get these on the release page.

Homebrew

  • brew tap xsteadfastx/tap https://github.com/xsteadfastx/homebrew-tap
  • brew install wg-quicker

Compile it for yourself

  • git clone https://git.xsfx.dev/xsteadfastx/wg-quicker.git
  • cd wg-quicker
  • make build

Roadmap

  • full wg-quick feature parity
    • PreUp
    • PostUp
    • PreDown
    • PostDown
    • DNS
    • MTU
    • Save --> Use MarshallText interface to save config
  • Sync
  • Up
  • Down
  • MarshallText
  • UnmarshallText
  • Minimal test
  • Embedded wireguard-go
  • Integration tests ((TODO; have some virtual machines/kvm and wreck havoc :) ))

Caveats

  • Endpoints DNS MarshallText is unsupported
  • Pre/Post Up/Down doesn't support escaped %i, that is all %i are expanded to interface name.
  • SaveConfig in config is only a placeholder (( since there's no reading/writing from files )). Use Unmarshall/Marshall Text to save/load config (( you're responsible for IO)).