$Id$ This file contains some useful details on the installation from source code for GRAMPS. It does not cover installation of a pre-built binary package. For that use your package manager, the rest is already done by the packager. Uninstall old version --------------------- If you do a source install in the same place of an existing install, you need to remove the old version first. You can delete the old version by deleting the installed directories (for example, /usr/share/gramps /usr/local/lib/pythonx.x/site-packages/gramps /usr/local/lib/pythonx.x/dist-packages/ /usr/lib/pythonx.x/site-packages/gramps /usr/lib/pythonx.x/dist-packages/ where pythonx.x is python2.7 or whatever version you installed gramps with. If you don't know the list of all files that Gramps installed, you can reinstall it with the --record option, and take a look at the list this produces (so python setup.py install --record grampsfiles.txt GRAMPS is a python application, so loading happens on reading the files, meaning that files of a previous version that are no longer present in the new version can still be loaded, making the new install unstable! distutils install ----------------- We do not check all dependencies of Gramps, see README for a list of all required and optional dependencies. If you are building from released tarball, you should be able to just run python setup.py build python setup.py install where the last must be done as root. You can work with Gramps if you only build it by pointing the PYTHONPATH to the build directory, but things like MIME type and desktop entries will not be created then. Typical install directories in linux (ubuntu) are: * /usr/local/lib/python2.7/dist-packages/gramps/ : the gramps python module * /usr/local/share/mime-info : mime info so gramps opens files automatically * /usr/local/share/icons/gnome : our icons * /usr/local/share/doc/gramps : documentation, also example .gramps and .gedcom * /usr/local/bin : the gramps executable * /usr/local/share/locale/xx/LC_MESSAGES : xx language code, translation * /usr/local/share/man/man1/xx/man1 : xx language code, man file * /usr/local/share/mime * /usr/local/share/mime-info running Gramps -------------- Gramps is python only, so no compilation is needed, you can even run gramps from the source directory. Custom directory installation ------------------------------------- If you would like to install GRAMPS without being root, or in an alternative location on windows, supply the --root argument to setup.py For example: python setup.py install --root ~/test or python setup.py install --root ~/test --enable-packager-mode The last option, --enable-packager-mode, is needed if you want to disable execution of post-install mime processing. Packager's issues ------------------ There is a MANIFEST.in file to indicate the work needed. To create a source distribution run: python setup.py sdist