From a62f12110b19a52a58d7eae871012202cfa16055 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 22 Nov 2009 14:36:42 +0100 Subject: Renaming categories to archive areas (Closes: #519690). --- functions/cache.sh | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100755 functions/cache.sh (limited to 'functions/cache.sh') diff --git a/functions/cache.sh b/functions/cache.sh new file mode 100755 index 000000000..ca5e5ed0e --- /dev/null +++ b/functions/cache.sh @@ -0,0 +1,60 @@ +#!/bin/sh + +# cache.sh - manage package cache +# Copyright (C) 2006-2009 Daniel Baumann +# +# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING. +# This is free software, and you are welcome to redistribute it +# under certain conditions; see COPYING for details. + +Restore_cache () +{ + DIRECTORY="${1}" + + if [ "${LH_CACHE}" = "enabled" ] && [ "${LH_CACHE_PACKAGES}" = "enabled" ] + then + if [ -d "${DIRECTORY}" ] + then + # Restore old cache + if [ "$(stat --printf %d ${DIRECTORY})" = "$(stat --printf %d chroot/var/cache/apt/archives)" ] + then + # with hardlinks + cp -fl "${DIRECTORY}"/*.deb chroot/var/cache/apt/archives + else + # without hardlinks + cp "${DIRECTORY}"/*.deb chroot/var/cache/apt/archives + fi + fi + fi +} + +Save_cache () +{ + DIRECTORY="${1}" + + if [ "${LH_CACHE}" = "enabled" ] && [ "${LH_CACHE_PACKAGES}" = "enabled" ] + then + # Cleaning current cache + Chroot chroot "apt-get autoclean" + + if ls chroot/var/cache/apt/archives/*.deb > /dev/null 2>&1 + then + # Creating cache directory + mkdir -p "${DIRECTORY}" + + # Saving new cache + for PACKAGE in chroot/var/cache/apt/archives/*.deb + do + if [ -e "${DIRECTORY}"/"$(basename ${PACKAGE})" ] + then + rm -f "${PACKAGE}" + else + mv "${PACKAGE}" "${DIRECTORY}" + fi + done + fi + else + # Purging current cache + rm -f chroot/var/cache/apt/archives/*.deb + fi +} -- cgit v1.2.3