Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save padcom/1722447 to your computer and use it in GitHub Desktop.
Save padcom/1722447 to your computer and use it in GitHub Desktop.
gitorious installer for debian 6
#!/bin/bash
mkdir /home/gitorious/
mkdir /home/gitorious/install/
cd /home/gitorious/install
apt-get update
apt-get install vim build-essential zlib1g-dev libcurl4-openssl-dev apache2 mysql-server mysql-client apg geoip-bin libgeoip1 libgeoip-dev libpcre3 libpcre3-dev zlib1g zlib1g-dev libyaml-dev libmysqlclient-dev apache2-dev libonig-dev zip unzip memcached git-core git-svn git-doc git-cvs libreadline-dev openjdk-6-jre sqlite3 libsqlite3-dev libmagick++3 libmagick++-dev libapache2-mod-xsendfile libxslt-dev libxml2-dev
wget http://rubyenterpriseedition.googlecode.com/files/ruby-enterprise-1.8.7-2011.03.tar.gz
tar zxf ruby-enterprise-1.8.7-2011.03.tar.gz
ruby-enterprise-1.8.7-2011.03/installer
cd /opt && ln -s ruby-enterprise-1.8.7-2011.03/ ruby-enterprise
ln -s /opt/ruby-enterprise/bin/ruby /opt/ruby-enterprise/bin/rake /opt/ruby-enterprise/bin/gem /usr/local/bin
cd /home/gitorious/install
wget http://sphinxsearch.com/files/sphinx-0.9.9.tar.gz
tar zxf sphinx-0.9.9.tar.gz && cd sphinx-0.9.9
./configure --prefix=/usr/local/sphinx-0.9.9
make && make install
cd /usr/local && ln -s sphinx-0.9.9 sphinx
ln -s /usr/local/sphinx/bin/* /usr/local/bin
cd /home/gitorious/install
#wget http://www.reverse.net/pub/apache//activemq/apache-activemq/5.4.3/apache-activemq-5.4.3-bin.tar.gz
#tar zxf apache-activemq-5.4.3-bin.tar.gz
#mv apache-activemq-5.4.3 /usr/local
#cd /usr/local && ln -s apache-activemq-5.4.3 apache-activemq && cd apache-activemq
#bin/activemq setup /etc/default/activemq && chmod 600 /etc/default/activemq
#adduser --system --no-create-home --home /usr/local/apache-activemq --shell /bin/bash activemq
#chown -R activemq:nogroup /usr/local/apache-activemq-5.4.3
#vim /etc/default/activemq
#vim /usr/local/apache-activemq/conf/activemq.xml
git clone git://gitorious.org/gitorious/mainline.git /var/www/gitorious
cd /var/www/gitorious && /opt/ruby-enterprise/bin/bundle install
cd /var/www/gitorious/doc/templates/ubuntu && cp git-daemon git-poller stomp git-ultrasphinx /etc/init.d
vim /etc/init.d/git-daemon
vim /etc/init.d/git-ultrasphinx
vim /etc/init.d/git-poller
vim /etc/init.d/stomp
cd /var/www/gitorious/doc/templates/ubuntu && cp gitorious-logrotate /etc/logrotate.d/gitorious
chmod 755 /etc/init.d/git-ultrasphinx /etc/init.d/git-daemon /etc/init.d/git-poller /etc/init.d/activemq
insserv /etc/init.d/git-ultrasphinx /etc/init.d/git-daemon /etc/init.d/git-poller /etc/init.d/activemq
ln -s /var/www/gitorious/script/gitorious /usr/local/bin/
/opt/ruby-enterprise/bin/passenger-install-apache2-module
vim /etc/apache2/mods-available/passenger.load
#LoadModule passenger_module /opt/ruby-enterprise/lib/ruby/gems/1.8/gems/passenger-3.0.11/ext/apache2/mod_passenger.so
#PassengerRoot /opt/ruby-enterprise/lib/ruby/gems/1.8/gems/passenger-3.0.11
#PassengerRuby /opt/ruby-enterprise/bin/ruby1.8
a2enmod passenger rewrite ssl xsendfile
vim /etc/apache2/sites-available/gitorious
#<VirtualHost *:80>
# ServerName your.server.com
# DocumentRoot /var/www/gitorious/public
#</VirtualHost>
vim /etc/apache2/sites-available/gitorious-ssl
#<IfModule mod_ssl.c>
# <VirtualHost _default_:443>
# DocumentRoot /var/www/gitorious/public
# SSLEngine on
# SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
# SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
# BrowserMatch ".*MSIE.*" nokeepalive ssl-unclean-shutdown downgrade-1.0 force-response-1.0
# </VirtualHost>
#</IfModule>
a2dissite default default-ssl
a2ensite gitorious gitorious-ssl
/etc/init.d/apache2 restart
adduser --system --home /var/www/gitorious --no-create-home --group --shell /bin/bash git
chown -R git:git /var/www/gitorious
su - git -c "mkdir .ssh"
su - git -c "touch .ssh/authorized_keys"
su - git -c "chmod -R go-rwx .ssh"
su - git -c "mkdir tmp/pids repositories tarballs tarballs-work"
su - git -c "cp config/database.sample.yml config/database.yml"
su - git -c "cp config/gitorious.sample.yml config/gitorious.yml"
su - git -c "cp config/broker.yml.example config/broker.yml"
mysql -u root -p qwe123
mysql> GRANT ALL PRIVILEGES ON gitorious.* TO 'gitorious'@'localhost' IDENTIFIED BY 'qwe123' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;
su - git -c "vim config/database.yml"
su - git -c "vim config/gitorious.yml"
su - git -c "export RAILS_ENV=production && /opt/ruby-enterprise/bin/bundle exec rake db:create"
su - git -c "export RAILS_ENV=production && /opt/ruby-enterprise/bin/bundle exec rake db:migrate"
su - git -c "export RAILS_ENV=production && export PATH=/usr/local/sphinx/bin:$PATH && /opt/ruby-enterprise/bin/bundle exec rake ultrasphinx:bootstrap"
su - git -c "vim config/ultrasphinx/production.conf"
su - git -c "export RAILS_ENV=production && export PATH=/usr/local/sphinx/bin:$PATH && /opt/ruby-enterprise/bin/bundle exec rake ultrasphinx:index"
su - git -c "crontab -e"
/etc/init.d/git-daemon start
/etc/init.d/git-ultrasphinx start
/etc/init.d/activemq start
/etc/init.d/git-poller start
/etc/init.d/apache2 restart
su - git -c "env RAILS_ENV=production script/create_admin"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment