Difference between revisions of "Installation"

From Gramps
Jump to: navigation, search
(Full install walkthrough)
m (Gramps 4.x)
Line 305: Line 305:
  
 
==== Full install walkthrough ====
 
==== Full install walkthrough ====
Following walkthrough was done on a clean install of Kubuntu 13.04 which did have the GTK applications firefox, inkscape and gimp installed. Equal steps should be done on other platforms
+
Following walkthrough was done on a clean install of Kubuntu 13.04 which did have the GTK applications firefox, inkscape and gimp installed. Equal steps should be done on other platforms.
  
 
  sudo apt-get install subversion
 
  sudo apt-get install subversion
Line 363: Line 363:
 
   make
 
   make
 
   sudo make install
 
   sudo make install
 +
 +
'''run Gramps'''
 +
You can now use gramps from the source directory with
 +
  python Gramps.py
 +
 +
You could install Gramps, but you better wait for a packages distributed from [http://sourceforge.net/projects/gramps/files/] and install those via your package manager
  
 
'''look and feel'''
 
'''look and feel'''

Revision as of 21:12, 10 May 2013

Latest released version

The latest released version is Gramps 5.2.0. This version may not yet be available for installation on your platform. Please visit the Download page for more information.

Upgrading Gramps

Gnome-important.png
Warning

If you are Upgrading Gramps from a previous version you should first follow these intructions.

If you are Upgrading Gramps from a previous version you should first:

  1. Use your old version of Gramps to backup or export your Family Trees to GRAMPS XML (you find backup in the Family Tree menu of recent Gramps versions, otherwise use export in the same menu but uncheck privacy options in the Exporter Assistant in order to export all data).
  2. Uninstall your old version of Gramps
  3. Install the new version of Gramps by following the instructions below
  4. Open your existing Family tree.
  1. Normally, opening just works, and will upgrade your data if needed. If successfull, save the backup you took in a safe place.
  2. In case opening or upgrading your existing Family Tree failed, do the following:
  1. Create a new Family Tree
  2. Import your old Gramps XML data in this Family Tree

Additional software Gramps can benefit from

Gramps does not rely on the following programs, however, having them will increase your productivity:

  • Spell checking: Installing gnome-python2-extras and python-enchant provides the gtkspell module and the enchant module, which adds spell checking in the notes
  • Graphviz, Inkscape: Gramps can make nice Genealogical trees (relationship graphs). These are generated by the Graphviz package, which defines a code (dot), as well as programs to produce graphs (dotty, to be called from command line). This gives you as researcher most power over how your tree will look, but has a learning curve. An alternative is to make a graphical report, converting the tree to an svg file, which you then can open/edit/refine in eg Inkscape.
  • ttf-freefont: Useful as a font that supports a large subset of the unicode and is a true type. This works well with both print and graphviz output.
  • XdgUtils is a set of command line tools that assist applications with a variety of desktop integration tasks. About half of the tools focus on tasks commonly required during the installation of a desktop application and the other half focuses on integration with the desktop environment while the application is running. Even if the desktop components of your application are limited to an installer, configuration or management tool, Xdg-utils provides you with an easy way to enhance the usage experience of your customers by improving the integration of these components in the user's environment.
  • pyexiv2 is a module that allows Gramps to read and write metadata embedded in image files. It is used in the Metadata Viewer and Edit Exif Metadata gramplets.
  • osmgpsmap is a library which provides GPS mapping functionality. It is used in the Geography views.

Other packages might also be useful:

Linux

Automatic download and install of Gramps

Before downloading Gramps from this site, see if your operating system's repository makes the current Gramps 5.2.0 version available. You could also visit Gramps stable on Sourceforge and look at the version number of the top package.

To check what is available specifically for your Linux operating system some methods are listed below:

Linux Operating System Command Line
Debian based systems
(Ubuntu & variants, Mepis,...)
sudo apt-get install gramps
Gentoo (and Sabayon) sudo emerge gramps
Mandriva sudo urpmi gramps
Redhat based systems
(Fedora, CentOS...)
sudo yum install gramps
OpenSUSE sudo zypper install gramps

Manual download and install of Gramps

If your Linux operating systems repository does not have the current version, then you may be able to download it from this site. Some helpful users of Gramps have made packages for various systems. If you are lucky you'll find your system below. If it's missing you can contact the developers email list for advice.

Ubuntu and derivatives

Repository packages for Ubuntu and derivatives (Kubuntu, Mephis, LinuxMint, ...): are available on Gramps download page. See OldFiles for archives.

Debian

Debian: the latest version should be in the unstable repository (Sid Gramps) and can be upgraded from your package manager. The testing repository is updated 10 days later (except near a new stable release), see Testing Gramps. Released versions of Debian (etch and lenny) contain older versions of Gramps, see the list of versions of Gramps in Debian.

SuSE

SuSE: Richard Bos has been providing the Gramps releases for OpenSUSE. The repository for OpenSUSE 11.1 is available from [1] or [2]. Note that at the time of writing this repository is not the same as that in the repository list as "Education" and must be added as a URL. The repository for 11.0 is [3] and 10.3 is [4]. For earlier versions of OpenSUSE (10.2) see the forum entry about satisfying Gramps dependencies for SuSE with the rbos and SMART. Also, there is an other alternative using openSUSE BuildService.

Mandriva

Mandriva: Newer versions of Gramps are sometimes backported. To install backports you must enable the backports repository (make sure you understand the instructions on the Mandriva wiki). If the latest version is not in the backports repository you cab try the contrib repository.

Fedora

Fedora: For Fedora look on the Gramps download page for a package containing fc with your number and ending with .rpm. The alternative to installing from source is to build a package from an rpm spec file, or install a binary from fedora testing.

Slackware

Slackware 13.0: Gramps 3.2.5 is available via LinuxPackages.

Different GNU/Linux distributions

Different GNU/Linux distributions have other preferred ways to download and install packages for Gramps. Please read the installation instructions specific to your distribution before downloading.

In all other cases, you must download the stable source package (the file ending with '.tar.gz') and install GRAMPS manually. See the section about installing from source for details.

Gnome and KDE

You can use both, but Gramps fits in better with GNOME.

For KDE there are some minor issues due to some (GTK) issues outside of Gramps. Check the KDE page to know what these problems might be.

For GNOME, there are some issues due to some (ATK/GAIL) issues outside of Gramps. Check the Known issues to know what these problems might be.

Also, you might look at XdgUtils.

Gramps on handhelds

Gramps can run fine on some small-factor devices. Users have been successful in using Gramps on:

Live Genealogy CD

If you are interested in Gramps, but are afraid to actually install it or unable to install it (not your PC, windows, no internet at home, work laptop, ...), then try out our Linux Genealogy CD. It runs without installing on the hard disk and contains a collection of open source, free, genealogy programs. You can then install Ubuntu 10.10 and Gramps from the CD anytime you like.

Windows, FreeBSD, Mac OS X, Solaris

Windows

Be aware there is a least 3 different ways you can install/use Gramps under windows. The method you choose will be dependent on your requirements and how much extra work you wish to put into setting up your environment. In order of difficulty:


More information of each of these installation methods can be seen on the download page.

Building from source

Fortunately for users of Microsoft Windows, some users have made a Windows installer. So far there have not been any reports of serious differences between the official builds of Gramps and the Windows Installer, so the future looks promising, but please, use this at your own risk.

Mac OS X

A ready-to-run application for Max OS X has been available since September 2009 for both Intel and PPC Apple computers. It is wise to back-up data carefully before using the application (especially if you are upgrading from a previous version of Gramps).

Please read the installation instructions at Mac OS X:Application package before you use the program.

Free/OpenBSD and Solaris

For FreeBSD and Solaris there are experimental install instructions.

  • For FreeBSD use the /usr/ports/science/gramps port. In case of error on FreeBSD 8.0, read ticket #3228.
  • For OpenBSD use the gramps port
  • Installing on BSD is as straightforward as on Linux, apart from some minor issues like tools having different names. See the BSD page for details.
  • Gramps has been successfully installed from source on both Solaris 10 (SPARC) and OpenSolaris X86 (2008.05). Please see the Solaris page for step-by-step details.

Installing Gramps from source code

Gramps 3.4.x is the main current version, and is available in packaged form for some distributions.

Gramps 4.x is a new version that has different requirements. Installation of this version is described here

Gramps 3.4.x

General requirements

Gramps 5.2.0 requires python 2.6 or greater, pygtk 2.16 or greater and librsvg2

Linux package requirements

Debian /Ubuntu Fedora /Redhat Comment
python python Required (needs version 2.6 or later)
python-gtk2 pygtk2 Required (needs 2.16 or greater)
BSDDB BSDDB Current backend
librsvg2-common librsvg2 Required for building
libglib2.0-dev glib2-devel Required for building
librsvg2-devel Required for building
intltool intltool Required for building
gcc make gettext Required for building
xdg-utils xdg-utils Required for Gramps-3.1.x or later
rcs rcs Suggested for running
python-gtkspell gnome-python2-gtkspell Suggested for running (spell check). Included in the python-gnome2-extras package in older Debian distributions.
python-webkit python-gtkmozembed WebKitgtk pywebkitgtk Required for the HTML view
python-pygoocanvas goocanvas pygoocanvas Required for Graph View
graphviz graphviz graphviz-python Required for some reports and views
Django Required for http://gramps-connect.org Gramps-Connect
python-pyexiv2 pyexiv2 Required for the Metadata Viewer and Edit Exif Metadata gramplets
libosmgpsmap-dev python-osmgpsmap osm-gps-map Required for the Geography views
gtk2-engines-pixbuf Solves issue with 'Unable to locate theme engine in module_path: "pixmap"'

Under Redhat/Fedora you can install all of the above with:

sudo yum install python pygtk2 xdg-utils rcs gnome-python2-gtkspell librsvg2 \
  librsvg2-devel intltool gnome-doc-utils gcc automake autoconf autogen \
gettext WebKitgtk pywebkitgtk goocanvas pygoocanvas graphviz graphviz-python \ Django pyexiv2 inkscape ImageMagick

Obtaining the source

There are two ways to get the source code: download a stable version source, or checkout the source from svn. Please, now is the time to read the INSTALL and README files accompanying the code. They come with the most recent information. Details on each download method:

1. Download a stable version

  • The latest stable version of Gramps can be downloaded from the Gramps SourceForge file area. Eg: gramps-5.2.0.tar.gz. Extract this file into a directory:

  tar xzvf gramps-zzz.tar.gz

and then go into this directory:

  cd gramps-zzz

  • If you are interested in testing out the very latest development versions of Gramps, they can be obtained from SVN, see Brief introduction to SVN. The SVN versions of Gramps are potentially very dangerous as they have not been extensively tested - especially the "trunk" version which contains features that may still be partly implemented. Be aware that they may be prone to crashing and cause extensive data loss. Please use with extreme caution - and only ever on a copy of your data!

2. Download from SVN

You can get a branch version (similar as above) or the latest bleeding-edge version through SVN, such as:

svn co https://svn.code.sf.net/p/gramps/code/tags/gramps-3.4.2/ gramps

for the most recent development version, see Getting started with Gramps Trunk.

Upgrading Gramps

If you have an older version of the Gramps source code installed you need to make a decision what you want to do with it before installing a later version. If you wish to keep the old version, make sure that you read the instructions in the INSTALL file regarding the use of the --prefix option to specify where the new version gets installed.

Should you just want to do a straightforward replacement instead, make sure that you remove the older version before you install the new version. Do not install over the top of the old version. As new versions of Gramps are developed, some functionality is occasionally rewritten in different ways. If you install over the top of an existing installation you run the risk that the old code left behind from the old version may be used instead of the new, sometimes with unintended consequences. If you installed from source, the best way of removing the old version is to run

 make uninstall

as root from where you installed the old version. Use your distribution's package manager to uninstall if your old version was installed as a package.

Note that you should use your old Gramps version to export backup copies to GRAMPS XML before removing the old version.

Build on Linux

Gramps provides a script that can be used to prepare the code for building. This script automatically calls the standard configure script:

 ./autogen.sh   # as regular user

This script will report any missing dependencies. Install these (see also INSTALL file). Building from source code typically requires that the development versions of the required libraries be installed. You might consider setting a prefix path with autogen.sh, see the INSTALL file for instructions. Standard install is in /usr/local.

Once a successful run of autogen.sh has been completed, you can run the typical make procedure.

 make  # as regular user

then

 make install  # as root

Local installation without root privileges is possible, instructions are available on the INSTALL file, most importantly one needs to supply a --prefix= and a --with-mime-dir= argument to autogen.sh.

Mac OS X:Build from source

There are several different ways of building Gramps from source on Mac OS X. An overview of building from source is given at Mac OS X:Build from source.

Macports and fink versions of Gramps have been used.

The latest version of MacPorts Gramps is 5.1.6. The latest official unstable fink version is 3.0.4 for Mac OS X 10.5 on both PPC and Intel. There is currently no official stable fink version of Gramps. (As at February 2012)

Instructions for building the pre-built binary version (Mac OX X Application package) are given at Mac OS X:Build from source:Application package. Some discussion about earlier attempts is at Mac OS X:Build from source:gtk-osx with bugs reported at Mac OS X:Build from source:gtk-osx:bugs

An older build approach is given at Mac OS X:Build from source:Native OS X.

Gramps 4.x

General requirements

Gramps 4.0 requires python 2.7 or python 3.2 or greater. At the moment, python 2.7 is still the most stable way to use Gramps! Also needed are GTK 3.0 or greater, pygobject 3.3.2 or greater, cairo, pango, pangocairo with introspection bindings (the gi packages), librsvg2 (svg icon view), xdg-utils. Furthermore, bsddb3 is required for Python 3.2 (not python 2.7).

Full install walkthrough

Following walkthrough was done on a clean install of Kubuntu 13.04 which did have the GTK applications firefox, inkscape and gimp installed. Equal steps should be done on other platforms.

sudo apt-get install subversion
svn co https://svn.code.sf.net/p/gramps/code/branches/maintenance/gramps40 gramps40
cd gramps40
sudo apt-get install intltool
python setup.py build
sudo apt-get install python-gobject python-gi python-cairo python-gi-cairo
sudo apt-get install gir1.2-freedesktop gir1.2-pango
sudo apt-get install gir1.2-gtk

If you now run

python Gramps.py -v

you should see all required packages are found. You can now start Gramps locally with the command

python Gramps.py 

To install optional components, do the following:

sudo apt-get install python-pyicu graphviz rcs gir1.2-webkit-3

This gives all the easy optional functionality in Gramps. The rest is not yet present in Ubuntu 13.04, so if you want them, you need to compile them

spell checking Remove first present version, check that this command does not remove programs you use!

  sudo apt-get remove libgtkspell-3-0 python-gtkspellcheck

Now we obtain the code to build this package

 sudo apt-get install mercurial
 hg clone http://hg.code.sf.net/p/gtkspell/code gtkspell-code
 cd gtkspell-code
 sudo apt-get install build-essential sudo apt-get install libgirepository1.0-dev
 sudo apt-get install valac libgtk-3-dev
 aclocal ; autoheader; automake ; autoconf
 ./autogen.sh
 make
 sudo make install
 sudo cp /usr/local/lib/girepository-1.0/GtkSpell-3.0.typelib /usr/lib/girepository-1.0/
 sudo cp /usr/local/lib/libgtkspell3-3.* /usr/lib/

osmgpsmap The geography view needs patches which are not included yet in the official version.

 sudo apt-get install git
 git clone git://github.com/nzjrs/osm-gps-map.git
 cd osm-gps-map
 sudo apt-get install libsoup2.4-dev gnome-common gtk-doc-tools
 ./autogen.sh --prefix /usr
 make
 sudo make install
 

gexiv2 Minimally version 0.5 is needed, but only 0.4 is available in 13.04. So remove 0.4 if present, and we add 0.5 or later ourselves. Obtain it from [5], I downloaded 0.6.1, and extracted it in directory libgexiv2-0.6.1. To install this

 cd libgexiv2-0.6.1
 sudo apt-get install exiv2 libexiv2-dev
 ./configure --enable-introspection --prefix=/usr
  make
  sudo make install

run Gramps You can now use gramps from the source directory with

 python Gramps.py

You could install Gramps, but you better wait for a packages distributed from [6] and install those via your package manager

look and feel Normally, Gramps does not look that nicely when not used on Gnome desktop. To remedy this, install a theme switcher. You can edit configuration files if you don't like to install these dependencies, see eg [7]

sudo apt-get install gnome-tweak-tool

You can search on gtk 3 themes in your package manager and install one that you like. For example, install clearlooks:

sudo apt-get install clearlooks-phenix-theme

then use the gnome-tweak-tool to switch to that. For KDE you need to go also to Settings->Appearance->GTK and set the GTK 3 theme there to the one you installed.

Linux package requirements

Required

Debian /Ubuntu Fedora /Redhat Comment
python python Required (needs version 2.7 or later)
python-gobject, python-gi ? Required (needs 2.? or greater)
python-cairo python-gi-cairo ? Required
gir1.2-pango-1.0 ? Required
gir1.2-gtk ? Required is GTK 3.6+
BSDDB BSDDB Current backend, python3-bsddb3 for python 3!
xdg-utils xdg-utils Required for Gramps-3.1.x or later
python-pyicu ? Required for correct sorting
libgtkspell-3-0 python-gtkspell ? Required spell checking

Required for building

Debian /Ubuntu Fedora /Redhat Comment
librsvg2-common librsvg2 Required for building
python-dev libglib2.0-dev glib2-devel Required for building
python-gobject-dev libgirepository1.0-dev ?
libcairo2-dev python-cairo-dev ?
librsvg2-devel Required for building
intltool intltool Required for building
gcc make gettext Required for building

Strongly recommended

Debian /Ubuntu Fedora /Redhat Comment
osmgsmap
graphviz graphviz graphviz-python Required for some reports and views
python-pygoocanvas gir1.2-goocanvas-2.0-9 ?
python-pyexiv2 ? exiv data on pictures

Optional

Debian /Ubuntu Fedora /Redhat Comment
python-gtkspell gnome-python2-gtkspell Suggested for running (spell check). Included in the python-gnome2-extras package in older Debian distributions.
rcs rcs Suggested for running
python-webkit python-gtkmozembed WebKitgtk pywebkitgtk Required for the HTML view
python-pygoocanvas gir1.2-goocanvas-2.0-9 goocanvas pygoocanvas Required for Graph View
Django Required for http://gramps-connect.org Gramps-Connect
python-pyexiv2 pyexiv2 Required for the Metadata Viewer and Edit Exif Metadata gramplets
libosmgpsmap-dev python-osmgpsmap osm-gps-map Required for the Geography views
gtk2-engines-pixbuf Solves issue with 'Unable to locate theme engine in module_path: "pixmap"'

Under Redhat/Fedora you can install all of the above with:

sudo yum install python pygtk2 xdg-utils rcs gnome-python2-gtkspell librsvg2 \
  librsvg2-devel intltool gnome-doc-utils gcc automake autoconf autogen \
gettext WebKitgtk pywebkitgtk goocanvas pygoocanvas graphviz graphviz-python \ Django pyexiv2 inkscape ImageMagick

Obtaining the source

There are two ways to get the source code: download a stable version source, or checkout the source from svn. Please, now is the time to read the INSTALL and README files accompanying the code. They come with the most recent information. Details on each download method:

1. Download a stable version

  • The latest stable version of Gramps can be downloaded from the Gramps SourceForge file area. Eg: gramps-5.2.0.tar.gz. Extract this file into a directory:

  tar xzvf gramps-zzz.tar.gz

and then go into this directory:

  cd gramps-zzz

  • If you are interested in testing out the very latest development versions of Gramps, they can be obtained from SVN, see Brief introduction to SVN. The SVN versions of Gramps are potentially very dangerous as they have not been extensively tested - especially the "trunk" version which contains features that may still be partly implemented. Be aware that they may be prone to crashing and cause extensive data loss. Please use with extreme caution - and only ever on a copy of your data!

2. Download from SVN

You can get a branch version (similar as above) or the latest bleeding-edge version through SVN. You can download a specific release via a tag, or you can download the latest development. First, you need subversion installed, eg on Debian based linux:

sudo apt-get install subversion

Then, download a tagged version:

svn co https://svn.code.sf.net/p/gramps/code/tags/gramps-4.0.0/ gramps400

or latest development:

svn co https://svn.code.sf.net/p/gramps/code/branches/maintenance/gramps40 gramps40


More info can be found in Getting started with Gramps Trunk.

Upgrading Gramps

If you have an older version of the Gramps source code installed you need to make a decision what you want to do with it before installing a later version. If you wish to keep the old version, make sure that you read the instructions in the INSTALL file regarding the use of the --prefix option to specify where the new version gets installed.

Should you just want to do a straightforward replacement instead, make sure that you remove the older version before you install the new version. Do not install over the top of the old version. As new versions of Gramps are developed, some functionality is occasionally rewritten in different ways. If you install over the top of an existing installation you run the risk that the old code left behind from the old version may be used instead of the new, sometimes with unintended consequences. If you installed from source, the best way of removing the old version is to run

 make uninstall

as root from where you installed the old version. Use your distribution's package manager to uninstall if your old version was installed as a package.

Note that you should use your old Gramps version to export backup copies to GRAMPS XML before removing the old version.


Local installation without root privileges is possible, instructions are available on the INSTALL file.

See also