Development
So you want to become an OmegaWiki developer ...
You will need a reasonable understanding of PHP & MySQL web development, and version control with Git.
Contents
Setting up your environment[edit]
- Install Apache
- Install PHP 5.2.3+ with MySQL support/extension (don't forget to modify php.ini to activate the extension). Watch out: Some distributions are still using 5.1. Be sure to check! You can use this handy script: phpinfo.
- if you have "php5-suhosin" installed, you'll need to remove it since it breaks some functionalities of OmegaWiki because it limits the amount of information sent by POST, or something like that.
- Install MySQL 5+
- Configure MySQL to use UTF-8:
- Edit your my.cnf configuration file
- Under
[mysqld]
, add the following lines:character-set-server=utf8
default-character-set=utf8
- Under
[mysql]
, add the following:default-character-set=utf8
- Restart MySQL. When you run the "status" command in the MySQL client, all "characterset" settings should be set to "utf8" like this:
Server characterset: utf8
Db characterset: utf8
Client characterset: utf8
Conn. characterset: utf8
- Install Git
Under the Ubuntu as well as under the debian GNU/linux operating systems, the following commands should install all the necessary packages:
sudo apt-get install apache2 libapache2-mod-auth-mysql libapache2-mod-php5 php5 php5-intl php5-mysql mysql-client mysql-server git git-review
Installing MediaWiki and WikiLexicalData[edit]
There are two options:
- Installing from scratch
- Installing with an existing database (such as the OmegaWiki database)
Understanding the code[edit]
To understand the MySQL structure for OmegaWiki, see Help:OmegaWiki database layout
Documentation can use improvement. Help is especially needed in this department! Contact Erik (erik AT wikimedia DOT org) and he'll give you a whirlwind tour through the main things you understand.
A good place to start is the general MediaWiki documentation.
Our documentation can be found at http://doc.omegawiki.org. Note that lots of classes and functions have not yet been commented.
Committing changes[edit]
See http://www.mediawiki.org/wiki/Gerrit/Tutorial#How_to_submit_a_patch
See also[edit]
- Help:Downloading the data - various dumps and other possibilities to download the data.