diff options
Diffstat (limited to 'www-apps')
-rw-r--r-- | www-apps/otrs/Manifest | 1 | ||||
-rw-r--r-- | www-apps/otrs/otrs-5.0.20.ebuild | 153 |
2 files changed, 154 insertions, 0 deletions
diff --git a/www-apps/otrs/Manifest b/www-apps/otrs/Manifest index e0d52ae77f22..03290e666676 100644 --- a/www-apps/otrs/Manifest +++ b/www-apps/otrs/Manifest @@ -1,3 +1,4 @@ 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 DIST otrs-5.0.19.tar.bz2 20458807 SHA256 15f0493119f0dec570357d4916929535ae320623475fb4e37ff8cf9a015bce44 SHA512 24ea42171d742f78b7a10619e7d153d702270460a9bdc5d44c6e57e3e4500454c297e87d0696740f3e59571e7985ed6d606cf16d12898a76200bc651f107e84f WHIRLPOOL 3752fbc70d01f80048971491517284dd8799457650eee05f4b5185da195e2c890845303a397c46d8214e2c357552c0a173821ee5fdf6848fec839237a30b64a9 +DIST otrs-5.0.20.tar.bz2 20638821 SHA256 1dfebd86dc55c7e125593e0bb5307a74217f15e23469fead66e2a4f6e00e27e5 SHA512 29b5c52478af6c95fc529db9d031c79e131a1ffaf7cc323ecfa5527145049e6b6762c04138bab5e6a49863b423829c474b6dbdc77777a84e8ea7f5081c2fdd8c WHIRLPOOL 81536727b7b918b2ddb9c206bb5643effbad584a70b9acdebb18e2b4b911837c246215bab23600f0724b789b3e5718ee22dbbd3daf24874da6ef2ce79fd91a2e diff --git a/www-apps/otrs/otrs-5.0.20.ebuild b/www-apps/otrs/otrs-5.0.20.ebuild new file mode 100644 index 000000000000..16e682a03da4 --- /dev/null +++ b/www-apps/otrs/otrs-5.0.20.ebuild @@ -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" +} |