This article describes how to perform a Joomla installation, and furthermore some tricks that are helpful to improve the setup.

Step 1 - Download, Unpack and Setup Joomla

Relevant config files:

  • <JOOMLA-BASE>/installation/models/configuration.php

Prepare Environment

Make sure you already have installed Apache, PHP and MySQL.
In this example, Joomla will be created at /var/www/joomla in the filesystem.

Basic installation

Download Joomla from the official page and execute the following statements to get joomla running on the server:
root@jiffybox # wget "http://joomlacode.org/gf/download/frsrelease/17173/74758/Joomla_2.5.6-Stable-Full_Package.zip"
root@jiffybox # mkdir /var/www/joomla
root@jiffybox # unzip Joomla*.zip -d /var/www/joomla
root@jiffybox # chown www-data:www-data -R /var/www/
root@jiffybox # chmod og-rwx -R /var/www/
After this, you need to browse to your joomla page, (In our case it was http://bytesare.us/joomla - joomla according to the directory name in /var/www).
Then follow the setup instructions to finish the base installation.

Install a language pack

If you plan to use the CMS in another language, you need to install it as an extension.
Browse to an extension provider's page, and download the zipfile. In my case: de-DE_joomla_lang_full_2.5.4v1.zip
Extract it. The archive contains (in my case) three plugin zipfiles.

me@home $ mkdir /tmp/download
me@home $ cd /tmp/download
me@home $ wget "http://sourceforge.net/projects/jgerman/files/Translations/Core/Joomla!%202.5/Joomla!%202.5.6v1/Joomla!%20Installer%20Packages/de-DE_joomla_lang_full_2.5.6v1.zip/download" -O "de-DE_joomla_lang_full_2.5.6v1.zip"
me@home $ mkdir unzipped
me@home $ unzip *zip -d unzipped
me@home $ cd unzipped
me@home $ ls -l
admin_de-DE.zip
site_de-DE.zip
tinymce_de-DE.zip
pkg_de-DE.xml

In Joomla Administrator Console, goto "Extension" --> "Extension Manager".
Upload the zipfile extension packs you need, and click install. Then activate the extensions in the "Extension" --> "Plug-in Manager" Now you should be able to select German in the language manager.

Install content versioning extension

Another great extension i do not want to miss is provided by factiaconsulting.
Every time you change an article, a new revision of the document is created, and you can switch back to every version. If you accidently delete the article's text and clicked on save, you know that it's worth the installation's effort.
Download the three plugins and install them in the "Extension" --> "Plug-in Manager" section of the Administration Console.
Don't forget to activate them in the "Extension" --> "Plug-in Manager".
Nice, now anything you saved anytime will be kept in the history of the article.

Change MySql Database user of the Joomla instance

If you decide to change your mysql database user after the installation, you need to perform the following steps.
I assume your joomla database is in the 'joomla' schema.

mysql@jiffybox $ mysql -u root -p # login as db admin
mysql> use mysql;
mysql> describe user;
mysql> select host,user,password from user;
mysql> insert into user (host,user,password) 
> values ('localhost','joomla-user',password('Toppsy-Krets'));
mysql> show databases;
mysql> grant all privileges on joomla.* to joom_bytesareus;
mysql> flush privileges;

Finally, we need to change /var/www/joomla/configuration.php to make joomla using this user:

        public $user = 'joomla-user';
        public $password = 'Toppsy-Krets';