Index by title

HOWTO: Dropbox, Apache and eXtplorer (on Fedora)

NOTE: Replace [user] with the username under which the Dropbox folder is located.
NOTE: Replace [FQDN] with either your IP address or the hostname (or FQDN) which you'll be using to access the interface.

NOTE: This HOWTO assumes that you will be running apache as the user 'apache' and that you have already set up your Dropbox account syncing to your /home/[user]/Dropbox folder

To get Dropbox running with apache and extplorer you need to get the following packages:
yum install php httpd
Make the VirtualHost director and get permissions / groups correct:
mkdir /var/www/dropbox
chown apache:apache /var/www/dropbox
usermod -aG [user] apache
usermod -aG apache [user]
Now create and populate an apache virtualhost config file:
vim /etc/httpd/conf.d/dropbox.conf

Populate it with the following text:
NameVirtualHost *:80
<VirtualHost *:80>
        DocumentRoot "/var/www/dropbox" 
        ServerName [FQDN]
                <Directory "/var/www/dropbox">
                        allow from all
                        Options +Indexes
                        AuthType Basic
                        AuthName "Dropbox" 
                        AuthUserFile /var/www/passwd
                        Require valid-user
                </Directory>
</VirtualHost>

Now add a username / password to access your interface via HTTP auth:
htpasswd -cm /var/www/passwd yourusername
chown apache.apache /var/www/passwd

Make sure that apache has full group access to your Dropbox folder.
chmod g+x /home/[user]
chmod g+rw /home/[user]/Dropbox
find /home/[user]/Dropbox -type d -exec chmod g+x {} \;

Download the latest version of eXtplorer from http://extplorer.sourceforge.net/
cd /var/www/dropbox
wget http://heanet.dl.sourceforge.net/sourceforge/extplorer/eXtplorer_2.0.1.zip
unzip eXtplorer*.zip

Check we haven't made any mistakes and set the services up:
service httpd configtest
service httpd restart
chkconfig httpd on

You can now log into http://[FQDN] using a browser and the default credentials (admin/admin) and set up your user, pointing the user's "Home directory:" at /home/[user]/Dropbox. Once you have set up your user you have the choice to remove the HTTP authentication which we included in the VirtualHost configuration above. Simply comment out (or delete) the following lines from your /etc/httpd/conf.d/dropbox.conf file:
AuthType Basic
AuthName "Dropbox" 
AuthUserFile /var/www/passwd
Require valid-user

That's it, you're done!


HOWTO: Install Subversion, Ruby on Rails and Redmine on CentOS5 (& RHEL5)

NOTES
Install and set up Subversion
yum install mod_dav_svn subversion
Add the group [user] to the user apache and make the subversion base URL readable and writable...
usermod -aG [user] apache
chmod g+x /home/[user]
mkdir /home/[user]/subversion
chmod g+rwx /home/[user]/subversion
Make the web directory:
mkdir /var/www/svn
chown apache.apache /var/www/svn
Put the following into /etc/httpd/conf.d/svn.conf (this is for a sub-repo called 'example-repo')
NameVirtualHost *:80
<VirtualHost *:80>
        DocumentRoot "/var/www/svn" 
        ServerName [FQDN]
        <Location /example-repo>
                DAV svn
                SVNPath /home/[user]/subversion/example-repo
                AuthType Basic
                AuthName "Subversion repo" 
                AuthUserFile /var/www/passwd
                Require valid-user
        </Location>

        <Directory "/var/www/svn">
        allow from all
        Options +Indexes
        </Directory>
</VirtualHost>
Add an HTTP auth user...
htpasswd -cm /var/www/passwd [user]

Create a proper SVN repository
cd /home/[user]/subversion
su [user] -c "svnadmin create example-repo" 

Import any SVN repos by doing:
su [user] -c "svnadmin load example-repo < /path/to/repo/dump/file" 
Make sure the permissions are correct
chmod g+rwx /home/[user]/subversion
chown -R [user].[user] /home/[user]

Install Ruby on Rails

*NOTE: Ruby on Rails installation requires the EPEL yum repository (at time of writing).
su -c 'rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-3.noarch.rpm'
Let's get Ruby up and running first... [NOTE: not on an SElinux environment cba with that]
yum install httpd httpd-devel apr make gcc-c++ mysql-server mysql ruby ruby-devel ruby-docs ruby-ri \
ruby-libs ruby-mode ruby-tcltk ruby-irb ruby-rdoc fcgi fcgi-devel mod_fcgid rubygems subversion-ruby
Now we'll install passenger (aka mod_rails)
gem install passenger
passenger-install-apache2-module
Create and insert this text into /etc/httpd/conf.d/rails.conf (or alternatively edit the existing svn.conf created when we set up subversion)
NOTE:
   LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/ext/apache2/mod_passenger.so
   PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.0.6
   PassengerRuby /usr/bin/ruby

NameVirtualHost *:80

   <VirtualHost *:80>
     ServerName 192.168.10.17
     DocumentRoot /var/www/rails/redmine/public
   </VirtualHost>

Now on to Redmine itself

Get Redmine 0.8 from http://www.redmine.org/wiki/redmine/Download
cd /usr/src
svn co http://redmine.rubyforge.org/svn/branches/0.8-stable redmine-0.8
mkdir /var/www/rails/
cd /var/www/rails/
cp -r /usr/src/redmine-0.8/ redmine/
chown -R apache.apache redmine
cd redmine
Create a clean backup of source files
tar czf Redmine0.8-clean.tar.gz .
Initialise mySQL:
service mysqld start
To secure mysql:
mysql_secure_installation
Create a mysql database for redmine...
mysql -u<username> -p
At the prompt enter:
create database redmine character set utf8;
Quit with:
quit
Copy the example database file to the "live" location
cd /var/www/rails/redmine
cp config/database.yml.example config/database.yml
Enter the appropriate settings for the [production] section ensuring that host is set to 127.0.0.1
vim /var/www/rails/redmine/config/database.yml
Set up email
cd /var/www/rails/redmine
cp config/email.yml.example config/email.yml
Enter the appropriate settings for the [production] section ensuring that "address" is set to the IP address of the SMTP host
vim /var/www/rails/redmine/config/email.yml
Install rails for redmine using gem...
cd /var/www/rails/redmine/app/
gem install -v=2.1.2 rails
Import the redmine database into the live database specified in the above config file
cd /var/www/rails/redmine/app/
rake db:migrate RAILS_ENV="production" 
Install default configuration data in database (this is entirely optional, but recommended).
cd /var/www/rails/redmine/app/
rake redmine:load_default_data RAILS_ENV="production" 
Bring up the testing webserver, once loaded check your config by browsing to http://[FQDN]:3000
cd /var/www/rails/redmine/
ruby script/server -e production
Make sure your apache config file edits are ok and that the services will start at boot by doing:
service httpd configtest
service httpd restart
chkconfig httpd on
chkconfig mysqld on
Add the following to your crontab which will create a database backup in the /home/[user] directory
/usr/bin/mysqldump -u <user> -p <password> <database> | gzip > /home/[user]/redmine_`date +%y_%m_%d`.gz

unrar.desktop

[Desktop Entry]
Type=Service
ServiceTypes=KonqPopupMenu/Plugin,application/x-rar,application/x-rar-compressed
Actions=Unrarhere

[Desktop Action Unrarhere]
Name=Unrar here...
Icon=package-x-generic
#Exec=launch.sh %d unrar x \"%f\" 
Exec=xterm -geometry 120x32 -e unrar x "%u" %d

Welcome

HOWTO-Dropbox-Apache-and-eXtplorer
HOWTO_Install_Subversion_and_Redmine_on_CentOS5_+_RHEL5
Unrar-desktop