Libraries and Tools

As explained in the Build article, Eddie is linked to or uses different tools and libraries to perform tasks.

The list below matches resources/libraries.txt in the Eddie repository (also shown in the About dialog).

Common (all platforms)

OpenVPN

A secure tunneling daemon.

License: GNU General Public License (GPL v2+)

https://openvpn.net/

WireGuard

Fast, modern, secure VPN tunnel (protocol and core). Platform-specific components are listed in the sections below.

License: GNU General Public License (GPL v2)

https://www.wireguard.com/

stunnel

A TLS encryption wrapper.

License: GNU General Public License (GPL v2+)

https://www.stunnel.org/

nlohmann/json

JSON for Modern C++ (bundled source).

License: MIT

https://github.com/nlohmann/json

sha256

FIPS-180-2 SHA-256 implementation by Christophe Devine (bundled source).

License: GNU General Public License (GPL v2+)

base64

Base64 encoder/decoder by Rene Nyffenegger (bundled source).

License: zlib-style (see dependencies/base64/base64.h)

three.js

3D graphics library, bundled into the WebUI world map globe (map-globe.bundle.js).

License: MIT

https://threejs.org/

three-globe

Three.js globe component used by the WebUI world map globe (bundled).

License: MIT

https://github.com/vasturiano/three-globe

solar-calculator

Sun-position math for the globe day/night terminator (bundled).

License: ISC

https://github.com/d3/solar-calculator

Shared on Linux and MacOS

Hummingbird

OpenVPN 3 client based on the AirVPN OpenVPN 3 library.

License: GNU General Public License (GPL v3)

https://airvpn.org/hummingbird/

PStreams

POSIX process I/O for C++ by Jonathan Wakely (bundled source).

License: Boost Software License, Version 1.0

https://www.boost.org/LICENSE10.txt

MacOS-only

wireguard-go

Userspace implementation of WireGuard.

License: MIT

https://git.zx2c4.com/wireguard-go/

wireguard-tools (wg)

WireGuard configuration utility.

License: GNU General Public License (GPL v2)

https://git.zx2c4.com/wireguard-tools/

Windows-only

wireguard-nt (wireguard.dll)

Kernel driver, redistributed and used only through the documented wireguard.h API, with no source modifications. Redistribution is permitted by section 3.d of its license because Eddie distributes wireguard.dll alongside software that uses it only via the Permitted API.

License: WireGuard LLC Prebuilt Binaries License (proprietary)

https://download.wireguard.com/wireguard-nt/

tap-windows6 (tap0901, tapctl)

TAP virtual network driver, installed and managed by Eddie.

License: GNU General Public License (GPL v2)

https://github.com/OpenVPN/tap-windows6

ovpn-dco-win (ovpn-dco)

OpenVPN Data Channel Offload driver, installed and managed by Eddie.

License: GNU General Public License (GPL v2)

https://github.com/OpenVPN/ovpn-dco-win

Plink (PuTTY)

Command-line SSH client, bundled for SSH tunneling support.

License: MIT

https://www.chiark.greenend.org.uk/~sgtatham/putty/

yxml

A small XML parser (bundled source), used by the Windows elevated helper.

License: MIT

https://dev.yorhel.nl/yxml

Assets (imagery)

NASA Blue Marble (Blue Marble Next Generation)

Daytime Earth texture (earth-day.jpg) for the WebUI world map, 2D and globe. December composite with bathymetry, 5400x2700.

License: Public domain (NASA imagery, no endorsement implied)

https://eoimages.gsfc.nasa.gov/images/imagerecords/73000/73909/world.topo.bathy.200412.3x5400x2700.jpg

NASA Black Marble 2016

Night-time city-lights texture (earth-night.jpg) for the WebUI world map, 2D and globe. Sourced from the 3 km image and downscaled to 8192x4096.

License: Public domain (NASA imagery, no endorsement implied)

https://eoimages.gsfc.nasa.gov/images/imagerecords/144000/144898/BlackMarble20163km.jpg