add installation instructions to README

Amolith created

Change summary

README.md | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 56 insertions(+)

Detailed changes

README.md 🔗

@@ -28,6 +28,62 @@ Service has …
 - A simple backup procedure (database is a single directory)
 - No user management (this is a _personal_ service after all)
 
+## Installation
+
+- Download the binary appropriate for your system or build from source with `go build .`
+  <details>
+    <summary>List of latest binaries</summary>
+    - [earl-darwin-amd64](https://earl.run/earl-darwin-amd64)
+    - [earl-darwin-arm64](https://earl.run/earl-darwin-arm64)
+    - [earl-dragonfly-amd64](https://earl.run/earl-dragonfly-amd64)
+    - [earl-freebsd-amd64](https://earl.run/earl-freebsd-amd64)
+    - [earl-freebsd-arm](https://earl.run/earl-freebsd-arm)
+    - [earl-freebsd-i386](https://earl.run/earl-freebsd-i386)
+    - [earl-illumos-amd64](https://earl.run/earl-illumos-amd64)
+    - [earl-linux-amd64](https://earl.run/earl-linux-amd64)
+    - [earl-linux-arm](https://earl.run/earl-linux-arm)
+    - [earl-linux-arm64](https://earl.run/earl-linux-arm64)
+    - [earl-linux-i386](https://earl.run/earl-linux-i386)
+    - [earl-linux-mips](https://earl.run/earl-linux-mips)
+    - [earl-linux-mips64](https://earl.run/earl-linux-mips64)
+    - [earl-linux-mips64le](https://earl.run/earl-linux-mips64le)
+    - [earl-linux-mipsle](https://earl.run/earl-linux-mipsle)
+    - [earl-linux-ppc64](https://earl.run/earl-linux-ppc64)
+    - [earl-linux-ppc64le](https://earl.run/earl-linux-ppc64le)
+    - [earl-linux-riscv64](https://earl.run/earl-linux-riscv64)
+    - [earl-linux-s390x](https://earl.run/earl-linux-s390x)
+    - [earl-netbsd-amd64](https://earl.run/earl-netbsd-amd64)
+    - [earl-netbsd-arm](https://earl.run/earl-netbsd-arm)
+    - [earl-netbsd-i386](https://earl.run/earl-netbsd-i386)
+    - [earl-openbsd-amd64](https://earl.run/earl-openbsd-amd64)
+    - [earl-openbsd-arm](https://earl.run/earl-openbsd-arm)
+    - [earl-openbsd-arm64](https://earl.run/earl-openbsd-arm64)
+    - [earl-openbsd-i386](https://earl.run/earl-openbsd-i386)
+    - [earl-plan9-amd64](https://earl.run/earl-plan9-amd64)
+    - [earl-plan9-arm](https://earl.run/earl-plan9-arm)
+    - [earl-plan9-i386](https://earl.run/earl-plan9-i386)
+    - [earl-solaris-amd64](https://earl.run/earl-solaris-amd64)
+    - [earl-windows-amd64.exe](https://earl.run/earl-windows-amd64.exe)
+    - [earl-windows-arm64.exe](https://earl.run/earl-windows-arm64.exe)
+    - [earl-windows-arm.exe](https://earl.run/earl-windows-arm.exe)
+    - [earl-windows-i386.exe](https://earl.run/earl-windows-i386.exe)
+  </details>
+- On Unix-based OSes (which includes macOS), mark the binary as executable with
+  `chmod u+x path/to/binary`
+  - I don't _think_ this is necessary with Windows.
+- On Unix-based OSes, execute the binary with `./path/to/binary`
+  - No clue how to execute the Windows binaries. Feel free to [send a
+    patch](#questions-amp-contributions) with this information!
+- Edit `./config.yaml` and modify `accessToken` to something secure; earl won't
+  start until the access token is changed.
+- Re-execute the binary and earl should be accessible on
+  [localhost:1313](http://localhost:1313)!
+- To make it accessible over the internet on a short domain, you'll need said
+  short domain, a server, a reverse proxy, and a TLS certificate. How to
+  obtain/configure those components is out-of-scope though.
+  - Contributions adding a Caddyfile, an NGINX vhost, systemd/OpenRC/runit/etc.
+    units are welcome.
+
 ## API documentation
 
 ### `/create`