summaryrefslogtreecommitdiff
path: root/app-admin/tmpreaper
diff options
context:
space:
mode:
Diffstat (limited to 'app-admin/tmpreaper')
-rw-r--r--app-admin/tmpreaper/Manifest5
-rw-r--r--app-admin/tmpreaper/files/tmpreaper-1.6.13-fix-protect.patch46
-rw-r--r--app-admin/tmpreaper/files/tmpreaper-1.6.13-gentoo.patch47
-rw-r--r--app-admin/tmpreaper/metadata.xml24
-rw-r--r--app-admin/tmpreaper/tmpreaper-1.6.13-r1.ebuild44
5 files changed, 166 insertions, 0 deletions
diff --git a/app-admin/tmpreaper/Manifest b/app-admin/tmpreaper/Manifest
new file mode 100644
index 000000000000..0ae900f62c83
--- /dev/null
+++ b/app-admin/tmpreaper/Manifest
@@ -0,0 +1,5 @@
+AUX tmpreaper-1.6.13-fix-protect.patch 1204 BLAKE2B 8c1b66d939ac8e997272265744873a22a5e5306d8fbec6e56ace78cf4162387c2cb2c2d7372ec62f0e7c99fa954d7e321482d0dbaa75ba6e3ff48a8785277e3c SHA512 7b7f386d8f685e6b38ff3a96030e69a5134016e0a0b30b6841ddc4ae02ae3f90c47388426be98ec35a920e40360aa0cd8662e29d03a765c6ae0209f9907c53c0
+AUX tmpreaper-1.6.13-gentoo.patch 1766 BLAKE2B a619096b159686dbcdaacdbd3bf979f74664f8abb2c58957dec7fcb17bee7c1b5b790f4e7283af9f82fb1f7eac2a76f73c5ec26804c6bd799643d553fb56be17 SHA512 0086ac04a352bd35ce9e95576816fc324011bfff78cfa089828bf3befb8b183ae2213be9759422ce1f9ddd1cb26dcdf292b429ffe2d0873a1f6f6577e34c5fc9
+DIST tmpreaper_1.6.13+nmu1.tar.gz 141080 BLAKE2B ad2895e0444e3c1a1ceabf71c34b560a817e7cc274482bde63a07499fac799ef127f5b64c953d43cd11a279819972b63b7e21a683f6250a77eeadc299a491a78 SHA512 c868d421a7757a47b81c8932743981ded2b415c83377f8781fdfd4dfda48c701991da17fa262dfa0680b2a315d6b46ee4c9035ba4c06f5a0c1bc32efa717f19f
+EBUILD tmpreaper-1.6.13-r1.ebuild 1115 BLAKE2B 819bfc595646ab0cbd96d40c47b4d5358cbe903d41883e10de9180bc63e7b8e7d682155a46b70788d59b79686b57c0721ecff00930fa71c53f3af828f66ce526 SHA512 0e6e094cdfbb941d08cdaa4f7302eb6dc61ac4c20d9dd0948e9f8c38ba4d0fda1b5d8b283c2736ed75cf170fa37ff8dfa6de2ef35ca120c6d2246e86ce56fe9a
+MISC metadata.xml 1159 BLAKE2B b0c934dea54b86c8eec6b21e212906473d59eca307c4130da36de3f0582a1e070fc4b3b242b92529981e33057e2d49606c48a5ca3a0c6f791bba39b78589a7dd SHA512 128a7b822d4a88be9bf4cf9b5a371ac8fc41e6922dc374d4859d046efe98fae0031783b43ccbe153239688a138506983e56694d16298c3ab04f2451692725ae1
diff --git a/app-admin/tmpreaper/files/tmpreaper-1.6.13-fix-protect.patch b/app-admin/tmpreaper/files/tmpreaper-1.6.13-fix-protect.patch
new file mode 100644
index 000000000000..9c07a4471e18
--- /dev/null
+++ b/app-admin/tmpreaper/files/tmpreaper-1.6.13-fix-protect.patch
@@ -0,0 +1,46 @@
+--- tmpreaper-1.6.13+nmu1/tmpreaper.c.orig 2006-12-05 10:55:58.000000000 -0800
++++ tmpreaper-1.6.13+nmu1/tmpreaper.c 2006-12-05 10:56:46.000000000 -0800
+@@ -467,6 +467,21 @@
+ continue;
+ }
+
++ if (FLAGS_PROTECT_P (flags)) {
++ skip = i = 0;
++ do {
++ if (sb.st_ino == protect_table[i].inode) {
++ message (LOG_VERBOSE,
++ "Entry matching `--protect' pattern skipped. `%s'\n",
++ protect_table[i].name);
++ skip = 1;
++ break;
++ }
++ } while (protect_table[i++].name);
++ if (skip)
++ continue;
++ }
++
+ if (S_ISDIR (sb.st_mode)) {
+ char *dst;
+
+@@ -489,21 +504,6 @@
+ (u_int) getpid(), ent->d_name);
+ }
+
+- if (FLAGS_PROTECT_P (flags)) {
+- skip = i = 0;
+- do {
+- if (sb.st_ino == protect_table[i].inode) {
+- message (LOG_VERBOSE,
+- "Entry matching `--protect' pattern skipped. `%s'\n",
+- protect_table[i].name);
+- skip = 1;
+- break;
+- }
+- } while (protect_table[i++].name);
+- if (skip)
+- continue;
+- }
+-
+ /* Decide whether to remove the file or not */
+ /* check for mtime on directory instead of atime if requested */
+ if ( FLAGS_MTIME_P(flags) ||
diff --git a/app-admin/tmpreaper/files/tmpreaper-1.6.13-gentoo.patch b/app-admin/tmpreaper/files/tmpreaper-1.6.13-gentoo.patch
new file mode 100644
index 000000000000..afd5f60f3a1c
--- /dev/null
+++ b/app-admin/tmpreaper/files/tmpreaper-1.6.13-gentoo.patch
@@ -0,0 +1,47 @@
+diff -ur tmpreaper-1.6.13+nmu1.orig//debian/cron.daily tmpreaper-1.6.13+nmu1/debian/cron.daily
+--- tmpreaper-1.6.13+nmu1.orig//debian/cron.daily 2008-05-19 10:10:16.000000000 -0700
++++ tmpreaper-1.6.13+nmu1/debian/cron.daily 2010-10-10 19:44:14.563252064 -0700
+@@ -32,28 +32,7 @@
+
+ # Set config defaults
+ SHOWWARNING=''
+-
+-# get the TMPREAPER_TIME value from /etc/default/rcS
+-
+-if grep '^TMPTIME=' /etc/default/rcS >/dev/null 2>&1; then
+- eval $(grep '^TMPTIME=' /etc/default/rcS)
+- if [ -n "$TMPTIME" ]; then
+- # Don't clean files if TMPTIME is negative or 'infinite'
+- # to mimic the way /lib/init/bootclean.sh works.
+- case "$TMPTIME" in
+- -*|infinite|infinity)
+- # don't use this as default
+- ;;
+- *)
+- if [ "$TMPTIME" -gt 0 ]; then
+- TMPREAPER_TIME=${TMPTIME}d
+- else
+- TMPREAPER_TIME=7d
+- fi
+- ;;
+- esac
+- fi
+-fi
++TMPREAPER_TIME=''
+
+ # ! Important ! The "set -f" below prevents the shell from expanding
+ # file paths, which is vital for the configuration below to work.
+diff -ur tmpreaper-1.6.13+nmu1.orig//debian/tmpreaper.conf tmpreaper-1.6.13+nmu1/debian/tmpreaper.conf
+--- tmpreaper-1.6.13+nmu1.orig//debian/tmpreaper.conf 2006-12-08 04:24:03.000000000 -0800
++++ tmpreaper-1.6.13+nmu1/debian/tmpreaper.conf 2010-10-10 19:45:53.251119766 -0700
+@@ -40,9 +40,7 @@
+ # TMPREAPER_ADDITIONALOPTIONS
+ # extra options that are passed to tmpreaper, e.g. --all
+
+-# uncomment and change the next line to overrule the /etc/default/rcS value
+-# TMPREAPER_TIME=7d
+-
++TMPREAPER_TIME=7d
+ TMPREAPER_PROTECT_EXTRA=''
+ TMPREAPER_DIRS='/tmp/.'
+ TMPREAPER_DELAY='256'
diff --git a/app-admin/tmpreaper/metadata.xml b/app-admin/tmpreaper/metadata.xml
new file mode 100644
index 000000000000..6f3fd9e0f558
--- /dev/null
+++ b/app-admin/tmpreaper/metadata.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>xmw@gentoo.org</email>
+ <name>Michael Weber</name>
+ </maintainer>
+ <longdescription lang="en">
+ tmpreaper is a program that can be used to clean out temporary-file
+ directories. It recursively searches the directory, refusing to chdir()
+ across symlinks, and removes files that haven't been accessed in a
+ user-specified amount of time. You can specify a set of files to protect
+ from deletion with a shell pattern. It will not remove files owned by the
+ process EUID that have the `w' bit clear, unless you ask it to, much like
+ `rm -f'. `tmpreaper' will not remove symlinks, sockets, fifos, or special
+ files unless given a command line option enabling it to.
+
+ WARNING: Please do not run `tmpreaper' on `/'. There are no protections
+ against this written into the program, as that would prevent it from
+ functioning the way you'd expect it to in a `chroot(8)' environment.
+
+ The daily tmpreaper run can be configured through /etc/tmpreaper.conf .
+ </longdescription>
+</pkgmetadata>
diff --git a/app-admin/tmpreaper/tmpreaper-1.6.13-r1.ebuild b/app-admin/tmpreaper/tmpreaper-1.6.13-r1.ebuild
new file mode 100644
index 000000000000..d13fc5593381
--- /dev/null
+++ b/app-admin/tmpreaper/tmpreaper-1.6.13-r1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit eutils
+
+MY_P="${PN}_${PV}+nmu1"
+DESCRIPTION="A utility for removing files based on when they were last accessed"
+HOMEPAGE="http://packages.debian.org/sid/tmpreaper"
+SRC_URI="mirror://debian/pool/main/t/${PN}/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ppc ~ppc64 x86"
+IUSE=""
+
+DEPEND="sys-fs/e2fsprogs"
+RDEPEND=""
+
+S=${WORKDIR}/${MY_P/_/-}
+
+PATCHES=(
+ "${FILESDIR}"/${P}-fix-protect.patch
+ "${FILESDIR}"/${P}-gentoo.patch
+)
+
+src_install() {
+ emake DESTDIR="${D}" install
+ insinto /etc
+ doins debian/tmpreaper.conf
+
+ exeinto /etc/cron.daily
+ newexe debian/cron.daily tmpreaper
+ doman debian/tmpreaper.conf.5
+ dodoc README ChangeLog debian/README*
+}
+
+pkg_postinst() {
+ elog "This package installs a cron script under /etc/cron.daily"
+ elog "You can configure it using /etc/tmpreaper.conf"
+ elog "Consult tmpreaper.conf man page for more information"
+ elog "Read /usr/share/doc/${P}/README.security and"
+ elog "remove SHOWWARNING from /etc/tmpreaper.conf afterwards"
+}