summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorgy Yakovlev <gyakovlev@gentoo.org>2021-07-30 01:37:49 -0700
committerGeorgy Yakovlev <gyakovlev@gentoo.org>2021-07-30 01:37:49 -0700
commit325696e60986d441fcc131707bc06e5e599801c5 (patch)
tree832084e6eb228f8346c7eee084e3243ebe6ee5c9 /app-admin/logrotate/logrotate-3.18.1-r1.ebuild
parentapp-admin/logrotate: Stabilize 3.18.1 arm64, #803458 (diff)
downloadgentoo-325696e60986d441fcc131707bc06e5e599801c5.tar.gz
gentoo-325696e60986d441fcc131707bc06e5e599801c5.tar.bz2
gentoo-325696e60986d441fcc131707bc06e5e599801c5.zip
app-admin/logrotate: revbump for tmpfiles fix
Bug: https://bugs.gentoo.org/803458 Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org>
Diffstat (limited to 'app-admin/logrotate/logrotate-3.18.1-r1.ebuild')
-rw-r--r--app-admin/logrotate/logrotate-3.18.1-r1.ebuild96
1 files changed, 96 insertions, 0 deletions
diff --git a/app-admin/logrotate/logrotate-3.18.1-r1.ebuild b/app-admin/logrotate/logrotate-3.18.1-r1.ebuild
new file mode 100644
index 000000000000..e5eeab2ecc63
--- /dev/null
+++ b/app-admin/logrotate/logrotate-3.18.1-r1.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit systemd tmpfiles
+
+DESCRIPTION="Rotates, compresses, and mails system logs"
+HOMEPAGE="https://github.com/logrotate/logrotate"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86"
+IUSE="acl +cron selinux"
+
+DEPEND="
+ >=dev-libs/popt-1.5
+ selinux? ( sys-libs/libselinux )
+ acl? ( virtual/acl )"
+RDEPEND="${DEPEND}
+ selinux? ( sec-policy/selinux-logrotate )
+ cron? ( virtual/cron )"
+
+STATEFILE="${EPREFIX}/var/lib/misc/logrotate.status"
+OLDSTATEFILE="${EPREFIX}/var/lib/logrotate.status"
+
+move_old_state_file() {
+ elog "logrotate state file is now located at ${STATEFILE}"
+ elog "See bug #357275"
+ if [[ -e "${OLDSTATEFILE}" ]] ; then
+ elog "Moving your current state file to new location: ${STATEFILE}"
+ mv -n "${OLDSTATEFILE}" "${STATEFILE}" || die
+ fi
+}
+
+install_cron_file() {
+ exeinto /etc/cron.daily
+ newexe "${S}"/examples/logrotate.cron "${PN}"
+}
+
+PATCHES=(
+ "${FILESDIR}/${PN}-3.15.0-ignore-hidden.patch"
+)
+
+src_prepare() {
+ sed -i -e 's#/usr/sbin/logrotate#/usr/bin/logrotate#' examples/logrotate.{cron,service} || die
+ default
+}
+
+src_configure() {
+ econf \
+ $(use_with acl) \
+ $(use_with selinux) \
+ --with-state-file-path="${STATEFILE}"
+}
+
+src_test() {
+ emake test
+}
+
+src_install() {
+ dobin logrotate
+ doman logrotate.8
+ dodoc ChangeLog.md
+
+ insinto /etc
+ doins "${FILESDIR}"/logrotate.conf
+
+ use cron && install_cron_file
+
+ systemd_dounit examples/logrotate.{service,timer}
+ newtmpfiles "${FILESDIR}"/${PN}.tmpfiles ${PN}.conf
+
+ keepdir /etc/logrotate.d
+}
+
+pkg_postinst() {
+ elog
+ elog "The ${PN} binary is now installed under /usr/bin. Please"
+ elog "update your links"
+ elog
+
+ move_old_state_file
+
+ tmpfiles_process ${PN}.conf
+
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
+ elog "If you wish to have logrotate e-mail you updates, please"
+ elog "emerge virtual/mailx and configure logrotate in"
+ elog "/etc/logrotate.conf appropriately"
+ elog
+ elog "Additionally, /etc/logrotate.conf may need to be modified"
+ elog "for your particular needs. See man logrotate for details."
+ fi
+}