Oct 20 2007

Turning Ubuntu into a GIS workstation

Published by perrygeo at 10:31 am under GIS Tutorials, GRASS, Python, QGIS, Software, Uncategorized, postgis

It just keeps getting easier and easier to get a fully functional open source GIS workstation up and running thanks to Ubuntu. The following instructions will take your vanilla installation of Ubuntu 7.10 and add the following top-notch desktop GIS applications:

  • Postgresql/PostGIS : a relational database with vector spatial data handling
  • GRASS : A full blown GIS analysis toolset
  • Quantum GIS: A user-friendly graphical GIS application
  • GDAL, Proj, Geos : Libraries and utilities for processing spatial data
  • Mapserver : web mapping program and utilites
  • Python bindings for QGIS, mapserver and GDAL
  • GPSBabel : for converting between various GPS formats
  • R : a high-end statistics package with spatial capabilities
  • GMT : the Generic Mapping Tools for automated high-quality map output

While this is not a comprehensive list of open source GIS software, these packages cover most of my needs. If you want to live on the bleeding edge and have to have the absolute latest versions, you’ll be better off installing these from source. But for those of us that want a stable and highly functional GIS workstation with minimal fuss, this is the way to go:

  1. Go to System > Administration > Software Sources and make sure the universe and multiverse repositories are turned on. Close the window and the list of available software packages will be refreshed.
  2. Open up a terminal (ie the command line) via Applications > Accessories > Terminal and type the following:

    sudo apt-get -y install qgis grass qgis-plugin-grass mapserver-bin gdal-bin cgi-mapserver \
    python-qt4 python-sip4 python-gdal python-mapscript gmt gmt-coastline-data \
    r-recommended gpsbabel shapelib libgdal1-1.4.0-grass

    The sudo part indicates that the command will be run as the administrator user, apt-get -y install is the command telling it to install the list of packages and answer yes to any questions that pop up.

  3. There is one package that is worth upgrading to the latest and greatest - Quantum GIS. The latest version (0.9) is due out very shortly and has the ability to write plugins using the python programming language. A big plus!

    Download the latest build from http://qgis.org/uploadfiles/testbuilds/qgis0.9.0.debs_ubuntu_gutsy.tar.gz and extract it ( right-click > Extract Here ). In the directory you’ll see 4 .deb files, only 3 of which you’ll need unless you plan on doing any development work.

    Double click libqgis1_0.9.0_i386.deb and you’ll get a message saying an older version is available from directly from ubuntu. We already know this so just close and ignore it. Click Install Package and wait for it to complete then close out.

    Repeat for qgis_0.9.0_i386.deb and qgis-plugin-grass_0.9.0_i386.deb (in that order).

And there we have it, about 15 minutes depending on your internet speed and you’ve installed a high-end GIS workstation built completely on free and open source software.

19 Responses to “Turning Ubuntu into a GIS workstation”

  1. Jachymon 21 Oct 2007 at 7:57 am

    looks like I’ll have more time now :-)

  2. peterkon 21 Oct 2007 at 10:16 pm

    thanks matt for great post. i tried to install those programs and having difficult..got Couldn’t find package .cgi-mapserverpython-qt4 …also i’m newbie so not sure i’m doing everything correctly. how do i check to see if programs have installed?
    thanks advance..

  3. simon jacksonon 23 Oct 2007 at 2:51 am

    ive got an earlier version (6.something) of Ubuntu. Any substantial benefits of this new version of Ubuntu? More importantly, will the above routine/software still be compatible with an older version?

  4. Simon Jacksonon 23 Oct 2007 at 10:24 am

    Having trouble installing, pasted the command into a terminal, and receive the following:

    Reading package lists… Done
    Building dependency tree
    Reading state information… Done
    Note, selecting gmt-coast-low instead of gmt-coastline-data
    E: Couldn’t find package libgdal1-1.4.0-grass
    jakc@jakc-Ubuntu:~$ sudo apt-get -y install qgis grass qgis-plugin-grass mapserver-bin gdal-bin cgi-mapserver\
    > python-qt4 python-sip4 python-gdal python-mapscript gmt gmt-coastline-data \
    > r-recommended gpsbabel shapelib libgdal1-1.4.0-grass
    Reading package lists… Done
    Building dependency tree
    Reading state information… Done
    E: Couldn’t find package cgi-mapserverpython-qt4

    Any idea whats going wrong. Am using Ubuntu 6.10 - the Edgy Eft

  5. Tarcizio Rodrigues Pintoon 24 Oct 2007 at 7:25 pm

    Hello,
    I’ve recently buy a GARMIN Etrex Legend GPS and I’m trying to combine GPS data and Google Eartg API. With XML and Java things are working fine, but this solution seems to be very helpfull and with professional environment.
    There’s some forum or discussion group or mail list to discuss about those topics (GPS + GIS + LINUX + MAPSERV, etc…) ???
    Best regards from Brasil.
    Tarcizio Rodrigues Pinto.

  6. Ceelia (from Tokyo)on 26 Oct 2007 at 7:25 am

    hi Matt, found your blog very interesting. I m just a beginner in the world of GIS, a student studying in Tokyo. I m doing a comparison on the open source GIS available (eg. Mapserver, Mapguide,Quantum Gis, GRASS). Can you share with me the strengths and weaknesses of these FOSS GIS available. I am also trying to compare commercial GIS ArcGIS, Geomedia, MapInfo and MapGuide. Do you the strength and weaknesses of these commercial GIS? I have contacted these companies, none of them could give me a satisfactory comparison. It seems they do not know much about their competitors. Arigatou Gozaimasu!

  7. Jeff From Dallason 27 Oct 2007 at 11:04 pm

    Thats basically the same setup that I’ve used for the past year except I’m running Debian (which is practically the same as Ubuntu). There are a couple of additional packages I installed: NCO tools for working with NetCDF data and FWTools which includes OpenEV, GDAL, MapServer, PROJ.4 and OGDI as well as some supporting components. Also a program called degrib from NOAA to convert grib format weather data to other formats such as NetCDF and ultimately to GeoTiff.

    This Debian “WeatherGIS” machine serves weather data customized for amateur astronomers using Mapserver to display the maps. http://astroforecast.org:8080

    Also uses the Yahoo Geocoding API to convert zip codes to lat/long within a python CGI to build their customized forecast on-the-spot.

    Not too bad for completely free and open-source, including the weather data provided by NOAA from their NOMAD site.

  8. Adrianon 30 Oct 2007 at 2:20 am

    You are right, nowadays it is really easy to get a fully functional open source GIS workstation. Thank you for publishing your favourite GIS apps! I agree with your choice of packages, I use quite the same packages.

  9. STHon 03 Nov 2007 at 5:19 am

    This would be great to try on a virtual environment (VMWare, Virtal PC, VirtualBox). Can you make a step-by-step on how to do this?

  10. walteron 14 Nov 2007 at 1:41 pm

    why ubuntu and not something else? thanks and great post!

    -walter

  11. tomeron 19 Nov 2007 at 9:41 am

    that is cool. Can you provide a small tutorial to show how to put these apps to use?

  12. Markon 10 Dec 2007 at 1:02 pm

    Matt,
    Thanks for the great HowTo. I did notice that the instructions that you gave do not include the Postgresql/PostGIS install that you talked about in the beginning. Adding “postgresql-8.2-postgis pgadmin3″ to the apt-get dialog should cover it. Thanks again.

    -Mark

  13. msieuricoon 10 Dec 2007 at 9:24 pm

    Hi Matt!
    Nice blog.
    Have you ever tried to build an Ubuntu Gis Server ?
    I’m trying to set up a server with Mapinfo clients / Mapx and Postgreslq.

  14. Joel Odomon 21 Apr 2008 at 3:42 am

    Great post. I’m new to Ubuntu, but Quantum GIS installed there easily and worked great. I just finished a review of QGIS on my blog (linked to in my name).

  15. […] must have heard the cries from my sleep.  To access his blog entry with full instructions, go to: http://www.perrygeo.net/wordpress/?p=10 Happy […]

  16. Pierreon 18 Dec 2008 at 5:23 am

    Hi PerryGeo or any of you,

    a short question related to the Ubuntu-Version: May this adding method described here also work on newer Ubuntu Versions like hardy and do you know if it is possible AND useful to install a gis-workstation like that on an x64 system?

    Thx from a more or less Newbie,

    Pierre.

  17. […] I am sayingis because I am trying to install in my new ubuntu but I find it very hard to do […]

  18. agghtea!on 06 Nov 2009 at 3:40 am

    @Ceelia (from Tokyo)

    As a new starter in all this open source stuff I’ll concentrate on your seond question, namely:
    I am also trying to compare commercial GIS ArcGIS, Geomedia, MapInfo and MapGuide. Do you the strength and weaknesses of these commercial GIS?

    It really depends on what you want to do with the packages. Arc has always been the leader in providing geocomputation. If your project is wanting to use serious analytical tools (and I’ve found none better then Arc to run Getis-Ord etc) then the beast from ESRI is for you…

    If, however, the mention of Getis-Ord means nothing to you and you want a GIS package to draw maps and provide basic analysis, then its MapInfo all the way.

    IMHO, MapInfo also provides superior database links (easy to host to an Oracle 8.x or even M$ Access database, or even Excel). So if your wanting to use the package as some means to manage and post geographically enabled data than go for MapInfo.

    p.s I also find that MapInfo’s FME translator is so rock solid that no matter what format your data is in it will translate it to .tab format in seconds. Coupled with that the (current) KML translation in MapInfo is A LOT more stable than ESRI’s - so if you want to get outputs into Google Earth MapInfo is the way to go!

  19. g-rafon 02 Dec 2009 at 3:58 am

    Wow grass is difficult to get started. I’ve installed everything, but for some reason, Grass has no data or mapsets. So I can’t get it started. Anyone know how to open the mapsets and retrieve the data for the program to work?

Trackback URI | Comments RSS

Leave a Reply