Greetings,
There are THREE ways to install koha (with respect to Ubuntu):
1) Packages
(http://wiki.koha-community.org/wiki/Koha_3.8_on_Debian_Squeeze)
2) Tarball (http://wiki.koha-community.org/wiki/Koha_on_Ubuntu)
3) GIT
(http://wiki.koha-community.org/wiki/Version_Control_Using_Git)
Which way should you do?
Are you going to develop, submit patches, etc for a non-production system?
If yes, then (3) GIT!
Are you using a debian-based OS? If yes, then (1) Packages!
For everything else, there is (2) Tarball.
Don't worry, my first install was tarball. That's why the instructions for
the tarball installation have been improved on the wiki. I was trying to be a
purist.
Don't try to logically map between Ubuntu and Debian. That will only
generate more confusion in your mind.
You say you are trying to set up 3.8.4, so you need to:
$ wget -O- http://debian.koha-community.org/koha/gpg.asc | sudo apt-key add
-
and
$ echo deb http://debian.koha-community.org/koha squeeze main | sudo tee
/etc/apt/sources.list.d/koha.list
$ sudo apt-get update
Why? Because there are perl packages which are not in the default
repositories for Ubuntu.
--- BEGIN SNIPPET ---
$ sudo dpkg --set-selections < install_misc/ubuntu.packages
$ sudo dselect
--- END SNIPPET ---
Yes, this is what INSTALL.Ubuntu has said for the longest time. However,
remember that unless someone helps keep the file up to date, you will end up
with missing libraries like you have listed. And remember that the main install
base for Koha is Debian. This means that other Debian-based OS’s may not have
those libraries packaged in the default repositories.
From your output:
--- BEGIN SNIPPET ---
paul@server:/koha-3.08.04$ ./koha_perl_deps.pl -m
Installed Required Module
is
Module Name
Version
Version
Required
--------------------------------------------------------------------------------------------
DBD::SQLite2
0 *
0.33
No
Graphics::Magick
0 *
1.3.05
No
Lingua::Stem::Snowball
0 *
0.952
Yes
Net::Z3950::ZOOM
0 *
1.16
Yes
Readonly::XS
0 *
1.02
No
Template
0 *
2.22
Yes
Template::Plugin::HtmlToText
0 *
0.03
Yes
Test::Strict
0 *
0.14
No
XML::LibXSLT
0 *
1.59
Yes
--------------------------------------------------------------------------------------------
Total modules reported:
9
* Module is missing or requires an upgrade.
--- END SNIPPET ---
I know, for example, that Template::Plugin::HtmlToText does not exist in
the default repositories.
This leads in the existential question: why not just CPAN them?
Yes, you can do that. However, this means you need to keep track of them.
This is why installing from packages is better. When the module is updated in
the repositories, a sudo apt-get upgrade installs the newer version for you,
without you having to think about it. In short, your future upgrades become
easier. This is why people suggested packages. Your future updates should go
more smoothly.
I did add a section to the Ubuntu instructions about doing aptitude
searches for the missing libraries. So, perhaps you haven’t looked at the wiki
recently:
http://wiki.koha-community.org/wiki/Koha_on_Ubuntu#Ubuntu_Packages_for_Perl_Dependencies
I should probably add something about the wonders of apt-file too, as it
doesn’t require as much thinking for looking for the missing pieces.
$ sudo apt-get install apt-file
...
$ sudo apt-file update
...
$ apt-file search Graphics::Magick
libgraphics-magick-perl: /usr/share/man/man3/Graphics::Magick.3pm.gz
$ apt-file search DBD::SQLite2
libdbd-sqlite2-perl: /usr/share/man/man3/DBD::SQLite2.3pm.gz
$ apt-file search Lingua::Stem::Snowball
liblingua-stem-snowball-da-perl:
/usr/share/man/man3/Lingua::Stem::Snowball::Da.3pm.gz
liblingua-stem-snowball-perl:
/usr/share/man/man3/Lingua::Stem::Snowball.3pm.gz
libsnowball-norwegian-perl:
/usr/share/man/man3/Lingua::Stem::Snowball::No.3pm.gz
libsnowball-swedish-perl:
/usr/share/man/man3/Lingua::Stem::Snowball::Se.3pm.gz
$ apt-file search Net::Z3950::ZOOM
libnet-z3950-zoom-perl: /usr/share/man/man3/Net::Z3950::ZOOM.3pm.gz
$ apt-file search Readonly::XS
libreadonly-xs-perl: /usr/share/man/man3/Readonly::XS.3pm.gz
$ apt-file search perl5/Template.pm
libtemplate-perl: /usr/lib/perl5/Template.pm
$ apt-file search Template::Plugin::HtmlToText
libtemplate-plugin-htmltotext-perl:
/usr/share/man/man3/Template::Plugin::HtmlToText.3pm.gz
$ apt-file search Test::Strict
libtest-strict-perl: /usr/share/man/man3/Test::Strict.3pm.gz
$ apt-file search XML::LibXSLT
libxml-libxslt-perl: /usr/share/man/man3/XML::LibXSLT.3pm.gz
I put the perl5/Template.pm to save you the hassles of looking for it.
Otherwise, it’s a huge long list of possibilities. In fact, here are my command
line steps based on my virgin 12.04 install:
$ sudo apt-get install libxml-simple-perl libxml-sax-writer-perl
libxml-rss-perl libschedule-at-perl libsms-send-perl libpoe-perl
libuniversal-require-perl
$ sudo apt-get install libxml-dumper-perl libpdf-reuse-barcode-perl
libpdf-reuse-perl libpdf-api2-perl libpdf-api2-simple-perl
$ sudo apt-get install libpdf-table-perl libnumber-format-perl
libnet-server-perl libnet-ldap-perl libmodern-perl-perl
libmemoize-memcached-perl libmail-sendmail-perl libmime-lite-perl
libmarc-crosswalk-dublincore-perl libmarc-charset-perl liblocale-po-perl
liblocale-currency-format-perl liblingua-stem-perl libjson-perl libhttp-oai-perl
libhtml-scrubber-perl libgravatar-url-perl libemail-date-perl
$ sudo apt-get install libalgorithm-checkdigits-perl
libauthen-cas-client-perl libbiblio-endnotestyle-perl libbusiness-isbn-perl
libcgi-session-perl libcgi-session-driver-memcached-perl
libcgi-session-serialize-yaml-perl libclass-factory-util-perl libdata-ical-perl
libdate-calc-perl libdate-manip-perl libdatetime-event-ical-perl
libdatetime-format-dateparse-perl libdatetime-format-ical-perl
libdatetime-set-perl
$ sudo apt-get install libmarc-xml-perl
I did not do the dselect step. I then decided to look at the
ubuntu.packages file. Hmmmm... my patches in 3.6.7 didn’t make it to master!
DOH!
Granted, I am running this on a 32-bit VM, so your results may differ from
mine.
> Will I be able to compare a fully working 3.6.7 with a new
3.8.4?
Yes, but if you do a package install vs. a tarball install the directories
you will compare will be different.
> That's a new learning experience, and what are the structural
differences?
I’ll let someone more familiar with the differences answer that.
> And I guess I can restore the mysql db *before* installing Koha, but
what's the significance?
BEFORE the webinstall, AFTER the packages install. And only the koha
database, not the entire set of DBs.

The packages automagically generate a random password for the MySQL
database.
And your mentioning that i386 packages and breaking things reminds me of
this thread:
Hope this helps somewhat. I can’t spend much more time helping right now. I
have a koha machine of my own to configure and set up.

GPML,
Mark Tompsett