Gramps and Windows

From Gramps
Jump to: navigation, search
Gnome-important.png
Attention:

This page is somewhat old. It would benefit from some updating.
If you are a Windows user of Gramps please edit it or enhance it. Thanks!

Gramps version 3.0.x and higher runs well on a Windows PC.

Gnome-important.png
Attention:

Before trying something, make a backup of your data. All the following details are for information purposes only.
Nobody guarantees anything at all!

Installation

The original instructions for installation on Windows are given here, but they were written when a Windows user also had to (manually) install various other programs ("dependencies") in order to get Gramps to work. A more-modern way (and a much easier way) to install Gramps on Windows is to use the "all-in-one" installer, since it has all the needed programs ("bundled").

Many of the comments on this wiki page were written for that first/original installation method, when many things had to be manually done or configured. Here are two examples of that (which may be safely ignored if you have used the all-in-one (GrampsAIO) method).

To enable the use of the graphical reports and use PDF export see "Additional plugins"

The graphics reports of Gramps are available only if you also set the right path in your environment. The related lines of a .CMD or .BAT file may look like this (based on the default installation of Graphviz 2.26):

  @rem for the graphics reports
  set path=%PATH%;C:\Programme\Graphviz 2.26\bin;

Problems and Help

For known problems or problem reports go to the Gramps Bugtracker. For discussions about Gramps on Windows visit the gramps-users mailing list (or gramps-devel if you are a developer).

(In the distant past Gramps on Windows used to be less supported and had a separate gramps-windows mailing list, but by May 2011 it had enough active developers that the decision was made to use the regular mailing lists instead. So an archive of that mailing list exists but current problems or comments should be on the regular users or developers lists.)

Family trees states and virus scanners

During your gramps' sessions, please try to avoid real time virus scanning on your Family Trees folders:

letter:\Documents and Settings\<~username>\Application Data\gramps\grampsdb

Environmental Variables

Here is another comment written for that first/original installation method, when many things had to be manually done or configured (which again may be safely ignored if you have used the all-in-one (GrampsAIO) method).

Gramps looks during the start-up-phase for some environment variables to control several features. It's better to use a ".CMD" or ".BAT" file to control this environment variable instead of a permanent setting in the windows registry, to have the possibility to go back to the Gramps standard values (especially to go back to the Gramps standard language - English) in the case you want to report about a problem or a bug.

Setting the working language

Gramps looks during the start-up-phase for an environment variable (called LANG) to switch to a special language. It's better to use a ".CMD" or ".BAT" file to control this environment variable instead a permanent setting in the windows registry, to have the possibility to go back to the Gramps standard language (English) in the case you want to report about a problem or a bug.

One may use a ".CMD" file having this content:

  @rem it's to switch to GERMAN
  SET LANG=de_DE.UTF-8
  @rem following the discussion of Bug:2111 there was added the next line
  SET LANGUAGE=de_DE.UTF-8
  gramps.py

Hints: You have to place the ".CMD" file into the same folder as the file "gramps.py" or to set your environment variable PATH to include the path to the file "gramps.py". At least in one case there was a problem using a line "pythonw.exe gramps.py" in a ".CMD" file: The usage of the environment and STDIN, SDTOUT and STDERROR does not work properly. May be, there is any where a Phyton-Windows specialist who knows more about this topic or is able to solve the problem.

For the LANG variable may be used also other values (see rel_xx.py, "register_relcalc(RelationshipCalculator,[...])) having the same effect. You should not use "LANG=de_UTF-8" as suggested before, because this value does not effect all necessary parts of Gramps (particularly the relationship translation may not work) only.

Setting the configuration path

During the boot process of Gramps there is a check for an environment variable called GRAMPSHOME. Without this environment variable Gramps uses the default Windows path to handle (at the first time: to place) all configuration files there:

<system drive>\<userpath>\<application data>\gramps

For a German Windows it may look like this (if the system drive is 'C:' and the lock-in user name is 'Paul'):

C:\Dokumente und Einstellungen\Paul\Anwendungsdaten\gramps 

For an English Windows the example shoot look like this:

C:\Documents and Settings\Paul\Application Data\gramps

If the variable GRAMPSHOME is available, than Gramps uses the value to look for a directory 'gramps' inside to handle (at the first time: to place) all configuration files there. So, (together with the build-in setting for the storage place of the database files: Edit --> Preferences --> Database) it's a nice way to have the complete database including all family trees at one global place for backups or for a transfer from one PC to an other.

But be sure what you are doing! You may loose the link to the Gramps databases, if you play with this values without moving or copying related files already written by Gramps (e.g. your family trees or your configuration files!). There will be no problem if you change these settings without having any family tree (before editing any thing first time or before importing any file first time).

Here is an example for the related .CMD file command lines

@rem set the path for Gramps configuration files
set GRAMPSHOME=E:\GRAMPS

Updating Gramps

You should first read the instructions (and warnings) in Upgrading Gramps, as they are true for all platforms (including Windows).

The following comment is another which was written for that first/original installation method, when many things had to be manually done or configured. It perhaps may be safely ignored if you have used the all-in-one (GrampsAIO) method, since probably just installing the latest all-in-one version on top of the old one will work.

Windows users will need to check the version of all dependencies for each version update. The Windows installer page lists the versions you will need. If you have trouble seeing which version you have, just install the recommended version to be sure.

Don't forget to adjust the environment path for Graphviz (see section "Installation"), because the default path for the binaries of this tool changes by every new version.

Since Version 3.0.4 there is available an installer providing also the possibility to update an existing Gramps version.

Building from source

See the documentation for more information to get the newest Python files (Installation, see chapter 'Obtaining the source'). As usual in this community the update includes only the Gramps part of the software. But if one did run first all steps of the installation there should be no problems using the update.

At least up to version 3.0.2 you have also to compile and replace your language file. You have to compile a new .mo file based on the .po file using a POcompiler:

  1. Get your special .po file from the upgrade package (e.g. de.po for German) from the folder called "po"
  2. Get the tools from http://translate.sourceforge.net [1] (e.g. Translate-Toolkit-1.2.0-setup.exe as a complete setup for MS Windows; but may be, there is a later version).
  3. Use the compiler (e.g.: C:\Programme\translate-toolkit\pocompile.exe de.po gramps.mo)
  4. Replace the old gramps.mo by the new one. It should be placed in "...\lang\de\LC_MESSAGES" (e.g. C:\Programme\gramps_prog)

Opening media files

From Gramps version 3.1.x:

To open any media file Gramps uses the default application as defined for each file type inside MS Windows.

Gramps version 3.0.4 and earlier

Gramps has some predefined MIME types for some file types (e.g. ".JPG", ".BMP" or ".PDF") and uses the MIME definitions of your Windows System, to select the external application accessing the media file. This is not the usual way of the Windows Explorer where only the file's extension defines the default application for the file (the method is usual called File Associations)!

If Gramps knows the MIME type of a special file this MIME type will be shown in the column "Type" of the table "Media". But it may be, that this MIME type is an unknown or incomplete MIME type of your system. In this case one has to define the correct MIME type. It’s possible but really not easy. So, a better way would be, to find an application where the MIME definition for file type of your choice will be defined as a MIME type or to focus onto the build-in file types of Gramps.

There is a general limitation for Gramps using MIME definitions: Gramps is not able to handle MIME definitions where the command "OPEN" is defined by using the method DDE. Because e.g. PaintShopPro in version 6.0.0 is using DDE, it works not as image viewer for Gramps.

Note: Up to release 3.0.1 for file and folder names standard ASCII letters are allowed only (e.g. no 'Ü', 'Ä', .... on a German Windows)! This issue is fixed in the 3.0.2 release (see [2])

Archiving

The new possibilities for archiving versions of a Gramps database are available since Gramps version 3.0.2 but lost it's support in Gramps 3.1.x (see Bug# 3124)

Some special hints to use the functionality:

  1. Get RCS for Windows from the internet: [3]
  2. Build the correct Windows Environment:
    1. Gramps needs to find the executables of RCS. That's why one should add the path to these files to the environment variable PATH. It's better only to change temporary the PATH variable by using a ".CMD" or ".BAT" file. And it's also better to place the "RCS-path" at the beginning of the value of the variable PATH. This is because other programs could use executable files having equal names as RCS executables. Known is CVS for Windows which uses it's own version of rlog.exe.
    2. RCS needs an environment variable (called TZ) for your time zone, e.g.: "TZ=CET-1" for Central European Time less one hour (that’s for instance for MUNICH).

So the complete “.CMD” may look like this:

  @rem for the graphics reports
  set path=%PATH%;C:\Programme\Graphviz 2.26\bin;
  @rem it's to switch to GERMAN
  SET LANG=de_DE.UTF8
  @rem following the discussion of [4] there was added the next line
  SET LANGUAGE=de_DE.UTF8
   
  @rem RCS environment start
  @rem the time zone for RCS
  SET TZ=CET-1
  @rem set the path to RCS bin files for Windows
  SET PATH=C:\Programme\rcs\bin\win32;%PATH%
  @rem RCS environment end
  
  @rem set the path for Gramps configuration files
  set GRAMPSHOME=E:\GRAMPS
  
  @rem The following -O option prevent the developer mode for Gramps.
  @rem This mode provides additional non-translated menu entries 
  @rem     to be used for developer only.
  python -O gramps.py