openrc/init.d/savecache.in
2009-05-01 15:11:40 +01:00

33 lines
792 B
Plaintext

#!@PREFIX@/sbin/runscript
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# All rights reserved. Released under the 2-clause BSD license.
description="Saves the caches OpenRC uses to non volatile storage"
start()
{
if [ -e "$RC_SVCDIR"/clock-skewed ]; then
ewarn "WARNING: clock skew detected!"
if ! yesno "savecache_skewed"; then
eerror "Not saving deptree cache"
return 1
fi
fi
ebegin "Saving dependency cache"
if [ ! -d "$RC_LIBDIR"/cache ]; then
rm -rf "$RC_LIBDIR"/cache
if ! mkdir "$RC_LIBDIR"/cache; then
eend $?
return $?
fi
fi
local save=
for x in deptree depconfig softlevel nettree rc.log; do
[ -e "$RC_SVCDIR/$x" ] && save="$save $RC_SVCDIR/$x"
done
if [ -n "$save" ]; then
cp -p $save "$RC_LIBDIR"/cache 2>/dev/null
fi
eend $?
}