From 4853573ee727424b05ed0705f189e93ff619378d Mon Sep 17 00:00:00 2001 From: Petr Baudis Date: Thu, 5 Nov 2009 04:11:42 +0100 Subject: [PATCH] Generic Girocco Remove any direct repo.or.cz data from Girocco configuration, make it fully example configuration instead. repo.or.cz will get its own rorcz branch in the repository instead. --- Girocco/Config.pm | 39 +++++++++++++-------- gitweb/indextext.html | 49 +++++++++++++------------- html/about.html | 96 ++++++++++++--------------------------------------- 3 files changed, 72 insertions(+), 112 deletions(-) rewrite gitweb/indextext.html (65%) rewrite html/about.html (96%) diff --git a/Girocco/Config.pm b/Girocco/Config.pm index 344681f..0eac97e 100644 --- a/Girocco/Config.pm +++ b/Girocco/Config.pm @@ -7,16 +7,16 @@ use warnings; ## Basic settings # Name of the service -our $name = "repo.or.cz"; +our $name = "GiroccoEx"; # Title of the service (as shown in gitweb) -our $title = "Public Git Hosting"; +our $title = "Example Girocco Hosting"; # Path to the Git binary to use (you MUST set this, even if to /usr/bin/git!) our $git_bin = '/usr/bin/git'; # E-mail of the site admin -our $admin = 'pasky@suse.cz'; +our $admin = 'admin@example.org'; ## Feature knobs @@ -27,7 +27,8 @@ our $mirror = 1; # Enable push mode if true our $push = 1; -# Enable user management if true +# Enable user management if true; this means the interface for registering +# user accounts and uploading SSH keys. This implies full chroot. our $manage_users = 1; # Enable the special 'mob' user if set to 'mob' @@ -41,11 +42,14 @@ our $project_passwords = 1; # How to determine project owner; 'email' adds a form item asking for their # email contact, 'source' takes realname of owner of source repository if it -# is a local path (and empty string otherwise). +# is a local path (and empty string otherwise). 'source' is suitable in case +# the site operates only as mirror of purely local-filesystem repositories. our $project_owners = 'email'; # Which project fields to make editable, out of 'shortdesc', 'homepage', -# 'README': +# 'README', 'notifymail', 'notifyjson', 'notifycia'. (This is currently +# soft restriction - form fields aren't used, but manually injected values +# *are* used. Submit a patch if that's an issue for you.) our @project_fields = qw(homepage shortdesc README notifymail notifyjson notifycia); # Minimal number of seconds to pass between two updates of a project. @@ -57,15 +61,15 @@ our $min_gc_interval = 604800; # 1 week ## Paths -# Path to the Girocco files (checkout of this project) -# This will get COMPLETELY OVERWRITTEN by each make install! +# Path where the main chunk of Girocco files will be installed +# This will get COMPLETELY OVERWRITTEN by each make install!!! our $basedir = '/home/repo/repomgr'; # The repository collection our $reporoot = "/srv/git"; -# The chroot for ssh pushing; location for project database even in non-chroot -# setups +# The chroot for ssh pushing; location for project database and other run-time +# data even in non-chroot setups our $chroot = "/home/repo/j"; # The gitweb files web directory (corresponds to $gitwebfiles) @@ -96,6 +100,8 @@ our $htmlurl = "http://repo.or.cz/h"; our $httppullurl = "http://repo.or.cz/r"; # Git URL of the repository collection (undef if N/A) +# (You need to set up git-daemon on your system, and Girocco will not +# do this particular thing for you.) our $gitpullurl = "git://repo.or.cz"; # Pushy URL of the repository collection (undef if N/A) @@ -111,8 +117,8 @@ our $giroccourl = "$Girocco::Config::gitweburl/girocco.git"; # Legal warning (on reguser and regproj pages) our $legalese = <By submitting this form, you are confirming that you will mirror or push -only free software and redistributing it will not violate any law -of Czech Republic. +only what we can store and show to anyone else who can visit this site without +breaking any law, and that you will be nice to all small furry animals. (more details)

EOT @@ -167,12 +173,15 @@ our $mirror_sources = [ # the repository # - repo: a user designated for cronjobs; handles mirroring and repacking; # this one is optional if not $mirror -# - others: the designated users that are supposed to be able to push +# - others: the designated users that are supposed to be able to push; they +# may have account either within chroot, or outside of it # There are several ways how to use Girocco based on a combination of the # following settings. -# (Non-chroot) UNIX user the CGI scripts run on +# (Non-chroot) UNIX user the CGI scripts run on; note that if some non-related +# untrusted CGI scripts run on this account too, that can be a big security +# problem and you'll probably need to set up suexec (poor you). our $cgi_user = 'www-data'; # (Non-chroot) UNIX user performing mirroring jobs; this is the user who @@ -183,7 +192,7 @@ our $mirror_user = 'repo'; # (Non-chroot) UNIX group owning the repositories by default; it owns whole # mirror repositories and at least web-writable metadata of push repositories. # If you undefine this, all the data will become WORLD-WRITABLE. -# Both $cgi_user and $mirror_user should be members of this group. +# Both $cgi_user and $mirror_user should be members of this group! our $owning_group = 'repo'; # Whether to use chroot jail for pushing; this must be always the same diff --git a/gitweb/indextext.html b/gitweb/indextext.html dissimilarity index 65% index e7b7c8f..6951c77 100644 --- a/gitweb/indextext.html +++ b/gitweb/indextext.html @@ -1,24 +1,25 @@ -

repo.or.cz is a public Git hosting site. -Create a project in a snap, publish your development, give others push -access and let anyone have a look and contribute. -Alternatively, if you just see a random git:// URL fly by and -want to check it out, or you have limited bandwidth or want backup - just quickly -set up a mirror of any project published -elsewhere and we will provide pull and gitweb access for the project. -(read more, terms&conditions)

- -

This service is BETA. -The service is maintained by Petr Baudis -as a public service for the Git community, -please contact him with any requests, proposals or issues. -Or you may be also interested in -other Git hosting sites.

- -

Register project | Register user | Update user SSH keys

- -
-How to grab a project? Simply git clone git://repo.or.cz/project.git.
-Then, repeat git pull to update to the latest version of the project.
-See the The Git Homepage -for more details about Git and its usage. -
+

Congratulations! Welcome in your fresh Girocco instance. +Edit gitweb/indextext.html in the source tree and re-run make install to +modify this text. (Never modify anything in the final destination directories, +it will get overwritten!) You can tweak gitweb/gitweb_config.perl to define +whether to show project list on the front page, or e.g. to turn content tags off. +You may want to have a look at rorcz.git: +the repo.or.cz branch of Girocco, to look at how this hosting site is configured. +Enjoy setting up your Girocco! (read more, terms&conditions)

+ +

Have you told Petr Baudis +about your Girocco usage? Of course you don't have to, but then you may +find out that upgrading to newer Girocco version in the future is not as +smooth as you would like...

+ +

If your cgidir is not in site root, you will have to adjust the three +links below manually:

+ +

Register project | Register user | Update user SSH keys

+ +
+How to grab a project? Simply git clone git://repo.or.cz/project.git.
+Then, repeat git pull to update to the latest version of the project.
+See the The Git Homepage +for more details about Git and its usage. +
diff --git a/html/about.html b/html/about.html dissimilarity index 96% index e08160e..fbd2575 100644 --- a/html/about.html +++ b/html/about.html @@ -1,73 +1,23 @@ -@section=site guide -@heading=About the Site -@header - - - - -

repo.or.cz is a public Git hosting site. -You can create a project here and then publish your development by pushing -to it, or even enable push access for multiple developers. -Alternately, you can just set up a mirror of any project published elsewhere -and we will provide pull and gitweb access for the project.

- -

In the push mode, every developer that wants push access will need to -create an account and use SSH for pushing changes; -using the project administration password, you will be able to add/remove -permission for developers to push. Also, optional anonymous push access -to a dedicated mob branch is supported.

- -

In the mirror mode, we will check the remote repository at the URL you -give us every hour and if we spot any changes, we will grab them, mirror -them and show them in our gitweb interface. It's a matter of few clicks -to set up a mirror - don't be shy and feel free to create mirror for any -git project without a decent gitweb interface or with badly hosted -repository; you don't need to be the project maintainer to setup a mirror.

- - -

Terms and Conditions

- -

There are only two conditions:

- - - -

This site provides NO WARRANTY of any legal kind about whatever you store -here. Someone can crack your account or the site, alter the data, make mayhem -and whatever else; we cannot be held responsible for any damages that may be -caused to you in any way in connection with this site.

- - -

Backup policy

- -

Your repository is NOT backed up! Why? Because you have backups yourself, -and all your users do, too! The distributed nature of Git means that all the -developers and all the users who ever cloned the repository have the full -history of it, and shall any disaster happen to repo.or.cz, all can be -easily restored by a single simple push. That said, we may set up backups -in the future if the service becomes popular enough.

- - -

Operation

- -

repo.or.cz runs on a four-way Xeon 2GHz with 4G RAM and 256G disk array -that also serves as a PoP for the XS26 -IPv6 tunnel broker. -The server and connectivity is generously sponsored by -UPC Czech Republic.

- -

Petr Baudis runs the site. -Virtually all the infrastructure is available under the codename "Girocco" -in git repositories girocco.git -and git/gitweb.git -and is licenced under GPLv2. -repo.or.cz development is sponsored by SUSE / Novell Inc. and Novartis Pharma, AG.

+@section=site guide +@heading=About the Site +@header + + + + +

Hi There! This page should give more details about your Girocco +instance; here, you can substitute for configuration variables already: +e.g. @@webadmurl@@.

+ +

It would be nice if you left the following section at the bottom +of this file...

+ + +

About Girocco

+ +

Girocco is a free +and reasonably easy-to-install Git hosting suite supporting multiple +operation modes; it has only essential features and is very UNIXy, +thus is fairly simple to understand. Its prime site is repo.or.cz +which provides free Git hosting services. +(read more)

-- 2.11.4.GIT