diff --git a/www-misc/awstats/Manifest b/www-misc/awstats/Manifest new file mode 100644 index 0000000..3244ed8 --- /dev/null +++ b/www-misc/awstats/Manifest @@ -0,0 +1 @@ +DIST awstats-7.7.tar.gz 2956851 BLAKE2B b41a04a114603e77287f621b2f8ab4c26d88ba59e487a10003e48d09d17344537f86cee48531c11591a73d6d67bad396cf069eb0f2715ffd215a592ef98edd3c SHA512 8bf32b0650ef0cc900a16eead866da3847d81c2696e7a90fb49833679c958768833d781e5b4becd9b4f6748c7266e2887ff7ff33d98293ce3a0296a810fbe899 diff --git a/www-misc/awstats/awstats-7.7.ebuild b/www-misc/awstats/awstats-7.7.ebuild new file mode 100644 index 0000000..537b396 --- /dev/null +++ b/www-misc/awstats/awstats-7.7.ebuild @@ -0,0 +1,115 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit eutils + +MY_P=${PN}-${PV%_p*} + +DESCRIPTION="AWStats is short for Advanced Web Statistics" +HOMEPAGE="http://www.awstats.org/" + +if [ ${MY_P} != ${P} ]; then + SRC_URI="https://dev.gentoo.org/~flameeyes/awstats/${P}.tar.gz" + # The following SRC_URI is useful only when fetching for the first time + # after bump; upstream does not bump the version when they change it, so + # we rename it to include the date and upload to our mirrors instead. + #SRC_URI="http://www.awstats.org/files/${MY_P}.tar.gz -> ${P}.tar.gz" +else + SRC_URI="http://www.awstats.org/files/${P}.tar.gz" +fi + +S=${WORKDIR}/${MY_P} + +LICENSE="GPL-3" +KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~sparc ~x86 ~x86-fbsd" +IUSE="geoip ipv6" + +SLOT="0" + +RDEPEND=">=dev-lang/perl-5.6.1 + virtual/perl-Time-Local + dev-perl/URI + geoip? ( dev-perl/Geo-IP ) + ipv6? ( dev-perl/Net-IP dev-perl/Net-DNS )" +DEPEND="" + +src_prepare() { + eapply "${FILESDIR}"/${PN}-7.1-gentoo.diff + + # change default installation directory + find . -type f -exec sed \ + -e "s#/usr/local/awstats/wwwroot#/usr/share/awstats/wwwroot#g" \ + -e '/PossibleLibDir/s:(.*):("/usr/share/awstats/wwwroot/cgi-bin/lib"):' \ + -i {} + || die "find/sed failed" + + # set default values for directories; use apache log as an example + sed \ + -e "s|^\(LogFile=\).*$|\1\"/var/log/apache2/access_log\"|" \ + -e "s|^\(SiteDomain=\).*$|\1\"localhost\"|" \ + -e "s|^\(DirIcons=\).*$|\1\"/awstats/icon\"|" \ + -i "${S}"/wwwroot/cgi-bin/awstats.model.conf || die "sed failed" + + # enable plugins + + if use ipv6; then + sed -e "s|^#\(LoadPlugin=\"ipv6\"\)$|\1|" \ + -i "${S}"/wwwroot/cgi-bin/awstats.model.conf || die "sed failed" + fi + + if use geoip; then + sed -e '/LoadPlugin="geoip /aLoadPlugin="geoip GEOIP_STANDARD /usr/share/GeoIP/GeoIP.dat"' \ + -i "${S}"/wwwroot/cgi-bin/awstats.model.conf || die "sed failed" + fi + + find "${S}" '(' -type f -not -name '*.pl' ')' -exec chmod -x {} + || die + + eapply_user +} + +HTML_DOCS="docs/" +DOCS="README.md" + +src_install() { + einstalldocs + + newdoc wwwroot/cgi-bin/plugins/example/example.pm example_plugin.pm + dodoc -r tools/xslt + + keepdir /var/lib/awstats + + insinto /etc/awstats + doins "${S}"/wwwroot/cgi-bin/awstats.model.conf + + # remove extra content that we don't want to install + rm -r "${S}"/wwwroot/cgi-bin/awstats.model.conf \ + "${S}"/wwwroot/classes/src || die + + insinto /usr/share/awstats + doins -r wwwroot + chmod +x "${D}"/usr/share/awstats/wwwroot/cgi-bin/*.pl + + cd "${S}"/tools + dobin awstats_buildstaticpages.pl awstats_exportlib.pl \ + awstats_updateall.pl + newbin logresolvemerge.pl awstats_logresolvemerge.pl + newbin maillogconvert.pl awstats_maillogconvert.pl + newbin urlaliasbuilder.pl awstats_urlaliasbuilder.pl + + dosym ../share/awstats/wwwroot/cgi-bin/awstats.pl /usr/bin/awstats.pl || die +} + +pkg_postinst() { + elog "The AWStats-Manual is available either inside" + elog "the /usr/share/doc/${PF} - folder, or at" + elog "http://awstats.sourceforge.net/docs/index.html ." + elog + elog "Copy the /etc/awstats/awstats.model.conf to" + elog "/etc/awstats/awstats..conf and edit it." + elog "" + ewarn "This ebuild does no longer use webapp-config to install" + ewarn "instead you should point your configuration to the stable" + ewarn "directory tree in the following path:" + ewarn " /usr/share/awstats" +} diff --git a/www-misc/awstats/files/awstats-7.1-gentoo.diff b/www-misc/awstats/files/awstats-7.1-gentoo.diff new file mode 100644 index 0000000..a58ed48 --- /dev/null +++ b/www-misc/awstats/files/awstats-7.1-gentoo.diff @@ -0,0 +1,21 @@ +--- awstats-6.3.orig/tools/awstats_configure.pl 2005-01-24 09:28:43.980923725 -0500 ++++ awstats-6.3/tools/awstats_configure.pl 2005-01-24 09:28:52.034571769 -0500 +@@ -658,6 +658,18 @@ + print "\n-----> Restart Web server with '$command'\n"; + my $ret=`$command`; + print "$ret"; ++ } elsif (-f "/etc/gentoo-release") { ++ my $command; ++ if (-x "/etc/init.d/apache2") { ++ $command="/etc/init.d/apache2 graceful"; ++ } else { ++ print "\n-----> Don't forget to restart manually your web server\n"; ++ } ++ if ($command != "") { ++ print "\n-----> Restart Web server with '$command'\n"; ++ my $ret=`$command`; ++ print "$ret"; ++ } + } elsif (-x "/sbin/service") { + # We are not on debian + my $command="/sbin/service httpd restart";