forked from kiss-community/kiss
6786d2ca0a
Seeing as how these utilities are now better integrated, more effort should go into the overall interface between what should be the "benchmark" or example kiss scripts.
36 lines
654 B
Bash
Executable File
36 lines
654 B
Bash
Executable File
#!/bin/sh -e
|
|
# Create/destroy temporary chroots.
|
|
|
|
log() {
|
|
printf '\033[31;1m->\033[m %s.\n' "$@"
|
|
}
|
|
|
|
clean() {
|
|
log "Destroying chroot"
|
|
|
|
su -c "rm -rf chroot-$pid" || clean
|
|
}
|
|
|
|
pid=$$
|
|
url=https://github.com/kisslinux/repo/releases/download/1.9.11/
|
|
|
|
cd "${cac_dir:=$KISS_ROOT${XDG_CACHE_HOME:-$HOME/.cache}/kiss}"
|
|
|
|
[ -f kiss-chroot.tar.xz ] || {
|
|
log "Downloading chroot tarball"
|
|
wget "$url/kiss-chroot.tar.xz"
|
|
}
|
|
|
|
[ -d kiss-chroot ] || {
|
|
log "Extracting chroot"
|
|
tar xf kiss-chroot.tar.xz
|
|
}
|
|
|
|
log "Creating temporary chroot"
|
|
cp -a kiss-chroot "chroot-$pid"
|
|
|
|
trap clean EXIT INT
|
|
|
|
log "Entering chroot"
|
|
su -c "kiss-chroot chroot-$pid"
|