summaryrefslogtreecommitdiff
path: root/librechroot
diff options
context:
space:
mode:
authorNicolas Reynolds <fauno@kiwwwi.com.ar>2012-02-14 11:47:52 -0300
committerNicolas Reynolds <fauno@kiwwwi.com.ar>2012-02-14 11:47:52 -0300
commit7506b06cb81951a4705908f6bfe93f81d50667a7 (patch)
tree51d257cec4863822058bd6510fb39f4f33e29a06 /librechroot
parent875ec16b3d25c2b4d9dc5c940702f5ecde76cf7f (diff)
parentbb7f637b5c5fe7df671d374d2b8547f2431bad82 (diff)
Merge branch 'master' into fauno
Diffstat (limited to 'librechroot')
-rwxr-xr-xlibrechroot16
1 files changed, 10 insertions, 6 deletions
diff --git a/librechroot b/librechroot
index 31516ac..0398a0f 100755
--- a/librechroot
+++ b/librechroot
@@ -24,14 +24,15 @@
function usage {
+ echo ""
echo "Usage: $0 [options] [chrootname]"
echo "Use it as root."
- echo ''
+ echo ""
echo "Default chroot name: $CHROOT"
echo "Default chrootdir: $CHROOTDIR"
- echo ''
+ echo ""
echo "OPTIONS:"
- echo ''
+ echo ""
echo " -c : clean the chroot using pacman"
echo " only 'base', 'base-devel' and 'sudo' on chroot"
echo " -d <chrootdir> : use <chrootdir> instead of default"
@@ -43,9 +44,8 @@ function usage {
}
function clean_chroot { # Clean packages with pacman
-
msg "Cleaning chroot: ${CHROOTDIR}/${CHROOTNAME}"
-
+ update-cleansystem
cp "/etc/libretools.d/cleansystem" "${CHROOTDIR}/${CHROOTNAME}/cleansystem"
(cat <<EOF
#!/bin/bash
@@ -83,8 +83,12 @@ EOF
function clean_repo {
msg "Cleaning repo for chroot: ${CHROOTDIR}/${CHROOTNAME}"
if [ -d "${CHROOTDIR}/${CHROOTNAME}/repo" ]; then
- rm -rf "${CHROOTDIR}/${CHROOTNAME}/repo"
+ find "${CHROOTDIR}/${CHROOTNAME}/repo/" -mindepth 1 -delete
+ else
+ mkdir -p "${CHROOTDIR}/${CHROOTNAME}/repo"
fi
+ bsdtar -czf "${CHROOTDIR}/${CHROOTNAME}/repo/repo.db.tar.gz" -T /dev/null
+ ln -s "repo.db.tar.gz" "${CHROOTDIR}/${CHROOTNAME}/repo/repo.db"
}
source /etc/libretools.conf