Table of Contents

Release Name: 2.84

Release Date:

Released: Windows, GNU/Linux, Mac OS/X and Source distributions of Greenstone v2.84

Installation Instructions

Binary distribution

Upon downloading the installer, run the executable: On Windows and Mac you need to double-click it to launch the installation dialog, on Linux you first need to set the downloaded executable's permissions to executable before you can run it from the terminal.

It may take some time for the Greenstone installation dialog to appear. Once the installation dialog displays, you generally need to keep pressing the Next button until it is finished. However, when it asks for the location to install Greenstone in, make sure to choose a location on your file system for which you have access privileges. If you want to install Greenstone into C:\Program Files on Windows 7 or Windows Vista you will need to run the installer with administrator permissions (this can be achieved by right clicking on the installer and choosing "Run as administrator"). And if you wish use the Greenstone Administration pages (which will be needed if you want to create user accounts for a Remote Greenstone server), then now is a good time to set a sensible password for that.

When the installation process is finished, you can run the Greenstone Server or the Greenstone Librarian Interface (GLI):

1. On Windows, the included Greenstone Server can be launched from the shortcut in the Start menu. On Mac and Linux, use a terminal (in Macs this is found under Applications > Utilities > Terminal) to go into the Greenstone installation directory and run

./gs2-server.sh

The small Greenstone Server Interface (GSI) dialog will display. Pressing its Enter Library button will open a browser onto your Greenstone Digital Library home page.(*)

By default, the web servers restrict access to Greenstone pages to the local machine. To change this, go to File > Settings in the Greenstone Server Interface dialog, and tick "Allow external connections". Click OK to save the settings, then press the Restart Library button. (**)

Note: The Windows version of Greenstone includes two server applications: server.exe and an apache web server. (Linux and Mac versions of Greenstone include only the apache web server). By default, the server.exe application is launched when you use the Windows Start menu shortcut to launch the server. To use the apache web server included with the Windows version of Greenstone, do one of the following:

2. The Greenstone Librarian Interface (GLI) can be run from the Windows Start menu. On Mac and Linux, use a terminal to go into the Greenstone installation directory and run

./gli/gli.sh

First, as in (1) above, the Greenstone Server Interface (GSI) dialog will appear. Eventually the Greenstone Librarian Interface (GLI) dialog will appear. Refer to the Greenstone 2.83 tutorials for examples of using the GLI to create collections of documents. Once you have finished creating a collection, you can preview it by pressing the Preview button from GLI's Create tab. It will open your Greenstone collection in the web browser.(*) (**)

(*) If the web page displays a "Forbidden" message instead, go back to the GSI dialog, and use its File > Settings menu to change the Address Resolution method to one of the other options there. Then press the Restart Library Button in the main GSI dialog and see whether the browser page it opens now is the Greenstone home page. Otherwise try another Address Resolution option from the GSI dialog's Settings menu and see whether the pages are visible now.

(**) If you have your own external web server that you wish to use, then in your Greenstone installation directory, rename the folder apache-httpd to something else. Alternatively, you can rename the file gs2-server.sh (if on Linux/Mac) or gs2-server.bat (if on Windows) to something else.

3. The Client-GLI is the version of the Greenstone Librarian Interface that can be run on a machine different to the one that is running the Greenstone server. To be able to run the Client-GLI application, you will need Sun Java 1.5.0 or greater installed and you will need to have:

If you follow Java's installation instructions, they will direct you on how to add the Java installation's bin folder to your system's PATH environment variable and how to set the JAVA_HOME environment variable.

If on Windows, you can run client-GLI from its shortcut in the Start Menu. On Linux and Mac systems, you would use a terminal to go into your Greenstone installation folder and then run

./gli/client-gli.sh

When the client-GLI starts up, a small dialog appears asking you to enter the URL of the remote Greenstone server's gliserver.pl file. This URL generally has the form: http://<host>:<port>/greenstone/cgi-bin/gliserver.pl, where you have to fill in the host and port values for the remote Greenstone server. After clicking OK, the client-GLI application window will appear. Client-GLI looks and works just like the GLI, except that most of the document processing takes place on the remote machine where the Greenstone server is running.

Source Components and Source Distributions

There are two ways to get Greenstone 2.84's source code in a compressed format (zip or tar.gz file):

1. If you didn't install a Greenstone binary version, you would get the Greenstone Source Distribution which contains the (uncompiled) source code.

2. If you have downloaded and installed the Greenstone binary version already, you would only need to top up your installation with the source code by getting the Source Component. You would then extract this in your Greenstone directory: On Windows, right-clicking on the zip file and choosing to extract its contents to this location should be sufficient. To extract to the correct location on Linux and Mac systems, you would need to use a Terminal to run "tar -xvzf Greenstone-2.84-source-component.tar.gz" from your Greenstone installation directory. Then all the tar.gz file's contents will end up inside the appropriate folders.

To compile the Greenstone source code, you need an appropriate compiler:

If you have gnome-lib (if not, see 2 paragraphs below), then to configure and compile on Mac and Linux machines, open a Terminal and run the following three commands from the Greenstone installation directory (each of them will take some time):

./configure --enable-apache-httpd
make
make install

If you do not wish to compile up the included apache web server, leave the –enable-apache-httpd out of step 1. (See also the section "Additonal notes to compiling manually" below.)

Note: If you don't have the correct gnome-lib, then the compilation will fail with error messages about WVware. In that case, visit http://trac.greenstone.org/browser/gs2-extensions/gnome-lib/trunk which contains archived versions of gnome-lib for various operating systems. Download the one for your operating system that contains mimimal in its label, and extract its contents into your Greenstone installation's ext folder (after deleting any gnome-lib folder already inside the ext folder). Use a command terminal to go into the extracted gnome-lib folder and run

source devel.bash

Then go back to the Greenstone installation directory and run the configure and compile commands (above) once more.

To compile on Windows,

1. Edit the start of the makegs2.bat file in your Greenstone installation directory to contain the path to your Visual Studio's vcvars32.bat file (or vsvars32.bat file for later versions), this file is typically located in a place like C:\Program Files\Microsoft Visual Studio 10.0\VC\bin.

2. Then run the makegs2.bat file from the DOS prompt. Type Y to extract the necessary files. When it asks you what you want to compile, either type 3 to compile up the server.exe web server, or type 4 to compile up the apache web server included with Greenstone.

Setting the Preview Command in GLI

If you've installed Greenstone and are running GLI (the Greenstone Librarian Interface application) for the first time, and have just finished builing your first collection with it, GLI may not know what to do when you press the Preview Button. If it complains or does nothing when you press the Preview Button, you will need to tell it how to launch your default browser (and tell it to open on the collection page) upon pressing Preview.

The following specifies the commands you are likely to need. Paste the applicable one into GLI's File > Preferences menu > Connection tab > Preview Command field.

cmd.exe /c start "" "%1"
open %1

Put %1 in quotes if your Greenstone installation path contains spaces.

firefox %1

If you work with another browser, then type the command you'd use to launch that from the terminal, suffixed with %1 once again. (Embed %1 in quotes if you've installed Greenstone in a path containing spaces.) NOTE: If GLI's Preview Button does not succeed in launching the browser with the collection URL, consult this page of the FAQ for a suggested solution.

Uninstallation

If you're on Linux or Mac and wish to uninstall Greenstone, you will need to give execute permissions to the uninstall/Uninstall.sh file in your Greenstone installation before you can run it.

Important Changes

Collection Building

Plugins and Document Conversion

Extensions

We are developing an extension mechanism for Greenstone. Two extensions are available for download: Open Office and PDF Box, to process more recent versions of MS office documents and PDF document respectively.

Classifiers

OAI Server

Formatting

Other

Further Notes on Installation and Running

Apache HTTPD Notes

Greenstone binary releases come with the Apache HTTPD web server precompiled and installed by default into Greenstone/apache-httpd.

Additional notes to compiling manually

On Windows, use a DOS prompt to go into your Greenstone installation folder. You will need Visual C++ (either from Visual Studio or the Express version) and you may also need the Windows/Microsoft Platform SDK installed. FIRST run the Platform SDK's SetEnv.Cmd (if you have it). THEN run Visual C++'s vcvars32.bat (or vsvars32.bat). Now you can compile manually:

nmake /f win32.mak
nmake /f win32.mak LOCAL_LIBRARY=1
nmake /f win32.mak APACHE_HTTPD=1
nmake /f win32.mak clean
DEBUG=1

On Linux and Mac, configuring and compiling generally takes the form:

./configure
make
make install
./configure --disable-accentfold

As stated in the installation instructions, to compile the included apache web server, the configure step needs to be:

./configure --enable-apache-httpd
make clean

To clean all the files generated during both compilation AND configuration (all config files, other intermediate files and binaries), you would run the following instead:

make distclean

Additional notes to running Greenstone on Windows

On Windows, running the Greenstone Librarian Interface (GLI) or the Greenstone Server Interface (GSI) manually from a DOS prompt could be useful in diagnosing anything that goes wrong, since it keeps any messages that were displayed during program execution visible in the DOS window.

To run GLI or GSI from the DOS prompt, first go into your Greenstone installation directory and then

gs2-server.bat
gli\gli.bat

Notes on using a Terminal or DOS prompt

On Macs, the Terminal is an application that can be found under Applications > Utilities > Terminal.

On Windows, you can start up a DOS prompt by going to Start > Run and then typing cmd.

To go to your Greenstone installation directory using your terminal, you would type:

cd <here you'd type the full path to your Greenstone installation folder>

On Windows you would use backslashes (\) and on Linux and Mac, you would use forward slashes (/) in file paths.

On Linux and Mac, to run a shell script (Greenstone's shell scripts are files that end on *.sh or *.bash), you would precede the scriptname with a ./

On Windows, to run a batch script (files that end on *.bat), just type its name out in full.

E.g. on Windows:

cd C:\Greenstone
gs2-server.bat

E.g. on Linux or Mac:

cd /home/me/greenstone
./gs2-server.sh

Using gsicontrol script

The gsicontrol.sh/bat script is used by gs2-server.sh/bat, and provides much functionality: you can use it to change port number, start and stop the Apache web server, etc. It accepts many parameters like:

 web-start 
 web-stop
 web-restart 
 
 configure-admin
 configure-web
 configure-apache 
 configure-cgi 
 
 set-port 
 
 test-gsdlhome 
 web-stop-tested

You can use it as in the following example

  1. In a command window, go to your Greenstone installation folder and run setup.bat (if on Windows) or 'source setup.bash' (for Linux/Mac)
  2. Then run "gsicontrol.sh/bat set-port". It will ask for a port number. Use e.g. 8282 (just to avoid conflicts with standard ports).
  3. Now run "gsicontrol.sh/bat web-start". It will run the Apache web server.
  4. In a browser, enter "http://localhost:8282". It should show the message "It works" indicating that Apache is running.
  5. Then type "http://localhost:8282/greenstone/cgi-bin/library.cgi". It should show the Greenstone home page.
  6. To stop the webserver at any point, you'd run "gsicontrol.sh web-stop" from your command window.

Working with Remote Greenstone and the GLI-Client

These instructions are more Greenstone 2.84-specific than the general instructions for setting up Greenstone 2 as a remote server.

The following are steps to follow if you're on Windows. On Linux, you can skip steps 1 and 2, otherwise things are similar. For instance, you'll want to launch *.bash or *.sh script equivalents to the batch files listed. Also, you'll want to use forward slashes (/) instead of the Windows' backward slash (\) when specifying file paths.

1. If the path to your Greenstone installation contains any spaces (i.e. if any of the containing folders wherein your Greenstone is ultimately located contain spaces in their names), please open cgi-bin/gsdlsite.cfg in a plain text editor and make sure that the value for the GSDLHOME line contains quotes around it. E.g.

gsdlhome "C:\Program Files\Greenstone2"

Save any changes.

2. Rename server.exe in your Greenstone installation folder to something else, say "_server.exe".

This is because you will need to use the included Apache web server for the remote Greenstone. By renaming the default library server in Greenstone 2, Greenstone will next look for the apache web server.

3. Now run the Apache web server included with your Greenstone from the Windows Start Menu, or by opening a DOS prompt and typing the path to your Greenstone 2 installation and then running the gs2-server script. E.g.

cd C:\Program Files\Greenstone2
gs2-server.bat

Alternatively, you could use Windows Explorer to locate the gs2-server.bat file in your Greenstone2 installation folder and double click that file.

4. A dialog (the Greenstone Server Interface) will display. Press its central Enter Library button.

It will open a browser and take you to a page like: http://localhost/greenstone/cgi-bin/library.cgi

(OR: http://<YOUR-MACHINE-NAME:YOURPORT>/greenstone/cgi-bin/library.cgi where if port were the default 80 it won't be displayed, e.g. http://<YOUR-MACHINE-NAME>/greenstone/cgi-bin/library.cgi)

5. Replace the "library.cgi" part of the URL in the browser to "gliserver.pl?cmd=check-installation": E.g. http://localhost/greenstone/cgi-bin/gliserver.pl?cmd=check-installation (OR: http://<YOUR-MACHINE-NAME:YOURPORT>/greenstone/cgi-bin/gliserver.pl?cmd=check-installation)

At the end of the browser page, it is imperative that it says something like:

"Installation OK!"

(If not check the error messages.)

6. Once again, open a DOS prompt. Type the following, but make sure to type the path to *your* Greenstone2 installation (the example below uses C:\Program Files\Greenstone2\collect):

cacls "C:\Program Files\Greenstone2\collect" /P Everyone:F

(If, on Vista or Windows 7, you installed Greenstone in an Admin area, such as in Program Files, then you would need change the the security settings of the collect directory: Right-click > Properties, then set the folder to "Everyone".)

On Linux you would do:

chmod a+rw /my/path/to/my/Greenstone2.84/collect

7. Use the browser to go to your Greenstone home web page again.

8. Enter the username and password for the new user.

9. Open a new DOS prompt. Either in this or another machine (assuming you want the Greenstone server on one machine and the client on another), go to the gli folder of your Greenstone 2 installation, and run client-gli.bat. E.g.

cd C:\Program Files\Greenstone2\gli
client-gli.bat

10. A dialog will eventually appear asking you for the URL of the Remote Greenstone server's gliserver.pl file.

11. It will next ask you for a username and password. Type the values you entered for the new user you created in step 8.

12. The client-GLI dialog should finally open, and it will look the same as the usual (local) GLI.

Notes on setting up your Linux system to work with filename encodings alien to your filesystem settings

UTF-8 is a common encoding used in filesystems and for data content.

If you are working on a UTF-8 system, then Java (and therefore GLI) will not give you access to files that do not have UTF-8 filenames. This means that in GLI, attempts to drag and drop files with names that are not UTF-8 will fail on such systems.

GLI will allow one to drag and drop files if the filesystem encoding was set to something that preserved the byte values of filenames (instead of destructively replacing characters that are not valid for the filesystem encoding with an "invalid" character, as happens with UTF-8 systems). In practice, this means that a filesystem encoding such as "Native Latin 1" (also called ISO-8859-1), which is a subset of Unicode, will preserve the underlying byte values in filenames, allowing you to drag and drop all sorts of filenames in GLI.

Drag And Drop in GLI will work by default on Windows since it is not a UTF-8 filesystem, but rather one that has a large overlap with Native Latin 1.

However, some Linux systems are set to UTF-8 by default, while others do not even have other encodings installed so you can't switch over.

The solution to making GLI work with "alien filename encodings" on such Linux systems is to switch the encoding to Native Latin 1 (this is regardless of what encoding your filenames are in). Where this is not installed, you would require Admin rights' to install Native Latin 1, before switching to it. The following contains instructions on doing both. Note that switching between installed encodings does not require Admin rights.

INSTALLING AND APPLYING A NEW FILESYSTEM ENCODING ON A LINUX MACHINE:

The instructions are derived from the thread of questions and answers openjdk and this page at Ubuntu Forums.

First find out whether you are already working with a Linux system set to Native Latin 1 (ISO-8859-1). Check by typing the following in an x-term:

locale -k LC_CTYPE | grep charmap

If the settings are indeed set to Native Latin 1, it should tell you that (en_US.)ISO-8859-1 is active.

A) INSTALLATION OF A NEW FILESYSTEM ENCODING (Native Latin 1/ISO-8859-1):

Installation of Native Latin 1 (ISO-8859-1), which requires Admin rights, may not be required: check if this encoding is already installed on the machine first. You can check by running the following two commands in an x-term:

export LC_ALL=en_US.ISO8859-1 
export LANG=en_US.ISO8859-1

If it doesn't come back with any messages that look like failure (such as the encoding not being found), then it is installed and should now be active. Otherwise you need Admin permissions to install Native Latin 1 (ISO-8859-1) on your Linux system, as follows:

1. Open /var/lib/locales/supported.d/local as Root user and, at the bottom of the file, add the line:

en_US.ISO-8859-1 ISO-8859-1

2. Repeat the above step with the file /var/lib/locales/supported.d/en

3. Optional: Only if you wish to make the Native Latin 1 encoding the system default would you need to open /etc/default/locale as Root and change LANG="en_US.UTF-8" to LANG="en_US". (Or possibly LANG="en_US.ISO-8859-1".)

4. Then in an x-term, run the following to install the new encoding:

sudo locale-gen --purge

5. Restart the machine.

The above 5 steps need to be carried out once for en_US.ISO-8859-1 (Native Latin 1) to be supported by the machine. You would still need to apply the new encoding.

B) APPLYING THE NEWLY INSTALLED ENCODING AS THE FILESYSTEM (AND DISPLAY) ENCODINGS:

6. Having restarted the machine, to make the newly-installed encoding the active one, run the following commands in an x-term again. You do not need Admin rights for issuing the following two commands:

export LC_ALL=en_US.ISO8859-1 

export LANG=en_US.ISO8859-1

7. You can check if it all worked by running:

locale -k LC_CTYPE | grep charmap

Or by running:

locale

It should tell you that (en_US.)ISO-8859-1 is active.

8. Now run GLI from the same x-term to allow it to work with the Native Latin 1 filesystem encoding settings.

Patches to 2.84

1. WINDOWS: There is a bug that will crash the apache web server if a search is performed in a collection built with Lucene. This bug can be fixed as follows:

There were several unicode issues related to the following in the Greenstone 2.84 release:

The above have now been fixed. You can bring your Greenstone 2.84 installation up to date with these improvements as follows:

a. Make backup copies of the following files in your Greenstone2.84 installation:

b. Download replacements for the above files from the following URLs and save them in the same locations as mentioned above:

2. WINDOWS: Authentication fails when using the Local Library Server (server.exe).

Work around: As this bug does not appear to affect the Apache web server included with Greenstone 2.84, you could use that instead. To do so, you would just rename the file "server.exe" in the top level of your Greenstone installation to a different file extension like "server.not". Then, when you launch the Greenstone Server from the Windows Start menu shortcut, it will use the Greenstone Apache web server instead.

This bug has been fixed for the next release.

Updated Translations

Thanks to the following people for new and updated translations since 2.83:

For RC1, changes up to and including SVN revision 23502 (approximately).

For RC2, changes up to and including SVN revision 23737 (for GLI, r23734 for GS2 and r23739 for the release-kits).

For the GS284 release, changes up to and including revision 23835. For GLI: revision 23763 for GS2 and r23836 for the releasekits.