From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andy Wingo Subject: Re: [PATCH] gnu: service: Add git-service. Date: Tue, 30 Aug 2016 14:12:04 +0200 Message-ID: <87bn0a4fsb.fsf@igalia.com> References: <87poor4tgx.fsf@we.make.ritual.n0.is> <878tvf7jfd.fsf@igalia.com> <878tvfr6ec.fsf@we.make.ritual.n0.is> <87eg57tk6t.fsf@we.make.ritual.n0.is> <87eg5666y4.fsf@igalia.com> <874m62pjjx.fsf@we.make.ritual.n0.is> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:42651) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1behtm-0006Pq-0g for guix-devel@gnu.org; Tue, 30 Aug 2016 08:12:15 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1behth-00059G-Sf for guix-devel@gnu.org; Tue, 30 Aug 2016 08:12:13 -0400 Received: from pb-sasl2.pobox.com ([64.147.108.67]:53067 helo=sasl.smtp.pobox.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1behth-00058z-OD for guix-devel@gnu.org; Tue, 30 Aug 2016 08:12:09 -0400 In-Reply-To: <874m62pjjx.fsf@we.make.ritual.n0.is> (ng0@we.make.ritual.n0.is's message of "Tue, 30 Aug 2016 11:45:06 +0000") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: ng0 Cc: guix-devel@gnu.org On Tue 30 Aug 2016 13:45, ng0 writes: >>I also think that "path" might >> not be the right word, which in GNU manuals is only used for search >> paths. See the "GNU Manuals" section of standards.texi for more. >> Anyway I suggest #:base-directory. Make sure the port is an integer and >> not a string. > > See 'man git daemon'. I ran this and it did not work -- first showed me a page for git then for daemon. I believe you want "man git-daemon"? > The switch is called --base-path. Looking at the openrc conf.d/git or > what the config file was called again, they stick to this name too. > It would just cause confusion if we go ahead and call it differently. > Upstream should be fixed, but I'm not going there. If you think we > should break expectations, I can rename it. "Fixing" upstream is out of our remit :) All I can ask is that we do not introduce new uses of the word "path". >>> +Return a service to run the @uref{https://git-scm.com, git} daemon version control >>> +daemon. >> >> Extra "daemon" here. Probably needs a sentence on what running the >> daemon will do (namely, expose local repositories for remote access). >> >> What about authentication? Is this purely anonymous? > > Exactly, authentication is handled via other daemons, for example ssh or > gitolite. git daemon supports no authentication and is read-only, as far > as I know. At the servers I use and setup, I pull via > git://,http://,https:// and push via ssh. > Its selfdescription is: > git-daemon - A really simple server for Git repositories. This needs to be documented in the manual, is what I was getting at :) Mention that this is for anonymous read-only access please. >>Use "file name" instead of path in general. > > Why? It is because it is standard in the GNU project. I mentioned this before. See "info standards" and go to "GNU manuals". >>> +Furthermore it takes the parameter @var{port} which defaults to 9418. >>> +Run @command{man git daemon} for information about the options. >> >> This man command does not work. > > Works for me. As far as I know man pages were merged into git package > recently. When I run this on debian with guix, 'man git daemon' works > too. It does not work for me on NixOS with Guix. Maybe I am out of date though. >>> +(define %git-accounts >>> + ;; User account and groups for git-daemon. >>> + ;; We can give it git-shell for now, otherwise we can switch to /bin/sh. >> >> What does this comment mean? Why would we switch? > > I am not sure about the limitations of git-shell compared to > /bin/sh. If this turns out to be a mistake, it can be corrected. The > only thing I know about git-shell is that it allows no logins. If you do not want a login then probably what you want is #~(string-append #$shadow "/sbin/nologin"). Andy