From: Chris Sharp Date: Thu, 21 Sep 2017 18:23:39 +0000 (-0400) Subject: Initial commit. X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=44b2f56e17dab487ee24abb237f3cc63d0f777a0;p=contrib%2Fpines%2Feg-debian.git Initial commit. --- 44b2f56e17dab487ee24abb237f3cc63d0f777a0 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..b0e8648 --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +deb-deps +*.deb +Last_Build_Type.txt +files_for_build/customized/* diff --git a/build_evergreen2_debs b/build_evergreen2_debs new file mode 100755 index 0000000..a181a63 --- /dev/null +++ b/build_evergreen2_debs @@ -0,0 +1,320 @@ +#!/bin/bash +SCRIPT_VERSION=16.04.28 + + +OPENILS_BIN="/openils/bin" + +export PATH=$OPENILS_BIN:$PATH +# WORKDIR="/home/opensrf/develop/evergreen2/current" +# use current directory +WORKDIR="$(dirname $(readlink -f -- $0))" +echo;echo "WORKDIR is: $WORKDIR" +echo +#WORKDIR=`pwd` +if [ ! -z $1 ]; then + VERSION=$1 +else +VERSION="3.0.beta1" +fi +echo "Building evergreen-ils $VERSION" +# Customized files need to build the package. +BUILDFILESDIR="${WORKDIR}/files_for_build" + +PKGFILE="Evergreen-ILS-$VERSION.tar.gz" +PKGNAME="Evergreen-ILS-$VERSION" +NEWPKGFILE="evergreen-ils-$VERSION.tar.gz" +NEWPKGNAME="evergreen-ils-$VERSION" +DEB_FILE="evergreen-ils_${VERSION}_amd64.deb" +SOURCEDIR="$WORKDIR/evergreen-ils-$VERSION" +EG_CUSTOMIZATIONS_FILE="$WORKDIR/files_for_build/customized/evergreen_customizations_$VERSION.tar.gz" +BUILD_TYPE_FILE="Last_Build_Type.txt" + +echo;echo "customizations file is: $EG_CUSTOMIZATIONS_FILE" +sleep 3 + +EVERGREEN_PREFIX="/openils" +#ORIG_FOLDER="/home/opensrf/develop/evergreen2/" +ORIG_PKGFILE="/root/develop/deb-builder/evergreen-unified/${PKGFILE}" +SOURCE_FOLDER="${WORKDIR}/${NEWPKGNAME}" +DEST_ROOT="${SOURCE_FOLDER}/debian/evergreen-ils" +if [ "$BUILDTYPE" = "Cluster" ] +then + export DEBEMAIL="$(grep @ ${BUILDFILESDIR}/control|awk -F"[<>]" '{ print $2 }')" + export DEBFULLNAME="$(grep @ ${BUILDFILESDIR}/control|awk -F"[<>:]" '{ print $2 }')" +else + export DEBEMAIL="$(grep @ ${BUILDFILESDIR}/control-cluster|awk -F"[<>]" '{ print $2 }')" + export DEBFULLNAME="$(grep @ ${BUILDFILESDIR}/control-cluster|awk -F"[<>:]" '{ print $2 }')" +fi + + +echo +echo "Select the build type." +echo "Standalone: For single server installation." +echo "Cluster: For clustered installations." +echo "Clean: To clean this directory leaving the build files and the .deb file." +echo +select BUILDTYPE in Standalone Cluster Clean +do + case $BUILDTYPE in + Standalone ) echo You selected $BUILDTYPE; echo; sleep 1; break ;; + Cluster ) echo You selected $BUILDTYPE; echo; sleep 1; break ;; + Clean ) echo You selected $BUILDTYPE; echo; sleep 1; break ;; + * ) echo; echo "You must select 1 or 2";; + esac +done + +if [ "$BUILDTYPE" = "Clean" ] +then + if [ -e "$DEB_FILE" ]; then + mv "$DEB_FILE" "/tmp" && \ + rm -rf evergreen* + mv "/tmp/$DEB_FILE" "$WORKDIR" + else + rm -rf evergreen* + fi + exit +fi + +echo Building $BUILDTYPE version..;echo + +echo +#echo "Select build with TPAC or OPAC enabled." +#select PAC in TPAC OPAC +# do +# case $PAC in +# TPAC ) echo You selected $PAC; echo; sleep 1; break ;; +# OPAC ) echo You selected $PAC; echo; sleep 1; break ;; +# * ) echo; echo "You must select 1 or 2";; +# esac +#done +#echo Building with $PAC enabled.;echo +#WHY U BREAK STUFF?!?! +#exit + + +cd $WORKDIR + +if [ ! -e "$ORIG_PKGFILE" ] + then + echo "$ORIG_PKGFILE not found exiting..." + echo + exit 1 +fi + +if [ "$1" = "b" ] || [ "$1" = "-b" ] + then + echo + echo "Not including Source" + echo + BuildPackage () { + echo + echo "Running dpkg-buildpackage -b -nc -uc -us" + sleep 1 + dpkg-buildpackage -b -nc -uc -us + } + else + BuildPackage () { + echo + echo "Running dpkg-buildpackage -F -nc" + sleep 1 + dpkg-buildpackage -F -nc + } +fi + +[ -e "$BUILD_TYPE_FILE" ] && rm "$BUILD_TYPE_FILE" + +## currently we are simply deleting and recreating everything here. + +rm -f ${WORKDIR}/*.changes +rm -f ${WORKDIR}/*.dsc +rm -f ${WORKDIR}/*.deb +rm -f ${WORKDIR}/*.gz && echo "Removed old package files" +rm -rf $SOURCE_FOLDER && echo "Removed $SOURCE_FOLDER" && \ +sleep 1 && \ +echo ">>>Untarring: ${PKGNAME}" +tar zxf ${ORIG_PKGFILE} -C ${WORKDIR} && \ +mv ${WORKDIR}/${PKGNAME} ${WORKDIR}/${NEWPKGNAME} +#TODO +#Extract customizations here + +if [ -e $EG_CUSTOMIZATIONS_FILE ] +then + echo + echo "Customizations file $EG_CUSTOMIZATIONS_FILE found." + read -p "Do you want to use customizations file? [y/n] " USE_CUSTOMIZATIONS + if [ "$USE_CUSTOMIZATIONS" = "y" ] || [ "$USE_CUSTOMIZATIONS" = "Y" ] + then + echo + echo "Using customizations file $EG_CUSTOMIZATIONS_FILE" + sleep 2 + tar zxvf $EG_CUSTOMIZATIONS_FILE -C $SOURCEDIR + echo "Customized: YES" >> $BUILD_TYPE_FILE + CUSTOM="YES" + fi +else + echo;echo "No Customizations found.." + echo + echo "Could not find the file" + echo "evergreen_customizations_${VERSION}.tar.gz" + echo "in the customizations directory" + echo "Building stock Evergreen" + echo + read -p "Press [Enter] to continue" PAUSE +fi + +if [ "$CUSTOM" != "YES" ] +then + echo + echo "Customized: NO" >> $BUILD_TYPE_FILE + echo "Building stock evergreen _without_ customizations" + echo + sleep 2 +fi + +cp -f ${ORIG_PKGFILE} ${WORKDIR}/${NEWPKGFILE} && \ +cd $SOURCE_FOLDER && \ +echo "Running dh_make on $NEWPKGFILE" && \ +sleep 1 && \ +dh_make -s -n +echo "Restoring rules file." && \ +sleep 2 && \ +mkdir -p ${SOURCE_FOLDER}/DEBIAN/evergreen-ils/etc/init.d && \ +mkdir -p ${SOURCE_FOLDER}/debian/evergreen-ils/etc/init.d && \ + +# copy our modified files to the debian folder in the source folder. +if [ "$CUSTOM" = "YES" ] +then + cp ${BUILDFILESDIR}/rules-custom ${SOURCE_FOLDER}/debian/rules +else + cp ${BUILDFILESDIR}/rules ${SOURCE_FOLDER}/debian/rules +fi + +if [ "$BUILDTYPE" = "Cluster" ] +then + cp ${BUILDFILESDIR}/control-cluster ${SOURCE_FOLDER}/debian/control + cp ${BUILDFILESDIR}/CONTROL-cluster ${SOURCE_FOLDER}/DEBIAN/control +else + cp ${BUILDFILESDIR}/control ${SOURCE_FOLDER}/debian/control + cp ${BUILDFILESDIR}/CONTROL ${SOURCE_FOLDER}/DEBIAN/control +fi +cp ${BUILDFILESDIR}/config ${SOURCE_FOLDER}/debian/config +cp ${BUILDFILESDIR}/config ${SOURCE_FOLDER}/DEBIAN/config +cp ${BUILDFILESDIR}/postinst ${SOURCE_FOLDER}/debian/postinst +cp ${BUILDFILESDIR}/postinst ${SOURCE_FOLDER}/DEBIAN/postinst +cp ${BUILDFILESDIR}/postrm ${SOURCE_FOLDER}/debian/postrm +cp ${BUILDFILESDIR}/postrm ${SOURCE_FOLDER}/DEBIAN/postrm +cp ${BUILDFILESDIR}/templates ${SOURCE_FOLDER}/debian/templates +cp ${BUILDFILESDIR}/templates ${SOURCE_FOLDER}/DEBIAN/templates + +if [ "$BUILDTYPE" = "Cluster" ] + then + echo "Build Date: $(date)" >> $WORKDIR/$BUILD_TYPE_FILE + echo "Build Type: $BUILDTYPE" >> $WORKDIR/$BUILD_TYPE_FILE + sed -i 's/^STANDALONE=1 #/STANDALONE=0 #/g' ${SOURCE_FOLDER}/debian/postinst + else + echo "Build Date: $(date)" > $WORKDIR/$BUILD_TYPE_FILE + echo "Build Type: $BUILDTYPE" >> $WORKDIR/$BUILD_TYPE_FILE +fi + +if [ "$PAC" = "TPAC" ] + then + sed -i 's/^PAC=OPAC/PAC=TPAC/g' ${SOURCE_FOLDER}/debian/postinst +fi + + +############### Standard build failed because some components were being installed into build system ########### +############### intead of destination target ${SOURCE_FOLDER}/debian/evergreen-ils/openils ###################### +echo && \ +## Standard build failed due mixing of paths . +#sed -i 's^$(perldir)^$(DESTDIR)$(perldir)^g' ${SOURCE_FOLDER}/Open-ILS/src/Makefile.am +sed -i 's^$(perldir)^$(DESTDIR)$(perldir)^g' ${SOURCE_FOLDER}/Open-ILS/src/Makefile.in + + +sed -i 's^reportsdir = $(DESTDIR)$(WEBDIR)/reports^reportsdir = $(WEBDIR)/reports^g' ${SOURCE_FOLDER}/Open-ILS/web/Makefile.in +#sed -i 's^reportsdir = $(DESTDIR)$(WEBDIR)/reports^reportsdir = $(WEBDIR)/reports^g' ${SOURCE_FOLDER}/Open-ILS/web/Makefile.am + + + +#for building the staff client, wants to install it in /openils/var/web/xul on the *build* system + +#first off, someone used {} instead of () for 1 instance of WEBDIR +#sed -i 's^${WEBDIR}^$(WEBDIR)^g' ${SOURCE_FOLDER}/Open-ILS/xul/staff_client/Makefile.in +#sed -i 's^${WEBDIR}^$(WEBDIR)^g' ${SOURCE_FOLDER}/Open-ILS/xul/staff_client/Makefile.am +#now fix the path +#sed -i 's^$(WEBDIR)^$(DESTDIR)$(WEBDIR)^g' ${SOURCE_FOLDER}/Open-ILS/xul/staff_client/Makefile.in +#sed -i 's^$(WEBDIR)^$(DESTDIR)$(WEBDIR)^g' ${SOURCE_FOLDER}/Open-ILS/xul/staff_client/Makefile.am + + +#sed -i 's/$(DESTDIR)$(oilsincludedir)/$(oilsincludedir)/g' ${SOURCE_FOLDER}/Open-ILS/src/Makefile.am +sed -i 's/$(DESTDIR)$(oilsincludedir)/$(oilsincludedir)/g' ${SOURCE_FOLDER}/Open-ILS/src/Makefile.in + +##################################################################################################################### +##################################################################################################################### + +#Debian doesn't like having the same files provided by multiple packages. Rename the example files provided by evergreen that conflict with opensrf. +sed -i 's/opensrf.xml.example/opensrf.xml.evergreen.example/g' ${SOURCE_FOLDER}/Open-ILS/src/Makefile.in +#sed -i 's/opensrf.xml.example/opensrf.xml.evergreen.example/g' ${SOURCE_FOLDER}/Open-ILS/src/Makefile.am +sed -i 's/opensrf_core.xml.example/opensrf_core.xml.evergreen.example/g' ${SOURCE_FOLDER}/Open-ILS/src/Makefile.in +#sed -i 's/opensrf_core.xml.example/opensrf_core.xml.evergreen.example/g' ${SOURCE_FOLDER}/Open-ILS/src/Makefile.am +mv ${SOURCE_FOLDER}/Open-ILS/examples/opensrf.xml.example ${SOURCE_FOLDER}/Open-ILS/examples/opensrf.xml.evergreen.example +mv ${SOURCE_FOLDER}/Open-ILS/examples/opensrf_core.xml.example ${SOURCE_FOLDER}/Open-ILS/examples/opensrf_core.xml.evergreen.example + + +#mkdir -p ${SOURCE_FOLDER}/debian/evergreen-ils/etc/apache2/sites-available +#cp -Rv ${SOURCE_FOLDER}/Open-ILS/examples/apache/eg.conf ${SOURCE_FOLDER}/debian/evergreen-ils/etc/apache2/sites-available/ +#cp -Rv ${SOURCE_FOLDER}/Open-ILS/examples/apache/eg_vhost.conf ${SOURCE_FOLDER}/debian/evergreen-ils/etc/apache2/ +#cp -Rv ${SOURCE_FOLDER}/Open-ILS/examples/apache/startup.pl ${SOURCE_FOLDER}/debian/evergreen-ils/etc/apache2/ + +#fix apxs2 install stuff +####APACHE_CONF=${DEST_ROOT}/etc/apache2/ +####APACHE_MODS=${DEST_ROOT}/usr/lib/apache2/modules/ +#mkdir -pv $APACHE_CONF +#mkdir -pv $APACHE_MODS +#mkdir -pv ${DEST_ROOT}/etc/apache2/mods-available + +#APXS2 tries to install the mods in the final destination on *this* system, (/etc/apache2...) We need to override this to go into the /debian/evergreen-ils/etc... folder. +#We fix the .load files apxs2 creates in postinst or rules. +####APACHE_IN=${SOURCE_FOLDER}/Open-ILS/src/apachemods/Makefile.in +####APACHE_AM=${SOURCE_FOLDER}/Open-ILS/src/apachemods/Makefile.am +####sed -i "s^(APXS2) -i -a @srcdir@/mod_xmlent.la^(APXS2) -S LIBEXECDIR='$APACHE_MODS' -S SYSCONFDIR='$APACHE_CONF' -i -a @srcdir@/mod_xmlent.la^g" ${APACHE_IN} +####sed -i "s^(APXS2) -i -a @srcdir@/mod_xmlent.la^(APXS2) -S LIBEXECDIR='$APACHE_MODS' -S SYSCONFDIR='$APACHE_CONF' -i -a @srcdir@/mod_xmlent.la^g" ${APACHE_AM} +####sed -i "s^(APXS2) -i -a @srcdir@/mod_idlchunk.la^(APXS2) -S LIBEXECDIR='$APACHE_MODS' -S SYSCONFDIR='$APACHE_CONF' -i -a @srcdir@/mod_idlchunk.la^g" ${APACHE_IN} +####sed -i "s^(APXS2) -i -a @srcdir@/mod_idlchunk.la^(APXS2) -S LIBEXECDIR='$APACHE_MODS' -S SYSCONFDIR='$APACHE_CONF' -i -a @srcdir@/mod_idlchunk.la^g" ${APACHE_AM} + +#fix apache .load path screwups + +###TODO: not sure if this is necessary anymore. I think we do this in rules or postinst now. +#echo "LoadModule xmlent_module /usr/lib/apache2/modules/mod_xmlent.so" > "${DEST_ROOT}/etc/apache2/mods-available/xmlent.load" + + +#copy support scripts into openils/bin since /home/opensrf/ isn't available anymore +mkdir -p "${DEST_ROOT}${EVERGREEN_PREFIX}/bin" +mkdir -p "${DEST_ROOT}${EVERGREEN_PREFIX}/share/doc/examples/" +cp -rv ${SOURCE_FOLDER}/Open-ILS/src/support-scripts/* "${DEST_ROOT}${EVERGREEN_PREFIX}/bin/" +cp -rv ${SOURCE_FOLDER}/Open-ILS/src/sql "${DEST_ROOT}${EVERGREEN_PREFIX}/share/doc/examples/" + + + +### eg_db_config is expecting certain relative paths. Since we no longer operate from /home/opensrf/ we need to make minor tweaks. +sed -i "s^../extras/eg_config^eg_config^g" ${SOURCE_FOLDER}/Open-ILS/src/support-scripts/eg_db_config.in +#one sed to rule them all +sed -i "s^../sql/Pg/^../share/doc/examples/sql/Pg/^g" ${SOURCE_FOLDER}/Open-ILS/src/support-scripts/eg_db_config.in +#sed -i "s^../sql/Pg/build-db.sh^../share/doc/examples/sql/Pg/build-db.sh^g" ${DEST_ROOT}/openils/bin/eg_db_config.pl +#sed -i "s^./../sql/Pg/create_database_9_1.sql + +### make eg_startup executable. +chmod 755 ${DEST_ROOT}/etc/apache2/eg_startup + +#TODO: Not sure this should be even in this package. Move to libdbi? +mkdir -p ${DEST_ROOT}/etc/ld.so.conf.d +echo "/usr/lib/dbd" > ${DEST_ROOT}/etc/ld.so.conf.d/eg.conf + + + +echo +echo "Source Folder is: ${SOURCE_FOLDER}" +sleep 3 +BuildPackage + +cd $WORKDIR + diff --git a/files_for_build/CONTROL b/files_for_build/CONTROL new file mode 100644 index 0000000..e42560c --- /dev/null +++ b/files_for_build/CONTROL @@ -0,0 +1,16 @@ +Package: evergreen-ils +Source: evergreen +Version: 3.0.beta1 +Section: web +Priority: extra +Architecture: amd64 +Maintainer: Pines Admins +Homepage: http://open-ils.org +Architecture: amd64 +Depends: ${shlibs:Depends}, ${misc:Depends}, apache2-dev, aspell, aspell-en, autoconf,automake,gcc,libapache2-mod-perl2, libbusiness-creditcard-perl, libbusiness-isbn-data-perl, libbusiness-isbn-perl,libbusiness-issn-perl, libbusiness-onlinepayment-authorizenet-perl, libbusiness-onlinepayment-payflowpro-perl, libbusiness-onlinepayment-paypal-perl, libbusiness-onlinepayment-perl, libbusiness-stripe-perl, libbz2-dev, libclass-dbi-frozen-301-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, libdbi1, libdbi-dev, libemail-send-perl, libemail-simple-perl, libexcel-writer-xlsx-perl, libgd-graph3d-perl, libjson-perl, libjson-xs-perl,liblibrary-callnumber-lc-perl,liblocale-maketext-lexicon-perl, liblog-log4perl-perl, libmarc-charset-perl, libmarc-record-perl, libmarc-xml-perl, libmodule-pluggable-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, libparse-recdescent-perl, libpcre3-dev, libpq5, libpq-dev, libreturn-value-perl, librose-uri-perl,librpc-xml-perl, libsoap-lite-perl, libsru-perl, libssh2-1-dev, libtemplate-plugin-posix-perl, libtest-output-perl, libtest-warn-perl, libtext-aspell-perl, libtext-csv-perl, libtool,libuniversal-require-perl, libunix-syslog-perl, libuuid-tiny-perl,libxml-libxml-perl,libxml-libxslt-perl, libyaz-dev, nodejs-legacy,npm, postgresql-9.5,postgresql-client-9.5, postgresql-contrib-9.5,postgresql-plperl-9.5,postgresql-server-dev-9.5, yaz + +Description: Evergreen Library Management Sofware. + Evergreen is open-source, consortial-quality + library software to help library users find + library materials and to help libraries manage, + catalog, and circulate those materials. diff --git a/files_for_build/CONTROL-cluster b/files_for_build/CONTROL-cluster new file mode 100644 index 0000000..c00049a --- /dev/null +++ b/files_for_build/CONTROL-cluster @@ -0,0 +1,16 @@ +Package: evergreen-ils +Source: evergreen +Version: 3.0.beta1 +Section: web +Priority: extra +Architecture: amd64 +Maintainer: Pines Admins +Homepage: http://open-ils.org +Architecture: amd64 +Depends: ${shlibs:Depends}, ${misc:Depends}, apache2-dev, aspell, aspell-en, autoconf,automake,gcc,libapache2-mod-perl2, libbusiness-creditcard-perl, libbusiness-isbn-data-perl, libbusiness-isbn-perl,libbusiness-issn-perl, libbusiness-onlinepayment-authorizenet-perl, libbusiness-onlinepayment-payflowpro-perl, libbusiness-onlinepayment-paypal-perl, libbusiness-onlinepayment-perl, libbusiness-stripe-perl, libbz2-dev, libclass-dbi-frozen-301-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, libdbi1, libdbi-dev, libemail-send-perl, libemail-simple-perl, libexcel-writer-xlsx-perl, libgd-graph3d-perl, libjson-perl, libjson-xs-perl,liblibrary-callnumber-lc-perl,liblocale-maketext-lexicon-perl, liblog-log4perl-perl, libmarc-charset-perl, libmarc-record-perl, libmarc-xml-perl, libmodule-pluggable-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, libparse-recdescent-perl, libpcre3-dev, libpq5, libpq-dev, libreturn-value-perl, librose-uri-perl,librpc-xml-perl, libsoap-lite-perl, libsru-perl, libssh2-1-dev, libtemplate-plugin-posix-perl, libtest-output-perl, libtest-warn-perl, libtext-aspell-perl, libtext-csv-perl, libtool,libuniversal-require-perl, libunix-syslog-perl, libuuid-tiny-perl,libxml-libxml-perl,libxml-libxslt-perl, libyaz-dev, nodejs-legacy,npm, postgresql-client-9.5, yaz + +Description: Evergreen Library Management Sofware. + Evergreen is open-source, consortial-quality + library software to help library users find + library materials and to help libraries manage, + catalog, and circulate those materials. diff --git a/files_for_build/config b/files_for_build/config new file mode 100755 index 0000000..7da7afc --- /dev/null +++ b/files_for_build/config @@ -0,0 +1,58 @@ +#!/bin/sh +set -e +#templates: +#evergreen-ils/ +# eg_db_password +# verify_eg_db_password +# ejabber_password +# verify_ejabber_password +# user_nomatch +# ejabber_notmatch +get_eg_db_password() +{ + db_input high evergreen-ils/eg_db_password || true + db_input high evergreen-ils/verify_eg_db_password || true + db_go || true + db_get evergreen-ils/eg_db_password + PASSWORD="$RET" + db_get evergreen-ils/verify_eg_db_password + VERIFY="$RET" + if [ "$PASSWORD" != "$VERIFY" ]; then + db_input critical evergreen-ils/pass_nomatch || true + db_go || true + get_eg_db_password + fi +} + + +get_evergreen_admin_user() +{ + db_input high evergreen-ils/evergreen_admin_user || true + db_go || true +} + +get_evergreen_admin_password() +{ + db_input high evergreen-ils/evergreen_admin_password || true + db_input high evergreen-ils/verify_evergreen_admin_password || true + db_go || true + db_get evergreen-ils/evergreen_admin_password + PASSWORD="$RET" + db_get evergreen-ils/verify_evergreen_admin_password + VERIFY="$RET" + if [ "$PASSWORD" != "$VERIFY" ]; then + db_input critical evergreen-ils/admin_pass_nomatch || true + db_go || true + get_evergreen_admin_password + fi +} + +# Source debconf library. +. /usr/share/debconf/confmodule + + +get_eg_db_password +get_evergreen_admin_user +get_evergreen_admin_password +exit 0 + diff --git a/files_for_build/control b/files_for_build/control new file mode 100644 index 0000000..87a9726 --- /dev/null +++ b/files_for_build/control @@ -0,0 +1,16 @@ +Source: evergreen-ils +Section: web +Priority: extra +Maintainer: Pines Admins +Build-Depends: aspell, libc6 (>= 2.3), libmemcached-dev, libncurses5, libreadline6, libxml2 (>= 2.7.4), debconf (>= 0.5), debhelper (>= 7.0.50~), autotools-dev, autoconf, automake, build-essential, libexpat1-dev, libgcrypt11-dev, libgdbm-dev, libperl-dev, libreadline6-dev, libxml2-dev, libxslt1-dev, python-dev, zlib1g-dev, libncurses5-dev, libnspr4-dev, libssh2-1-dev, libbz2-dev, libtest-warn-perl, libtest-output-perl, libbusiness-stripe-perl, yaz, libyaz-dev, libdbd-pgsql +Standards-Version: 3.8.4 +Homepage: http://open-ils.org + +Package: evergreen-ils +Architecture: amd64 +Depends: ${shlibs:Depends}, ${misc:Depends}, apache2-dev, aspell, aspell-en, autoconf,automake,gcc,libapache2-mod-perl2, libbusiness-creditcard-perl, libbusiness-isbn-data-perl, libbusiness-isbn-perl,libbusiness-issn-perl, libbusiness-onlinepayment-authorizenet-perl, libbusiness-onlinepayment-payflowpro-perl, libbusiness-onlinepayment-paypal-perl, libbusiness-onlinepayment-perl, libbusiness-stripe-perl, libbz2-dev, libclass-dbi-frozen-301-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, libdbi1, libdbi-dev, libemail-send-perl, libemail-simple-perl, libexcel-writer-xlsx-perl, libgd-graph3d-perl, libjson-perl, libjson-xs-perl,liblibrary-callnumber-lc-perl,liblocale-maketext-lexicon-perl, liblog-log4perl-perl, libmarc-charset-perl, libmarc-record-perl, libmarc-xml-perl, libmodule-pluggable-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, libparse-recdescent-perl, libpcre3-dev, libpq5, libpq-dev, libreturn-value-perl, librose-uri-perl,librpc-xml-perl, libsoap-lite-perl, libsru-perl, libssh2-1-dev, libtemplate-plugin-posix-perl, libtest-output-perl, libtest-warn-perl, libtext-aspell-perl, libtext-csv-perl, libtool,libuniversal-require-perl, libunix-syslog-perl, libuuid-tiny-perl,libxml-libxml-perl,libxml-libxslt-perl, libyaz-dev, nodejs-legacy,npm, postgresql-9.5,postgresql-client-9.5, postgresql-contrib-9.5,postgresql-plperl-9.5,postgresql-server-dev-9.5, yaz +Description: Evergreen Library Management Sofware. + Evergreen is open-source, consortial-quality + library software to help library users find + library materials and to help libraries manage, + catalog, and circulate those materials. diff --git a/files_for_build/control-cluster b/files_for_build/control-cluster new file mode 100644 index 0000000..49e198e --- /dev/null +++ b/files_for_build/control-cluster @@ -0,0 +1,17 @@ +Source: evergreen-ils +Section: web +Priority: extra +Maintainer: Pines Admins +Build-Depends: aspell, libc6 (>= 2.3), libmemcached-dev, libncurses5, libreadline6, libxml2 (>= 2.7.4), debconf (>= 0.5), debhelper (>= 7.0.50~), autotools-dev, autoconf, automake, build-essential, libexpat1-dev, libgcrypt11-dev, libgdbm-dev, libperl-dev, libreadline6-dev, libxml2-dev, libxslt1-dev, python-dev, zlib1g-dev, libncurses5-dev, libnspr4-dev, libssh2-1-dev, libbz2-dev, libtest-warn-perl, libtest-output-perl, libbusiness-stripe-perl, yaz, libyaz-dev, libdbd-pgsql +Standards-Version: 3.8.4 +Homepage: http://open-ils.org + +Package: evergreen-ils +Architecture: amd64 +Depends: ${shlibs:Depends}, ${misc:Depends}, apache2-dev, aspell, aspell-en, autoconf,automake,gcc,libapache2-mod-perl2, libbusiness-creditcard-perl, libbusiness-isbn-data-perl, libbusiness-isbn-perl,libbusiness-issn-perl, libbusiness-onlinepayment-authorizenet-perl, libbusiness-onlinepayment-payflowpro-perl, libbusiness-onlinepayment-paypal-perl, libbusiness-onlinepayment-perl, libbusiness-stripe-perl, libbz2-dev, libclass-dbi-frozen-301-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, libdbi1, libdbi-dev, libemail-send-perl, libemail-simple-perl, libexcel-writer-xlsx-perl, libgd-graph3d-perl, libjson-perl, libjson-xs-perl,liblibrary-callnumber-lc-perl,liblocale-maketext-lexicon-perl, liblog-log4perl-perl, libmarc-charset-perl, libmarc-record-perl, libmarc-xml-perl, libmodule-pluggable-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, libparse-recdescent-perl, libpcre3-dev, libpq5, libpq-dev, libreturn-value-perl, librose-uri-perl,librpc-xml-perl, libsoap-lite-perl, libsru-perl, libssh2-1-dev, libtemplate-plugin-posix-perl, libtest-output-perl, libtest-warn-perl, libtext-aspell-perl, libtext-csv-perl, libtool,libuniversal-require-perl, libunix-syslog-perl, libuuid-tiny-perl,libxml-libxml-perl,libxml-libxslt-perl, libyaz-dev, nodejs-legacy,npm, postgresql-client-9.5, yaz +Description: Evergreen Library Management Sofware. + Evergreen is open-source, consortial-quality + library software to help library users find + library materials and to help libraries manage, + catalog, and circulate those materials. + diff --git a/files_for_build/control.backup b/files_for_build/control.backup new file mode 100644 index 0000000..7b04887 --- /dev/null +++ b/files_for_build/control.backup @@ -0,0 +1,16 @@ +Source: evergreen-ils +Section: web +Priority: extra +Maintainer: Pines Admins +Build-Depends: aspell, libc6 (>= 2.3), libmemcached-dev, libncurses5, libreadline6, libxml2 (>= 2.7.4), debconf (>= 0.5), debhelper (>= 7.0.50~), autotools-dev, autoconf, automake, build-essential, libexpat1-dev, libgcrypt11-dev, libgdbm-dev, libperl-dev, libreadline6-dev, libxml2-dev, libxslt1-dev, python-dev, zlib1g-dev, libncurses5-dev, libnspr4-dev, libssh2-1-dev, libbz2-dev, libtest-warn-perl, libtest-output-perl, libbusiness-stripe-perl, yaz, libyaz-dev, libdbd-pgsql +Standards-Version: 3.8.4 +Homepage: http://open-ils.org + +Package: evergreen-ils +Architecture: amd64 +Depends: ${shlibs:Depends}, ${misc:Depends}, apache2-dev, aspell, aspell-en, autoconf, , automake, , gcc, , libapache2-mod-perl2, libbusiness-creditcard-perl, libbusiness-isbn-data-perl, libbusiness-isbn-perl, , libbusiness-issn-perl, libbusiness-onlinepayment-authorizenet-perl, libbusiness-onlinepayment-payflowpro-perl, libbusiness-onlinepayment-paypal-perl, libbusiness-onlinepayment-perl, libbusiness-stripe-perl, libbz2-dev, libclass-dbi-frozen-301-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, libdbi1, libdbi-dev, libemail-send-perl, libemail-simple-perl, libexcel-writer-xlsx-perl, libgd-graph3d-perl, libjson-xs-perl, , liblibrary-callnumber-lc-perl, , liblocale-maketext-lexicon-perl, liblog-log4perl-perl, libmarc-charset-perl, , libmarc-record-perl, , libmarc-xml-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, libparse-recdescent-perl, libpcre3-dev, libpq5, libpq-dev, librose-uri-perl, , librpc-xml-perl, libsoap-lite-perl, libsru-perl, libssh2-1-dev, libtemplate-plugin-posix-perl, libtest-output-perl, libtest-warn-perl, libtext-aspell-perl, libtext-csv-perl, libtool, , libuniversal-require-perl, libunix-syslog-perl, libuuid-tiny-perl, , libxml-libxml-perl, , libxml-libxslt-perl, libyaz-dev, nodejs-legacy, , npm, postgresql-9.5, , postgresql-client-9.5, postgresql-contrib-9.5, , postgresql-plperl-9.5, , postgresql-server-dev-9.5, yaz +Description: Evergreen Library Management Sofware. + Evergreen is open-source, consortial-quality + library software to help library users find + library materials and to help libraries manage, + catalog, and circulate those materials. diff --git a/files_for_build/customized/evergreen_customizations_3.0.beta1.tar.gz b/files_for_build/customized/evergreen_customizations_3.0.beta1.tar.gz new file mode 100644 index 0000000..31d8660 Binary files /dev/null and b/files_for_build/customized/evergreen_customizations_3.0.beta1.tar.gz differ diff --git a/files_for_build/deps/2.5.2.deps b/files_for_build/deps/2.5.2.deps new file mode 100644 index 0000000..2f7184a --- /dev/null +++ b/files_for_build/deps/2.5.2.deps @@ -0,0 +1,56 @@ +apache2-prefork-dev\ +aspell\ +aspell-en\ +libbusiness-creditcard-perl\ +libbusiness-edi-perl \ +libbusiness-isbn-data-perl\ +libbusiness-isbn-perl\ +libbusiness-issn-perl\ +libbusiness-onlinepayment-authorizenet-perl\ +libbusiness-onlinepayment-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 \ +libemail-send-perl\ +libemail-simple-perl\ +libgd-graph3d-perl\ +liblibrary-callnumber-lc-perl \ +liblocale-maketext-lexicon-perl\ +liblog-log4perl-perl\ +libmarc-charset-perl \ +libmarc-record-perl\ +libmarc-xml-perl \ +libncurses5-dev\ +libnet-https-any-perl \ +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\ +libbz2-dev \ +libpq5\ +libpq-dev\ +librpc-xml-perl\ +libspreadsheet-writeexcel-perl\ +libsru-perl\ +libssh2-1-dev\ +libtext-aspell-perl\ +libtext-csv-perl\ +libuniversal-require-perl\ +libunix-syslog-perl\ +libuuid-tiny-perl\ +libyaz-dev\ +postgresql-client-9.1\ +libsoap-lite-perl\ +libtest-warn-perl\ +yaz diff --git a/files_for_build/deps/2.5.3b.deps b/files_for_build/deps/2.5.3b.deps new file mode 100644 index 0000000..02a45f6 --- /dev/null +++ b/files_for_build/deps/2.5.3b.deps @@ -0,0 +1,56 @@ +apache2-prefork-dev +aspell +aspell-en +libbusiness-creditcard-perl +libbusiness-edi-perl +libbusiness-isbn-data-perl +libbusiness-isbn-perl +libbusiness-issn-perl +libbusiness-onlinepayment-authorizenet-perl +libbusiness-onlinepayment-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 +libemail-send-perl +libemail-simple-perl +libgd-graph3d-perl +liblibrary-callnumber-lc-perl +liblocale-maketext-lexicon-perl +liblog-log4perl-perl +libmarc-charset-perl +libmarc-record-perl +libmarc-xml-perl +libncurses5-dev +libnet-https-any-perl +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 +libbz2-dev +libpq5 +libpq-dev +librpc-xml-perl +libspreadsheet-writeexcel-perl +libsru-perl +libssh2-1-dev +libtext-aspell-perl +libtext-csv-perl +libuniversal-require-perl +libunix-syslog-perl +libuuid-tiny-perl +libyaz-dev +postgresql-client-9.1 +libsoap-lite-perl +libtest-warn-perl +yaz diff --git a/files_for_build/deps/2.6.0.deps b/files_for_build/deps/2.6.0.deps new file mode 100644 index 0000000..cdc5ed3 --- /dev/null +++ b/files_for_build/deps/2.6.0.deps @@ -0,0 +1,57 @@ +apache2-prefork-dev +aspell +aspell-en +libbusiness-creditcard-perl +libbusiness-edi-perl +libbusiness-isbn-data-perl +libbusiness-isbn-perl +libbusiness-issn-perl +libbusiness-onlinepayment-authorizenet-perl +libbusiness-onlinepayment-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 +libemail-send-perl +libemail-simple-perl +libgd-graph3d-perl +liblibrary-callnumber-lc-perl +liblocale-maketext-lexicon-perl +liblog-log4perl-perl +libmarc-charset-perl +libmarc-record-perl +libmarc-xml-perl +libncurses5-dev +libnet-https-any-perl +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 +libbz2-dev +libpq5 +libpq-dev +librpc-xml-perl +libspreadsheet-writeexcel-perl +libsru-perl +libssh2-1-dev +libtext-aspell-perl +libtext-csv-perl +libuniversal-require-perl +libunix-syslog-perl +libuuid-tiny-perl +libyaz-dev +postgresql-client-9.1 +libsoap-lite-perl +libtest-warn-perl +libtest-output-perl +yaz diff --git a/files_for_build/deps/2.7.0.deps b/files_for_build/deps/2.7.0.deps new file mode 100644 index 0000000..dc834d7 --- /dev/null +++ b/files_for_build/deps/2.7.0.deps @@ -0,0 +1,64 @@ +gcc +libbusiness-isbn-perl +libjson-xs-perl +liblibrary-callnumber-lc-perl +libmarc-record-perl +libmarc-xml-perl +libuuid-tiny-perl +libxml-libxml-perl +libxml-libxslt-perl + +apache2-prefork-dev +aspell +aspell-en +libbusiness-creditcard-perl +libbusiness-edi-perl +libbusiness-isbn-data-perl +libbusiness-issn-perl +libbusiness-onlinepayment-authorizenet-perl +libbusiness-onlinepayment-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 +libemail-send-perl +libemail-simple-perl +libgd-graph3d-perl +liblocale-maketext-lexicon-perl +liblog-log4perl-perl +libmarc-charset-perl +libncurses5-dev +libnet-https-any-perl +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 +libbz2-dev +libpq5 +libpq-dev +librpc-xml-perl +libsru-perl +libssh2-1-dev +libtext-aspell-perl +libtext-csv-perl +libuniversal-require-perl +libunix-syslog-perl +libyaz-dev +postgresql-client-9.1 +libsoap-lite-perl +libtest-warn-perl +libtest-output-perl +libparse-recdescent-perl +yaz + + diff --git a/files_for_build/deps/2.7.1.deps b/files_for_build/deps/2.7.1.deps new file mode 100644 index 0000000..dc834d7 --- /dev/null +++ b/files_for_build/deps/2.7.1.deps @@ -0,0 +1,64 @@ +gcc +libbusiness-isbn-perl +libjson-xs-perl +liblibrary-callnumber-lc-perl +libmarc-record-perl +libmarc-xml-perl +libuuid-tiny-perl +libxml-libxml-perl +libxml-libxslt-perl + +apache2-prefork-dev +aspell +aspell-en +libbusiness-creditcard-perl +libbusiness-edi-perl +libbusiness-isbn-data-perl +libbusiness-issn-perl +libbusiness-onlinepayment-authorizenet-perl +libbusiness-onlinepayment-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 +libemail-send-perl +libemail-simple-perl +libgd-graph3d-perl +liblocale-maketext-lexicon-perl +liblog-log4perl-perl +libmarc-charset-perl +libncurses5-dev +libnet-https-any-perl +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 +libbz2-dev +libpq5 +libpq-dev +librpc-xml-perl +libsru-perl +libssh2-1-dev +libtext-aspell-perl +libtext-csv-perl +libuniversal-require-perl +libunix-syslog-perl +libyaz-dev +postgresql-client-9.1 +libsoap-lite-perl +libtest-warn-perl +libtest-output-perl +libparse-recdescent-perl +yaz + + diff --git a/files_for_build/deps/2.7.1a.deps b/files_for_build/deps/2.7.1a.deps new file mode 100644 index 0000000..dc834d7 --- /dev/null +++ b/files_for_build/deps/2.7.1a.deps @@ -0,0 +1,64 @@ +gcc +libbusiness-isbn-perl +libjson-xs-perl +liblibrary-callnumber-lc-perl +libmarc-record-perl +libmarc-xml-perl +libuuid-tiny-perl +libxml-libxml-perl +libxml-libxslt-perl + +apache2-prefork-dev +aspell +aspell-en +libbusiness-creditcard-perl +libbusiness-edi-perl +libbusiness-isbn-data-perl +libbusiness-issn-perl +libbusiness-onlinepayment-authorizenet-perl +libbusiness-onlinepayment-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 +libemail-send-perl +libemail-simple-perl +libgd-graph3d-perl +liblocale-maketext-lexicon-perl +liblog-log4perl-perl +libmarc-charset-perl +libncurses5-dev +libnet-https-any-perl +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 +libbz2-dev +libpq5 +libpq-dev +librpc-xml-perl +libsru-perl +libssh2-1-dev +libtext-aspell-perl +libtext-csv-perl +libuniversal-require-perl +libunix-syslog-perl +libyaz-dev +postgresql-client-9.1 +libsoap-lite-perl +libtest-warn-perl +libtest-output-perl +libparse-recdescent-perl +yaz + + diff --git a/files_for_build/deps/2.7.2.deps b/files_for_build/deps/2.7.2.deps new file mode 100644 index 0000000..928cc18 --- /dev/null +++ b/files_for_build/deps/2.7.2.deps @@ -0,0 +1,65 @@ +gcc +libbusiness-isbn-perl +libjson-xs-perl +liblibrary-callnumber-lc-perl +libmarc-record-perl +libmarc-xml-perl +libuuid-tiny-perl +libxml-libxml-perl +libxml-libxslt-perl + +apache2-prefork-dev +aspell +aspell-en +libbusiness-creditcard-perl +libbusiness-edi-perl +libbusiness-isbn-data-perl +libbusiness-issn-perl +libbusiness-onlinepayment-authorizenet-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 +libemail-send-perl +libemail-simple-perl +libgd-graph3d-perl +liblocale-maketext-lexicon-perl +liblog-log4perl-perl +libmarc-charset-perl +libncurses5-dev +libnet-https-any-perl +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 +libbz2-dev +libpq5 +libpq-dev +librpc-xml-perl +libsru-perl +libssh2-1-dev +libtext-aspell-perl +libtext-csv-perl +libuniversal-require-perl +libunix-syslog-perl +libyaz-dev +postgresql-client-9.1 +libsoap-lite-perl +libtest-warn-perl +libtest-output-perl +libparse-recdescent-perl +yaz + + diff --git a/files_for_build/deps/2.7.4.deps b/files_for_build/deps/2.7.4.deps new file mode 100644 index 0000000..928cc18 --- /dev/null +++ b/files_for_build/deps/2.7.4.deps @@ -0,0 +1,65 @@ +gcc +libbusiness-isbn-perl +libjson-xs-perl +liblibrary-callnumber-lc-perl +libmarc-record-perl +libmarc-xml-perl +libuuid-tiny-perl +libxml-libxml-perl +libxml-libxslt-perl + +apache2-prefork-dev +aspell +aspell-en +libbusiness-creditcard-perl +libbusiness-edi-perl +libbusiness-isbn-data-perl +libbusiness-issn-perl +libbusiness-onlinepayment-authorizenet-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 +libemail-send-perl +libemail-simple-perl +libgd-graph3d-perl +liblocale-maketext-lexicon-perl +liblog-log4perl-perl +libmarc-charset-perl +libncurses5-dev +libnet-https-any-perl +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 +libbz2-dev +libpq5 +libpq-dev +librpc-xml-perl +libsru-perl +libssh2-1-dev +libtext-aspell-perl +libtext-csv-perl +libuniversal-require-perl +libunix-syslog-perl +libyaz-dev +postgresql-client-9.1 +libsoap-lite-perl +libtest-warn-perl +libtest-output-perl +libparse-recdescent-perl +yaz + + diff --git a/files_for_build/deps/2.8.2.deps b/files_for_build/deps/2.8.2.deps new file mode 100644 index 0000000..928cc18 --- /dev/null +++ b/files_for_build/deps/2.8.2.deps @@ -0,0 +1,65 @@ +gcc +libbusiness-isbn-perl +libjson-xs-perl +liblibrary-callnumber-lc-perl +libmarc-record-perl +libmarc-xml-perl +libuuid-tiny-perl +libxml-libxml-perl +libxml-libxslt-perl + +apache2-prefork-dev +aspell +aspell-en +libbusiness-creditcard-perl +libbusiness-edi-perl +libbusiness-isbn-data-perl +libbusiness-issn-perl +libbusiness-onlinepayment-authorizenet-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 +libemail-send-perl +libemail-simple-perl +libgd-graph3d-perl +liblocale-maketext-lexicon-perl +liblog-log4perl-perl +libmarc-charset-perl +libncurses5-dev +libnet-https-any-perl +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 +libbz2-dev +libpq5 +libpq-dev +librpc-xml-perl +libsru-perl +libssh2-1-dev +libtext-aspell-perl +libtext-csv-perl +libuniversal-require-perl +libunix-syslog-perl +libyaz-dev +postgresql-client-9.1 +libsoap-lite-perl +libtest-warn-perl +libtest-output-perl +libparse-recdescent-perl +yaz + + diff --git a/files_for_build/deps/2.9.0.deps b/files_for_build/deps/2.9.0.deps new file mode 100644 index 0000000..928cc18 --- /dev/null +++ b/files_for_build/deps/2.9.0.deps @@ -0,0 +1,65 @@ +gcc +libbusiness-isbn-perl +libjson-xs-perl +liblibrary-callnumber-lc-perl +libmarc-record-perl +libmarc-xml-perl +libuuid-tiny-perl +libxml-libxml-perl +libxml-libxslt-perl + +apache2-prefork-dev +aspell +aspell-en +libbusiness-creditcard-perl +libbusiness-edi-perl +libbusiness-isbn-data-perl +libbusiness-issn-perl +libbusiness-onlinepayment-authorizenet-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 +libemail-send-perl +libemail-simple-perl +libgd-graph3d-perl +liblocale-maketext-lexicon-perl +liblog-log4perl-perl +libmarc-charset-perl +libncurses5-dev +libnet-https-any-perl +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 +libbz2-dev +libpq5 +libpq-dev +librpc-xml-perl +libsru-perl +libssh2-1-dev +libtext-aspell-perl +libtext-csv-perl +libuniversal-require-perl +libunix-syslog-perl +libyaz-dev +postgresql-client-9.1 +libsoap-lite-perl +libtest-warn-perl +libtest-output-perl +libparse-recdescent-perl +yaz + + diff --git a/files_for_build/deps/2.9.1.deps b/files_for_build/deps/2.9.1.deps new file mode 100644 index 0000000..5148e7f --- /dev/null +++ b/files_for_build/deps/2.9.1.deps @@ -0,0 +1,66 @@ +gcc +libbusiness-isbn-perl +libjson-xs-perl +liblibrary-callnumber-lc-perl +libmarc-record-perl +libmarc-xml-perl +libuuid-tiny-perl +libxml-libxml-perl +libxml-libxslt-perl + +apache2-prefork-dev +aspell +aspell-en +libbusiness-creditcard-perl +libbusiness-edi-perl +libbusiness-isbn-data-perl +libbusiness-issn-perl +libbusiness-onlinepayment-authorizenet-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 +libemail-send-perl +libemail-simple-perl +libexcel-writer-xlsx-perl +libgd-graph3d-perl +liblocale-maketext-lexicon-perl +liblog-log4perl-perl +libmarc-charset-perl +libncurses5-dev +libnet-https-any-perl +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 +libbz2-dev +libpq5 +libpq-dev +librpc-xml-perl +libsru-perl +libssh2-1-dev +libtext-aspell-perl +libtext-csv-perl +libuniversal-require-perl +libunix-syslog-perl +libyaz-dev +postgresql-client-9.1 +libsoap-lite-perl +libtest-warn-perl +libtest-output-perl +libparse-recdescent-perl +yaz + + diff --git a/files_for_build/deps/3.0.beta1.deps b/files_for_build/deps/3.0.beta1.deps new file mode 100644 index 0000000..4cf4802 --- /dev/null +++ b/files_for_build/deps/3.0.beta1.deps @@ -0,0 +1,72 @@ +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 +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.5 +libsoap-lite-perl +libbz2-dev +libparse-recdescent-perl +yaz +automake +autoconf +libtool +nodejs-legacy +npm diff --git a/files_for_build/deps/checkdeps b/files_for_build/deps/checkdeps new file mode 100644 index 0000000..0027fe9 --- /dev/null +++ b/files_for_build/deps/checkdeps @@ -0,0 +1,22 @@ +#!/bin/bash + +if [ -z "$1" ] +then + echo;echo "You must enter the file to check" + echo "eg. $0 filename" + echo + exit 1 +fi + +for DEP in $(cat $1) +do + if ! grep -q "$DEP" control-cluster + then + if echo $DEP | grep -q '\-dev' + then + echo "Development Library: $DEP" + else + echo "missing: $DEP" + fi + fi +done diff --git a/files_for_build/eg_database b/files_for_build/eg_database new file mode 100755 index 0000000..6f1dcb3 --- /dev/null +++ b/files_for_build/eg_database @@ -0,0 +1,102 @@ +#!/bin/bash +### BEGIN INIT INFO +# Provides: postgresql +# Required-Start: $local_fs $remote_fs $network $syslog +# Required-Stop: $local_fs $remote_fs $network $syslog +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# X-Interactive: true +# Short-Description: Start/stop OpenSRF Services +### END INIT INFO +. /lib/lsb/init-functions + +OPENILS_BASE="/openils" +OPENILS_CORE="${OPENILS_BASE}/conf/opensrf_core.xml" +SRU_LOG="${OPENILS_BASE}/var/log/sru.log" + +PIDFILES="${OPENILS_BASE}/var/run" +SIP_CONF="${OPENILS_BASE}/conf/oils_sip.xml" + +REP_LOCK="${OPENILS_BASE}/var/lock/reporter-LOCK" +REP_NAME="Clark Kent, waiting for trouble" + +sru_name='simple2zoom' + +export PATH=$PATH:${OPENILS_BASE}/bin + +if [ $(whoami) != 'opensrf' ]; then + PERL5LIB='/openils/lib/perl5:$PERL5LIB'; +fi; + +cluster_start_database() { + sleep 1 + log_daemon_msg "Starting Evergreen Database" + /etc/init.d/postgresql start + sleep 2 + log_daemon_msg "Restarting Evergreen OpenSRF:" + for HEAD in $(cat /etc/hosts | grep head | awk '{ print $NF }') + do + echo "Stopping OpenSRF on $HEAD" + su - opensrf -c "ssh $HEAD /openils/bin/osrf_ctl.sh -a stop_all" + echo "Starting OpenSRF on $HEAD" + su - opensrf -c "ssh $HEAD /openils/bin/osrf_ctl.sh -a start_all" + done +} + +start_database() { + sleep 1 + log_daemon_msg "Starting Evergreen Database" + /etc/init.d/postgresql start + sleep 2 + log_daemon_msg "Restarting Evergreen OpenSRF:" + echo "Stopping OpenSRF $(hostname -f)" + su - opensrf -c /openils/bin/osrf_ctl.sh -a stop_all + echo "Starting OpenSRF on $(hostname -f)" + su - opensrf -c /openils/bin/osrf_ctl.sh -a start_all +} + +stop_database() { + log_daemon_msg "Stopping Evergreen Database" + /etc/init.d/postgresql stop + #for HEAD in $(cat /etc/hosts | grep head | awk '{ print $NF }') + # do + # echo "Stopping OpenSRF on $HEAD" + # su - opensrf -c "ssh $HEAD /openils/bin/osrf_ctl.sh -a stop_all" + # echo "Starting OpenSRF on $HEAD" + # su - opensrf -c "ssh $HEAD /openils/bin/osrf_ctl.sh -a start_all" + #done + sleep 3 +} + + +case "$1" in + start) + start_database + ;; + stop) + stop_database + ;; + restart) + log_daemon_msg "Restarting Evergreen Database:" + stop_database + sleep 2 + log_daemon_msg "Restarting Evergreen OpenSRF:" + start_database + ;; +*) + echo " * Usage: /etc/init.d/eg_opensrf {start|stop|restart}" + exit 1 + ;; +esac; + + + + +#for HEAD in $(cat /etc/hosts | grep head | awk '{ print $NF }') +# do +# echo $HEAD +#done + +#su - opensrf -c "ssh brick01-head /openils/bin/osrf_ctl.sh -a start_all" + +#su - opensrf -c "ssh brick01-head /openils/bin/osrf_ctl.sh -a stop_all" diff --git a/files_for_build/postinst b/files_for_build/postinst new file mode 100755 index 0000000..2d9802c --- /dev/null +++ b/files_for_build/postinst @@ -0,0 +1,170 @@ +#!/bin/bash +set -e +STANDALONE=1 # +. /usr/share/debconf/confmodule +HFQDN=$(perl -MNet::Domain -e 'print Net::Domain::hostfqdn() . "\n";') +OPENSRF_PREFIX="/openils" +PAC="OPAC" +DBNAME="evergreen" + +#simple fuction to only execute if _DEBUG is set to something, i.e. #> _DEBUG=1 apt-get install evergreen-ils +DEBUG() +{ + if [ $_DEBUG > 0 ]; then $@;fi +} + +fixup_apache() +{ +# stop apache2 +/etc/init.d/apache2 stop + +# keep the bad apache modules away --esi +for m in deflate mpm_event; do a2dismod -f $m > /dev/null; done; +for m in expires include proxy proxy_http rewrite ssl xmlent idlchunk mpm_prefork; do a2enmod -f $m > /dev/null; done; +if [ ! -e "/etc/apache2/ssl" ] + then + mkdir /etc/apache2/ssl + pushd /etc/apache2/ssl + openssl req -new -x509 -days 365 -nodes -out server.crt -keyout server.key -subj "/CN=$HFQDN" + popd +fi +sed -i "s^APACHE_RUN_USER=www-data^APACHE_RUN_USER=opensrf^g" /etc/apache2/envvars +# since we're changing the apache run user, we have to chown this directory +chown opensrf:opensrf /var/lock/apache2 +/usr/sbin/a2dissite 000-default > /dev/null +/usr/sbin/a2ensite eg.conf > /dev/null + +# start apache2 +/etc/init.d/apache2 start +} + +init_db() +{ +if su - postgres -c "createdb -T template0 --lc-ctype=C --lc-collate=C -E UNICODE evergreen" > /dev/null 2>&1 + then + DEBUG echo "Setting up the evergreen database" + echo "Setting up the evergreen database" + cp /openils/share/doc/examples/sql/Pg/create_database_9_1.sql /tmp + chown postgres:postgres /tmp/create_database_9_1.sql + su postgres -c "psql -vdb_name=evergreen -vcontrib_dir=`pg_config --sharedir`/contrib -f /tmp/create_database_9_1.sql" + rm /tmp/create_database_9_1.sql + else + DEBUG echo "evergreen database already exists! not doing anything." +fi +} +add_eg_db_user() +{ +if [ `su - postgres -c "psql -A -t -c \"select count(*) from pg_roles where rolname='evergreen'\""` = "0" ] + then + DEBUG echo "Database user evergreen doesn't exist! Creating..." + + + db_get evergreen-ils/eg_db_password || true + PASS=$RET + tfile=`mktemp` + if [ ! -f "$tfile" ]; then + echo "ERROR Creating temp file!" + return 1 + fi + + DEBUG echo "creating tmp pw file as $tfile" +cat << EOF > $tfile +CREATE ROLE evergreen PASSWORD '$RET' SUPERUSER CREATEDB CREATEROLE INHERIT LOGIN; +EOF + chown postgres.postgres $tfile + su - postgres -c "psql -f $tfile" + rm $tfile + DEBUG echo "Set user opensrf's password" + else + DEBUG echo "EG DB USER already exists, so not doing anything!" + + +fi + + + +} + + +configure_opensrf_xml() +{ + db_get evergreen-ils/eg_db_password + DBPW=$RET + db_get opensrf/ejabber_password + EJABBERPASS=$RET + cp $OPENSRF_PREFIX/conf/opensrf.xml $OPENSRF_PREFIX/conf/opensrf.xml_orig + cp $OPENSRF_PREFIX/conf/opensrf_core.xml $OPENSRF_PREFIX/conf/opensrf_core.xml_orig + cp $OPENSRF_PREFIX/conf/opensrf.xml.evergreen.example $OPENSRF_PREFIX/conf/opensrf.xml + cp $OPENSRF_PREFIX/conf/opensrf_core.xml.evergreen.example $OPENSRF_PREFIX/conf/opensrf_core.xml + sed -i "s|d>password|d>$RET|g" $OPENSRF_PREFIX/conf/opensrf.xml + sed -i "s|d>password|d>$RET|g" $OPENSRF_PREFIX/conf/opensrf_core.xml + sed -i "s//<$HFQDN>/g" $OPENSRF_PREFIX/conf/opensrf.xml + sed -i "s/<\/localhost>/<\/$HFQDN>/g" $OPENSRF_PREFIX/conf/opensrf.xml + sed -i "s/\.localhostpostgres^evergreen^g" $OPENSRF_PREFIX/conf/opensrf.xml + sed -i "s^postgres^$DBPW^g" $OPENSRF_PREFIX/conf/opensrf.xml + if [ "$PAC" = "TPAC" ] + then + echo + fi + +} +populate_db () { +if [ "$(su - postgres -c "psql -l | grep $DBNAME | wc -l")" = "0" ] +then + DEBUG echo "Populating database." + db_get evergreen-ils/eg_db_password + EGDBPW=$RET + db_get evergreen-ils/evergreen_admin_user + ADMIN_USER=$RET + db_get evergreen-ils/evergreen_admin_password + ADMIN_PASS=$RET + cd /openils/bin/ && perl eg_db_config --update-config --service all --create-database --create-schema \ + --create-offline --hostname localhost --port 5432 --user evergreen --password $EGDBPW \ + --database $DBNAME --admin-user $ADMIN_USER --admin-pass $ADMIN_PASS +else + echo + echo "Not populating the database." + echo "A database already exists." + sleep 2 + echo +fi +} +run_autogen() +{ + DEBUG echo "Running autogen" + cd /openils/bin + chown -R opensrf.opensrf /openils + su - opensrf -c "cd /openils/bin && ./autogen.sh -u" +} +fix_openils_perms() +{ + +chown opensrf.opensrf /openils -R + +} + +fixup_apache +if [ $STANDALONE -eq 1 ] +then + #TODO:take this following line out once it's confirmed it's working without. + #init_db + add_eg_db_user + configure_opensrf_xml + populate_db +fi +fix_openils_perms +ldconfig +/etc/init.d/opensrf restart +if [ $STANDALONE -eq 1 ] +then + run_autogen + echo + echo "The installation of Evergreen ILS is complete." + printf "To start using Evergreen browse to :- \nhttp://$(hostname -f) \n$(ifconfig | grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print "http://"$1}')\n" +fi +#Stop talking to debconf, must be after all db_ calls are done, but will hang script if not done +db_stop +ldconfig +exit 0 diff --git a/files_for_build/postinst-cluster b/files_for_build/postinst-cluster new file mode 100755 index 0000000..1b2c910 --- /dev/null +++ b/files_for_build/postinst-cluster @@ -0,0 +1,160 @@ +#!/bin/bash +set -e + +. /usr/share/debconf/confmodule +HFQDN=$(perl -MNet::Domain -e 'print Net::Domain::hostfqdn() . "\n";') +#TODO?: pass this in from the build process somehow. +OPENSRF_PREFIX="/openils" + + +#simple fuction to only execute if _DEBUG is set to something, i.e. #> _DEBUG=1 apt-get install evergreen-ils +DEBUG() +{ + if [ $_DEBUG > 0 ]; then $@;fi +} + +install_cpan_modules () +{ +for m in Business::EDI Library::CallNumber::LC Net::Z3950::Simple2ZOOM SRU JSON::XS MARC::Record MARC::File::XML; do PERL_MM_USE_DEFAULT=1 perl -MCPAN -e "install \"$m\";"; done +for m in Class::DBI::Frozen::301; do \ + echo "force install $m" | PERL_MM_USE_DEFAULT=1 perl -MCPAN -e shell ;\ + done + +} +fixup_apache() +{ +# keep the bad apache modules away --esi +for m in deflate mpm_event; do a2dismod -f $m > /dev/null; done; +for m in expires include proxy proxy_http rewrite ssl xmlent idlchunk mpm_prefork; do a2enmod $m > /dev/null; done; + +if [ ! -e "/etc/apache2/ssl" ] + then + mkdir /etc/apache2/ssl + pushd /etc/apache2/ssl + openssl req -new -x509 -days 365 -nodes -out server.crt -keyout server.key -subj "/CN=$HFQDN" + popd +fi + +sed -i "s^APACHE_RUN_USER=www-data^APACHE_RUN_USER=opensrf^g" /etc/apache2/envvars +/usr/sbin/a2dissite 000-default > /dev/null +/usr/sbin/a2ensite eg.conf > /dev/null +/etc/init.d/apache2 restart +} + +init_db() +{ +#TODO: The create db command is copied from 1.6.1, not the one listed in the 2.0 install instructions. +if su - postgres -c "createdb -E UNICODE evergreen" > /dev/null 2>&1 + then + DEBUG echo "Setting up the evergreen database" + su - postgres -c "createlang plperl evergreen" + su - postgres -c "createlang plperlu evergreen" + su - postgres -c "createlang plpgsql evergreen" + su - postgres -c "psql -f /usr/share/postgresql/8.4/contrib/tablefunc.sql evergreen" + su - postgres -c "psql -f /usr/share/postgresql/8.4/contrib/tsearch2.sql evergreen" + su - postgres -c "psql -f /usr/share/postgresql/8.4/contrib/pgxml.sql evergreen" + else + DEBUG echo "evergreen database already exists! not doing anything." +fi +} +add_eg_db_user() +{ +if [ `su - postgres -c "psql -A -t -c \"select count(*) from pg_roles where rolname='evergreen'\""` = "0" ] + then + DEBUG echo "Database user evergreen doesn't exist! Creating..." + + + db_get evergreen-ils/eg_db_password || true + PASS=$RET + tfile=`mktemp` + if [ ! -f "$tfile" ]; then + echo "ERROR Creating temp file!" + return 1 + fi + + DEBUG echo "creating tmp pw file as $tfile" +cat << EOF > $tfile +CREATE ROLE evergreen PASSWORD '$RET' SUPERUSER CREATEDB CREATEROLE INHERIT LOGIN; +EOF + chown postgres.postgres $tfile + su - postgres -c "psql -f $tfile" + rm $tfile + DEBUG echo "Set user opensrf's password" + else + DEBUG echo "EG DB USER already exists, so not doing anything!" + + +fi + + + +} + + +configure_opensrf_xml() +{ + db_get evergreen-ils/eg_db_password + DBPW=$RET + db_get opensrf/ejabber_password + EJABBERPASS=$RET + cp $OPENSRF_PREFIX/conf/opensrf.xml $OPENSRF_PREFIX/conf/opensrf.xml_orig + cp $OPENSRF_PREFIX/conf/opensrf_core.xml $OPENSRF_PREFIX/conf/opensrf_core.xml_orig + cp $OPENSRF_PREFIX/conf/opensrf.xml.evergreen.example $OPENSRF_PREFIX/conf/opensrf.xml + cp $OPENSRF_PREFIX/conf/opensrf_core.xml.evergreen.example $OPENSRF_PREFIX/conf/opensrf_core.xml + cp $OPENSRF_PREFIX/conf/oils_web.xml.example $OPENSRF_PREFIX/conf/oils_web.xml + sed -i "s|d>password|d>$RET|g" $OPENSRF_PREFIX/conf/opensrf.xml + sed -i "s|d>password|d>$RET|g" $OPENSRF_PREFIX/conf/opensrf_core.xml + sed -i "s//<$HFQDN>/g" $OPENSRF_PREFIX/conf/opensrf.xml + sed -i "s/<\/localhost>/<\/$HFQDN>/g" $OPENSRF_PREFIX/conf/opensrf.xml + sed -i "s/\.localhostpostgres^evergreen^g" $OPENSRF_PREFIX/conf/opensrf.xml + sed -i "s^postgres^$DBPW^g" $OPENSRF_PREFIX/conf/opensrf.xml + +} +populate_db() +{ DEBUG echo "Populating database" + db_get evergreen-ils/eg_db_password + EGDBPW=$RET + db_get evergreen-ils/evergreen_admin_user + ADMIN_USER=$RET + db_get evergreen-ils/evergreen_admin_password + ADMIN_PASS=$RET + cd /openils/bin/ && perl eg_db_config.pl --update-config --service all --create-schema \ + --create-offline --hostname localhost --port 5432 --user evergreen --password $EGDBPW \ + --database evergreen --admin-user $ADMIN_USER --admin-pass $ADMIN_PASS +} +run_autogen() +{ + DEBUG echo "Running autogen" + cd /openils/bin + su - opensrf -c "cd /openils/bin && ./autogen.sh -u" +} +fix_openils_perms() +{ + +chown opensrf.opensrf /openils -R + +} + +# install_cpan_modules ## now installed from repos. +fixup_apache +#init_db +#add_eg_db_user +#configure_opensrf_xml +fix_openils_perms +#populate_db +ldconfig +#/etc/init.d/opensrf restart +#run_autogen + + + +#echo +#echo "The installation of Evergreen ILS is complete." +#printf "To start using Evergreen browse to :- \nhttp://$(hostname -f) \n$(ifconfig | grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print "http://"$1}')\n" +####################################### +#Stop talking to debconf, must be after all db_ calls are done, but will hang script if not done +db_stop +ldconfig +exit 0 diff --git a/files_for_build/postrm b/files_for_build/postrm new file mode 100755 index 0000000..9bfb739 --- /dev/null +++ b/files_for_build/postrm @@ -0,0 +1,59 @@ +#! /bin/sh + +set -e + +#EJABBER_CONFIG_TARGET=/etc/ejabberd/ejabberd.cfg +OPENSRF_PREFIX=/openils +#OPENSRF_CONFIG_TARGET=$OPENSRF_PREFIX/conf +HFQDN=$(perl -MNet::Domain -e 'print Net::Domain::hostfqdn() . "\n";') + + +if [ -f /usr/share/debconf/confmodule ]; then + . /usr/share/debconf/confmodule +fi +case "$1" in + remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) + ;; + + purge) + + + +#########TODO LOOK INTO UCF +# if which ucf >/dev/null ; then +# ucf --purge $EJABBER_CONFIG_TARGET +# fi + + +# rm -Rf $OPENSRF_CONFIG_TARGET || true +# rm -Rf $OPENSRF_PREFIX || true + + + ;; + + *) + echo "postrm called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +# Automatically added by dh_installinit +if [ "$1" = "purge" ] || [ "$1" = "remove" ]; then + echo "--placeholder--" +fi +# End automatically added section +# Automatically added by dh_installdebconf +if [ "$1" = purge ] && [ -e /usr/share/debconf/confmodule ]; then + #. /usr/share/debconf/confmodule + echo purging database + db_purge +fi +echo purged database +# End automatically added section + +db_stop + +exit 0 diff --git a/files_for_build/rules b/files_for_build/rules new file mode 100755 index 0000000..64fc246 --- /dev/null +++ b/files_for_build/rules @@ -0,0 +1,54 @@ +#!/usr/bin/make -f +# -*- makefile -*- +# Sample debian/rules that uses debhelper. +# This file was originally written by Joey Hess and Craig Small. +# As a special exception, when this file is copied by dh-make into a +# dh-make output file, you may use that output file without restriction. +# This special exception was added by Craig Small in version 0.37 of dh-make. + +# Uncomment this to turn on verbose mode. +export DH_VERBOSE=1 +export DEB_LDFLAGS_MAINT_APPEND= -lm +INSTALL_FOLDER=debian/evergreen-ils +INSTALL_WEB=/openils/var/web +STAFF_BUILD=rel_3_0_beta1 +%: + dh $@ +override_dh_auto_configure: + ldconfig + ./configure --prefix=/openils --sysconfdir=/openils/conf + +override_dh_auto_install: + #make -j1 DESTDIR=$(shell pwd)/$(INSTALL_FOLDER) WEBDIR="$(INSTALL_WEB)" STAFF_CLIENT_BUILD_ID=$(STAFF_BUILD) install + make -j1 DESTDIR=$(shell pwd)/$(INSTALL_FOLDER) WEBDIR="$(INSTALL_WEB)" STAFF_CLIENT_STAMP_ID=$(STAFF_BUILD) install + cd $(INSTALL_FOLDER)$(INSTALL_WEB)/xul && ln -s $(STAFF_BUILD)/server server + +override_dh_usrlocal: + #Skiping dh_usrlocal + + +override_dh_prep: + rm -f debian/evergreen-ils.substvars + rm -f debian/evergreen-ils.*.debhelper + #stuff for apache since debian/evergreen-ils gets blown away + mkdir -p debian/evergreen-ils/usr/lib/apache2/modules/ + mkdir -p debian/evergreen-ils/etc/apache2/mods-available/ + mkdir -p debian/evergreen-ils/etc/apache2/sites-available + cp -Rv Open-ILS/examples/apache_24/eg_24.conf debian/evergreen-ils/etc/apache2/sites-available/eg.conf + cp -Rv Open-ILS/examples/apache_24/eg_vhost_24.conf debian/evergreen-ils/etc/apache2/eg_vhost.conf + cp -Rv Open-ILS/examples/apache/eg_startup debian/evergreen-ils/etc/apache2/ +override_dh_fixperms: + dh_fixperms + @echo "DEBUG MARK" + chmod +x debian/evergreen-ils/etc/apache2/eg_startup + +override_dh_install: + cp -r Open-ILS/src/extras/eg_config debian/evergreen-ils/openils/bin + cp -r Open-ILS/src/extras/eg_config debian/evergreen-ils/openils/conf + echo "LoadModule xmlent_module /usr/lib/apache2/modules/mod_xmlent.so" > "debian/evergreen-ils/etc/apache2/mods-available/xmlent.load" + echo "LoadModule idlchunk_module /usr/lib/apache2/modules/mod_idlchunk.so" > "debian/evergreen-ils/etc/apache2/mods-available/idlchunk.load" + +override_dh_shlibdeps: + dh_shlibdeps --dpkg-shlibdeps-params=--ignore-missing-info +override_dh_auto_test: + #skip! diff --git a/files_for_build/rules-custom b/files_for_build/rules-custom new file mode 100755 index 0000000..3087285 --- /dev/null +++ b/files_for_build/rules-custom @@ -0,0 +1,57 @@ +#!/usr/bin/make -f +# -*- makefile -*- +# Sample debian/rules that uses debhelper. +# This file was originally written by Joey Hess and Craig Small. +# As a special exception, when this file is copied by dh-make into a +# dh-make output file, you may use that output file without restriction. +# This special exception was added by Craig Small in version 0.37 of dh-make. + +# Uncomment this to turn on verbose mode. +export DH_VERBOSE=1 +export DEB_LDFLAGS_MAINT_APPEND= -lm +INSTALL_FOLDER=debian/evergreen-ils +INSTALL_WEB=/openils/var/web + +## Change this to one that suits you consortium eg. pines_rel_x_x_x +STAFF_BUILD=pines_rel_3_0_beta1 +%: + dh $@ +override_dh_auto_configure: + ldconfig + ./configure --prefix=/openils --sysconfdir=/openils/conf + +override_dh_auto_install: + #make -j1 DESTDIR=$(shell pwd)/$(INSTALL_FOLDER) WEBDIR="$(INSTALL_WEB)" STAFF_CLIENT_BUILD_ID=$(STAFF_BUILD) install + make -j1 DESTDIR=$(shell pwd)/$(INSTALL_FOLDER) WEBDIR="$(INSTALL_WEB)" STAFF_CLIENT_STAMP_ID=$(STAFF_BUILD) install + cd $(INSTALL_FOLDER)$(INSTALL_WEB)/xul && ln -s $(STAFF_BUILD)/server server + +override_dh_usrlocal: + #Skiping dh_usrlocal + +override_dh_prep: + rm -f debian/evergreen-ils.substvars + rm -f debian/evergreen-ils.*.debhelper + #stuff for apache since debian/evergreen-ils gets blown away + mkdir -p debian/evergreen-ils/usr/lib/apache2/modules/ + mkdir -p debian/evergreen-ils/etc/apache2/mods-available/ + mkdir -p debian/evergreen-ils/etc/apache2/sites-available + cp -Rv Open-ILS/examples/apache_24/eg_24.conf debian/evergreen-ils/etc/apache2/sites-available/eg.conf + cp -Rv Open-ILS/examples/apache_24/eg_vhost_24.conf debian/evergreen-ils/etc/apache2/eg_vhost.conf + cp -Rv Open-ILS/examples/apache/eg_startup debian/evergreen-ils/etc/apache2/ + +override_dh_fixperms: + dh_fixperms + @echo "DEBUG MARK" + chmod +x debian/evergreen-ils/etc/apache2/eg_startup + +override_dh_install: + cp -r Open-ILS/src/extras/eg_config debian/evergreen-ils/openils/bin + cp -r Open-ILS/src/extras/eg_config debian/evergreen-ils/openils/conf + echo "LoadModule xmlent_module /usr/lib/apache2/modules/mod_xmlent.so" > "debian/evergreen-ils/etc/apache2/mods-available/xmlent.load" + echo "LoadModule idlchunk_module /usr/lib/apache2/modules/mod_idlchunk.so" > "debian/evergreen-ils/etc/apache2/mods-available/idlchunk.load" + +override_dh_shlibdeps: + dh_shlibdeps --dpkg-shlibdeps-params=--ignore-missing-info + +override_dh_auto_test: + #skip! diff --git a/files_for_build/templates b/files_for_build/templates new file mode 100644 index 0000000..097e175 --- /dev/null +++ b/files_for_build/templates @@ -0,0 +1,37 @@ +Template: evergreen-ils/eg_db_password +Type: password +Description: The password for the Evergreen database user: + Please provide the password for the Evergreen database user. + This password will be required to access the Evergreen database within postgresql. + +Template: evergreen-ils/verify_eg_db_password +Type: password +Description: The password for the Evergreen database user: + Please reenter the password for access to the Evergreen database within postgresql. + +Template: evergreen-ils/evergreen_admin_user +Type: string +Description: The username for the Evergreen default admin user: + Please provide the username for the Evergreen default admin user. + This username will be required to access Evergreen as the admin user. + +Template: evergreen-ils/evergreen_admin_password +Type: password +Description: The password for the Evergreen default admin user: + Please provide the password for the Evergreen default admin user. + This password will be required for the Evergreen default admin user. + +Template: evergreen-ils/verify_evergreen_admin_password +Type: password +Description: The password for the Evergreen admin user: + Please reenter the password for the Evergreen admin user. + +Template: evergreen-ils/pass_nomatch +Type: error +Description: The passwords do not match! + The passwords you have typed do not match. Please try again. + +Template: evergreen-ils/admin_pass_nomatch +Type: error +Description: The passwords do not match! + The passwords you have typed do not match. Please try again.