summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2021-08-20 03:16:53 +0100
committerSam James <sam@gentoo.org>2021-08-20 03:18:09 +0100
commitce830c8d6fc7869fd559d36c71cf3b8af3b4fd80 (patch)
tree548f22fbeb58b047e71c2b4180092186c6481740 /app-admin/tmpwatch
parentapp-admin/tmpwatch: fix metadata indentation (diff)
downloadgentoo-ce830c8d6fc7869fd559d36c71cf3b8af3b4fd80.tar.gz
gentoo-ce830c8d6fc7869fd559d36c71cf3b8af3b4fd80.tar.bz2
gentoo-ce830c8d6fc7869fd559d36c71cf3b8af3b4fd80.zip
app-admin/tmpwatch: address bug 524698 (bashism)
Remove the use of the [[ keyword in favour of the POSIX test command (SC3010). Don't hard-code pathnames to external programs and define silly variables such as TMPWATCH. Instead, define a sane PATH at the beginning of the script. Don't force the user to reason with whether certain variables need to be set or not. Instead, call out to portageq in the samples. Further, check the exit status of portageq, rather than blindly assume that it always succeeds. As a result, there are no more hard-coded paths, other than /tmp. Use pgrep in a less sloppy way. Query PORT_LOGDIR if the query for PORTAGE_LOGDIR fails. Closes: https://bugs.gentoo.org/524698 Signed-off-by: Kerin Millar <kfm@plushkava.net> Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'app-admin/tmpwatch')
-rw-r--r--app-admin/tmpwatch/files/tmpwatch.cron40
-rw-r--r--app-admin/tmpwatch/tmpwatch-2.11-r3.ebuild (renamed from app-admin/tmpwatch/tmpwatch-2.11-r2.ebuild)0
2 files changed, 19 insertions, 21 deletions
diff --git a/app-admin/tmpwatch/files/tmpwatch.cron b/app-admin/tmpwatch/files/tmpwatch.cron
index 806b1453e552..d35a590379d7 100644
--- a/app-admin/tmpwatch/files/tmpwatch.cron
+++ b/app-admin/tmpwatch/files/tmpwatch.cron
@@ -1,47 +1,45 @@
#!/bin/sh
-# vim: ft=sh
+
+PATH="/usr/sbin:/usr/bin:/sbin:/bin"
# This cron script contains several (commented out) examples. You may use
# them as is, by uncommenting them, or modify them to suit your needs. Read
# tmpwatch(8) for more information on tmpwatch parameters.
-### Variables ###
-
-TMPWATCH="/usr/sbin/tmpwatch"
-#PORTAGE_TMPDIR="$(portageq envvar PORTAGE_TMPDIR)/portage"
-#PORTAGE_LOGDIR="$(portageq envvar PORT_LOGDIR)"
-#DISTDIR="$(portageq distdir)"
-
### EXAMPLES ###
# NOTE: if you have noatime in /etc/fstab for any partitions you plan on
# running tmpwatch on, you should obviously change any of the examples that
# use atime (-u|--atime). Those that don't specify anything, default to
-# atime.
-
-# NOTE2: the time value is in HOURS!
+# atime. Be aware that the time value is in HOURS!
# Delete everything in /tmp that haven't been accessed in a week (>=168 hrs).
#
-# if [[ -d /tmp ]]; then
-# ${TMPWATCH} --atime 168 /tmp
+# if [ -d /tmp ]; then
+# tmpwatch --atime 168 /tmp
# fi
# Delete everything in PORTAGE_TMPDIR that hasn't been modified in 2 weeks.
#
-# if [[ -d ${PORTAGE_TMPDIR:-/var/tmp/portage} && -z $(/usr/bin/pgrep emerge) ]]; then
-# ${TMPWATCH} --mtime --all 336 ${PORTAGE_TMPDIR:-/var/tmp/portage}
+# if PORTAGE_TMPDIR=$(portageq envvar PORTAGE_TMPDIR) &&
+# [ -d "${PORTAGE_TMPDIR}/portage" ] &&
+# ! pgrep -x emerge >/dev/null
+# then
+# tmpwatch --mtime --all 336 "${PORTAGE_TMPDIR}/portage"
# fi
# Delete everything in DISTDIR that hasn't been accessed in 6 months (going
-# by 30 day months)
+# by 30 day months).
#
-# if [[ -d ${DISTDIR:-/usr/portage/distfiles} ]]; then
-# ${TMPWATCH} --atime --fuser 4320 ${DISTDIR:-/usr/portage/distfiles}
+# if DISTDIR=$(portageq distdir) && [ -d "${DISTDIR}" ]; then
+# tmpwatch --atime --fuser 4320 "${DISTDIR}"
# fi
-# Delete everything in PORTAGE_LOGDIR that hasn't been accessed in 4 weeks
+# Delete everything in PORTAGE_LOGDIR that hasn't been accessed in 4 weeks.
#
-# if [[ -d ${PORTAGE_LOGDIR:-/var/log/portage} ]]; then
-# ${TMPWATCH} --atime 772 ${PORTAGE_LOGDIR:-/var/log/portage}
+# if { PORTAGE_LOGDIR=$(portageq envvar PORTAGE_LOGDIR) ||
+# PORTAGE_LOGDIR=$(portageq envvar PORT_LOGDIR); } &&
+# [ -d "${PORTAGE_LOGDIR}" ]
+# then
+# tmpwatch --atime 772 "${PORTAGE_LOGDIR}"
# fi
diff --git a/app-admin/tmpwatch/tmpwatch-2.11-r2.ebuild b/app-admin/tmpwatch/tmpwatch-2.11-r3.ebuild
index cdc308efa9f9..cdc308efa9f9 100644
--- a/app-admin/tmpwatch/tmpwatch-2.11-r2.ebuild
+++ b/app-admin/tmpwatch/tmpwatch-2.11-r3.ebuild