Installing GeneWeb under OS X

From GeneWeb
Revision as of 22:38, 16 June 2016 by Henri83 (talk | contribs) (Gwd-start.command)
Jump to navigation Jump to search
150px-Geographylogo svg.png Language:   English • français
Traces in terminal window at GeneWeb start.

The simplest install is as follows (process verified on OS X Yosemite):

  • Download the appropriate version. The latest stable version available is geneweb-6.07.tgz.
  • Double-clicking on the downloaded .tgz file creates a subfolder /geneweb-6.07.
  • Move this folder where you prefer.
  • Start GeneWeb by double-clicking the GeneWeb.command (not gwd or gwsetup).This should open a terminal window and browser window with the start page of GeneWeb.
Starting page for GeneWeb.
  • If the terminal windows just opened indicated "failure", this may be due to some idiosyncrasies of your environment.
Try the following:
  • Open the file GeneWeb.command in a text editor
  • Replace the line
trap 'kill $pids' 1 2
killall gwd
killall gwsetup
and save the result back to disk.
  • Start GeneWeb by double-clicking the new GeneWeb.command.

When GeneWeb is running on a machine, it behave like a web server and will accept URLs following a precise syntax. You can lauch GeneWeb with a lot of parameters, for example as a Unix daemon or behind a real HTTP server with CGI.

Multiple versions install

Installing multiple versions of GeneWeb is possible. The following section describes one approach. One of its benefits is to make more explicit several aspects of the folder structure expected by GeneWeb.

The first step is to organise a folder structure which will contain the various elements. Although style and taste may vary, here is a proposal for such a structure which is rather general, identifies the various components associated with GeneWeb and is amenable to changes.

All the genealogy files are located in a folder called Genealogy sitting in “Home”, and containing two sub-folders "GeneWeb" (sources and binaries), “GeneWeb-Bases” (bases and other base specific data. a specific base may be called base in the following discussions and examples) and two command files launching each one particular version of gwd and gwsetup (Starting gwd):

iMac-H:Genealogy Henri$ cd ~/Genealogy/
iMac-H:Genealogy Henri$ pwd
iMac-H:Genealogy Henri$ ls -al
total 24
drwxr-xr-x   5 Henri  staff    170 14 oct 12:57 .
drwxr-xr-x+ 81 Henri  staff   2754 14 oct 13:28 ..
-rw-r--r--@  1 Henri  staff  10244 14 oct 13:28 .DS_Store
drwxr-xr-x   8 Henri  staff    272 14 oct 12:59 GeneWeb
drwxr-xr-x  13 Henri  staff    442 14 oct 13:04 GeneWeb-Bases
-rwxr-xr-x@  1 Henri  staff   3036  8 sep 12:14 Gw-Mac-6.08.command
-rwxr-xr-x@  1 Henri  staff   3160 20 sep 05:55 Gw-Mac-7.00.command
iMac-H:Genealogy Henri$ 
Folder structure under Mac OS X for GeneWeb (source code and binaries).


The content of GeneWeb is organized as follows:

The folders GeneWeb-x.yy-Mac contain copies (or moves) of the distribution folders created from sources for each version, or directly downloaded (zip file) from a trusted source.

The folder GeneWeb-6.08-Mac contains a bases subfolder because the file gwd.command was executed which creates a bases folder right there. This folder is not used anywhere else in this setup (and could have been removed).

This setup has the advantage of maintaining active at least two running versions of GeneWeb which may be handy for moving bases from one version to the other. In each GeneWeb-x.yy-Mac folder, a sub-folder gw contains all the executable files and associated data (default a.gwf, etc, images, lang, src sub-folders). gwsetup itself uses the setup sub-folder for its data.

gwd.arg contains the execution arguments for gwd.

gwd.log contains the log traces produced by gwd. May be useful for some debuging!

Note the tags.txt file containing the list of HTML tags authorized within the notes associated with each person.

The two folders gw-6.08-alpha-src and gw-7.00-Mac and file relate to GeneWeb sources and will be discussed in section #From sources.


The content of GeneWeb-Bases is organized as follows:

Folder structure under Mac OSX for GeneWeb-Bases (Genealogy data).

Bases are stored in .gwb folders (base-1 and base-2 in our example). Each base may have its parameter .gwf file. If no parameter file exist, gwd will use the a.gwf default parameter file found in GeneWeb/GeneWeb-x.yy-Mac/gw

Other folders contain the following data:

  • cnt: contains access count for each base, and possibly a robot file remembering IP addresses behaving as robots and excluded from further access.
  • etc: contains base specific etc files. When searching for etc files, gwd will scan the file system in the following order:
    • .../bases/etc/base
    • .../bases/etc
    • .../gw/etc/base
    • .../gw/etc
  • images: each base sub-folder contains the images associated with each person of a particular base. The naming convention is firstname.occ.lastname.jpg.
  • lang:
  • src: each base sub-folder contains text files (loaded by gwd with the m=SRC command) and an images sub-folder containing image files (loaded by gwd with the m=IMH command).

One or several .auth file may reside here, as referenced in the .gwf files for friends and/or wizard authentication.

Starting gwd and gwsetup

Traces in terminal window at GeneWeb start.

With this folder organisation, clicking on $HOME/Genealogy/Gw-Mac-7.00.command (Gwd-start.command (download it here]) will open a terminal window, kill previously running versions of gwd and gwsetup, start a fresh one and open the same start page as above.

From sources

The folders gw-x.yy contain sources for version x.yy of GeneWeb. Executing the Makefile in this folder (after having Installed OCaml) will create a distribution folder containing all data necessary for execution of GeneWeb. Renaming this distribution folder to GeneWeb-x.yy-Mac and moving it into the GeneWeb folder discussed above brings us to a known situation.

The file is a shell script that will fetch the latest version of GeneWeb (currently version 7.00) from the GitHub repository, compile it and move the resulting distribution folder appropriately.

Of course, the structure above can be extended to more that two versions of GeneWeb, and to more than two bases. Appropriate editing of the shell scripts and command files may be necessary.

GeneWeb Manual

Rembrandt Old Man Reading a Book.jpg

Use and manage genealogical databases

Technical annex