indexabout

About page for git.hornquist.se — Vimwiki

This is the about page for https://git.hornquist.se/?p=about.

Hooks

Each repository is initialized with a hook directory which symlinks to a global hooks directory. In the global hooks directory, each (relevant) hook is symlinked to GitHooks dispatcher, which will run every hooks in ${HOOK_DIR}/${HOOK_NAME}.d (non-recursively)

Hook Dir

Hooks are searched for in

  • /etc/githooks/hooks (configurable through githooks.hook-dir)
  • ${GIT_REF}:.githooks/ for every ref affected by the push

Default Hooks

The global hooks can be viewed here.

Repo Configuration

A gitconfig hook is run on post-receive.

It reads the git configuration file ${GIT_REF}:.gitconfig from the pushed ref, and updates the repos config file.

It's recommended to create a new orphan branch called gitconfig, and handle all configuration from there.

Repo Description

Must be set through gitweb.description.

Configuration keys of interest

gitweb.description
Displayed description of repo
gitweb.category
Category, (unless in a subdirectory)
gitweb.homepage
Will be added as a tab
cgit.defbranch
Default branch to show
cgit.logo
Will replace cgit logo for this repo, see #Logo

Read more: man:cgitrc#5 (cgitrc(5))

The prefered way to publish logo:s is thourgh the repo itself, set cgit.logo to https://git.hornquist.se/REPO_NAME/plain/LOGO.PNG?h=*BRANCHNAME*

Re-running hooks

The script ~git/rerun-hook.py is available on the server. It takes a path to a repo, and executes the post-receive hook as if an initial push containing everything in the repo.

Gitweb Categories

Archive
Repos which will probably never again get touched
doc
"Pure" text repos.
fork
Repos which are forked from elsewhere.

Subdirectories

archpkg
Arch PKGBUILD files.
houseOfMad
An old game
liu
Schoolwork from LiU
puppet
Puppet Modules
scheme
Misc scheme code
unity
Misc Unity (game engine) code

Templates

GIT ~ $ tree $(git config --global init.templateDir)
/usr/share/githooks/template/
├── description -> /dev/null
└── hooks -> /usr/share/githooks/hooks

Remaning Configuration

The cgit server is configuration is mostly contained in my Puppetmodule for CGit. It is however populated by my (as of yet) unpublished Hiera data.

The various CGit filters which run are however available here https://git.hornquist.se/cgit-filters/

 __________________________
< Den som bestämde gjorde >
 --------------------------
\                             .       .
 \                           / `.   .' "
  \                  .---.  <    > <    >  .---.
   \                 |    \  \ - ~ ~ - /  /    |
         _____          ..-~             ~-..-~
        |     |   \~~~\.'                    `./~~~/
       ---------   \__/                        \__/
      .'  O    \     /               /       \  "
     (_____,    `._.'               |         }  \/~~~/
      `----.          /       }     |        /    \__/
            `-.      |       /      |       /      `. ,~~|
                ~-.__|      /_ - ~ ^|      /- _      `..-'
                     |     /        |     /     ~-.     `-. _  _  _
                     |_____|        |_____|         ~ - . _ _ _ _ _>
<>
No backlinks