[Koha-patches] [PATCH 3/3] Bug 5217 : package/CPAN updates for Ubuntu Lucid install
Chris Nighswonger
cnighswonger at foundations.edu
Sat Sep 18 00:38:16 CEST 2010
This patch does not seem to apply to the current HEAD. Try rebasing
and resubmitting.
Kind Regards,
Chris
On Sat, Sep 11, 2010 at 11:34 PM, Eric Olsen <herolsen at alumni.upenn.edu> wrote:
> ---
> INSTALL.ubuntu.lucid | 358 ++++++++++++++++++++++++++++++++++++++
> install_misc/ubuntu-pkg-check.sh | 19 ++
> install_misc/ubuntu.packages | 208 +++++++++++++----------
> 3 files changed, 497 insertions(+), 88 deletions(-)
> create mode 100644 INSTALL.ubuntu.lucid
> create mode 100755 install_misc/ubuntu-pkg-check.sh
>
> diff --git a/INSTALL.ubuntu.lucid b/INSTALL.ubuntu.lucid
> new file mode 100644
> index 0000000..7ad39da
> --- /dev/null
> +++ b/INSTALL.ubuntu.lucid
> @@ -0,0 +1,358 @@
> +=============================
> +Installation Guide for Installing Koha on Ubuntu Lucid Lynx (10.04 LTS) with MySQL 5
> +=============================
> +
> +Copyright (C) 2007, 2008 LibLime (http://liblime.com)
> +Some parts copyright 2010 Chris Nighswonger
> +
> +Original author: Joshua Ferraro
> +Modified for Ubuntu by: Chris Nighswonger (cnighswonger AT foundations DOT edu)
> +
> +Feedback/bug reports: Koha Developer's List:
> +http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel
> +
> +This document last modified: 11 Sep 2010
> +
> +Installation Instructions
> +=============================
> +
> +All commands can be performed as a system user with sudo privileges,
> +as indicated or by running the command directly as root.
> +
> +1. Prepare System and Install Dependencies
> +
> +1.1 Install Ubuntu Lucid Lynx via CD
> +
> +See http://www.ubuntu.com/getubuntu/download
> +
> +1.2 Set up your locale
> +
> +Your locale should be set to UTF-8, as should Apache2 and MySQL 5.
> +This step is VERY IMPORTANT for a UNICODE compliant system. Please
> +read over the following document carefully:
> +
> +http://wiki.koha.org/doku.php?id=encodingscratchpad
> +
> +You can verify your system locale by typing the following command:
> +
> + $ locale
> +
> +IMPORTANT: You _MUST_ follow all the steps outlined there for
> + Apache2, MySQL 5, etc. BEFORE you install Koha.
> +
> +1.3 Get Koha
> +
> +1.3.1 Option A: Download Koha via Git (optional)
> +
> + $ sudo apt-get install git-core git-email
> + $ git clone git://git.koha-community.org/pub/scm/koha.git kohaclone
> + $ cd kohaclone
> + $ git checkout -b myinstall origin
> +
> +Note: for more information about Git, please see the Koha Git Usage Guide:
> +
> + http://wiki.koha-community.org/wiki/Version_Control_Using_Git
> +
> +1.3.2 Option B: Download Koha from http://download.koha-community.org
> +
> + $ wget http://download.koha-community.org/koha-3.02.00.tar.gz
> + ( Note: use the latest stable version)
> +
> +1.4 Install additional Ubuntu dependencies
> +
> +IMPORTANT: You should only use CPAN for Perl dependencies which are NOT
> + available from the package maintainer. You have been warned!
> +
> +Using the ubuntu.packages file included in the Koha source tree,
> +run the following:
> +
> + $ sudo dpkg --set-selections < install_misc/ubuntu.packages
> +
> +Now start dselect (you may need to 'sudo apt-get install dselect'):
> +
> + $ sudo dselect
> +
> +Choose [I]nstall and accept packages to be installed (hit return)
> +
> +(may take a while)
> +
> +Choose [C]onfigure, [R]emove and [Q]uit until dselect has completed.
> +
> +Note: If you are installing on an older version of Ubuntu, not all of the
> + packages listed in ubuntu.packages may be available as packages. You
> + will want to verify which ones are installed and which ones not.
> + This can be done by running the following command:
> +
> + $ install_misc/ubuntu-pkg-check.sh | grep none
> +
> +When tracking down any "(none)" results, note that sometimes Ubuntu does the
> +right thing and installs a later, differently named version of the package in
> +place. To see if this is happening, it is useful to run a command like:
> +
> + $ dpkg --get-selections | grep [base_package_name]
> +
> +1.5 Install Perl dependencies that aren't packaged into Ubuntu Lucid Lynx
> +sources
> +
> +Run the following command:
> +
> + $ sudo cpan HTTP::OAI Locale::Currency::Format Memoize::Memcached \
> + PDF::API2::Simple Storable Text::CSV::Encoded
> +
> +Note: you may need to run CPAN initialization if you've not run cpan
> +before:
> +
> + /etc/perl/CPAN/Config.pm initialized.
> +
> + CPAN is the world-wide archive of perl resources. It consists of about
> + 100 sites that all replicate the same contents all around the globe.
> + Many countries have at least one CPAN site already. The resources
> + found on CPAN are easily accessible with the CPAN.pm module. If you
> + want to use CPAN.pm, you have to configure it properly.
> +
> + If you do not want to enter a dialog now, you can answer 'no' to this
> + question and I'll try to autoconfigure. (Note: you can revisit this
> + dialog anytime later by typing 'o conf init' at the cpan prompt.)
> +
> + Are you ready for manual configuration? [yes]
> +
> +When the configuration is completed CPAN will install the Perl modules.
> +
> +2. Configuration of dependencies
> +
> +2.1 Update root MySQL password (if dselect didn't do it for you already)
> +
> + $ sudo mysqladmin password <password>
> +
> +2.2 Create the Koha database
> +
> + Create the database and user with associated privileges:
> +
> + $ mysqladmin -uroot -p<password> create <kohadatabasename>
> + $ mysql -uroot -p<password>
> +
> + Welcome to the MySQL monitor. Commands end with ; or \g.
> + Your MySQL connection id is 22
> + Server version: 5.0.32-Debian_7etch3-log Debian etch distribution
> +
> + Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
> +
> + mysql> grant all on <kohadatabasename>.* to '<kohadatabaseuser>'@'localhost' identified by '<kohadatabaseuserpassword>';
> + Query OK, 0 rows affected (0.00 sec)
> +
> + mysql> flush privileges;
> + Query OK, 0 rows affected (0.00 sec)
> +
> + mysql> quit
> +
> +2.3 Test your SAX Parser and correct where necessary
> +
> + You must be sure you're using the XML::LibXML SAX parser, not Expat or
> + PurePerl, both of which have outstanding bugs with pre-composed
> + characters. You can test your SAX parser by running:
> +
> + $ cd koha
> + $ misc/sax_parser_print.pl
> +
> + You should see something like::
> +
> + XML::LibXML::SAX::Parser=HASH(0x81fe220)
> +
> + If you're using PurePerl or Expat, you'll need to edit your
> + ini file, typically located at:
> +
> + /etc/perl/XML/SAX/ParserDetails.ini
> +
> + You will need to move the entire section for '[XML::LibXML::SAX::Parser]'
> + to the bottom of the ini file.
> +
> +3. Run the Koha installer
> +
> + $ perl Makefile.PL
> + ( answer questions )
> + $ make
> + $ make test
> + $ sudo make install
> +
> +4. Configure and start Apache
> + $ sudo ln -s /etc/koha/koha-httpd.conf /etc/apache2/sites-available/koha
> + (note that the path to koha-httpd.conf may be different depending on your
> + installation choices)
> +
> +Add the following lines to /etc/apache2/ports.conf:
> +
> + Listen 80
> + Listen 8080
> +
> +If not running named virtual hosts (The default koha installation does not use
> +named virtual hosts.), comment out the following line:
> +
> + NameVirtualHost *:80
> +
> +Run the following commands:
> +
> + $ sudo a2enmod rewrite
> + $ sudo a2ensite koha
> + $ sudo apache2ctl restart
> +
> +Note: you may still see the usual Apache default site if your VirtualHost
> +configuration isn't correct. The command "sudo a2dissite default" may be a
> +quick fix, but may have side-effects. See the Apache HTTPD manual section on
> +virtual hosts for full instructions.
> +
> +5. Configure and start Zebra
> +
> +Note: it's recommended that you daemonize the Zebra process and add it to your
> +startup profile. For a non-production test/development installation, running
> +Zebra from the command line can be useful. Pick from the two available options
> +below, or roll your own :-)
> +
> +Note: it's also recommended that you create a Koha system user, which you will
> +have specified during the install process. Alternatively, Zebra can be
> +configured to run as the root user.
> +
> +To add a user do:
> +
> + $ sudo adduser koha
> +
> +Option 1: run the Zebra processes from the command line:
> +
> +1.1 Zebra Search Server
> +
> +This process send responses to search requests sent by Koha or
> +Z39.50/SRU/SRW clients.
> +
> + $ sudo -u ${KOHA_USER} zebrasrv -f /etc/koha/koha-conf.xml
> + (note that the path to koha-conf.xml may be different depending on your
> + installation choices)
> +
> +Note: the user you run Zebra as will be the only user with write permission
> + on the Zebra index; in development mode, you may wish to use your
> + system user.
> +
> +1.2 Zebra Indexer
> +
> +Added/updated/deleted records in Koha MySQL database must be indexed
> +into Zebra. A specific script must be launched each time a bibliographic
> +or an authority record is edited.
> +
> + $ sudo -u ${KOHA_USER} misc/migration_tools/rebuild_zebra -z -b -a
> + NOTE: This script should be run as the kohauser (the default is 'koha').
> +
> +Option 2: run the Zebra process as a daemon, and add to startup process:
> +
> +Note that references to $SCRIPT_DIR refer to the directory where
> +Koha's command-line scripts are installed, e.g., /usr/share/koha/bin.
> +
> +1.1 Zebra Search Server
> +
> + $ sudo ln -s ${SCRIPT_DIR}/koha-zebra-ctl.sh /etc/init.d/koha-zebra-daemon
> + (Note: ${SCRIPT_DIR} is /usr/share/koha/bin/ by default in a standard install)
> + $ sudo update-rc.d koha-zebra-daemon defaults
> + ( Note: see man chkconfig(8) on other distros )
> +
> + $ sudo ${SCRIPT_DIR}/koha-zebra-ctl.sh start
> +
> +1.2 Zebra Indexer
> +
> +Add an entry in Koha user crontab to scheduled added/updated/deleted records
> +indexing by Zebra with this command:
> +
> + <path/to/koha>/misc/migration_tools/rebuild_zebra -z -b -a
> +
> +See check misc/cronjobs/crontab.example for usage examples.
> +NOTE: This job should be setup under the kohauser (the default is 'koha').
> +
> +6. Run the Web Installer, populate the database, initial configuration of settings
> +
> + Point your browser to http://<servername>:8080/
> +
> + It should redirect you to the Web Installer where you can continue the setup.
> + You can install the sample data for libraries, patrons, etc. via the Web Installer
> +
> +7. What next?
> +
> + Once the installer has completed, you can import and index MARC records from the
> + command line thusly (Note: you can also use the 'Stage MARC records for import' from
> + the Tools area of Koha's Staff Client to import a batch of MARC records):
> +
> + $ export KOHA_CONF=/usr/share/koha/etc/koha-conf.xml
> + (note: use the correct path to your koha-conf.xml)
> +
> +7.1 Import:
> + Bibliographic data in MARC21 format
> + $ misc/migration_tools/bulkmarcimport.pl -file /path/to/marc.iso2709
> + Authority data in MARC21 format
> + $ misc/migration_tools/bulkauthimport.pl -file /path/to/auth.iso2709
> +
> +7.2 Fast Index:
> + $ misc/migration_tools/rebuild_zebra.pl -b -w
> +
> + Once the indexing has completed, you will be able to search for records in your system.
> + NOTE: This script should be run as the kohauser (the default is 'koha').
> +
> +7.3 Schedule regular index updates
> +
> + You need to run rebuild_zebra.pl -b -a -z as a regular cron job in orde to pick up new bibs
> + and items as you add them. Check misc/cronjobs/crontab.example for usage examples. See 7.0 above.
> + NOTE: This job should be setup under the kohauser (the default is 'koha').
> +
> +7.4 To enable public Z39.50/SRU servers, you'll need to edit your koha-conf.xml and
> + change the <listen> options to listen on a TCP port; then restart the zebra daemon.
> +
> +UPGRADE
> +=======
> +If you are upgrading from a previous installation of Koha 3, you can
> +use the following:
> +
> + perl Makefile.PL --prev-install-log /path/to/koha-install-log
> + make
> + make test
> + sudo make upgrade
> +
> +Uninstall Instructions
> +=============================
> +1) Stop Services:
> + $ sudo a2dissite koha
> + $ sudo rm /etc/apache2/sites-available/koha
> + $ sudo apache2ctl restart
> +
> + $ sudo update-rc.d koha-zebra-daemon remove
> + $ sudo rm /etc/init.d/koha-zebra-daemon
> +
> +2) Remove Database and Indexes
> +
> + # MySQL
> + $ mysql -u<kohauser> -p<kohapassword>
> + > drop database koha;
> +
> + # Zebra Indexes
> + $ zebraidx -c <prefix>/etc/zebradb/zebra-biblios.cfg -g iso2709 -d biblios init
> + $ zebraidx -c <prefix>/etc/zebradb/zebra-authorities.cfg -g iso2709 -d authorities init
> +
> +3) Remove Koha Install Directories and Configuration Files
> + Don't forget about any crontab entries
> +
> +Tested on the following operating environments
> +==============================================
> +- Ubuntu Jaunty Jackalope 9.04
> +
> +Installer Bug reports
> +=====================
> +Please log any installer bug reports at http://bugs.koha-community.org
> +
> +Other Notes
> +=====================
> +This file is part of Koha
> +
> +Koha is free software; you can redistribute it and/or modify it under the
> +terms of the GNU General Public License as published by the Free Software
> +Foundation; either version 2 of the License, or (at your option) any later
> +version.
> +
> +Koha is distributed in the hope that it will be useful, but WITHOUT ANY
> +WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
> +A PARTICULAR PURPOSE. See the GNU General Public License for more details.
> +You should have received a copy of the GNU General Public License along
> +with Koha; if not, write to the Free Software Foundation, Inc.,
> +51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
> diff --git a/install_misc/ubuntu-pkg-check.sh b/install_misc/ubuntu-pkg-check.sh
> new file mode 100755
> index 0000000..9303082
> --- /dev/null
> +++ b/install_misc/ubuntu-pkg-check.sh
> @@ -0,0 +1,19 @@
> +#!/bin/sh
> +
> +UBUNTU_PACKAGES=`dirname $0`/ubuntu.packages
> +
> +# sanity checks
> +
> +if [ ! -e $UBUNTU_PACKAGES ]; then
> + echo ERROR: Could not find $UBUNTU_PACKAGES file for running check.
> + exit
> +fi
> +
> +# main
> +
> +UBUNTU_PACKAGES_LIST=`awk '{print $1}' $UBUNTU_PACKAGES | grep -v '^\s*#' | grep -v '^\s*$'`
> +for F in $UBUNTU_PACKAGES_LIST; do
> + UBUNTU_PKG_POLICY=`apt-cache policy $F | grep "Installed:"`
> + UBUNTU_PKG_VERSION=`echo $UBUNTU_PKG_POLICY | awk '{print $2}'`
> + echo "$F = $UBUNTU_PKG_VERSION"
> +done
> diff --git a/install_misc/ubuntu.packages b/install_misc/ubuntu.packages
> index 77afaa3..8a69342 100644
> --- a/install_misc/ubuntu.packages
> +++ b/install_misc/ubuntu.packages
> @@ -1,89 +1,121 @@
> -at install
> -apache2 install
> -daemon install
> -libgcrypt11 install
> -libgcrypt11-dev install
> -make install
> -gcc install
> -gettext install
> -mysql-server install
> -libcgi-session-perl install
> -libclass-factory-util-perl install
> -libdate-calc-perl install
> -libdate-manip-perl install
> -libdate-ical-perl install
> -libdatetime-format-mail-perl install
> -libgraphics-magick-perl install
> -libmail-sendmail-perl install
> -liblingua-ispell-perl install
> -liblingua-stem-perl install
> -libdbd-mysql-perl install
> -idzebra-2.0 install
> -idzebra-2.0-common install
> -idzebra-2.0-doc install
> -idzebra-2.0-utils install
> -libclass-factory-util-perl install
> +apache2 install
> +at install
> +daemon install
> +gcc install
> +gettext install
> +make install
> +
> +# mysql packages
> +
> +mysql-server install
> +libmysqlclient16 install
> +libmysqlclient16-dev install
> +
> +# yaz packages
> +
> +yaz install
> +yaz-doc install
> +libyaz3 install
> +libyaz3-dev install
> +
> +# zebra packages
> +
> +idzebra-2.0 install
> +idzebra-2.0-common install
> +idzebra-2.0-doc install
> +idzebra-2.0-utils install
> +libidzebra-2.0-0 install
> +libidzebra-2.0-dev install
> +libidzebra-2.0-mod-alvis install
> +libidzebra-2.0-mod-grs-marc install
> +libidzebra-2.0-mod-grs-regx install
> +libidzebra-2.0-mod-grs-xml install
> +libidzebra-2.0-mod-text install
> +libidzebra-2.0-modules install
> +
> +# crypto packages
> +
> +libgcrypt11 install
> +libgcrypt11-dev install
> +
> +# xml/xslt packages
> +
> +libxml2 install
> +libxml2-dev install
> +libxml2-utils install
> +libxslt1.1 install
> +libxslt1-dev install
> +
> +# perl packages
> +
> +libalgorithm-checkdigits-perl install
> +libauthen-cas-client-perl install
> +libbiblio-endnotestyle-perl install
> +libcgi-session-perl install
> +libcgi-session-serialize-yaml-perl install
> +libclass-factory-util-perl install
> +libdata-ical-perl install
> +libdate-calc-perl install
> +libdate-ical-perl install
> +libdate-manip-perl install
> +libdatetime-perl install
> +libdatetime-format-mail-perl install
> libdatetime-format-strptime-perl install
> -libdatetime-format-w3cdtf-perl install
> -libdatetime-locale-perl install
> -libdatetime-perl install
> -liblist-moreutils-perl install
> -libdatetime-timezone-perl install
> -libdbi-perl install
> -libidzebra-2.0 install
> -libidzebra-2.0-dev install
> -libidzebra-2.0-mod-alvis install
> -libidzebra-2.0-mod-grs-marc install
> -libidzebra-2.0-mod-grs-regx install
> -libidzebra-2.0-mod-grs-xml install
> -libidzebra-2.0-mod-text install
> -libidzebra-2.0-modules install
> -libmysqlclient15-dev install
> -libnet-ldap-perl install
> -liblist-moreutils-perl install
> -liblocale-gettext-perl install
> -liblocale-po-perl install
> -libpdf-api2-perl install
> -libmime-lite-perl install
> -libpoe-perl install
> -libtext-csv-perl install
> -libtext-charwidth-perl install
> -libtext-iconv-perl install
> -libtext-wrapi18n-perl install
> -libtime-duration-perl install
> -libtime-format-perl install
> -libtimedate-perl install
> -libunix-syslog-perl install
> -libxml-dom-perl install
> -libxml-dumper-perl install
> -libxml-namespacesupport-perl install
> -libxml-parser-perl install
> -libxml-perl install
> -libxml-simple-perl install
> -libxml-regexp-perl install
> -libxml-xslt-perl install
> -libxml-libxml-perl install
> -libxml-libxslt-perl install
> -libxml2 install
> -libxml2-dev install
> -libxml2-utils install
> -libxslt1-dev install
> -libxslt1.1 install
> -libyaml-syck-perl install
> -libyaz install
> -libyaz-dev install
> -yaz install
> -yaz-doc install
> -libcgi-session-serialize-yaml-perl install
> -libdata-ical-perl install
> -libhtml-template-pro-perl install
> -libmarc-charset-perl install
> -bmarc-record-perl install
> -libmarc-xml-perl install
> -libnet-z3950-zoom-perl install
> -libpdf-reuse-perl install
> -libpdf-reuse-barcode-perl install
> -libsms-send-perl install
> -libschedule-at-perl install
> -libxml-rss-perl install
> -libmime-lite-perl install
> +libdatetime-format-w3cdtf-perl install
> +libdatetime-locale-perl install
> +libdatetime-timezone-perl install
> +libdbd-mysql-perl install
> +libdbd-sqlite2-perl install
> +libdbi-perl install
> +libemail-date-perl install
> +libgd-barcode-perl install
> +libgraphics-magick-perl install
> +libhtml-scrubber-perl install
> +libhtml-template-pro-perl install
> +liblingua-ispell-perl install
> +liblingua-stem-perl install
> +liblingua-stem-snowball-perl install
> +liblist-moreutils-perl install
> +liblocale-gettext-perl install
> +liblocale-po-perl install
> +libmail-sendmail-perl install
> +libmarc-charset-perl install
> +libmarc-crosswalk-dublincore-perl install
> +libmarc-record-perl install
> +libmarc-xml-perl install
> +libmime-lite-perl install
> +libmodule-install-perl install
> +libnet-ldap-perl install
> +libnet-server-perl install
> +libnet-z3950-zoom-perl install
> +libnumber-format-perl install
> +libpdf-api2-perl install
> +libpdf-reuse-perl install
> +libpdf-reuse-barcode-perl install
> +libpdf-table-perl install
> +libpoe-perl install
> +libschedule-at-perl install
> +libsms-send-perl install
> +libtext-charwidth-perl install
> +libtext-csv-perl install
> +libtext-iconv-perl install
> +libtext-wrapi18n-perl install
> +libtimedate-perl install
> +libtime-duration-perl install
> +libtime-format-perl install
> +libuniversal-require-perl install
> +libunix-syslog-perl install
> +libxml-perl install
> +libxml-dom-perl install
> +libxml-dumper-perl install
> +libxml-libxml-perl install
> +libxml-libxslt-perl install
> +libxml-namespacesupport-perl install
> +libxml-parser-perl install
> +libxml-regexp-perl install
> +libxml-rss-perl install
> +libxml-sax-writer-perl install
> +libxml-simple-perl install
> +libxml-xslt-perl install
> +libyaml-perl install
> +libyaml-syck-perl install
> --
> 1.7.0.4
>
> _______________________________________________
> Koha-patches mailing list
> Koha-patches at lists.koha-community.org
> http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-patches
>
More information about the Koha-patches
mailing list