diff options
| author | Xe Iaso <me@xeiaso.net> | 2025-04-06 00:28:08 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-04-06 00:28:08 -0400 |
| commit | 95416dfe82ae8aefdad7537584db32710d41b287 (patch) | |
| tree | 7a1a49131578cae9125637a8ac3361a05ce1744e /docs | |
| parent | e58abbe4ded17c1a6cca57b54f0eecf16654c146 (diff) | |
| download | anubis-95416dfe82ae8aefdad7537584db32710d41b287.tar.xz anubis-95416dfe82ae8aefdad7537584db32710d41b287.zip | |
Makefile: fix subtle logic bug (#228)
Closes #226
Makefile dependencies are backwards, apparently.
Also add staticcheck as a `go tool` dependency.
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/docs/developer/building-anubis.md | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/docs/docs/developer/building-anubis.md b/docs/docs/developer/building-anubis.md index 69b2404..ebc8e21 100644 --- a/docs/docs/developer/building-anubis.md +++ b/docs/docs/developer/building-anubis.md @@ -4,7 +4,7 @@ title: Building Anubis without Docker :::note -These instructions may work, but for right now they are informative for downstream packagers more than they are ready-made instructions for administrators wanting to run Anubis on their servers. +These instructions may work, but for right now they are informative for downstream packagers more than they are ready-made instructions for administrators wanting to run Anubis on their servers. Pre-made binary package support is being tracked in [#156](https://github.com/TecharoHQ/anubis/issues/156). ::: @@ -12,14 +12,21 @@ These instructions may work, but for right now they are informative for downstre In order to build a production-ready binary of Anubis, you need the following packages in your environment: -- [Go](https://go.dev) - the programming language that Anubis is written in +- [Go](https://go.dev) at least version 1.24 - the programming language that Anubis is written in - [esbuild](https://esbuild.github.io/) - the JavaScript bundler Anubis uses for its production JS assets - [Node.JS & NPM](https://nodejs.org/en) - manages some build dependencies - `gzip` - compresses production JS (part of coreutils) - `zstd` - compresses production JS - `brotli` - compresses production JS -## Install dependencies +To upgrade your version of Go without system package manager support, install `golang.org/dl/go1.24.2` (this can be done from any version of Go): + +```text +go install golang.org/dl/go1.24.2@latest +go1.24.2 download +``` + +### Install dependencies ```text make deps @@ -27,7 +34,7 @@ make deps This will download Go and NPM dependencies. -## Building static assets +### Building static assets ```text make assets @@ -35,10 +42,16 @@ make assets This will build all static assets (CSS, JavaScript) for distribution. -## Building Anubis to the `./var` folder +### Building Anubis to the `./var` folder ```text make build ``` From this point it is up to you to make sure that `./var/anubis` ends up in the right place. You may want to consult the `./run` folder for useful files such as a systemd unit and `anubis.env.default` file. + +## Development dependencies + +Optionally, you can install the following dependencies for development: + +- [Staticcheck](https://staticcheck.dev/docs/getting-started/) (optional, not required due to [`go tool staticcheck`](https://www.alexedwards.net/blog/how-to-manage-tool-dependencies-in-go-1.24-plus), but required if you are using any version of Go older than 1.24) |
