Necessities

If you do not have these you need them before you should proceed with the SPORUM installation.

  • MySql
  • Perl 5.004 or higher (suggest latest version)
  • Perl Module DBI
  • Perl Module MD5
  • Perl Module Msql-Mysql
  • Sendmail
  • FTP/Telnet/SSH access into your web server



  • (If you need help installing read over the FAQ)





    Release 3.0.0 information:

    download release
  • ftp sporum.tar.gz to your server
    Put in your top level directory
    (/home/username/sporum.tar.gz will do)
  • gunzip sporum.tar.gz
  • tar -xf sporum.tar
    This creates a directory called “sporum” and all the files will be inside this directory
  • edit Makefile — configure your forum – follow the suggestions in the Makefile
  • make install
    This will create the mysql database and the tables needed based upon your config settings
  • load up the URL the make shows you to create your admin account
  • chmod the admin files in the notes below
  • And there you go!


  • Extra Install Information:

    Make sure you enter the correct themes directory in SmallPigVars.pm – if you

    make a mistake, the Themes field will be empty on one of the Preference

    pages, and if you save preferences serious errors will result. No Sporum

    pages will be able to load and you will get web server errors similar to this:



    Undefined subroutine &Templates::Default::get_stylesheet called at

    Templates/Default.pm line 601.



    To resolve this situation, deleting the Sporum database, fixing

    SmallPigVars.pm, and running “make install” again is a quick option if you

    don’t yet have users or forums you want to keep.






    Old release notes for previous releases


    The release comes in two sections:

  • Image Files
  • CGI Files


  • Image Files

    To limit the amount of changes needed to successfully install this forum suite it is suggested that you place the image directory on your /spt_imgs directory.



    If you install this on a virtual hosted account you would put this under your /home/user/public_html/ directory (/home/user/public_html/spt_imgs/)



    Otherwise you would need to install this images directory in the same directory as the /cgi-bin/ directory. (for apache: /usr/local/apache/)



    If you do move this to another directory you will need to replace all mappings to this image directory to your location of the image directory. Please do not link your forum images back onto this site.



    To find all the places necessary in the CGI Files you will need to do a grep to find them:


    (cd into the top level “spt” directory of the CGI Files to do this grep)


        grep -r spt_imgs *



    CGI Files

    It is suggested that you place this in a directory under your cgi-bin directory:

    /cgi-bin/spt/



    Once you un-archive the CGI Files there will be several steps that must be followed:

  • Set path to perl
  • Perl commonly resides in /usr/bin/perl

    This release is configured to use perl from this location. If you location is different you will need to change all of the definitions to point to your perl location.


    You can do this with this command:

       perl -p -i -e “s| #!/usr/bin/perl | #!/your/path/to/perl |x” *

    (verify by grep -r “\/usr\/bin\/perl” * to see if you got them all)

  • Configure SPT
  • Edit spt/SmallPigVars.pm
  • Read each line and edit according to your server & desires.

  • Edit spt/Themes/*/*theme.pm
  • These files need to have the correct path defined in them.

    These are also the files you would modify to change the colors.

  • Configure Spmail
  • Edit spt/spmail/SpmailVars.pm
  • Read each line and edit according to your server & desires.

  • Configure Sporum (define categories)
  • Edit spt/sporum/FVars.pm
  • Read each line and edit according to your server & desires.

  • Create the directory layout for new Categories and their “names”
  • The offical release contains 3 catagories: spt, spmail, sporum

    Each of these has a directory under stp/sporum/ and a fkey entry in FVars.pm

    To create a new one:

      cp -r /spt/sporum/spt /spt/sporum/NEWNAME


    If you remove or rename these sub dirs, you MUST modify the FVars.pm fkey entries!

  • For each sub dir (category) you MUST also edit:</li

    spt/sporum/spt/SporumVars.pm


    (spt/sporum/CATNAME/SporumVars.pm)

  • Define MySql User & Previleges
  • If you rent space from an ISP, they usually setup the database for you so you probably can skip this step. Be sure that you have a user for that database which has the rights to select, insert, update, delete, create, alter and drop. A MySQL Grant statment for this user would look like this:




    GRANT select, insert, update, create, alter, delete, drop

    ON database.*

    TO user@localhost

    IDENTIFIED BY ‘password‘;





    Where database is the name of the database you created,
    user is the name you specified in SmallPigVars.pm and
    password is the password you specified in SmallPigVars.pm

  • Create MySql Tables
  • There exists several mysql directories. Each directory contains create and delete perl files.
    Each file contains paths that must be changed to be correct for your installation.
    After you have updated these files, you will need to run the create files. There exists a single file under spt/setup/ to create and delete all of your mysql tables.


    To run these files:

       spt/setup/createtables.

  • Create Admin Account via Web Interface
  • Goto your web sites page to create the admin account:

       http://your.web.site/cgi-bin/spt/default.cgi?dpage=createadmin

  • Secure Admin CGI Files
  • There exist two files that must both be in place in order to create the admin account. Once you have created the first admin account there is no reason to keep these two files around. (There are built in safe guards against someone using these files to create any other admin accounts, but it is best to remove these).


    spt/Templates/createadmin.temp

    spt/createadmin.cgi

  • SetUp Forums via Web Interface
  • Now you are ready to create the structure of the forums on your site.
    If you log in as an admin, and navigate to your sites category index page:

       http://your.web.site/cgi-bin/spt/sporum/cindex.cgi


    Then you will see your categories listed here with links to their pages:

    Follow each of them in turn to set up the respecitive section (category).



    You should come to a page like:

       http://your.web.site/cgi-bin/spt/sporum/CATNAME/index.cgi
    (CATNAME is your actual category name you assigned while installing)


    On this page you will have a link to an “admin” page – follow it:



    You must first create a category in this category (yes this is a little bit confusing – but when you see the page it will make sense). After you create categories you can then create boards to go in each category(in a category).



  • Configure Top and Bottom HTML
  • There exists two files that you can change to alter the look at feel of the top and bottom of every page on the forum suite.

    spt/header.txt
    spt/footer.txt



    There exists a configured item in spt/SmallPigVars.pm which points to these two files. The release version points to files that are outside of this released directory structure, but there exists commented out lines that you can use to point to the existing files in the spt/ directory. (reference the instructions on installing spt)



    Each is in a table that is of a CSS class that is defined in all of the theme templates. This defines the look and feel of the table. Alter these two files to create your web site’s look.

  • Set Up CRON Jobs
  • Cron jobs allow background processing to occur. This type of processing cleans up the databases.

    – spt/cron/deleteusers.pl

    – spt/spmail/cron/deletemsg.pl

    – spt/spmail/cron/collectmail.pl

    – spt/sporum/cron/updateuserstatus.pl

    FOR EACH CATEGORY DEFINED:

    – spt/sporum/CATNAME/cron/deletefiles.pl

    – spt/sporum/CATNAME/cron/deleteusers.pl

    – spt/sporum/CATNAME/cron/delivermessages.pl

    – spt/sporum/CATNAME/cron/expirethreads.pl



    Each “cron” directory contains a file that ends with “cron” – this shows an example of a cron entry for the files in the same directory.


    To add cron tab entries:

    crontab -e


    Then paste in the entry similiar to the text in the *cron file mentioned above.


    For this site – this is the contents of the crontab:


    0 2 * * * /home/sporum/public_html/cgi-bin/spt/sporum/spt/cron/expirethreads.pl

    0 2 * * * /home/sporum/public_html/cgi-bin/spt/sporum/spt/cron/deletefiles.pl

    0 2 * * * /home/sporum/public_html/cgi-bin/spt/sporum/spt/cron/delivermessages.pl

    0 2 * * * /home/sporum/public_html/cgi-bin/spt/sporum/spt/cron/deleteusers.pl

    0 2 * * * /home/sporum/public_html/cgi-bin/spt/sporum/spmail/cron/expirethreads.pl

    0 2 * * * /home/sporum/public_html/cgi-bin/spt/sporum/spmail/cron/deletefiles.pl

    0 2 * * * /home/sporum/public_html/cgi-bin/spt/sporum/spmail/cron/delivermessages.pl

    0 2 * * * /home/sporum/public_html/cgi-bin/spt/sporum/spmail/cron/deleteusers.pl

    0 2 * * * /home/sporum/public_html/cgi-bin/spt/sporum/sporum/cron/expirethreads.pl

    0 2 * * * /home/sporum/public_html/cgi-bin/spt/sporum/sporum/cron/deletefiles.pl

    0 2 * * * /home/sporum/public_html/cgi-bin/spt/sporum/sporum/cron/delivermessages.pl

    0 2 * * * /home/sporum/public_html/cgi-bin/spt/sporum/sporum/cron/deleteusers.pl

    0 2 * * * /home/sporum/public_html/cgi-bin/spt/sporum/cron/updateuserstatus.pl

    0 2 * * * /home/sporum/public_html/cgi-bin/spt/cron/deleteusers.pl

    0 2 * * * /home/sporum/public_html/cgi-bin/spt/spmail/cron/deletemsg.pl

    0 2 * * * /home/sporum/public_html/cgi-bin/spt/spmail/cron/collectmail.pl





    The contents of each cron perl file contains a line of code similar to this:

    BEGIN {

    unshift(@INC,

    “/home/sporum/public_html/cgi-bin/spt/spmail”,

    “/home/sporum/public_html/cgi-bin/spt”);

    }



    You MUST change these paths to point to the respective location on your web server!





    To un-archive the tarballs:

    gunzip tarballname.tar.gz

    tar -xf tarballname.tar

    gzip tarballname.tar



    Remove the tarball when you have completed the install and it works correctly.

    Then create your own backup copy!

    tar -cf tarballname.tar directoryname

    gzip tarballname.tar



    [Note: itialics denotes your specific filenames.]