From 96e819bd9c3d6d53d1f4321f250eab69a4c080a4 Mon Sep 17 00:00:00 2001 From: Ben Shum Date: Thu, 4 Jul 2019 15:53:35 -0400 Subject: [PATCH] LP#1835458: Add install support for Debian 10 Buster Signed-off-by: Ben Shum Signed-off-by: Jason Stephenson --- Open-ILS/src/extras/Makefile.install | 14 +- .../src/extras/install/Makefile.debian-buster | 165 ++++++++++++++++++ docs/installation/server_installation.adoc | 6 +- 3 files changed, 182 insertions(+), 3 deletions(-) create mode 100644 Open-ILS/src/extras/install/Makefile.debian-buster diff --git a/Open-ILS/src/extras/Makefile.install b/Open-ILS/src/extras/Makefile.install index ac4013cd3a..671a0e5207 100644 --- a/Open-ILS/src/extras/Makefile.install +++ b/Open-ILS/src/extras/Makefile.install @@ -4,12 +4,14 @@ # # Makefile to install prerequisites for OpenSRF and Evergreen # -# Currently supports Debian (stretch, jessie), +# Currently supports Debian (buster, stretch, jessie), # Ubuntu (16.04), Ubuntu (18.04). # # Installs Perl prereqs, libdbi, libdbi-drivers, and libyaz # # usage: +# make -f Makefile.install debian-buster +# - or - # make -f Makefile.install debian-stretch # - or - # make -f Makefile.install debian-jessie @@ -62,6 +64,8 @@ DIR = $(dir $(lastword $(MAKEFILE_LIST)))/install all: @echo "please specify an OS" && exit 0 +debian-buster: + @make -f $(DIR)/Makefile.debian-buster debian-stretch: @make -f $(DIR)/Makefile.debian-stretch debian-jessie: @@ -73,6 +77,8 @@ ubuntu-xenial: fedora: @make -f $(DIR)/Makefile.fedora +postgres-server-debian-buster: + @make -f $(DIR)/Makefile.debian-buster install_postgres_server postgres-server-debian-stretch: @make -f $(DIR)/Makefile.debian-stretch install_postgres_server postgres-server-debian-jessie: @@ -88,6 +94,8 @@ ubuntu-bionic-developer: @make -f $(DIR)/Makefile.ubuntu-bionic install_developer ubuntu-xenial-developer: @make -f $(DIR)/Makefile.ubuntu-xenial install_developer +debian-buster-developer: + @make -f $(DIR)/Makefile.debian-buster install_developer debian-stretch-developer: @make -f $(DIR)/Makefile.debian-stretch install_developer debian-jessie-developer: @@ -97,6 +105,8 @@ ubuntu-bionic-translator: @make -f $(DIR)/Makefile.ubuntu-bionic install_translator ubuntu-xenial-translator: @make -f $(DIR)/Makefile.ubuntu-xenial install_translator +debian-buster-translator: + @make -f $(DIR)/Makefile.debian-buster install_translator debian-stretch-translator: @make -f $(DIR)/Makefile.debian-stretch install_translator debian-jessie-translator: @@ -106,6 +116,8 @@ ubuntu-bionic-packager: @make -f $(DIR)/Makefile.ubuntu-bionic install_packager ubuntu-xenial-packager: @make -f $(DIR)/Makefile.ubuntu-xenial install_packager +debian-buster-packager: + @make -f $(DIR)/Makefile.debian-buster install_packager debian-stretch-packager: @make -f $(DIR)/Makefile.debian-stretch install_packager debian-jessie-packager: diff --git a/Open-ILS/src/extras/install/Makefile.debian-buster b/Open-ILS/src/extras/install/Makefile.debian-buster new file mode 100644 index 0000000000..045d937b31 --- /dev/null +++ b/Open-ILS/src/extras/install/Makefile.debian-buster @@ -0,0 +1,165 @@ +# install files for Debian Buster + +DIR = $(dir $(lastword $(MAKEFILE_LIST))) + +export DEB_PGSQL_COMMON_MODS = \ + gcc \ + libbusiness-isbn-perl \ + libjson-xs-perl \ + liblibrary-callnumber-lc-perl \ + libmarc-record-perl \ + libmarc-xml-perl \ + librose-uri-perl \ + libuuid-tiny-perl \ + libxml-libxml-perl \ + libxml-libxslt-perl + +export DEBS = \ + $(DEB_PGSQL_COMMON_MODS) \ + apache2-dev\ + aspell\ + aspell-en\ + libapache2-mod-perl2\ + libbusiness-creditcard-perl\ + libbusiness-isbn-data-perl\ + libbusiness-issn-perl\ + libbusiness-onlinepayment-authorizenet-perl\ + libbusiness-onlinepayment-payflowpro-perl\ + libbusiness-onlinepayment-perl\ + libdate-manip-perl\ + libdatetime-format-builder-perl\ + libdatetime-format-iso8601-perl\ + libdatetime-format-mail-perl\ + libdatetime-perl\ + libdatetime-set-perl\ + libdatetime-timezone-perl\ + libdbd-pg-perl\ + libdbd-pgsql\ + libdbi-dev\ + libdbi1\ + libemail-simple-perl\ + libexcel-writer-xlsx-perl\ + libgd-graph3d-perl\ + liblocale-maketext-lexicon-perl\ + liblog-log4perl-perl\ + libmarc-charset-perl \ + libncurses5-dev\ + libnet-ip-perl\ + libnet-ldap-perl \ + libnet-server-perl\ + libnet-ssh2-perl\ + libnet-z3950-simple2zoom-perl\ + libnet-z3950-simpleserver-perl\ + libnet-z3950-zoom-perl \ + libnspr4-dev\ + libole-storage-lite-perl\ + libparent-perl\ + libpq5\ + libpq-dev\ + libpcre3-dev\ + librpc-xml-perl\ + libsru-perl\ + libssh2-1-dev\ + libtemplate-plugin-posix-perl\ + libtest-warn-perl\ + libtest-output-perl\ + libtext-aspell-perl\ + libtext-csv-perl\ + libuniversal-require-perl\ + libunix-syslog-perl\ + libyaz-dev\ + postgresql-client-9.6\ + libsoap-lite-perl\ + libbz2-dev\ + libparse-recdescent-perl\ + yaz + +export DEB_APACHE_MODS = \ + expires\ + include\ + proxy\ + proxy_http\ + rewrite\ + cgi\ + perl\ + remoteip + +export DEB_APACHE_DISMODS = \ + deflate + +export DEB_APACHE_DISCONF = \ + serve-cgi-bin + +export CPAN_MODULES = \ + Business::OnlinePayment::PayPal \ + Email::Send + +export CPAN_MODULES_FORCE = \ + Business::Stripe \ + Class::DBI::Frozen::301 + +PGSQL_SERVER_DEBS_96 = \ + $(DEB_PGSQL_COMMON_MODS) \ + postgresql-9.6 \ + postgresql-contrib-9.6 \ + postgresql-plperl-9.6 \ + postgresql-server-dev-9.6 + +# note: some prereqs are repeated in the developer/packager +# sections to support building Evergreen packages on servers +# where Evergreen and its prereqs are not installed. + +DEVELOPER_DEBS = \ + automake \ + autoconf \ + libtool + +PACKAGER_DEBS = \ + asciidoc \ + source-highlight \ + zip \ + unzip \ + nsis + +TRANSLATOR_DEBS = \ + libtemplate-perl \ + liblocale-maketext-lexicon-perl \ + translate-toolkit \ + python-dev \ + python-levenshtein \ + python-polib \ + python-setuptools \ + python-simplejson \ + python-lxml \ + bzr + +all: + make -f $(DIR)/Makefile.debian DEBS="$(PGSQL_APT_REPO_DEBS)" + make -f $(DIR)/Makefile.debian debian_postgresql_repo + make -f $(DIR)/Makefile.debian install_debs + make -f $(DIR)/Makefile.common install_cpan + make -f $(DIR)/Makefile.common install_cpan_force + make -f $(DIR)/Makefile.debian debian_sys_config + +install_postgres_server: + make -f $(DIR)/Makefile.debian DEBS="$(PGSQL_APT_REPO_DEBS)" + make -f $(DIR)/Makefile.debian debian_postgresql_repo + make -f $(DIR)/Makefile.debian DEBS="$(PGSQL_SERVER_DEBS_96)" + +# note: if/when grunt-cli is available as a +# package, use the packaged version instead. +install_developer: + make -f $(DIR)/Makefile.debian DEBS="$(DEVELOPER_DEBS)" + make -f $(DIR)/Makefile.common install_nodejs_from_source + +install_translator: install_developer + make -f $(DIR)/Makefile.debian DEBS="$(TRANSLATOR_DEBS)" + +install_packager: install_developer install_translator + make -f $(DIR)/Makefile.debian DEBS="$(PACKAGER_DEBS)" + +clean: + make -f $(DIR)/Makefile.common clean + make -f $(DIR)/Makefile.debian clean + +# vim:noet:sw=4:ts=4: diff --git a/docs/installation/server_installation.adoc b/docs/installation/server_installation.adoc index 0502a14511..d9443a3242 100644 --- a/docs/installation/server_installation.adoc +++ b/docs/installation/server_installation.adoc @@ -56,6 +56,7 @@ Installing prerequisites * **PostgreSQL**: The minimum supported version is 9.4. * **Linux**: Evergreen has been tested on + Debian Buster (10), Debian Stretch (9), Debian Jessie (8), Ubuntu Bionic Beaver (18.04), @@ -74,7 +75,7 @@ before you can successfully configure, compile, and install Evergreen. + 2. Issue the following commands as the *root* Linux account to install prerequisites using the `Makefile.install` prerequisite installer, - substituting `debian-stretch`,`debian-jessie`,`ubuntu-bionic`, or + substituting `debian-buster`,`debian-stretch`,`debian-jessie`,`ubuntu-bionic`, or `ubuntu-xenial` for below: + [source, bash] @@ -235,7 +236,7 @@ chown -R opensrf:opensrf /openils Run ldconfig ------------ -On Debian Stretch, run the following command as the root user: +On Debian Stretch / Buster, run the following command as the root user: [source, bash] ------------------------------------------------------------------------------ @@ -423,6 +424,7 @@ command below based on your operating system. [source, bash] ------------------------------------------------------------------------------ +make -f Open-ILS/src/extras/Makefile.install postgres-server-debian-buster make -f Open-ILS/src/extras/Makefile.install postgres-server-debian-stretch make -f Open-ILS/src/extras/Makefile.install postgres-server-debian-jessie make -f Open-ILS/src/extras/Makefile.install postgres-server-ubuntu-xenial -- 2.43.2