---
title: "Build from source"
description: "Build slopscale from source with Go, a C compiler for SQLite and Bun for the admin console, or through the Nix flake, with steps for OpenBSD."
---

:::warning[Community documentation]

This page is not actively maintained by the slopscale authors and is
written by community members. It is _not_ verified by slopscale developers.

**It might be outdated and it might miss necessary steps**.
:::

Slopscale is built with a current [Go](https://golang.org), a C compiler (the SQLite driver is C compiled through
cgo) and [Bun](https://bun.sh) for the admin console. `make build` builds the server; run `make web` first so the
binary embeds the [console](/slopscale/ref/console#building-from-source) and its SSH terminal, or the binary serves a page
saying the console is missing. The Nix flake (`nix develop`) provides the whole toolchain at the versions CI uses.
See [Contributing](/slopscale/about/contributing) for more information.

Release binaries are published for Linux only (amd64, arm64 and armv7, statically linked); macOS and FreeBSD are
built from source this way or through the Nix flake.

## OpenBSD

### Install from source

```shell
# Install prerequisites: Go, git, GNU make and a C compiler (clang ships
# with the base system; the SQLite driver is C compiled through cgo)
pkg_add go git gmake

git clone https://github.com/aislopware/slopscale.git

cd slopscale

# optionally checkout a release
# option a. you can find official release at https://github.com/aislopware/slopscale/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

# gmake build passes the compiler flags from sqlite.cflags that the server expects
gmake build

# make it executable
chmod a+x slopscale

# copy it to /usr/local/sbin
cp slopscale /usr/local/sbin
```
