www-apps/otrs-5.0.18: version bump
authorStefan G. Weichinger <office@oops.co.at>
Tue, 28 Mar 2017 08:18:33 +0000 (10:18 +0200)
committerGöktürk Yüksek <gokturk@gentoo.org>
Sun, 9 Apr 2017 22:55:24 +0000 (18:55 -0400)
www-apps/otrs/Manifest
www-apps/otrs/otrs-5.0.18.ebuild [new file with mode: 0644]

index a6d6a4a710bd2e79c24777e17609213c376ae3ca..97de544cda9ca09e834a9fa4f035741605d36332 100644 (file)
@@ -1 +1,2 @@
 DIST otrs-5.0.16.tar.bz2 19417591 SHA256 ddec039990c1bdfc27299ab175eff3e1665aa99ba48050f7f2dde480b28f4029 SHA512 326ebc97b689ce05c33a4f8e5587b891029c168544ab6bea4e5b112b2c75527a605689fd957d7acdebf18e331176db727cca4c87244f22cfdb9b9e4e0735b6c4 WHIRLPOOL 4dfe35d1c3cd940523219dafae5f62447e6bc363e601b4fc98fdf46d09731dbf61ddb109d5b368af6fc2b25ab44f18e455dbd9de2e00d367363c34972af221b2
+DIST otrs-5.0.18.tar.bz2 20401943 SHA256 32d2a17996a882fb8965e52d92589be1a9a8fb1a15cd47689919e6d1302fe1b4 SHA512 5b228a92f8280b79ed32853f9b0a5b135ee42068faba66267c9772697c3ccd8f2ee965797fe65b8c7d1455f3729fe106d9321a06e444bda8e06f92dac00ab8c1 WHIRLPOOL 35123d1eb33e5abdb5c44edf55fd204df8f4b50fe331ae3f8f2634cdb21ca091e76b8517458595af4f0246eebb399770fc02a54070833ad6dae4dd83b2ad8c11
diff --git a/www-apps/otrs/otrs-5.0.18.ebuild b/www-apps/otrs/otrs-5.0.18.ebuild
new file mode 100644 (file)
index 0000000..16e682a
--- /dev/null
@@ -0,0 +1,153 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+inherit user systemd
+
+DESCRIPTION="OTRS is an Open source Ticket Request System"
+HOMEPAGE="https://www.otrs.com/"
+SRC_URI="https://ftp.otrs.org/pub/${PN}/${P}.tar.bz2"
+
+LICENSE="AGPL-3+"
+KEYWORDS="~amd64 ~x86"
+IUSE="apache2 fastcgi +gd ldap mod_perl +mysql pdf postgres soap"
+SLOT="0"
+
+REQUIRED_USE="|| ( mysql postgres )"
+
+DEPEND="media-libs/libpng:0"
+
+RDEPEND="dev-perl/Apache-Reload
+       dev-perl/Archive-Zip
+       dev-perl/DBI
+       dev-perl/IO-Socket-SSL
+       dev-perl/JSON-XS
+       dev-perl/LWP-UserAgent-Determined
+       dev-perl/Mail-POP3Client
+       dev-perl/Mail-IMAPClient
+       >dev-perl/Net-DNS-0.60
+       dev-perl/Template-Toolkit
+       dev-perl/Text-CSV_XS
+       dev-perl/TimeDate
+       dev-perl/XML-Parser
+       dev-perl/YAML-LibYAML
+       apache2? (
+               mod_perl? (
+                       www-servers/apache:2
+                       =www-apache/libapreq2-2* www-apache/mod_perl
+               )
+               !fastcgi? ( !mod_perl? ( www-servers/apache:2[suexec] ) )
+       )
+       fastcgi? (
+               dev-perl/FCGI
+               virtual/httpd-fastcgi
+       )
+       !fastcgi? ( !apache2? ( virtual/httpd-cgi ) )
+       gd? (
+               dev-perl/GD
+               dev-perl/GDTextUtil
+               dev-perl/GDGraph
+       )
+       ldap? ( dev-perl/perl-ldap )
+       mysql? ( dev-perl/DBD-mysql )
+       postgres? ( dev-perl/DBD-Pg )
+       pdf? (
+               >=dev-perl/PDF-API2-0.73
+               virtual/perl-Compress-Raw-Zlib
+       )
+       soap? (
+               dev-perl/SOAP-Lite
+               !=dev-perl/SOAP-Lite-0.711
+               !=dev-perl/SOAP-Lite-0.712
+       )
+       "
+
+OTRS_HOME="/var/lib/otrs"
+
+pkg_setup() {
+       # The enewuser otrs will fail if apache isn't there, but it's an optional dep
+       # so we create the apache user here just in case
+       enewgroup apache 81
+       enewuser apache 81 -1 /var/www apache
+       enewuser otrs -1 -1 "${OTRS_HOME}" apache
+}
+
+src_prepare() {
+       rm -r "${S}/scripts"/auto_* || die
+
+       pushd Kernel >/dev/null || die
+       for i in *.dist; do
+               cp "${i}" $(basename "${i}" .dist) || die
+       done
+       popd >/dev/null || die
+
+       # Fix broken png file (and see pngfix help for exit codes)
+       pngfix -q --out=out.png "${S}/var/httpd/htdocs/skins/Agent/default/img/otrs-verify.png"
+       if [[ $? -gt 15 ]]; then
+               die "pngfix failed"
+       fi
+       mv -f out.png "${S}/var/httpd/htdocs/skins/Agent/default/img/otrs-verify.png" || die
+
+       sed -i -e "s:/opt/otrs:${EPREFIX%/}${OTRS_HOME}:g" "${S}"/Kernel/Config.pm \
+               || die "sed failed"
+
+       sed -i -e "s:/opt/otrs:${EPREFIX%/}${OTRS_HOME}:g" "${S}"/Kernel/Config/Defaults.pm \
+               || die "sed failed"
+
+       grep -lR "/opt" "${S}"/scripts | \
+               xargs sed -i -e "s:/opt/otrs:${EPREFIX%/}${OTRS_HOME}:g" \
+               || die "sed failed"
+
+       echo "CONFIG_PROTECT=\"${EPREFIX%/}${OTRS_HOME}/Kernel/Config.pm \
+               ${EPREFIX%/}${OTRS_HOME}/Kernel/Config/GenericAgent.pm\"" > "${T}/50${PN}" || die
+
+       eapply_user
+}
+
+# This is too automagic, either einfo telling user or installing to /etc/cron.d/ should be preferred
+pkg_config() {
+       einfo "Installing cronjobs"
+       crontab -u otrs "${EROOT%/}"/usr/share/doc/${PF}/crontab || die
+}
+
+src_install() {
+       dodoc CHANGES.md README*
+
+       insinto "${OTRS_HOME}"
+       doins -r .fetchmailrc.dist .mailfilter.dist .procmailrc.dist RELEASE \
+               Custom Kernel bin scripts var
+
+       cat "${S}"/var/cron/*.dist > "${T}"/crontab || die
+       insinto /usr/share/doc/${PF}/
+       doins "${T}"/crontab
+
+       local a
+       for a in article log pics/images pics/stats pics sessions spool tmp tmp/CacheFileStorable
+       do
+               keepdir "${OTRS_HOME}/var/${a}"
+       done
+       doenvd "${T}/50${PN}"
+
+       systemd_dounit "${FILESDIR}/otrs.service"
+}
+
+pkg_postinst() {
+       einfo "Setting correct permissions ..."
+       /usr/bin/env perl "${EROOT%/}${OTRS_HOME}"/bin/otrs.SetPermissions.pl "${EROOT%/}${OTRS_HOME}" \
+               --otrs-user=otrs \
+               --web-group=apache \
+               || die "Could not set permissions"
+
+       einfo "Installation done!"
+       elog "1) Rebuild your config now by running the following commands:"
+       elog "sudo -u otrs /usr/bin/env perl "${EROOT%/}${OTRS_HOME}"/bin/otrs.Console.pl Maint::Config::Rebuild"
+       elog "sudo -u otrs /usr/bin/env perl "${EROOT%/}${OTRS_HOME}"/bin/otrs.Console.pl Maint::Cache::Delete"
+       elog ""
+       elog "2) Enable cronjobs with the following command:"
+       elog "crontab -u otrs crontab"
+       elog ""
+       elog "3) systemd users: enable and start OTRS daemon:"
+       elog "systemctl enable otrs"
+       elog "systemctl start otrs"
+}