Friday, August 3, 2018

Developing Gramps on Ubuntu 16.04

Gramps is an open-source genealogy research tool written in Python3.

If you want to develop it on Windows, here are the instructions to do that.

To get started you'll need to read through a lot of documentation.
As for Python3 these can help:

Dependencies needed for Gramps

...are listed in the README.md:

EDIT: I just noticed this in the Getting Started and it might work instead of all those individual installations below, but you have to enable source code sources before you can do it: apt-get build-dep gramps

Instructions for Ubuntu 16.04:
  • Python 3.2 or greater: already installed
    • install python3-pip for further usage: sudo apt-get install python3-pip
  • GTK 3.10 or greater: already installed
  • pygobject 3.12 or greater: install it by running the following command from terminal:
    sudo apt install python-gi python-gi-cairo python3-gi python3-gi-cairo gir1.2-gtk-3.0
  • GObject Introspection bindings:
    • cairo 1.13.1 or greater: already installed (libcairo2)
    • Pycairo 1.13.3 or greater: already installed (python-cairo)
    • pango: already installed (libpango-1.0-0, libpango1.0-0)
    • pangocairo: already installed (libpangocairo-1.0-0)
    • librsvg2: already installed (librsvg2-2)
    • xdg-utils: already installed (xdg-utils)
    • bsddb3:
      • install BerkeleyDB dev package: sudo apt-get install libdb5.3-dev
      • install bsddb3: pip3 install bsddb3 --user
    • sqlite3: should be already installed with python.
  • language-pack-gnome-xx: i.e.: sudo apt-get install language-pack-gnome-en
  • osmgpsmap: 
    • install osmgpsmap: sudo apt-get install libosmgpsmap-1.0-1
    • and the python bindings: sudo apt-get install gir1.2-osmgpsmap-1.0
  • Graphviz: sudo apt-get install graphviz
  • PyICU: 
    • install ICU dev package: sudo apt-get install libicu-dev
    • and PyICU: pip3 install pyicu --user
  • Ghostscript: already installed
  • GExiv2: to get rid of the error popup when running Gramps
    • sudo apt-get install libgexiv2-2
    • sudo apt-get install gir1.2-gexiv2-0.10

Try what you cooked

  • download: git clone https://github.com/gramps-project/gramps.git Gramps
  • build: python3 setup.py build
  • DON'T INSTALL IT! (that would be python3 setup.py install)
  • run: python3 Gramps.py