2022-12-15 06:01:03 +00:00
|
|
|
legit
|
|
|
|
-----
|
|
|
|
|
2023-02-05 09:47:27 +00:00
|
|
|
A git web frontend written in Go.
|
2022-12-15 06:01:03 +00:00
|
|
|
|
2023-02-05 09:47:27 +00:00
|
|
|
Pronounced however you like; I prefer channeling my inner beret-wearing test test
|
|
|
|
Frenchman, and saying "Oui, il est le git!"
|
2022-12-15 06:01:03 +00:00
|
|
|
|
2022-12-19 05:22:16 +00:00
|
|
|
But yeah it's pretty legit, no cap on god fr fr.
|
|
|
|
|
|
|
|
|
|
|
|
FEATURES
|
|
|
|
|
|
|
|
• Fully customizable templates and stylesheets.
|
|
|
|
• Cloning over http(s).
|
|
|
|
• Less archaic HTML.
|
|
|
|
• Not CGI.
|
|
|
|
|
2022-12-19 03:32:23 +00:00
|
|
|
|
|
|
|
INSTALLING
|
|
|
|
|
|
|
|
Clone it, 'go build' it.
|
2022-12-19 05:22:16 +00:00
|
|
|
|
|
|
|
|
|
|
|
CONFIG
|
|
|
|
|
|
|
|
Uses yaml for configuration. Looks for a 'config.yaml' in the current
|
|
|
|
directory by default; pass the '--config' flag to point it elsewhere.
|
|
|
|
|
|
|
|
Example config.yaml:
|
|
|
|
|
|
|
|
repo:
|
|
|
|
scanPath: /var/www/git
|
|
|
|
readme:
|
|
|
|
- readme
|
|
|
|
- README
|
|
|
|
- readme.md
|
|
|
|
- README.md
|
|
|
|
mainBranch:
|
|
|
|
- master
|
|
|
|
- main
|
2022-12-22 15:43:49 +00:00
|
|
|
ignore:
|
|
|
|
- foo
|
|
|
|
- bar
|
2022-12-19 05:22:16 +00:00
|
|
|
dirs:
|
|
|
|
templates: ./templates
|
|
|
|
static: ./static
|
|
|
|
meta:
|
|
|
|
title: git good
|
|
|
|
description: i think it's a skill issue
|
|
|
|
server:
|
|
|
|
name: git.icyphox.sh
|
|
|
|
host: 127.0.0.1
|
|
|
|
port: 5555
|
|
|
|
|
|
|
|
These options are fairly self-explanatory, but of note are:
|
|
|
|
|
|
|
|
• repo.scanPath: where all your git repos live (or die). legit doesn't
|
|
|
|
traverse subdirs yet.
|
|
|
|
• repo.readme: readme files to look for. Markdown isn't rendered.
|
|
|
|
• repo.mainBranch: main branch names to look for.
|
2022-12-22 15:43:49 +00:00
|
|
|
• repo.ignore: repos to ignore.
|
2022-12-19 05:22:16 +00:00
|
|
|
• server.name: used for go-import meta tags and clone URLs.
|
|
|
|
|
|
|
|
|
|
|
|
NOTES
|
|
|
|
|
2023-02-05 09:47:27 +00:00
|
|
|
• Run legit behind a TLS terminating proxy like relayd(8) or nginx.
|
2022-12-19 17:03:33 +00:00
|
|
|
• Cloning only works in bare repos -- this is a limitation inherent to git. You
|
|
|
|
can still view bare repos just fine in legit.
|
2022-12-19 05:22:16 +00:00
|
|
|
• The default head.html template uses my CDN to fetch fonts -- you may
|
|
|
|
or may not want this.
|
|
|
|
• Pushing over https, while supported, is disabled because auth is a
|
|
|
|
pain. Use ssh.
|
2022-12-22 15:45:57 +00:00
|
|
|
• Paths are unveil(2)'d on OpenBSD.
|
|
|
|
|
|
|
|
|
|
|
|
IDEAS
|
|
|
|
|
|
|
|
• "Private" repos only available over Tailscale.
|
|
|
|
• Support or cgit-like filters (for readmes etc.).
|
2022-12-19 12:07:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
LICENSE
|
|
|
|
|
|
|
|
legit is licensed under MIT.
|