Sign in

Search issue titles and bodies, change requests and comments. Private repositories you cannot read are not included.

vole
Clone

Read only, no credentials:

https://rodent.software/vole.git

Write over SSH with a registered key:

git clone ssh://git@rodent.software:2222/vole.git

A free and open-source forge that lives in your Git repo.

Document the root-level URL layout

b7396a1155147a13c5595216f204a545e9f74202 · Keenan Nemetz · 9h ago · parent ed03b3d1

Document the root-level URL layout

The guides now say /<name> for a repository and /-/ for the forge's own pages,
including the clone examples, theme asset paths, profile and registration
URLs, robots.txt, and the deployment package URLs. docs/architecture.md gains
a short URL layout section: why the two spaces cannot collide, the four root
names the forge keeps, and why the transport carries .git.

docs/go-modules.md follows the layout: the module path is the repository page,
the clone URL is the same name with .git, discovery is answered before the
router, and a published module path is durable because renaming the repository
breaks it.

docs/deploy/vps.md +3−3

@@ -24,7 +24,7 @@ HOSTNAME=forge.example.com \
24 24 ADMIN_ACCOUNT=admin \
25 25 ADMIN_EMAIL=you@example.com \
26 26 ADMIN_SSH_KEY="$(cat ~/.ssh/id_ed25519.pub)" \
27 VOLE_PACKAGE_URL=https://rodent.software/r/vole/releases/v0.2.0/artifacts/vole_0.2.0-1_amd64.deb \
27 VOLE_PACKAGE_URL=https://rodent.software/vole/releases/v0.2.0/artifacts/vole_0.2.0-1_amd64.deb \
28 28 ./render.sh > user-data.yaml
29 29 ```
30 30
@@ -36,7 +36,7 @@ machine. The values are:
36 36 | `HOSTNAME` | The name people will reach the forge on. It becomes `public_url`, and passkeys bind to it, so choose the one you intend to keep |
37 37 | `ADMIN_ACCOUNT` | Name of the first account, made an instance admin. Account names are permanent |
38 38 | `ADMIN_SSH_KEY` | Public key of that account, as in the contents of `~/.ssh/id_ed25519.pub` |
39 | `VOLE_PACKAGE_URL` | The `.deb` for the machine's architecture, from [Vole's releases](https://rodent.software/r/vole/releases) |
39 | `VOLE_PACKAGE_URL` | The `.deb` for the machine's architecture, from [Vole's releases](https://rodent.software/vole/releases) |
40 40 | `ADMIN_EMAIL` | Contact address for the certificate authority. Optional, but a good idea |
41 41 | `INSTANCE_NAME` | What the landing page calls this forge. Default `Vole` |
42 42 | `TLS_MODE` | `acme` (the default) lets Vole obtain its own certificate. `proxy` leaves TLS to a proxy you run, and serves plain HTTP on loopback |
@@ -63,7 +63,7 @@ produces, done by hand.
63 63
64 64 ```sh
65 65 # On the machine, as a user with sudo.
66 curl -fsSLO https://rodent.software/r/vole/releases/v0.2.0/artifacts/vole_0.2.0-1_amd64.deb
66 curl -fsSLO https://rodent.software/vole/releases/v0.2.0/artifacts/vole_0.2.0-1_amd64.deb
67 67 sudo apt install ./vole_0.2.0-1_amd64.deb
68 68 ```
69 69