Getting Started
The adaption of the UABgrid theme is being done on [src:branches/uabgrid-theme the uabgrid-theme branch]. In order to work on this branch you need to an Apache+PHP5+MySQL setup on your development server. In the lab we commonly use openSUSE 10.2 for this work, so these steps are geared toward that platform.
Use YaST to make sure Apache2, PHP5, and MySQL (server and client) are installed.
After the install you need to configure Apache to support access to the public_html directory in your $HOME. This involves turning on mod_userdir functionality.
# as root cd /etc/apache2/ vi mod_userdir.conf cat mod_userdir.conf ... # Userdir enable user1 user2 ... Userdir enable <yourusername> ...
The cat output above is abbreviated. Look for the Userdir enable example line and add the custom line for your user name below it. By restricting this feature to just your user account, you can reduce the exposure profile of unrelated users running web apps on your box. If you share the development box with others, just add their user name as well. This is only meant to reduce the likely hood of unknown code running on your box. It's assumed you know what's in your public_html.
Configure the services to start, and if you want to start them automatically
service apache2 start service mysql start # optional chkconfig apache2 on chkconfig mysql on
Return to your normal user privileges. Make sure that your home directory and public_html can be accessed by the user account that apache runs under
ls -ld $HOME drwxr-x--x 97 userowner groupowner 4096 Aug 7 17:04 /home/userowner ls -ld $HOME/public_html rwxr-xr-x 24 userowner groupowner 4096 Jun 19 15:02 /home/userowner/public_html
The account names above are clearly fictional.
Extract a copy of the media wiki theme branch to your public_html:
cd $HOME/public_html svn export \ svn+ssh://webapp.lab.ac.uab.edu/usr/svn/uabgrid-docs/branches/uabgrid-theme mediawiki
The export is done to avoid polluting the repositories copy of the config files that will change to accomidate the local database information. We'll just check out the code relevant to our theme development:
cd $HOME/public_html/mediawiki rm -rf skins svn checkout \ svn+ssh://webapp.lab.ac.uab.edu/usr/svn/uabgrid-docs/branches/uabgrid-theme/skins
Prepare media wiki for the install process by enabling write access to the config directory during the install:
cd $HOME/public_html/mediawiki chmod a+w config
Create a mediawiki database that can be populated for your instance
# as root mysqladmin create mwdb echo 'grant all privileges on mwdb.* to mwdba@localhost identified by "password";' \ | mysql mwdb
You should pick a unique password.
Now point your browser at http://localhost/~username/mediawiki and being the install. Use the database name and password you assigned above
Example Site Pages
MediaWiki is used to host the documentation for many sites around the world. Looking over how these sites have approached customizing the theme for mediawiki is helpful in designing the needs for UABgrid.
- moodle - is a course management system for building online learning communities. Read the moodle philosophy for a high-level overview.
