[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Savannah-cvs] administration/docs/hacking_savannah hacking_sa...
From: |
Sylvain Beucler |
Subject: |
[Savannah-cvs] administration/docs/hacking_savannah hacking_sa... |
Date: |
Sun, 22 Aug 2004 06:22:37 -0400 |
CVSROOT: /cvsroot/administration
Module name: administration
Branch:
Changes by: Sylvain Beucler <address@hidden> 04/08/22 10:02:36
Modified files:
docs/hacking_savannah: hacking_savannah.texi
Log message:
Clean-up the test install chapter (mostly Texinfo formatting for now)
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/administration/administration/docs/hacking_savannah/hacking_savannah.texi.diff?tr1=1.31&tr2=1.32&r1=text&r2=text
Patches:
Index: administration/docs/hacking_savannah/hacking_savannah.texi
diff -u administration/docs/hacking_savannah/hacking_savannah.texi:1.31
administration/docs/hacking_savannah/hacking_savannah.texi:1.32
--- administration/docs/hacking_savannah/hacking_savannah.texi:1.31 Mon Aug
16 21:20:52 2004
+++ administration/docs/hacking_savannah/hacking_savannah.texi Sun Aug 22
10:02:35 2004
@@ -1,5 +1,5 @@
\input texinfo @c -*-texinfo-*-
address@hidden $Id: hacking_savannah.texi,v 1.31 2004/08/16 21:20:52 Beuc Exp $
address@hidden $Id: hacking_savannah.texi,v 1.32 2004/08/22 10:02:35 Beuc Exp $
@comment %**start of header
@setfilename hacking_savannah.info
@include version.texi
@@ -9,7 +9,7 @@
@copying
This manual (version @value{VERSION}, edition @value{EDITION},
@value{UPDATED}) is about Savannah.gnu.org, a place where GNU lives.
-
address@hidden by lexical order so as to avoid wars
@indent Copyright @copyright{} 2004 Sylvain address@hidden
@indent Copyright @copyright{} 2004 Michael address@hidden
@indent Copyright @copyright{} 2004 Rudy address@hidden
@@ -39,11 +39,10 @@
@titlepage
@title Hacking Savannah.gnu.org
@subtitle for version @value{VERSION}, @value{UPDATED}
address@hidden The Savannah Hackers (@email{savannah-hackers@@gnu.org}):
address@hidden by lexical order so as to avoid wars
address@hidden @bullet{} The Savannah Hackers
(@email{savannah-hackers@@gnu.org})
address@hidden & The Gna! Staff (@email{project@@gna.org}):
@author Sylvain Beucler (@email{beuc@@gnu.org})
@author Michael Flickinger (@email{mjflick@@gnu.org})
address@hidden Rudy Gevaert (@email{rudy@@gnu.org})
@author Elfyn McBratney (@email{beu@@gnu.org})
@author Mathieu Roy (@email{yeupou@@gnu.org})
@page
@@ -64,13 +63,14 @@
* Introduction:: About this manual.
* Communication:: Getting in sync with the Savannah Team.
* Savannah configuration:: Savannah configuration in-depth description.
-* MySQL:: Basic tips on using MySQL.
+* Using MySQL::
* Mailman Administration:: Mailman command line tips.
* Some Savannah tasks:: Frequent administration tasks.
* Frequent support requests:: How to answer common support requests.
* Some quirks:: To clear up sooner or later.
* Projects approval:: Savannah policies and HOWTO.
* Terminology:: Precise wording.
+* Acknowledgements::
* Copying This Manual:: The GNU Free Documentation License.
* Indices:: A menu covering many topics.
@end menu
@@ -207,19 +207,17 @@
This sends a message to Paul Fisher (@email{rao@@gnu.org}) and James
E. Blair (@email{corvus@@gnu.org}), who are employees of the FSF
-working as Sysadmins. It is managed via RT (Request Tracker).
+working as system administrators. It is managed via RT (Request
+Tracker).
Sysadmins are well known for not being consistent in e-mail exchanges,
-hence the following policy:
+hence the following suggestion from RMS:
@quotation
When you report a problem to the sysadmins, give them two days to
respond to you. If they don't answer escalate to bkuhn@@gnu.org. If
he doesn't respond (and makes sure they respond) escalate to RMS.
-
-RMS told me to take it this way. I suggest you do it too.
@end quotation
-says Rudy.
Also, they often reply directly to you, ignoring any people in Cc:. If
it is the case, do not forget to forward their reply to
@@ -242,7 +240,7 @@
all important, policy-related and administrative decisions are made.
address@hidden Savannah configuration, MySQL, Communication, Top
address@hidden Savannah configuration, Using MySQL, Communication, Top
@chapter Savannah configuration
This chapter will present how Savannah is set up. Informations on how
@@ -250,178 +248,249 @@
It is still incomplete.
address@hidden
-* Some technical information::
-* Here is how I made [am making] a Savannah test install on my faithful
PI-133::
-* Old documentation::
address@hidden menu
-
address@hidden Some technical information, Here is how I made [am making] a
Savannah test install on my faithful PI-133, Savannah configuration, Savannah
configuration
address@hidden Some technical information
-
-CVS repositories are located at /savannah/cvsroot.
-
-Apache's DocumentRoot is /savannah/frontend/php
-
-E-mails sent from Savannah are sent using exim.
-Log is /var/log/exim/main/log
-
-
address@hidden Here is how I made [am making] a Savannah test install on my
faithful PI-133, Old documentation, Some technical information, Savannah
configuration
address@hidden Here is how I made [am making] a Savannah test install on my
faithful PI-133
+Basically, it describes how I made [am making] a Savannah test install
+on my faithful PI-133
The PI-133 reference, besides doing homage to my computer from fall
1996, shows that you can use any old machine to make your test
installation.
-This section provides as much information as possible on the way
+This chapter provides as much information as possible on the way
Savannah currently is. It does not document the way it @emph{should
be}, so feel free to make suggestions.
+
@menu
+* Some misc technical information::
+* Old documentation::
* System base::
+* WWW root directory::
+* Apache::
+* MySQL::
+* Savane::
+* Remaining::
@end menu
address@hidden System base, , Here is how I made [am making] a Savannah test
install on my faithful PI-133, Here is how I made [am making] a Savannah test
install on my faithful PI-133
address@hidden System base
address@hidden
-- Install Debian woody v3.0r1 (CD1 + security updates)
address@hidden Some misc technical information, Old documentation, Savannah
configuration, Savannah configuration
address@hidden Some misc technical information
-- Add to /etc/apt/sources.list a debian mirrror:
-deb cdrom:[Debian GNU/Linux 3.0 r1 _Woody_ - Official i386 Binary-1
(20021218)]/ unstable contrib main non-US/contrib non-US/main
-deb http://security.debian.org/ stable/updates main
-deb http://ftp.fr.debian.org/debian woody main
+CVS repositories are located at @file{/savannah/cvsroot}.
-- Update your system:
-$ apt-get update
-$ apt-get upgrade
+Apache's DocumentRoot is @file{/savannah/frontend/php}.
-- Install some additional basic software packages:
-$ apt-get install wget
-$ apt-get install rsync
- ...
-
-MySQL:
-~~~~~~
-
-- Install MySQL
-$ apt-get install mysql-server
-
-- Add a root password:
-/usr/bin/mysqladmin -u root password 'yourpass'
+E-mails sent from Savannah are sent using @command{exim}.
+Log is @file{/var/log/exim/main/log}.
-- Add an account for savannah:
-shell> mysql -u root -p mysql
-mysql> add user values localhost, savannahscripts, PASSWORD('yourpass');
-mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON savannah.* TO
'savannahscripts'@'localhost'
-- Change /etc/mysql/my.conf:
s(/var/run/mysqld/mysqld.sock)(/savannah/mysqld/mysqld.sock)
address@hidden Old documentation, System base, Some misc technical information,
Savannah configuration
address@hidden Old documentation
-- mkdir -m 755 /savannah/mysqld
-$ chown mysql /savannah/mysqld
+I came across some documentation of a 2 years-old Savannah setup, which may
+actually come in handy sometimes, and should be merged here:
-- in /etc/php4/apache/php.ini: check
-; Default socket name for local MySQL connects. If empty, uses the built-in
-; MySQL defaults.
-mysql.default_socket =
address@hidden://www.gnu.org/server/standards/README.savannah.html}
-and replace it with
-mysql.default_socket = /mysqld/mysqld.sock
address@hidden System base, WWW root directory, Old documentation, Savannah
configuration
address@hidden System base
-Savannah/Savane:
-~~~~~~~~~~~~~~~~
+The current Savannah machine runs under Debian stable. Well, mostly;
+we use some non-stable pieces of software, such as Mailman, the Linux
+kernel, and of course, Savane.
+
+First, install Debian woody v3.0r1 CD1, as well as the security updates.
+Make sure your /etc/apt/sources.list contains a debian mirrror:
address@hidden
+deb cdrom:[Debian GNU/Linux 3.0 r1 _Woody_ - Official i386 Binary-1
(20021218)]/ unstable contrib main non-US/contrib non-US/main
+deb http://security.debian.org/ stable/updates main
+deb http://ftp.fr.debian.org/debian woody main
address@hidden smallexample
-- Get Savane, using branch DEV_2003-09-05_CERN
-cvs -d:pserver:address@hidden:/cvs/savane co -r DEV_2003-09-05_CERN savane
+Then update your system:
address@hidden
+$ apt-get update
+$ apt-get upgrade
address@hidden smallexample
-- ./configure
-Say no to interactive configuration
+and install some additional basic software packages:
address@hidden
+$ apt-get install wget
+$ apt-get install rsync
address@hidden
address@hidden smallexample
-- make
-- make database
address@hidden WWW root directory, Apache, System base, Savannah configuration
address@hidden WWW root directory
-- make conf
+All services related to the WWW will be run into a different root
+directory (@pxref{chroot invocation, , , , coreutils}).
-- copy Savannah's configuration file
-# TODO: explain how to reproduce this configuration file instead
-# Well, at least explain it
+Let's create the new root:
address@hidden
+$ cd /savannah
+$ mkdir dev && mknod dev/null c 1 3 && chmod 666 dev/null
address@hidden smallexample
-- make update-conf
+and configure the network:
address@hidden
+$ mkdir etc
+$ cp /etc/resolv.conf etc
+$ cp /etc/services etc # ?
address@hidden smallexample
-- /usr/local/savannah/bin/sv_skill
+[TODO: this network configuration seems not to work, fix it]
-Apache:
-~~~~~~~
address@hidden Apache, MySQL, WWW root directory, Savannah configuration
address@hidden Apache
-- Install some Apache1 modules:
+ Install some Apache 1 and PHP modules:
address@hidden
$ apt-get install mod_ssl # (not apache-ssl)
$ apt-get install apache-dev # (apxs)
-
-- ... and php modules
$ apt-get install php4-mysql
address@hidden smallexample
-- Install mod_security:
+Also install mod_security:
address@hidden
$ wget http://www.modsecurity.org/download/mod_security-1.7.6.tar.gz
$ tar xzf mod_security-1.7.6.tar.gz
$ cd mod_security-1.7.6/apache1
$ apxs -cia mod_security.c
-# TODO: add how to get it from debian unstable
-# (libapache-mod-security)
address@hidden smallexample
-- Setup the new root:
-$ cd /savannah
-$ mkdir dev && mknod dev/null c 1 3 && chmod 666 dev/null
-$ cp -a /usr/src/savannah/frontend .
-$ ln -s frontend/php www
-- Configure the network:
-$ mkdir etc
-$ cp /etc/resolv.conf etc
-$ cp /etc/services etc # ?
+[TODO: add how to get it from debian unstable (libapache-mod-security)]
-- Generate SSL keys (cheap solution):
+Generate SSL keys (cheap solution):
address@hidden
$ cd /etc/apache/ssl.crt
$ ln -s snakeoil-dsa.crt savannah_gnu.crt
$ ln -s snakeoil-dsa.crt savannah_nongnu.crt
$ cd /etc/apache/ssl.key
$ ln -s snakeoil-dsa.key savannah_nongnu.key
$ ln -s snakeoil-dsa.key savannah_gnu.key
-# TODO: add here how to create custom SSL keys
address@hidden smallexample
-- Grab /etc/apache/httpd.conf from savannah.gnu.org
-# TODO: explain how to reproduce this configuration file instead
-# Well, at least explain it
address@hidden verbatim
+[TODO: add here how to create custom SSL keys]
address@hidden Savane's configuration
+Last, grab @file{/etc/apache/httpd.conf} from savannah.gnu.org.
address@hidden
+[TODO: explain how to reproduce this configuration file instead. Well,
+at least explain it]
+
+
address@hidden MySQL, Savane, Apache, Savannah configuration
address@hidden MySQL
+
+MySQL is the @acronym{RDBMS} (@dfn{Relational DataBase Management
+System}) used by Savane.
+
+Install MySQL:
address@hidden
+$ apt-get install mysql-server
address@hidden smallexample
+
+Add a root password:
address@hidden
+/usr/bin/mysqladmin -u root password 'rootpass'
address@hidden smallexample
+
+Add an account for Savane:
address@hidden
+$ mysql -u root -p mysql
+Enter password: <type your root password>
+mysql> add user values localhost, savannahscripts, PASSWORD('scriptspass');
+mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON savannah.* TO
'savannahscripts'@@'localhost'
address@hidden smallexample
+
+MySQL must then be configured so as to run in the Savane root
+directory. In @file{my.cnf} replace @code{/var/run/mysqld/mysqld.sock}
+by @code{/savannah/mysqld/mysqld.sock}.
+
+And in @file{/etc/php4/apache/php.ini}, set:
address@hidden
+mysql.default_socket = /mysqld/mysqld.sock
address@hidden smallexample
+
+While you are in @file{php.ini}, check
+that MySQL persistent connections are activated, via
address@hidden
+mysql.allow_persistent = On
address@hidden smallexample
+
+Last, create the MySQL directory in Savane's root directory:
address@hidden
+$ mkdir -m 755 /savannah/mysqld
+$ chown mysql /savannah/mysqld
address@hidden smallexample
+
+
address@hidden Savane, Remaining, MySQL, Savannah configuration
address@hidden Savane
+Get Savane and install it without configuration:
address@hidden
+$ cd /usr/src
+$ cvs -d:pserver:anonymous@@cvs.gna.org:/cvs/savane co savane
+$ ./configure # say no to interactive configuration
+$ make
+$ make database
+$ make conf
address@hidden smallexample
+
+Then copy Savannah's configuration file.
+
+[TODO: explain how to reproduce this configuration file instead. Well,
+at least explain it]
+
+You then can propagate the changes:
address@hidden
+$ make update-conf
address@hidden smallexample
+
+Also update the skills list:
address@hidden
+$ /usr/local/savannah/bin/sv_skill
address@hidden smallexample
+
+You then can install the frontend in the WWW root directory:
address@hidden
+$ cd /savannah
+$ mv /usr/src/savannah/frontend .
+$ ln -s frontend/php www
address@hidden smallexample
+
+Now is the time to install Savane's Savannah.[non]gnu.org
+configuration:
+
address@hidden
$ cd /savannah
$ mkdir -m 755 etc
$ cd etc
-$ cvs -d:ext:address@hidden:/cvsroot/administration co -d subversions
administration/subversions
+$ cvs -d:ext:anoncvs@@savannah.gnu.org:/cvsroot/administration co -d
subversions administration/subversions
$ ln -s subversions/gnu-content
$ ln -s subversions/nongnu-content
address@hidden smallexample
Copy directories @file{savannah} and @file{nongnu-conf} - contain
sensitive information such as MySQL passwords.
address@hidden
$ ln -s savannah gnu-conf
-
-
$ chmod 600 savannah.conf.pl
$ chmod 644 savannah.conf.php
address@hidden verbatim
address@hidden smallexample
+
At this point, you should be able to see Savane's default homepage
when pointing your browser at your test machine.
-Remaining:
address@hidden Remaining, , Savane, Savannah configuration
address@hidden Remaining
+
@itemize
@item
ViewCVS
@@ -439,18 +508,8 @@
address@hidden Old documentation, , Here is how I made [am making] a Savannah
test install on my faithful PI-133, Savannah configuration
address@hidden Old documentation
-
-I came across some documentation of a 2 years-old Savannah setup, which may
-actually come in handy sometimes:
-
address@hidden://www.gnu.org/server/standards/README.savannah.html}
-
-
-
address@hidden MySQL, Mailman Administration, Savannah configuration, Top
address@hidden MySQL
address@hidden Using MySQL, Mailman Administration, Savannah configuration, Top
address@hidden Using MySQL
This chapter is about MySQL: its configuration, and how to perform
simple tasks.
@@ -459,7 +518,7 @@
* User privileges::
@end menu
address@hidden User privileges, , MySQL, MySQL
address@hidden User privileges, , Using MySQL, Using MySQL
@section User privileges
There are three principal users in the Savannah MySQL database (the
@@ -509,7 +568,7 @@
address@hidden Mailman Administration, Some Savannah tasks, MySQL, Top
address@hidden Mailman Administration, Some Savannah tasks, Using MySQL, Top
@chapter Mailman Administration
This chapter details common Mailman administration tasks that need
@@ -1074,9 +1133,9 @@
@item /usr/local/lib/site_perl/ (updated using make install)
@end itemize
-subversions:
-Do not put /etc/savannah/* in the repository. Contain passwords...
-Not version controlled.
+Do not put /etc/savannah/* and /savannah/etc/ in the
+repository, as it contains passwords and other sensitive pieces of
+information... Not version controlled.
@verbatim
? php/tmp
@@ -1823,7 +1882,7 @@
address@hidden Terminology, Copying This Manual, Projects approval, Top
address@hidden Terminology, Acknowledgements, Projects approval, Top
@appendix Terminology
@itemize @bullet
@@ -1861,7 +1920,23 @@
@end itemize
address@hidden Copying This Manual, Indices, Terminology, Top
address@hidden Acknowledgements, Copying This Manual, Terminology, Top
address@hidden Acknowledgements
+
+Thanks to:
address@hidden @bullet
address@hidden Rudy Gevaert & Hugo Gayosso
+for insights and explanations when the new Savannah Hackers team
+needed it, while they lacked time to continue fulling working on
+Savannah
address@hidden Richard Stallman
+who helped defining various policies at Savannah
address@hidden Bradley Kuhn
+who initially defined the way to check and perform a manual user
+e-mail change
address@hidden table
+
address@hidden Copying This Manual, Indices, Acknowledgements, Top
@appendix Copying This Manual
@menu
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., (continued)
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/08/12
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/08/12
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/08/12
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/08/12
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/08/13
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/08/14
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/08/14
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/08/15
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/08/15
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/08/16
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa...,
Sylvain Beucler <=
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/08/22
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/08/22
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Elfyn McBratney, 2004/08/22
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/08/22
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/08/24