From 0fa75ea8e374b39ac80d3a5e4bed51bb392ba752 Mon Sep 17 00:00:00 2001 From: Ahmed Abdelhalim Date: Sun, 26 Jul 2026 04:20:09 +0200 Subject: Give git user its own home, separate from /srv/git MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit authorized_keys lived under /srv/git (git's $HOME), the same tree restic backs up and restores. backup couldn't even read it (0700, unreadable by the backup user), and restore --delete treated it as extraneous and deleted it, breaking push access after every restore. git now gets a normal separate home; clone-prefix in cgitrc serves the repos dir by absolute path instead of the ~-relative form, since that relied on $HOME being the repos dir. Drops the sshd_config.d Include/ Match-block/AllowUsers approach tried first — it directly conflicted with pve-lxc-ssh's sshd_config push, which fully overwrites the file on every run and has no way to know about cgit's edits. Co-Authored-By: Claude.ai --- roles/cgit/templates/cgitrc.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'roles/cgit/templates') diff --git a/roles/cgit/templates/cgitrc.j2 b/roles/cgit/templates/cgitrc.j2 index 17e95138..299ad66c 100644 --- a/roles/cgit/templates/cgitrc.j2 +++ b/roles/cgit/templates/cgitrc.j2 @@ -8,7 +8,7 @@ repo.group=personal root-title={{ cgit_title }} root-desc={{ cgit_description }} -clone-prefix={{ cgit_clone_prefix }} +clone-prefix=ssh://{{ cgit_ssh_user }}@{{ cgit_hostname }}:{{ pve_lxc_ssh_port }}{{ cgit_repos_dir }} enable-index-links=1 enable-index-owner=0 -- cgit v1.2.3