Gitolite
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. Gitolite's configuration is located in conf/gitolite.conf
and you can give users access by adding their public keys to keydir
.