#!/usr/bin/env sh yes_retrieve() { local image="$1" local ok=1 local out= shift || return [ -d out ] || return out="$(realpath out)" || return for f in "$@"; do local g="out/${f##*/}" if [ -e "$g" ]; then mv "$g" "$g~" fi done podman run -v="$out":/out --rm --entrypoint /bin/busybox "$image" \ cp -- "$@" "/out/" || return for f in "$@"; do local g="out/${f##*/}" if [ -e "$g" ]; then if [ -e "$g~" ]; then rm "$g~" fi else printf '%s: %s\n' yes_retrieve "failed to copy file $f to $g" ok=0 fi done [ $ok = 1 ] } dbg_retrieve() { : \ && yes_retrieve "$1" "$2" \ && yes_retrieve "$1" "$2.dbg" \ ; } : \ && me="$(readlink -f "$0")" \ && cd "${me%/*}" \ \ && { [ -d out ] || mkdir out ;} \ \ && podman build -t notwa-util notwa-util \ && podman build -t cosmo cosmo \ && podman build -t cosmo-kuroko cosmo-kuroko \ \ && dbg_retrieve cosmo-kuroko /bin/kuroko.com \ ;