Gramps for Windows with MSYS2
warning Do not open your existing databases with the master branch, it might destroy your data, and will make it impossible to use the data in the stable version 52. To try it out, export your database to a gramps xml file, eg |
How to use MSYS2 to run latest Gramps development version from source in 64bit Windows.
In similar way you can build the 32bit version
Contents
Install MSYS2
Installation restrictions MSYS2 can't be installed on FAT* partitions. |
From the MSYS2 home page http://www.msys2.org download MSYS2 64bit installer and run it.
Install it in short path like C:\msys64
At the end of install select to run mingw64 shell eg: use the MSYS2 MinGW 64-bit shortcut.
Update MSYS2
First keep running the following command(multiple times) until it has updated the list of packages and updated all core packages nothing else to do:
pacman -Syuu
If core packages are updated close the mingw64 shell and restart it.
Install Gramps dependencies
Start mingw64 shell and use pacman package manager to download and install Gramps dependencies
pacman -S mingw-w64-x86_64-python3-bsddb3 mingw-w64-x86_64-gexiv2 mingw-w64-x86_64-osmgpsmap-git mingw-w64-x86_64-ghostscript mingw-w64-x86_64-python3-cairo mingw-w64-x86_64-python3-gobject mingw-w64-x86_64-python3-icu mingw-w64-x86_64-iso-codes mingw-w64-x86_64-hunspell mingw-w64-x86_64-hunspell-en mingw-w64-x86_64-enchant
To handle the following warning No intltool or version < 0.25.0, build_intl is aborting install:
pacman -S intltool
You will also need the following to run the test:
pacman -S mingw-w64-x86_64-python3-lxml pacman -S mingw-w64-x86_64-python3-jsonschema
To use the Graph reports follow the alternate instructions to install Graphviz and to run the Graph View addon also install:
pacman -S mingw-w64-x86_64-goocanvas
Install Git
pacman -S msys/git
Install Gramps
Prepare source
Create directory to store Gramps source in and go to it
mkdir ~/grampsdev cd ~/grampsdev
Download source
Download Gramps master branch from source repository
git init git remote add -t master -f origin https://github.com/gramps-project/gramps.git git checkout master
Check which Gramps version is used
git describe
it should return something like:
v5.0.0-alpha1-1024-g0919763f1
Setup source
Before using Gramps you must set-it up.
You just use setup build command not install one
python3 setup.py build
Run Gramps
Start mingw64 shell and go to directory where Gramps source reside
cd ~/grampsdev
Use python3 to start Gramps
To check gramps version use "v" flag
python3 Gramps.py -v
It should return something like:
Gramps Settings: ---------------- python : 3.5.3 gramps : 5.0.0-alpha1-0919763f1 gtk++ : 3.22.9 pygobject : 3.22.0 pango : 1.40.3 cairo : 1.15.4 pycairo : 1.1.10 osmgpsmap : 1.0 GExiv2 : 0.10 ICU : 57.1 PyICU : 1.9.3 o.s. : win32 Non-python dependencies: ------------------------ Graphviz : Graphviz not in system PATH Ghostscr. : 9.20
Run Gramps
python3 Gramps.py
Issue
Graphviz
- No Graphviz see: MSYS2:Package request: graphviz
- Marked as WIP see: https://github.com/Alexpux/MINGW-packages/tree/master/mingw-w64-graphviz
Tested alternate method to use Windows version of Graphviz[1]
Download the current GraphViz ZIP archive from http://www.graphviz.org/Download_windows.php and extract it to C:\graphviz, so that it directly contains the directories bin, lib, share and so on.
From the msys2 prompt type:
echo 'export PATH=/c/graphviz/bin:$PATH' >> ~/.bashrc source ~/.bashrc
Then type:
python3 Gramps.py -v
and Graphviz will be listed.
Non-python dependencies: ------------------------ Graphviz : 2.38
osmgpsmap
The MSYS2 version of osmgpsmap has issues eg:
(python3.exe:348): WARNING **: Failed to load shared library 'libosmgpsmap-1.0-0.dll' referenced by the typelib: 'libosmgpsmap-1.0-0.dll': The specified procedure could not be found.
You can uninstall osmgpsmap package with:
pacman -R mingw-w64-x86_64-osmgpsmap-git
Install Python pip
To install a working version of pip use the following steps:
mkdir ~/scripts cd ~/scripts curl -O 'https://bootstrap.pypa.io/get-pip.py' ./get-pip.py
Test that it works:
pip3 --version
If that succeeds you can now remove the installation script if wanted:
rm get-pip.py
Keep your GRAMPSHOME separate
To keep your test family trees separate from your personal family trees you may want to use your MSYS2 home directory which you can set from mingw64 shell either:
On each run like:
GRAMPSHOME=~ python3 Gramps.py
If you want it persistent:
echo 'export GRAMPSHOME=~' >> ~/.profile source ~/.profile