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/git/vole.git

Write over SSH with a registered key:

git clone ssh://git@0.0.0.0:2222/vole.git

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

#225

Create the instance repository on init and list it normally

merged · by keenan 1d ago · merged into main at 8497ee19 by keenan 1d ago

keenan opened this 1d ago

What

vole admin init now creates the configured instance_repo when it is missing, seeds it with the starter customization tree, and records it in the index. The instance repository is also no longer hidden from the home page or the activity feed: it is listed and behaves like any other repository.

Why

A new instance currently starts with no instance repository, so an admin has to create it from the Admin page before the landing page can be customized. It was also special-cased out of the repository list, which made it harder to find and edit than an ordinary repository.

Behaviour

  • vole admin init creates vole-instance (or the configured name) with README.md, profile/README.md, and profile/custom.css, and indexes it. The operation is idempotent: an existing repository with history is left untouched.
  • The repository appears in the home grid and activity feed when the viewer may read it. It is private by default, so only instance admins see it until one of them changes its visibility in Settings.
  • The starter README explains the fixed paths and how to edit or push them.
  • The Admin page’s “Create instance repository” button stays as the repair path for instances that predate this, using the same instancerepo.Ensure and instancerepo.Template.
  • docs/configuration.md and the Admin Configuration copy are updated to match.

Checks

./vole workflow run verify passes (format, vet, build, licenses, govulncheck, packages, deployment files, markdown links, tests).

Discussion (1)

keenan 1d ago

Extended the starter profile/custom.css after review of the default:

  • The old example used a plain :root selector, which loses to Everforest’s more specific :root[data-theme^="everforest-"] token rules. The starter now uses :root[data-theme] and explains why.
  • It groups the override tokens (surfaces, text, identity, status, shape, type, syntax), shows dark/light blocks, and lists the page-level classes as an escape hatch.
  • docs/configuration.md now carries the same reference under Customizing the instance → Theming, including the warning to leave --font-scale to the reader’s text-size preset.
  • forge/instance_test.go checks that a newly seeded repository contains the correct selector.

Head moved to bc95767; ./vole workflow run verify passes.