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.

Create the instance repository on init and list it normally

3e7c5e6797105f87fe593bb4c34743d3615ab598 · Keenan Nemetz · 1d ago · parent 6ce635a8

Create the instance repository on init and list it normally

`vole admin init` now creates the configured instance repository with the starter tree and indexes it, so a new instance starts with it. The repository is no longer hidden from the home page or activity feed: it has the same pages, history, and settings as any other, and its visibility is its own.

The Admin page's create button remains as the repair path for an instance that predates this, using the same starter tree from the instancerepo package.

server/web/home.go −12

@@ -218,12 +218,6 @@ func (w *Web) visibleRepos(r *http.Request, query string) ([]index.Entry, error)
218 218 needle := strings.ToLower(strings.TrimSpace(query))
219 219 var visible []index.Entry
220 220 for _, e := range entries {
221 if w.isInstanceRepo(e.Name) {
222 // The instance's own customization repository is not a project. It is
223 // managed from the Admin page, and listing it as a card would make it
224 // look like one.
225 continue
226 }
227 221 // Meta rather than Open: visibility needs the id and the ACL, not the
228 222 // default branch, so do not spend a git call per repository on it.
229 223 m, err := w.Repos.Meta(e.Name)
@@ -408,12 +402,6 @@ func sortCards(cards []repoCard) {
408 402 })
409 403 }
410 404
411 // isInstanceRepo reports whether name is the repository the instance reads for
412 // its presentation. It is hidden from the home grid and the activity rail.
413 func (w *Web) isInstanceRepo(name string) bool {
414 return w.Cfg != nil && name != "" && name == strings.TrimSpace(w.Cfg.InstanceRepo)
415 }
416
417 405 // instanceName is the heading the home page shows. The config file names the
418 406 // forge; an instance that never set it is "Vole".
419 407 func (w *Web) instanceName() string {