Skip to content

Commit

Permalink
Add distribution specific package installation instructions
Browse files Browse the repository at this point in the history
Signed-off-by: Marek Küthe <[email protected]>
  • Loading branch information
marek22k committed Dec 12, 2023
1 parent 4c6a9a9 commit 1d9c369
Showing 1 changed file with 23 additions and 5 deletions.
28 changes: 23 additions & 5 deletions INSTALL.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,11 @@ the very latest versions of the following packages:
- `OpenSSL`\* (1.1.0+) or `LibreSSL` or `libgcrypt` (not needed if legacy
protocol is disabled)

Installation on Arch Linux: `sudo pacman --needed --sync base-devel meson ninja pkg-config openssl`
Installation on Debian: `sudo apt-get install meson ninja-build pkg-config build-essential libssl-dev`
Installation on Alpine Linux: `doas apk add meson ninja pkgconf build-base linux-headers openssl-dev`
Installation on Fedora: `sudo dnf install meson ninja-build pkgconf-pkg-config @development-tools openssl-devel`

### No Python?

If you're on a constrained system that doesn't have (or cannot run) Python, you
Expand All @@ -37,10 +42,20 @@ If packages marked by `*` are not available, tinc will fall back to its own
vendored copies. This behavior can be disabled by setting the appropriate meson
option to `disabled`.

Installation on Arch Linux: `sudo pacman --needed -S ncurses readline zlib lzo lz4`
Installation on Debian: `sudo apt-get install libncurses-dev libreadline-dev zlib1g-dev liblzo2-dev liblz4-dev`
Installation on Alpine Linux: `doas apk add ncurses-dev readline-dev zlib-dev lzo-dev lz4-dev`
Installation on Fedora: `sudo dnf install ncurses-devel readline-devel zlib-devel lzo-devel lz4-devel`

To build `info` documentation you'll also need these packages:

- `texinfo` or `makeinfo`

Installation on Arch Linux: `sudo pacman --needed -S texinfo`
Installation on Debian: `sudo apt-get install texinfo`
Installation on Alpine Linux: `doas apk add texinfo`
Installation on Fedora: `sudo dnf install texinfo`

You might also need some additional command-line utilities to be able to run the
integration test suite:

Expand All @@ -49,7 +64,10 @@ integration test suite:
- `socat`
- `netcat`

Please consult your operating system's documentation for more details.
Installation on Arch Linux: `sudo pacman --needed -S diffutils procps socat openbsd-netcat`
Installation on Debian: `sudo apt-get install diffutils procps socat netcat-openbsd`
Installation on Alpine Linux: `doas apk add diffutils procps-ng socat netcat-openbsd`
Installation on Fedora: `sudo dnf install diffutils procps-ng socat netcat`

## Windows

Expand Down Expand Up @@ -169,14 +187,14 @@ versions of all libraries you'd like to link:
```sh
HOST=armhf
dpkg --add-architecture $HOST
apt update
apt install -y crossbuild-essential-$HOST zlib1g-dev:$HOST
apt-get update
apt-get install -y crossbuild-essential-$HOST zlib1g-dev:$HOST
```

If you'd like to run tests on emulated hardware, install `qemu-user`:

```sh
apt install -y qemu-user
apt-get install -y qemu-user
update-binfmts --enable
```

Expand Down Expand Up @@ -208,7 +226,7 @@ meson setup build --cross-file cross-armhf
Install cross-compilation toolchain:

```sh
apt install -y mingw-w64 mingw-w64-tools
apt-get install -y mingw-w64 mingw-w64-tools
```

tinc will use its own vendored libraries, so you don't need to install or build
Expand Down

0 comments on commit 1d9c369

Please sign in to comment.