Gitolite

From NixOS Wiki
Revision as of 16:30, 24 November 2023 by imported>Variant9 (Specify user used to clone repos, as this is different from the standard `git` user.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Gitolite allows you to host git repositories with fine-grained access control.

Installation

Obtain the SSH public key of the user you will use to configure gitolite, then add the following to your NixOS config:

  services.gitolite = {
    enable = true;
    adminPubkey = "<ssh public key>";
  };

When you rebuild, a new unit should start:

the following new units were started: gitolite-init.service

You can now check out the gitolite-admin repo using the gitolite user. Gitolite's configuration is located in conf/gitolite.conf and you can give users access by adding their public keys to keydir.