
\title{Portable GIS: GIS on a USB Stick}
\author{Jo Cook}
\maketitle

\section{Summary}
This is a suite of GIS programmes that can be run from a USB stick (and hence are totally portable) amongst computers running Microsoft Windows. This leads to a package that can be quickly and easily deployed by individuals with no prior experience; in a range of different environments; and provides an easy and cost-efficient method for companies and individuals to evaluate these packages in comparison to costly proprietary alternatives. 

\section{Introduction}

The term ``Portable GIS'' refers to a full suite of Geographic Information Systems (GIS) Programmes that can be run from a USB stick. This allows them to be used on any Windows PC with no need for installation or configuration. Some alterations were made to the existing code, where necessary, to allow the programmes to run in this way, such as removing the need for a fixed drive letter. Furthermore the individual packages have been worked into a single ``suite'', with a menu system for operating them, and full documentation. 

\begin{figure}[t]
\centering
	\includegraphics[width=.6\textwidth]{proceedings/cook/usb-drive.png}
\end{figure}

Open source programmes are often difficult to install compared to proprietary Windows alternatives. Developers often seem to assume a much greater level of prior knowledge than the average new user has, and options for getting help, such as mailing lists and online discussion groups can be intimidating. I believe, from personal experience and anecdotal evidence, that many new users are put off using open source software because they cannot install it, let alone use it.

Live CDs are often used in these situations, but the advantage to the ``Portable GIS'' approach is that it works in the same operating system that the user is familiar with, with access to their file system (and hence data) rather than in a self-contained sandbox environment.

There are two further advantages to the ``Portable GIS'' approach. The fact that it runs on a USB stick means that it can be deployed quickly and easily in a number of situations, and the fact that it requires no end-user installation and configuration makes it an attractive proposition for companies and individuals wishing to evaluate open source GIS.



\section{Products Included on the stick} 
The programmes can be split into two modules, desk-based and web-based. Every aspect of the suite is open source, including the documentation and the menu system. The programmes are as follows:
\begin{description}
	\item [Desk-based:] GRASS, QGIS, FWTools
	\item [Web-based:] XAMPPlite (full apache/MySQL/PHP web server stack), PostgreSQL with PostGIS, MapServer, OpenLayers, Tilecache.
\end{description}

The documentation has been written in the form of a tiddlywiki. This is single-page html wiki, so can be edited by users to add their own notes as they see fit. The menu system is based on the ``daily cup of tech'' menu, built by Tim Fehlman. It is built using autoit, and runs from the system tray. It provides links to the setup programmes (where necessary), and to the start and stop executables for each package. It also allows the user to browse the drive file system in the normal fashion.

\section{Problems and Learning Curves}
Whilst some of the programmes, such as XAMPPlite, were designed to run in this way, and others, such as QGIS were known to work, others needed a degree of alteration in order to run without the need for a fixed drive letter. In many cases this was achieved by editing the batch files that set up the working environment for the programme, or by installing in the traditional way on a Windows PC and copying the programme folder over (the trial and error approach).  

Furthermore, the native Windows installation of GRASS is complex. Understanding the syntax of batch files, and in particular how programmes like GRASS use them, was the main problem that had to be overcome in the construction of the ``Portable GIS'' suite. 

In other cases, such as PostgreSQL, where traditionally a particular user was required to run the programme, the situation appeared hopeless until a chance post on the mailing list indicated that this was no longer the case. PostgreSQL could now be installed and run as the user logged on to the PC, and no longer needed to be run as a service. This made the process of installation on a USB stick relatively simple.

Some problems still remain. Windows machines in work or academic environments are often locked down to prevent services from running or setting environment variables. In these cases, many aspects of the suite will not work. Currently it is difficult to see a way round this issue, other than to bring it to the attention of end users!

\section{The way forward}
As well as generally streamlining the suite, there are several ways forward. More programmes can be added, where there is a need. One issue with this is the increasing size of the package (currently 800MB).

A transparent and straightforward procedure for updating the individual packages needs to be identified. Either detailed documentation for updating each package needs to be provided, including those files that should NOT be updated (those that have been modified to allow the programme to run portably for example), or the author needs to take responsibility for producing a new suite when programmes are updated.

It may be possible to streamline the installation by removing duplicate libraries and hence reduce the size of the overall package. For example, mapserver is included both as a web programme and also in the FWTools application, and GRASS is included in it's own right and as part of the QGIS installation. However, this would prevent users from updating individual programmes as outlined above. 

Requests have been made to provide cross-platform versions of the suite. This would be an interesting challenge, but to a certain extent it is assumed that Linux users will be more familiar with the installation of open source software and the community around it!

At the moment it is not publicly available due to it's large size and the bandwidth required for hosting. Obviously if it is to be used, then it needs to be hosted. Various options for this are available and being investigated at this time.  For more information see the Archaeogeek blog discussion thread.\footnote{Archaeogeek blog discussion thread: \url{http://www.archaeogeek.com/blog/portable-gis/}}.

\address{Jo Cook\\
   Oxford Archaeology North\\
  \url{http://www.oxfordarchaeology.co.uk}\\
  \email{j.cook AT oxfordarch.co.uk}}

