Instructions for Building and Running the Development Code for Documents

This is a simple guide for setting up a hacking environment for the Documents application. Please feel free to add notes if you find an inaccuracy or run into a problem. This is meant to be a beginners' guide. You may not need to use all of the information, but I prefer to spell things out so you can refer to it if you get stuck at any point.

JHBuilding gnome-documents

  1. Launch the terminal
  2. Create a directory for JHBuild and install it:

    • $ mkdir checkout
      $ cd checkout
      $ git clone git://git.gnome.org/jhbuild
      $ cd jhbuild
      $ ./autogen.sh && make && make install

  3. Check that the install was successful:

    • $ cd /home/yourName/.local/bin/
      $ ls
      you should see: install-check jhbuild

  4. Add ~/.local/bin to the PATH:

    • $ PATH=$PATH:~/.local/bin
      to permanently add it to the path variable:
      $ echo PATH=$PATH:~/.local/bin >> ~/.bashrc

  5. Customize your .jhbuildrc (I'm using nano to open the file, you can use whatever editor you like):

    • $ mkdir ~/.config
      $ cp ~/checkout/jhbuild/examples/sample.jhbuildrc ~/.config/jhbuildrc
      $ nano ~/.config/jhbuildrc
      uncomment #moduleset = 'gnome-apps-3.4'
      edit it to read: moduleset = 'gnome-apps-3.8'

      If you are using Ubuntu, then edit your jhbuildrc to look like this:

    moduleset = 'http://git.gnome.org/browse/jhbuild/plain/modulesets/gnome-apps-3.8.modules'
    checkoutroot = os.path.expanduser('~/devel/gnome/')
    prefix = os.path.expanduser('~/devel/jhbuild/install')
    # repos['git.gnome.org'] = 'ssh://user@git.gnome.org/git/'
    repos['git.freedesktop.org'] = 'git://anongit.freedesktop.org/git/'

    module_autogenargs['gnome-shell'] = '--enable-jhbuild-wrapper-script'
    module_autogenargs['gnome-settings-daemon'] = '--disable-ibus'
    module_autogenargs['gnome-control-center'] = '--disable-ibus'

    # to speed up builds of GNOME, try '--disable-static --disable-gtk-doc'
    autogenargs='--disable-static --disable-gtk-doc'

  6. Make the directories writable:

    • $ cd checkout
      $ mkdir gnome
      $ cd gnome
      $ sudo chmod -R 777

  7. Check your JHBuild:

  8. Build Documents:

    • including Webkit (takes a few hours longer, milage varies):
      $ jhbuild build gnome-documents
      to build without Webkit:
      $ jhbuild build --skip=webkit gnome-documents
      In my experience, most errors are caused by missing development packages. if you run into an error, look at the terminal output. after "checking for" you may find that you are missing a required package. You can check for the package using yum info packageName. if you have the package installed check to see if you need the development package by running yum info packageName-devel. Install the required packages.

  9. The miners are installed in /opt/gnome/share/dbus-1/services by JHBuild. Copy them to /usr/share/dbus-1/services:

    • $ cp /opt/gnome/share/dbus-1/services/org.gnome.Documents.GDataMiner.service /usr/share/dbus-1/services/org.gnome.Documents.GDataMiner.service
      $ cp /opt/gnome/share/dbus-1/services/org.gnome.Documents.ZpjMiner.service /usr/share/dbus-1/services/org.gnome.Documents.ZpjMiner.service

  10. Run your JHBuild version of Documents:

    • $ jhbuild run gnome-documents

  11. If you run into issues, try the following:

    • If you have this error:
      JS ERROR: !!! Exception was: TypeError: selectAll is null
      JS ERROR: !!! message = '"selectAll is null"'
      JS ERROR: !!! fileName = '"/opt/gnome/share/gnome-documents/js/view.js"'
      JS ERROR: !!! lineNumber = '220'
      JS ERROR: !!! stack = '"()@/opt/gnome/share/gnome-documents/js/view.js:220
      then run your miners via the terminal:
      $ cd checkout/gnome/gnome-documents/src
      $ jhbuild shell
      $ GDATA_MINER_PERSIST=1 /opt/gnome/libexec/gd-tracker-gdata-miner
      $ ZPJ_MINER_PERSIST=1 /opt/gnome/libexec/gd-tracker-zpj-miner

      If you can successfully run Documents but no documents are appearing, assuming you have documents in your local directories or have added the correct accounts (e.g. Google) to Online Accounts and set the toggle switch for Documents to "On":
      $ tracker-control --start

      If the theming looks strange (e.g. there are no icons in the application), then you need to build gnome-themes-standard:
      $ jhbuild build gnome-themes-standard

Suggested Topics for Documentation

Search, selection mode and the various actions you can do inside it and the various controls you have available while previewing - both the actions available from the gear menu and the document navigation features we recently implemented in master (just keep in mind we have more work lined up for 3.8 on this part, so what you see in master might not be final yet).

Hackfests/GNIGHTSofGNOMEChicago/GNOMEDocumentsBuildInstructions (last edited 2013-01-19 20:45:53 by cwebber)