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.

Derive theme metadata from the stylesheet file name

d222b0cf5d23444ea5df9429ec7d3690407dd00c · Keenan Nemetz · 1d ago · parent f7a34d87

Derive theme metadata from the stylesheet file name

profile/themes/index.json is gone. Each profile/themes/<id>.css is self-describing: the file name is the id and the label (acme-ocean.css becomes Acme Ocean), and the rules are scoped to that id. The loader discovers the files, validates the names, and sorts them by label.

Remove the manifest from the starter repository, its README, the Admin Configuration path table, and the configuration docs. An old index.json in an existing repository is ignored.

server/web/templates/status.html +1−2

@@ -202,8 +202,7 @@ Clone it with <code>{{.InstanceRepo.CloneURL}}</code>.</p>
202 202 <tr><td><code>profile/README.md</code></td><td>Landing page introduction (markdown, sanitized)</td></tr>
203 203 <tr><td><code>profile/private/README.md</code></td><td>The same, only for signed-in viewers</td></tr>
204 204 <tr><td><code>profile/custom.css</code></td><td>Instance-wide stylesheet, loaded after the built-in ones and any theme</td></tr>
205 <tr><td><code>profile/themes/index.json</code></td><td>Themes offered in Account → Appearance</td></tr>
206 <tr><td><code>profile/themes/&lt;id&gt;.css</code></td><td>One stylesheet per theme</td></tr>
205 <tr><td><code>profile/themes/&lt;id&gt;.css</code></td><td>One stylesheet per theme; the file name is its label in Account → Appearance</td></tr>
207 206 <tr><td><code>profile/favicon.svg</code></td><td>Favicon override</td></tr>
208 207 <tr><td><code>assets/</code></td><td>Files served at <code>/static/custom/assets/</code></td></tr>
209 208 </tbody>