SolutionBase: Enterprise-ready Process Automation with Interleave

With Interleave, the Linux community has a tracking system as powerful as any Windows offering. And equally as simple to install. And reliable. And user-friendly. Jack Wallen shows how it works.

When corporations get to a certain size accountability and tracking become paramount in order to succeed. Without a process with which to track systems, orders, purchases, work, employees, and customers, your business would be nothing more than a Chapter 13 waiting to happen.

Now one would think that having such a tool to keep accountability in order would fall squarely on the hands of the Windows world. Not so. With Interleave, the Linux community has a tracking system as powerful as any Windows offering. And equally as simple to install. And reliable. And user-friendly.

So what can Interleave do? In a sense, Interleave will help you kick your reliance on spreadsheets, databases, bug-tracking, web-publishing/collaborationtools. It can serve as your one-stop tracking shop. It's really that good. And this tool will one-up all your other tools by creating summaries and status reports.

Interleave will run on any platform and is used through via Web interface. So it's cross platform perfection. With that in mind, let's see about installing this baby so we can see just what's under the hood.

Getting and Installing

Installing Interleave is fairly simple. You first need to make sure your system meets the requirements.

The requirements are minimal:


  • PHP4 or PHP5
  • MySQL
  • A Webserver

PHP settings:

  • register_globals: off
  • magic_quotes_gpc: off
  • max_execution_time: 60 (at least)
  • memory_limit: 24MB (128 MB recommended)
  • allow_url_include: on
  • error_reporting: E_ALL & ~E_NOTICE)

MySQL Settings:

  • Optional: Upgrade max_package_size when you use large attachments and
  • Not running in STRICT mode

Webserver Settings:

  • WebDAV OFF for CRM-CTT base directory


I will be installing this system on a Ubuntu Server 6.06 installation.

The first thing to do is to download the required file from Sourceforge and move that file into your Apache document root. The next step is to unpack the file with the command tar xvzf CRM-CTT_Interleave-XXX.tar.gz (Where XXX is the release number.)

Now you will have a new directory called CRM-CTT_Interleave-XXX (Again where XXX is the release number.) Rename that directory otherwise your users will have to remember a rather lengthy URL. You can move that directory with the command mv CRM-CTT_Interleave-XXX CRM (Yet again where XXX is the release number.) I have chosen to name my resulting directory CRM for ease of use.

Now change into that new directory and change the permissions on the file to 777 with the command chmod 777 (this will ease installation.)

The next step isn't required before you fire up your browser but it will be asked of you once you have the browser open. So since we're already in command-line mode, we'll take care of it now. You need to change the php memory minimum in the php.ini file. In my case that file is in /etc/php5/apache2. In that file (around line 246) you will see the entry:

memory_limit = 8M ; Maximum amount of memory a script may consume (8MB)

Change that limit to 128M or the system will not have enough memory to run. Save and close that file and restart Apache. In my case restarting Apache is done with the command /etc/init.d/apache2 restart.

Finally you will need to create a database to use. I highly recommend the use of phpMyAdmin to do this.

Now we're ready to fire up the browser. Open up the browser and point it to http://IP_ADDRESS_OF_SERVER/CRM (Where IP_ADDRESS_OF_SERVER is the actually address of your CRM server) and you will be greeted with the screen shown in Figure A.

Figure A

You might have more warnings or errors than you see here. If so, you will most likely not be able to move on to step 1 until the errors are taken care of.

Although optional I would highly recommend installing the GD and PEAR packages so statistical images can be generated. These images will be helpful for analysis and such. To install the GD module you will first have to make sure that PEAR is installed. Do this with apt-get install php-pear. Once that is installed you will use the CPAN tool to instal DB. Issue the command cpan and, once at the cpan prompt, run the command install DB. This will install the necessary modules.

Once you have taken care of the above you can click the Go to step 1 link at the bottom of the install page.

The next page you will see (see Figure B below) will ask you for the necessary database information.

Figure B

The nice thing about this system is that it will TRY to create the database for you if it's not already created. I recommend taking care of this business yourself.

Once you have the necessary information filled in, click the Go to step 2 link.

If everything is successful you will be informed of such in the next screen, as seen in Figure C.

Figure C

Alls well that ends well.

Now click the Go to step 4 link. During step four you will be required to fill out the information for the admin (as shown in Figure D below.) This is all pretty straight forward with the exception of the repository which will serve as sections or departments for downloads uploads. You can create more repositories later but you MUST create one upon installation.

Figure D

Make sure you include the Administrators email address.

Step 4 is actually the log in for the administrator, shown in Figure E.

Figure E

At first login you will only have the one repository you created at installation.

Once logged in you will see the Interleave main page (see Figure F below.)

Figure F

One thing you will notice is that the system points you to "below" for the Administrator link. It is not "below". In fact the administrator link is on the right side of the screen under the Statistics tables. Click on the Administration link to open the admin tool. NOTE: The system also says you can hit Alt-A to get to the the administration page. This is also not so. In Firefox Alt-A selects all on the page.

You are now ready to take care of the initial administration tasks.

The first administration page you see contains a number of tabs as seen in Figure G. The first tab you want to go to is the Global system values.

Figure G

To get out of the Admin tool you simply click the Dashboard tab.

Once in the Global system values tab. you first need to click on the ADMPASSWORD value to set a global administrator password. Now only those who know this password can access the administration tool. You'll see this in Figure H.

Figure H

If the ADMINPASSWORD is not set the value will register as NONE.

As per the directions of the Dashboard, you will want to take care of all of the following:

  • ADMPASSWORD: Main administrator password that will allow access to even more administration tools.
  • MIPASSWORD: Management Information password that will allow certain users access to the management information section.
  • LANGOVERRIDE: Set this to "yes" so that users can not change the language of the site. If you have multi-lingual users leave this set to "no" but you will have to have the language packs installed.
  • MANAGEMENTINTERFACE: Set to "on" so limited users will be able to see a restricted management interface. Set to "off" and they will see no management interface.
  • ENABLECUSTINSERT: If set to "on" customers who have an account will be able to add entries by themselves.
  • CRONPASSWORD: Password used by cron. Set this even if you do not use this function.
  • Main language: Default language.

Now step into the System Configuration tab as, seen in Figure I, to take care of a few more tasks.

Figure I

Although not critical, some of these tasks will be necessary down the road.

One thing you will want to do is to create more repositories. Click on the Configure Repositories to go to the Repository Management tool as seen in Figure J.

Figure J

This screen gives you detailed information about current repositories.

Click on the New Repository tab and enter the information for a new repository. A new repository could be (as said before) a department, a process, a function, a job, a buyer, a seller, a client, etc. The steps to creating the repository are very similar to creating the initial database during installation.

Now one of the hitches during the creation of the repositories is that you will have to edit the file by hand, once the repository has been created. Really all you have to do is add the text the system gives you into the file. The text will look something like:

$host[1] = "localhost";

$user[1] = "root";

$pass[1] = "DBPASSWORD";

$database[1] = "clients";

$table_prefix[1] = "CRM";

Where DBPASSWORD is the actual password for the database user.

You will enter that text before the ?> characters at the end of the file.

Once you have entered that text, save the file and click the link given to you at the end of the repository creation. Now if you go to the Current Repositories (under the System configuration tab) you will see the new repository listed.

There is one other interesting tool that can be set from the System Configuration tab. Click the Enable On Screen Logging Mode and a popup window will open that will log information every time you execute a task it. This is an outstanding tool for debugging issues. NOTE: You will have to allow popups from your Interleave server to enable this feature.

Get Ready, Get Set

You are now ready to embark on using an Enterprise-ready system that will take away the pain of using multiple tools to track, task, and tally all your corporations systems, information, clients, processes, and so much more. Something that could have been a rather daunting task has just become simple and reliable.

Of course, now you're looking at learning an entirely new system. Never fear, next time around we'll discuss the actual usage of this outstanding resource.

Naturally, however, with a system so resplendent with possibilities you have to consider the fact that there could possibly be too much to choose from. In the case of Interleave

The only thing left is to create the config file.This can be done in three ways:

1. Let the install procedure try to write the file itself
You must chmod 777 the file temporary to let this work!
2. Download the file to you browser and place it in the installation directory yourself
3. Copy the below printed text into the file yourself
Click this link to let the installer try to write the file.

Click this link to download the file.

If that doesn't work, create a file called in your installation directory containing the following:


$GLOBALS[LogonPageMessage] = "";

$host[0] = "localhost";

$user[0] = "root";

$pass[0] = "pantyhose";

$database[0] = "crmctt";

$table_prefix[0] = "CRM";


By Jack Wallen

Jack Wallen is an award-winning writer for TechRepublic, The New Stack, and Linux New Media. He's covered a variety of topics for over twenty years and is an avid promoter of open source. For more news about Jack Wallen, visit his website jackwallen....