Installing Redmine on Centos 6.4 + GIT Support

Ruby Install

# yum install httpd-devel ruby ruby-devel -y
# cd /tmp
# wget
# tar zxvf mod_ruby-1.3.0.tar.gz
# cd mod_ruby-1.3.0/
# ./configure.rb --with-apr-includes=/usr/include/apr-1
# make
# make install


Configure Ruby to load with Apache

# vi /etc/httpd/conf.d/ruby.conf

Paste the following in the file

LoadModule ruby_module modules/
RubyAddPath /1.8

Now Restart the web server

# service httpd restart


Install Redmine

# cd /tmp
# wget
# tar -zxvf redmine-2.3.3.tar.gz

 Now move this to where ever you want to keep it



# mysql -p

In MySQL Console

 mysql > CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'PASSWORD';
 mysql > GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost';


Copy config/database.yml.example to config/database.yml and edit this file in order to configure your database settings for “production” environment.


Following are the settings for For Ruby 1.8.7


# vi config/database.yml
 adapter: mysql
 database: redmine
 host: localhost
 username: redmine
 password: PASSWORD


Make sure you are inside the redmine directory with ‘Gemfile’. Run the following command

# gem install bundler


Before installing the bundles update the Gemfile, add

# vi Gemfile
gem 'mail', '2.5.3'


inside it. If you don’t use this, it will install mail 2.5.4 which will not work with redmine 2.3.3. I read somewhere that if ruby is >= 1.9.* we can use 2.5.4 version of mail but not sure.

# bundle install --without development test


If ImageMagick is not installed on your system, you should skip the installation of the rmagick gem using:

# bundle install --without development test rmagick


# rake generate_secret_token


# RAILS_ENV=production rake db:migrate
# RAILS_ENV=production rake redmine:load_default_data


Select your language [en]


File/folder permission

# mkdir -p tmp tmp/pdf public/plugin_assets
# sudo chown -R USER:USERGROUP files log tmp public/plugin_assets
# sudo chmod -R 755 files log tmp public/plugin_assets


Testing the Installation

# ruby script/rails server webrick -e production


Now in your browser go to http://yourip:3000

Use the following details

Login: admin
Pass: admin


EMAIL Settings

# vi config/configuration.yml

locate and change the following


 # Outgoing emails configuration (see examples above)
   delivery_method: :sendmail
     port: 25

GIT Integration

# which git

normally it is in ‘/usr/bin/git’

# vi config/configuration.yml

locate and add the path

scm_git_command: /usr/bin/git

Login to admin, create project, in project settings create Repository, in repository settings page, Select GIT, and in path provide full path including git dir, for example



Apache Configuration

Used this one


# gem install passenger
# passenger-install-apache2-module


More details on passenger


# rake generate_session_store


Create /etc/httpd/conf.d/passenger.conf

# vi /etc/httpd/conf.d/passenger.conf
LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-4.0.18/buildout/apache2/
PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-4.0.18
PassengerDefaultRuby /usr/bin/ruby
# the following line is required, as files uploaded will be owned by apache, if not
# added it will cuase 500 internal server error on file delete/ or issue/project
# delete where files are attached with issues
PassengerDefaultUser apache


Redmine Apache Config

# vi /etc/httpd/conf.d/redmine.conf
Listen *:3000
   <VirtualHost *:80>
       ServerAdmin webmaster@<YOUR-DOMAIN>.com
       DocumentRoot /var/www/clients/client1/web1/web/red/public/
       ErrorLog logs/redmine_error_log
       #If you are using mod_fcgid and are going to upload files larger than
       #131072 bytes you should consider adding the following line
       #that allows to upload files up to 20 mb
       MaxRequestLen 20971520
       <Directory "/var/www/clients/client1/web1/web/red/public/">
               Options Indexes ExecCGI FollowSymLinks
               Order allow,deny
               Allow from all
               AllowOverride all

For more details follow the tutorial link provided above

Check Memory Consumption

# passenger-memory-stats


Unable to delete a project – check that there are files attached with any of its issues? if yes make sure to include PassengerDefaultUser in the passenger.conf file, when file is uploaded passenger store it as root and can not delete it later

Read More.

Programming Guidelines: How to program

Define Programming Languages

First select a programming environment to work on, the coder must know the limitations, cons and pros of the language, and must know how to use the language. If he don’t know what can be done with this programming language it is useless to use the language.

Look for already done code / libraries / classes

Check the codebase for already created code / libraries / classes to use them in the new projects and to improve the project’s coding. If codebase don’t have the functions and classes which you are seeking for, create your own files and classes to store the functions or group of functions, as they will keep the specific code separate from the original code, and also can be re-used, in any other website for the same functionality.

Finalize the Design and CSS before you go for real coding.

For small projects or simple HTML pages, finalizing the design and CSS before development of the website will save time of development, and for large projects, although it is not possible in some cases that we get a design completed with all the CSS needed, as we may need new elements and CSS classes as we proceed developing the website. But it is wise to complete as much design and CSS elements as possible before starting the development, as this will save the time in future. Read More…

Read More.

A Better File Management : Tips and Techniques

File Names

  1. Keep File names short
  2. If necessary use abbreviations. e.g.
    • Management = MGT
    • Accounting = ACTG
    • Market = MKT
    • Dynamic Online Systems = DOS
    • Microsoft = MS
    • Etc.
  3. Use Date in the document name. (Only for individual files, which are not linked like webpages). i.e. dosstationary-21-02-2001, dosstationary(21-02-2001).
  4. Keep file names bellow 27 characters.
  5. Use same text case (lower / upper) for the files in a same folder. Preferred to keep all the files in lower case.
  6. Don’t use underscores, spaces etc. in file names.
  7. If you need to break the rule, be consistent about it.

Folder Structure

  1. Keep names short
  2. Nest folders within folders
  3. Separate ongoing and completed work
  4. Store like with like. (same file type in a separate folder, like all images in one folder for a project)

Read More…

Read More.

Print Material: Process Workflow

Information Gathering

-          Have client sent the information?

-          Is this information is sufficient?

-          If not, what information is required?

  • Number of Designs to present
  • Color range
  • Sample / benchmarks which client is interested in
  • Other…

-          Finalizing the information

  • How many Designs to be sent
  • Print Design includes (Stationary, cards, letter head, logo, billboard, etc…)
  • Sizes of the printings

-          Send the finalized information to client for approval


-          Dividing work in smaller tasks

-          Write all tasks with each and every detail

-          Provide reference materials and samples

-          Allocate Time durations for each task

-          Allocate resources (who is going to do which task)

-          Create a timeline for 1st draft

-          Inform client about the 1st draft’s time line

-          Compile a MS Project file or DOT PROJECT for tracking the tasks Read More…

Read More.

Print Material

NOTE: This information is gathered from different sources over internet few days back, and i dont remember the sources yet. Copyrighted material is belongs to the actual owner, and i dont own this information.

Design Guidelines

-          What Formats to Work on

  • Artwork designed in Corel Draw 12 with fonts converted to curves or InDesign CS3 with fonts converted are preferred. Be aware though that jpegs and tiffs are images vs. vectors which are used in drawing programs such as InDesign and Corel Draw.

-          Page Size & Layout

  • When designing your artwork, create a single file in your layout program for all your pages (do not create a new file for each page). While designing, make your page size that of the final trim size, do not insert “crop marks” or “printer’s marks”.
  • Prepare vector art, such as a company logo, in a Draw program like Illustrator, CorelDraw or Freehand. Save these images as EPS files and import them into the page layout.
  • If you want graphic objects or backgrounds to print to the edge of the page, these should be made to extend 3mm beyond the edge of the page in the layout. This is called bleed. The overlapping 3mm will be trimmed off, but if it’s not there in the first place, slight inaccuracies in cutting could leave a thin white border along one or more edges of the page.
  • Keep all the text and pictures that do not bleed at least 5mm away from your trim size or fold lines on each side (in business cards bookmarks and Greeting Cards, this can be reduced to 2mm).
  • The table below sets out some of our products with their trim size (finished size) bleed size and text frame (text margin). For any layouts not included in this table, just use the guidelines above or send us a mail and we will help you set up the margins. Read More…
Read More.