Gitolite: Difference between revisions

From NixOS Wiki
imported>Jaculabilis
Created page with "'''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 gitol..."
 
imported>Variant9
m Specify user used to clone repos, as this is different from the standard `git` user.
 
(2 intermediate revisions by 2 users not shown)
Line 5: Line 5:
Obtain the SSH public key of the user you will use to configure gitolite, then add the following to your NixOS config:
Obtain the SSH public key of the user you will use to configure gitolite, then add the following to your NixOS config:


<syntaxhighlight lang="nix">
<syntaxhighlight lang=nix>
   services.gitolite = {
   services.gitolite = {
     enable = true;
     enable = true;
Line 13: Line 13:


When you rebuild, a new unit should start:
When you rebuild, a new unit should start:
<syntaxhighlight>
<syntaxhighlight lang=bash>
the following new units were started: gitolite-init.service
the following new units were started: gitolite-init.service
</syntaxhighlight>
</syntaxhighlight>


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

Latest revision as of 16:30, 24 November 2023

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.