|
|
|
@ -73,17 +73,6 @@ function mount_miaou_bash { |
|
|
|
incus $optional_project config device add $target MIAOU-BASH disk source=$MIAOU_BASH_DIR path=/opt/miaou-bash readonly=true | grep -q 'Device MIAOU-BASH added' |
|
|
|
} |
|
|
|
|
|
|
|
function infocmp_xterm_ghostty { |
|
|
|
! command -v ghostty >/dev/null && return |
|
|
|
|
|
|
|
local target="$1" |
|
|
|
local optional_project=${2:-} |
|
|
|
[[ -n $optional_project ]] && optional_project="--project $optional_project" |
|
|
|
|
|
|
|
echo "export GHOSTTY infocmp from host to container" |
|
|
|
infocmp -x xterm-ghostty | incus exec $optional_project $target -- tic -x - 2>/dev/null |
|
|
|
} |
|
|
|
|
|
|
|
function assign_host_zoneinfo { |
|
|
|
local target="$1" |
|
|
|
local optional_project=${2:-} |
|
|
|
@ -113,12 +102,19 @@ function refresh_template { |
|
|
|
if incus --project "$PROJECT_SANDBOX" info "$TEMPLATE_SANDBOX" | grep '^Status: STOPPED'; then |
|
|
|
incus --project "$PROJECT_SANDBOX" start "$TEMPLATE_SANDBOX" |
|
|
|
fi |
|
|
|
incus --project "$PROJECT_SANDBOX" exec "$TEMPLATE_SANDBOX" -- bash <<EOF |
|
|
|
|
|
|
|
script=$( |
|
|
|
cat <<-EOF |
|
|
|
apt-get update |
|
|
|
apt-get dist-upgrade -y |
|
|
|
apt-get install -y curl |
|
|
|
/opt/miaou-bash/install.sh |
|
|
|
MIAOU_BASH_DIR=/opt/miaou-bash |
|
|
|
export MIAOU_BASH_DIR |
|
|
|
"\$MIAOU_BASH_DIR"/bin/miaou-bash "\$MIAOU_BASH_DIR"/lib/init.bash |
|
|
|
EOF |
|
|
|
) |
|
|
|
|
|
|
|
incus --project "$PROJECT_SANDBOX" exec "$TEMPLATE_SANDBOX" -- bash -c "$script" |
|
|
|
incus --project "$PROJECT_SANDBOX" stop "$TEMPLATE_SANDBOX" |
|
|
|
|
|
|
|
local image_date |
|
|
|
@ -138,7 +134,6 @@ LLMNR=no |
|
|
|
DNSStubListener=no |
|
|
|
EOF |
|
|
|
mount_miaou_bash "$TEMPLATE_SANDBOX" "$PROJECT_SANDBOX" |
|
|
|
command -v ghostty >/dev/null && infocmp_xterm_ghostty "$TEMPLATE_SANDBOX" "$PROJECT_SANDBOX" |
|
|
|
refresh_template |
|
|
|
echo "template:"$TEMPLATE_SANDBOX" from project:$PROJECT_SANDBOX built successfully!" |
|
|
|
} |
|
|
|
|