Author: thomas
Date: Tue Jan  5 07:59:46 2021
New Revision: 24071

Log:
Update gitserver page, add bootscript (sysv/systemd)

Added:
   trunk/bootscripts/blfs/init.d/git-daemon
   trunk/systemd-units/blfs/default/git-daemon
   trunk/systemd-units/blfs/units/git-daemon.service
Modified:
   trunk/BOOK/general.ent
   trunk/BOOK/general/prog/gitserver.xml
   trunk/BOOK/introduction/welcome/changelog.xml
   trunk/BOOK/postlfs/config/users.xml
   trunk/bootscripts/Makefile
   trunk/systemd-units/Makefile

Modified: trunk/BOOK/general.ent
==============================================================================
--- trunk/BOOK/general.ent      Mon Jan  4 20:28:23 2021        (r24070)
+++ trunk/BOOK/general.ent      Tue Jan  5 07:59:46 2021        (r24071)
@@ -1,12 +1,12 @@
 <!-- $LastChangedBy$ $Date$ -->
 
-<!ENTITY day          "04">                   <!-- Always 2 digits -->
+<!ENTITY day          "05">                   <!-- Always 2 digits -->
 <!ENTITY month        "01">                   <!-- Always 2 digits -->
 <!ENTITY year         "2021">
 <!ENTITY copyrightdate "2001-&year;">
 <!ENTITY copyholder   "The BLFS Development Team">
 <!ENTITY version      "&year;-&month;-&day;">
-<!ENTITY releasedate  "January 4th, &year;">
+<!ENTITY releasedate  "January 5th, &year;">
 <!ENTITY pubdate      "&year;-&month;-&day;"> <!-- metadata req. by TLDP -->
 <!ENTITY blfs-version "svn">                  <!-- svn|[release #] -->
 <!ENTITY lfs-version  "development">          <!-- x.y|development -->

Modified: trunk/BOOK/general/prog/gitserver.xml
==============================================================================
--- trunk/BOOK/general/prog/gitserver.xml       Mon Jan  4 20:28:23 2021        
(r24070)
+++ trunk/BOOK/general/prog/gitserver.xml       Tue Jan  5 07:59:46 2021        
(r24071)
@@ -193,7 +193,7 @@
         access.
       </para>
       <para>
-        The compination of access via ssh (for authenticated users) and
+        The combination of access via ssh (for authenticated users) and
         the export of repositories to unauthenticated users via the
         daemon is in most cases enough for a development site.
       </para>
@@ -206,115 +206,34 @@
         </para>
       </note>
 
-      <para>
-        As user <systemitem class='username'>root</systemitem> do:
+    </sect3>
+    
+    <sect3 id="gitserver-init">
+      <title>4. Starting the Server</title>
+
+      <para revision="sysv">
+        To start the server at boot time, install the git-daemon
+        bootscript included in the <xref linkend="bootscripts"/> package:
       </para>
 
-<screen role="root" revision="sysv"><userinput>cat &gt; 
/etc/rc.d/init.d/git-daemon &lt;&lt;"EOF"
-#!/bin/sh
-########################################################################
-# Begin /etc/rc.d/init.d/git-daemon
-#
-# Description : Start/Stop git as a daemon
-#
-# Authors     :
-#
-# Version     : LFS x.x
-#
-# Notes       :
-#
-########################################################################
-
-### BEGIN INIT INFO
-# Provides:            git-daemon
-# Required-Start:      network
-# Should-Start:
-# Required-Stop:
-# Should-Stop:
-# Default-Start:
-# Default-Stop:
-# Short-Description:   git as daemon
-# Description:
-# X-LFS-Provided-By:
-### END INIT INFO
-
-. /lib/lsb/init-functions
-
-GIT_BIN="/usr/bin/git"
-DFT_REPO_DIR="/srv/git/"
-PID_FILE="/run/git-daemon.pid"
-
-case "${1}" in
-   start)
-      log_info_msg "Starting git-daemon ..."
-      $GIT_BIN daemon \
-               --detach --pid-file=$PID_FILE \
-               --user=git --group=git \
-               --reuseaddr --base-path=$DFT_REPO_DIR $DFT_REPO_DIR
-      evaluate_retval
-      ;;
-
-   stop)
-      log_info_msg "Stopping git-daemon ..."
-      killproc -p $PID_FILE $GIT_BIN
-      evaluate_retval
-      ;;
-
-   restart)
-      ${0} stop
-      sleep 1
-      ${0} start
-      ;;
-
-   *)
-      echo "Usage: ${0} {start|stop|restart}"
-      exit 1
-      ;;
-esac
-
-exit 0
-
-# End /etc/rc.d/init.d/git-daemon
-EOF
-chmod 755 /etc/rc.d/init.d/git-daemon
-ln -v -sf ../init.d/git-daemon /etc/rc.d/rc0.d/K29git-daemon
-ln -v -sf ../init.d/git-daemon /etc/rc.d/rc1.d/K29git-daemon
-ln -v -sf ../init.d/git-daemon /etc/rc.d/rc2.d/K29git-daemon
-ln -v -sf ../init.d/git-daemon /etc/rc.d/rc3.d/S50git-daemon
-ln -v -sf ../init.d/git-daemon /etc/rc.d/rc4.d/S50git-daemon
-ln -v -sf ../init.d/git-daemon /etc/rc.d/rc5.d/S50git-daemon
-ln -v -sf ../init.d/git-daemon 
/etc/rc.d/rc6.d/K29git-daemon</userinput></screen>
-
-<screen role="root" revision="systemd"><userinput>cat &gt; 
/etc/systemd/system/git-daemon.service &lt;&lt;EOF
-[Unit]
-Description=Start Git Daemon
-
-[Service]
-ExecStart=/usr/bin/git daemon --reuseaddr --base-path=/srv/git/ /srv/git/
-
-Restart=always
-RestartSec=500ms
-
-StandardOutput=syslog
-StandardError=syslog
-SyslogIdentifier=git-daemon
-
-User=git
-Group=git
-
-[Install]
-WantedBy=multi-user.target
-EOF</userinput></screen>
       <para revision="systemd">
-        Enable and start the daemon be executing
+        To start the server at boot time, install the
+        <filename>git-daemon.service</filename> unit from the 
+        <xref linkend="systemd-units"/> package:
       </para>
-<screen role="root" revision="systemd"><userinput>systemctl enable git-daemon 
&amp;&amp;
-systemctl start git-daemon</userinput></screen>
-      <para revision="sysv">
-        Start the daemon be executing
-      </para>
-<screen role="root" revision="sysv"><userinput>/etc/rc.d/init.d/git-daemon 
start</userinput></screen>
-      
+
+      <indexterm zone="gitserver gitserver-init" revision="sysv">
+        <primary sortas="f-git">git</primary>
+      </indexterm>
+
+<screen role="root" revision="sysv"><userinput>make 
install-git-daemon</userinput></screen>
+
+      <indexterm zone="gitserver gitserver-init" revision="systemd">
+        <primary sortas="f-gitserve">gitserve</primary>
+      </indexterm>
+
+<screen role="root" revision="systemd"><userinput>make 
install-git-daemon</userinput></screen>
+
       <para>
         In order to make <application>git</application> exporting a
         repository, a file named <filename>git-daemon-export-ok</filename>
@@ -325,6 +244,13 @@
 
 <screen role="root"><userinput>touch 
/srv/git/project1.git/git-daemon-export-ok</userinput></screen>
 
+      <para>
+        Also review the configuration file 
+        <filename revision="sysv">/etc/sysconfig/git-daemon</filename>
+        <filename revision="systemd">/etc/default/git-daemon</filename>
+        for valid repository paths.
+      </para>
+      
     </sect3>
 
   </sect2>

Modified: trunk/BOOK/introduction/welcome/changelog.xml
==============================================================================
--- trunk/BOOK/introduction/welcome/changelog.xml       Mon Jan  4 20:28:23 
2021        (r24070)
+++ trunk/BOOK/introduction/welcome/changelog.xml       Tue Jan  5 07:59:46 
2021        (r24071)
@@ -42,6 +42,15 @@
     </listitem>
     -->
     <listitem>
+      <para>January 5th, 2021</para>
+      <itemizedlist>
+        <listitem>
+          <para>[thomas] - Add "Running a git Server" page.</para>
+        </listitem>
+      </itemizedlist>
+    </listitem>
+
+    <listitem>
       <para>January 4th, 2021</para>
       <itemizedlist>
         <listitem>

Modified: trunk/BOOK/postlfs/config/users.xml
==============================================================================
--- trunk/BOOK/postlfs/config/users.xml Mon Jan  4 20:28:23 2021        (r24070)
+++ trunk/BOOK/postlfs/config/users.xml Tue Jan  5 07:59:46 2021        (r24071)
@@ -114,6 +114,7 @@
         <row><entry>dhcpcd  </entry><entry>52</entry><entry>52</entry></row>
         <row><entry>svn     </entry><entry>56</entry><entry>56</entry></row>
         <row><entry>svntest </entry><entry>  </entry><entry>57</entry></row>
+        <row><entry>git     </entry><entry>58</entry><entry>58</entry></row>
         <!-- <row><entry>pulse   
</entry><entry>58</entry><entry>58</entry></row>
         <row><entry>pulse-access</entry><entry></entry><entry>59</entry></row>
 -->

Modified: trunk/bootscripts/Makefile
==============================================================================
--- trunk/bootscripts/Makefile  Mon Jan  4 20:28:23 2021        (r24070)
+++ trunk/bootscripts/Makefile  Tue Jan  5 07:59:46 2021        (r24071)
@@ -522,6 +522,16 @@
        ln -sf ../init.d/svn ${EXTDIR}/rc.d/rc5.d/S33svn
        ln -sf ../init.d/svn ${EXTDIR}/rc.d/rc6.d/K27svn
 
+install-git-daemon: create-dirs
+       install -m ${MODE} blfs/init.d/git-daemon ${EXTDIR}/rc.d/init.d/
+       ln -sf ../init.d/git-daemon ${EXTDIR}/rc.d/rc0.d/K27git-daemon
+       ln -sf ../init.d/git-daemon ${EXTDIR}/rc.d/rc1.d/K27git-daemon
+       ln -sf ../init.d/git-daemon ${EXTDIR}/rc.d/rc2.d/K27git-daemon
+       ln -sf ../init.d/git-daemon ${EXTDIR}/rc.d/rc3.d/S33git-daemon
+       ln -sf ../init.d/git-daemon ${EXTDIR}/rc.d/rc4.d/S33git-daemon
+       ln -sf ../init.d/git-daemon ${EXTDIR}/rc.d/rc5.d/S33git-daemon
+       ln -sf ../init.d/git-daemon ${EXTDIR}/rc.d/rc6.d/K27git-daemon
+
 install-sysstat: create-dirs
        install -m ${MODE} blfs/init.d/sysstat    ${EXTDIR}/rc.d/init.d/
        ln -sf ../init.d/sysstat ${EXTDIR}/rc.d/rcS.d/S85sysstat

Added: trunk/bootscripts/blfs/init.d/git-daemon
==============================================================================
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ trunk/bootscripts/blfs/init.d/git-daemon    Tue Jan  5 07:59:46 2021        
(r24071)
@@ -0,0 +1,71 @@
+#!/bin/sh
+########################################################################
+# Begin /etc/rc.d/init.d/git-daemon
+#
+# Description : Start/Stop git-daemon
+#
+# Authors     : Thomas Trepl - tho...@linuxfromscratch.org
+#
+# Version     : LFS x.x
+#
+# Notes       :
+#
+########################################################################
+
+### BEGIN INIT INFO
+# Provides:            git-daemon
+# Required-Start:      $network
+# Should-Start:
+# Required-Stop:       $network
+# Should-Stop:
+# Default-Start:       3 4 5
+# Default-Stop:        0 1 2 6
+# Short-Description:   Start git-daemon
+# Description:         Start git-daemon to publish repositories
+# X-LFS-Provided-By:
+### END INIT INFO
+
+. /lib/lsb/init-functions
+
+GIT_BIN="/usr/bin/git"
+GIT_DAEMON_OPTS=""
+DFT_REPO_DIR="/srv/git/"
+PID_FILE="/run/git-daemon.pid"
+if [ -f "/etc/sysconfig/git-daemon" ]; then
+   . /etc/sysconfig/git-daemon
+fi
+
+case "${1}" in
+   start)
+      log_info_msg "Starting git-daemon ... "
+      $GIT_BIN daemon \
+               --detach --pid-file=$PID_FILE \
+               --user=git --group=git \
+               --reuseaddr \
+               --base-path=$DFT_REPO_DIR \
+               $GIT_DAEMON_OPTS \
+               $DFT_REPO_DIR
+      evaluate_retval
+      ;;
+
+   stop)
+      log_info_msg "Stopping git-daemon ... "
+      killproc -p $PID_FILE $GIT_BIN
+      evaluate_retval
+      ;;
+
+   restart)
+      ${0} stop
+      sleep 1
+      ${0} start
+      ;;
+
+   *)
+      echo "Usage: ${0} {start|stop|restart}"
+      exit 1
+      ;;
+esac
+
+exit 0
+
+# End /etc/rc.d/init.d/git-daemon

Modified: trunk/systemd-units/Makefile
==============================================================================
--- trunk/systemd-units/Makefile        Mon Jan  4 20:28:23 2021        (r24070)
+++ trunk/systemd-units/Makefile        Tue Jan  5 07:59:46 2021        (r24071)
@@ -197,6 +197,11 @@
        systemd-tmpfiles --create svnserve.conf
        test -n "${DESTDIR}" || systemctl enable svnserve.service
 
+install-git-daemon: create-dirs
+       install -m ${CONFMODE} blfs/default/git-daemon ${DEFAULTSDIR}/
+       install -m ${CONFMODE} blfs/units/git-daemon.service ${UNITSDIR}/
+       test -n "${DESTDIR}" || systemctl enable git-daemon.service
+
 install-unbound: create-dirs
        install -m ${CONFMODE} blfs/units/unbound.service ${UNITSDIR}/
        test -n "${DESTDIR}" || systemctl enable unbound.service

Added: trunk/systemd-units/blfs/default/git-daemon
==============================================================================
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ trunk/systemd-units/blfs/default/git-daemon Tue Jan  5 07:59:46 2021        
(r24071)
@@ -0,0 +1,12 @@
+# Begin /etc/default/git-daemon
+
+# Repository base dir
+GIT_BASE_DIR="/srv/git/"
+
+# Default repository dir
+DFT_REPO_DIR="$GIT_BASE_DIR"
+
+# Options to pass to git-daemon
+GIT_DAEMON_OPTS=""
+
+# End /etc/default/git-daemon

Added: trunk/systemd-units/blfs/units/git-daemon.service
==============================================================================
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ trunk/systemd-units/blfs/units/git-daemon.service   Tue Jan  5 07:59:46 
2021        (r24071)
@@ -0,0 +1,18 @@
+[Unit]
+Description=Start Git Daemon
+
+[Service]
+ExecStart=/usr/bin/git daemon --reuseaddr --base-path=$GIT_BASE_DIR 
$GIT_DAEMON_OPTS $DFT_REPO_DIR
+
+Restart=always
+RestartSec=500ms
+
+StandardOutput=syslog
+StandardError=syslog
+SyslogIdentifier=git-daemon
+
+User=git
+Group=git
+
+[Install]
+WantedBy=multi-user.target
-- 
http://lists.linuxfromscratch.org/listinfo/blfs-book
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to