diff options
Diffstat (limited to 'app-admin/tmpreaper')
-rw-r--r-- | app-admin/tmpreaper/Manifest | 5 | ||||
-rw-r--r-- | app-admin/tmpreaper/files/tmpreaper-1.6.13-fix-protect.patch | 46 | ||||
-rw-r--r-- | app-admin/tmpreaper/files/tmpreaper-1.6.13-gentoo.patch | 47 | ||||
-rw-r--r-- | app-admin/tmpreaper/metadata.xml | 24 | ||||
-rw-r--r-- | app-admin/tmpreaper/tmpreaper-1.6.13-r1.ebuild | 44 |
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" +} |