ISFDB:Personal Linux Website
Follow these instruction to create a version of the ISFDB to run on your home Linux system. These instruction do not include setting up the ISFDB wiki.
Setup the Web server
The ISFDB code relies on a web server. Apache is a good choice for this. The basic instructions are:
- Download the software. For Linux this is generally a source distribution, found at http://httpd.apache.org/download.cgi.
- Following the build instructions. In general, you should expect to uncompress, untar, run configure, run make, and run make install.
- Setup the system so that apache start automatically after a boot. First copy the startup/kill script from the apache installation to the standard Linux location:
cd /usr/local/apache2/bin cp apachectl /etc/init.d/httpd
- Next setup the Start and Kill scripts from runstate 3 by creating symbolic links:
cd /etc/rc3.d ln -s ../init.d/httpd S85httpd ln -s ../init.d/httpd K85httpd
- Next setup the Start and Kill scripts from runstate 5 by creating symbolic links:
cd /etc/rc5.d ln -s ../init.d/httpd S85httpd ln -s ../init.d/httpd K85httpd
- Finally, if you want to startup Apache without a reboot:
cd /etc/init.d sh httpd start
- You should now be able to point a browser at you machine's IP address and see something.
Setup the MySQL server
For this step, follow the Linux instructions found in ISFDB:MySQL_Only_Setup.
Install Python
xxx
Install MySQLdb
MySQLdb is a python module that allows a python script to interface with the MySQL database. The module includes C code, so it requires the standard Linux development tools. It uses the MySQL libraries, so MySQL must be installed prior to this step. Finally, it is installed in the python modules area, so python must be installed prior to this step.
1. Install the development tools. This contains the C compiler, which is needed in order to compile and link elements of the MySQLdb module.
2. Install python-devel. This module is required in order to install additional python packages, such as the next step.
3. Install the MySQLdb python module. At this point python will be able to interact with MySQL.
Download the ISFDB Source
There are three ways to download the ISFDB source code.
Download from the ISFDB Website
The source code can be downloaded from isfdb2.tar.gz. This image will eventually be located at https://sourceforge.net/projects/isfdb in the Download section. This method requires building a tar image from the official CVS repository, and uploading it to the site. As such, it can sometimes be out of date.
Anonymous CVS Download From SourceForge
If you have CVS tools installed, you can download a complete up to date version of the source with the following command:
cvs -z3 -d:pserver:anonymous@isfdb.cvs.sourceforge.net:/cvsroot/isfdb co -P isfdb2
Developer CVS Download From SourceForge
If you are an ISFDB developer, you can check out views, make changes, and check in updates. Requests to be an ISFDB developer must be approved by an ISFDB administrator at SourceForge. Developer checkouts also require that you obtain a login at SourceForge, generate an SSH key on your home system, and record your public key on the SourceForge site. Once those steps are complete, you can extract a developer view via:
export CVS_RSH=ssh export CVSROOT=login_name@isfdb.cvs.sourceforge.net:/cvsroot/isfdb cvs -z3 -d:ext:login_name@isfdb.cvs.sourceforge.net:/cvsroot/isfdb co -P isfdb2
Install the ISFDB
- Edit isfdb2/common/localdefs.py:
HTMLLOC = "your_host_name/isfdb" HTFAKE = "/your_host_name/cgi-bin" DBASEHOST = "localhost" HTMLHOST = "your_host_name" COOKIEHOST = "your_host_name" USERNAME = "root" PASSWORD = "" DBASE = "isfdb" UNICODE = "iso-8859-1" DO_ANALYTICS = 0
- Then edit isfdb2/INSTALLDIRS:
INSTALL_CGI = Local CGI binary directory INSTALL_HTML = Local HTML directory
- Check the directory permissions on your INSTALL_CGI and INSTALL_HTML directories. You'll either need to do the install as a user that has permission to write there, or you'll need to modify the permissions on the directories.
- Then execute:
cd isfdb2 make install