At code4lib 2008 we will be giving a pre-conference session on Evergreen. This is what we're planning on doing; hopefully it will be useful material for future workshops.
To avoid any heartache associated with conflicting packages, etc., we have asked participants to bring a laptop with a bootable image or VMWare image (running Debian Etch 4.0 or Ubuntu Gutsy 7.10) dedicated to Evergreen.
To avoid relying on the network for downloading packages, we have also asked participants to install the prerequisites ahead of time using the Makefile.install prereq installer.
We'll bring CDs with copies of the OpenSRF and Evergreen tarballs in case the network gods are angry.
As we go through each of the following phases, we provide commentary that explains a little bit more about what's going on, how a given piece fits into the overall system, and what's happening in trunk to make things easier / better / faster / stronger.
We've made a copy of the installation presentation available in OpenOffice Impress and PDF format.
Who | What |
---|---|
Dan | |
Dan | Burn CDs with tarballs and MARC data and script |
Dan has made 500 bib records in MARC21XML format from Laurentian available for download from the Evergreen downloads page at http://open-ils.org/~denials/import_demo.tar.gz (including a README, some custom scripts, and the current trunk versions of marc2bre.pl, direct_ingest.pl, and parallel_pg_loader.pl).
import_demo.tar.gz
and change directories:tar xzf import_demo.tar.gz cd import_demo
# Ensure that the database name, user name, and password at the top of the script # match your settings before running this script: sh import_bibs.sh
# Syntax: psql -U <username> -f pg_loader-output.sql <database> psql -U evergreen -f pg_loader-output.sql evergreen
psql -U evergreen -f quick_metarecord_map.sql evergreen
parse_holdings.pl
to generate a file called insert_holdings.sql
. parse_holdings.pl
is just a basic script Dan wrote to extract the holdings into plain-jane SQL for the staging table import (PostgreSQL COPY format could be used but we might as well keep it simple for those not used to PostgreSQL).perl parse_holdings.pl
Take a look at the output of parse_holdings.sh
– a file named insert_holdings.sql
. It's just a bunch of INSERT statements with the relevant copy attributes - and should be easy to create something similar from your own ILS holdings information.
psql -U evergreen -f import_staging_table.sql evergreen
psql -U evergreen -f insert_holdings.sql evergreen
psql -U evergreen -f generate_copies.sql evergreen
Murph might be able to step in here and walk through a few interesting parts of the staff client.
@localhost
email account./openils/var/circ/*
/openils/var/templates/marc/*
Now that we have real live holdings in our system, we can do fun things with the catalog.
Let's use the existing advocacy script and pick some interesting things to point out - shelf browsing, etc.
Talk a little bit about how this is put together: HTML and JavaScript and calls back to OpenSRF services.
We'll borrow from the OPAC customization documentation - thanks Karen!
Patrons often forget passwords. Heck, I often forget passwords. The Evergreen catalog currently doesn't give you the ability to reset your password. We'll add that feature in front of a live audience.
Open-ILS/web/common/js/config.js
and call the variable instead.The Perl and Javascript code are "quick and dirty" snippets. They are meant to be examples of functional code, by some definition, but not good code.