mirror of
https://github.com/juanfont/headscale.git
synced 2024-12-05 21:23:06 +00:00
8c7d8ee34f
* Setup mkdocs-redirects * Restructure existing documentation * Move client OS support into the documentation * Move existing Client OS support table into its own documentation page * Link from README.md to the rendered documentation * Document minimum Tailscale client version * Reuse CONTRIBUTING.md" in the documentation * Include "CONTRIBUTING.md" from the repository root * Update FAQ and index page and link to the contributing docs * Add configuration reference * Add a getting started page and explain the first steps with headscale * Use the existing "Using headscale" sections and combine them into a single getting started guide with a little bit more explanation. * Explain how to get help from the command line client. * Remove duplicated sections from existing installation guides * Document requirements and assumptions * Document packages provided by the community * Move deb install guide to official releases * Move manual install guide to official releases * Move container documentation to setup section * Move sealos documentation to cloud install page * Move OpenBSD docs to build from source * Simplify DNS documentation * Add sponsor page * Add releases page * Add features page * Add help page * Add upgrading page * Adjust mkdocs nav * Update wording Use the term headscale for the project, Headscale on the beginning of a sentence and `headscale` when refering to the CLI. * Welcome to headscale * Link to existing documentation in the FAQ * Remove the goal header and use the text as opener * Indent code block in OIDC * Make a few pages linter compatible Also update ignored files for prettier * Recommend HTTPS on port 443 Fixes: #2164 * Use hosts in acl documentation thx @efficacy38 for noticing this Ref: #1863 * Use mkdocs-macros to set headscale version once
63 lines
1.8 KiB
Markdown
63 lines
1.8 KiB
Markdown
# Build from source
|
|
|
|
!!! warning "Community documentation"
|
|
|
|
This page is not actively maintained by the headscale authors and is
|
|
written by community members. It is _not_ verified by headscale developers.
|
|
|
|
**It might be outdated and it might miss necessary steps**.
|
|
|
|
Headscale can be built from source using the latest version of [Go](https://golang.org) and [Buf](https://buf.build)
|
|
(Protobuf generator). See the [Contributing section in the GitHub
|
|
README](https://github.com/juanfont/headscale#contributing) for more information.
|
|
|
|
## OpenBSD
|
|
|
|
### Install from source
|
|
|
|
```shell
|
|
# Install prerequistes
|
|
pkg_add go
|
|
|
|
git clone https://github.com/juanfont/headscale.git
|
|
|
|
cd headscale
|
|
|
|
# optionally checkout a release
|
|
# option a. you can find official release at https://github.com/juanfont/headscale/releases/latest
|
|
# option b. get latest tag, this may be a beta release
|
|
latestTag=$(git describe --tags `git rev-list --tags --max-count=1`)
|
|
|
|
git checkout $latestTag
|
|
|
|
go build -ldflags="-s -w -X github.com/juanfont/headscale/cmd/headscale/cli.Version=$latestTag" github.com/juanfont/headscale
|
|
|
|
# make it executable
|
|
chmod a+x headscale
|
|
|
|
# copy it to /usr/local/sbin
|
|
cp headscale /usr/local/sbin
|
|
```
|
|
|
|
### Install from source via cross compile
|
|
|
|
```shell
|
|
# Install prerequistes
|
|
# 1. go v1.20+: headscale newer than 0.21 needs go 1.20+ to compile
|
|
# 2. gmake: Makefile in the headscale repo is written in GNU make syntax
|
|
|
|
git clone https://github.com/juanfont/headscale.git
|
|
|
|
cd headscale
|
|
|
|
# optionally checkout a release
|
|
# option a. you can find official release at https://github.com/juanfont/headscale/releases/latest
|
|
# option b. get latest tag, this may be a beta release
|
|
latestTag=$(git describe --tags `git rev-list --tags --max-count=1`)
|
|
|
|
git checkout $latestTag
|
|
|
|
make build GOOS=openbsd
|
|
|
|
# copy headscale to openbsd machine and put it in /usr/local/sbin
|
|
```
|