KDE.org/phpBB
Introduction
phpBB is an open source bulletin board software maintained by the phpBB project developers. KDE uses phpBB to power the official forum board at forum.kde.org. KDE forum uses a heavily modified version of phpBB.
The aim of this guide is to setup your own copy of the KDE forum board on your local/production server. A basic installation guide is included with the source code hosted on http://projects.kde.org
Fetching your copy
The source code of the KDE forum board can be found at [1]. For a comprehensive guide on using Git, you can check out this article.
To fetch a copy of the repository, fire up a terminal and execute:
git clone git://git.kde.org/websites/forum-kde-org
Once the cloning process is completed, you have to switch to a branch. If you intend to use the code for testing purposes, you should switch to branch experimental.
git checkout --track -b experimental origin/experimental
For production usage, we strongly recommend that you use the stable branch instead.
git checkout --track -b stable origin/stable
Installing phpBB
- To start with the installation process, copy the downloaded phpbb folder to your apache's home directory. This guide assumes that the phpbb folder can be accessed by visiting http://localhost/phpbb in your browser.
- CHMOD (http://en.wikipedia.org/wiki/Chmod) the cache/, files/, store/ and images/avatars/upload/ folders to 777.
- Rename the install.back folder to install (this folder is located at the root folder of the source tree).
- Open your favorite internet browser and visit http://localhost/phpbb/install. This will take you to the phpBB installation utility wherein you have to provide the necessary details to get phpBB installed on your server. The official installation guide can be found here.
- After installing phpBB, rename the install folder back to install.back so that the board becomes publicly accessible. You may even completely remove the install folder from your apache's home directory.
Database changes
There are a large number of variations in the KDE Forum database w.r.t. the phpBB default installation. To make the necessary changes to the database schema, simply execute http://localhost/phpbb/db_setup.php
Setting up configuration files
KDE Brainstorm configuration
This section explains how to setup your copy of KDE Brainstorm on you server. You may ignore this if you do not wish to have an idea submission portal.
- Create a blank file vote_config.php inside <forum_root>/includes/ directory and chmod it to 777.
- Goto to your forum's Admin Control Panel and click on the System tab.
- Under Module Management, click on Administration Control Panel.
- Navigate to System -> General Tasks on the Module Management screen.
- There, add the acp_vote module and enable it.
- Now open http://localhost/phpbb/adm/index.php?i=vote&mode=votepad and fill in the values accordingly. The Show votepad in these fids is a compulsory field. Also, the Valid ideas fid and Sandbox fid fields should be valid and distinct forum_id values. Rest of the boxes under Subforum settings may be given random integers if you wish to setup brainstorm for testing purposes.
Other configuration files
A list of config file templates can be downloaded from http://forum.kde.org/conffiles/.
Download and place these template files inside <forum_root>/includes/ directory and enter the specified values accordingly.
GIT ignore file
If you intend to commit to the repo (needs write access to the Gitorious repository), you might want to add a .gitignore file in your clone's root directory (Read here for more information on gitignore)
A demo gitignore file can be found here: http://forum.kde.org/conffiles/gitignore.txt
Activating the KDE theme
KDE Forum uses a custom theme called KDEsign4. If you wish to use the theme:
- Navigate to the Styles tab in your Admin control panel.
- Click on the Install link next to KDEsign4.
- Select Yes for Make default style.
- Click on the Submit button.
Contacting the forum developers
You can reach the forum developers cum admins at [email protected] or join in at #kde-forum on IRC (network: freenode).