Setting up MindTouch document management on a Linux system

MindTouch is an open source document management system alternative to SharePoint and other commercial software. In this tip, learn how to set up MindTouch on a Linux server, using CentOS 5.5 as the example system.

MindTouch is a commercial open source document management system designed to meet document management system needs of small, medium, and large organizations. Document management systems are available in many flavors and “religions” with strong following for proprietary systems such as SharePoint, open source and open format Wikki type solutions, and blog based solutions.

MindTouch is offered as a software as a service (SaaS) solution in the cloud, and as an installed software solution. This tip will cover the installed software solution.

MindTouch document management architecture
MindTouch is based upon a proven architecture: Web front end, database backend, and the application glue to bring it all together. MindTouch uses Apache and MySql.

MindTouch system requirements
MindToch is available for popular Linux distributions including RedHat, CentOS, Debian, Ubuntu, and SUSE. For this tip, CentOS 5.5 was used. MindTouch requires several packages to allow the system to function and to provide additional features. Up-to-date instructions are available for the various operating systems.

Mono, the .NET framework that allows applications developed for Microsoft systems to be easily developed and ported on Linux and other operating systems, is required for MindTouch. Additionally, several converters are needed to allow conversion to and from pdf and postscript formats, as well as MySQL for database storage of content.

Installing MindTouch
Unless otherwise noted, all these commands are executed as root.

To install mono and the other dependencies, follow these steps. First download mono:

 # wget http://s3.amazonaws.com/mindtouch/mono-2.4.3-1.noarch.rpm

Then install mono using rpm:

 # rpm -iv mono-2.4.3-1.noarch.rpm

Many of the conversion packages are available with the Linux distribution, so they can be installed directly using yum:

 # yum install wv links pdftohtml tidy html2ps html2text mysql-server

However, the Prince xml converter is not and must be downloaded:

 # wget http://www.princexml.com/download/prince-6.0r8-linux.tar.gz

And install it with:

 # tar xfzv prince-6.0r8-linux.tar.gz
# cd prince-6.0r8-linux
# ./install.sh

To ease MindTouch installation, and more importantly updates, a yum repository should be created to allow yum commands to be run against MindTouch's hosted repository. To create the repository edit the repository configuration with:

 # vi /etc/yum.repos.d/mindtouch.repo

And copy the following text into the file:

name=mindtouch's Home Project (CentOS_5)

Then install the MindTouch software with:

 # yum install mindtouch

Followed by installing root certificates:

 # su – dekiwiki
 $ /opt/mono-2.4.3/bin/mozroots --import --sync
 $ exit

And putting the MindTouch Apache configuration in place:

 # mv /etc/httpd/conf.d/deki-apache.conf.disabled /etc/httpd/conf.d/deki-apache.conf

The deki-apache.conf also contains the server name and should be set by changing the ServerName attribute in the file. After the ServerName is set Apache should be restarted and MySql started with:

 # service httpd stop
# service httpd start
# service mysqld start

At this point the configuration continues through the web browser. If MindTouch does not find any of the packages installed, the installation will warn you and allow you to explicitly define the path to the package. (For example, the prince xml converter is often an issue, and /usr/local/bin can be specified as the path on CentOS 5.5.)

Click on image for larger version

The screenshot Error Message shows the installer warning about prince.

The type of installation must be chosen: Communications Suite, Platform, or Core. (For this tip, Core was chosen) Then the system will prompt for the site information as well as the administrator password and contact information, followed by configuration information which likely doesn't need to be changed and then advanced configuration in case any necessary programs were not found by MindTouch. These installation steps are shown in the figures below:

Site set-up (Click on image for larger version)


Site configuration (Click on image for larger version)


Your organization (Click on image for larger version)

Upon completion of the Web install you will need to execute the following:

 # cd /var/www/dekiwiki/config/
# cp -p mindtouch.host.conf /etc/dekiwiki/
# cp -p mindtouch.deki.startup.xml /etc/dekiwiki/
# cp -p LocalSettings.php /var/www/dekiwiki/
# /etc/init.d/dekiwiki start
# rm mindtouch.host.conf
# rm mindtouch.deki.startup.xml
# rm LocalSettings.php

A browser can again be pointed at your MindTouch server, which will now request a license key. The license can be requested from MindTouch.

Click on image for larger version

You're now up and running the MindTouch core. The interface is clean and intuitive, ready for user and content management!

Dig Deeper on Linux servers