File update-kimi-gpg-key of Package kimi-utils-ubuntu
#!/usr/bin/env bash
# -*- mode: Shell-script; sh_shell: "bash"; -*-
# Replace home:kimi GPG key
set -euo pipefail
export LANG=C
export LC_ALL=C
if [ "$EUID" -ne 0 ]; then
echo "Please run as root"
echo "or use sudo before command:"
echo "sudo $(basename "$0")"
echo "or"
echo "sudo ${BASH_SOURCE[0]}"
exit 1
fi
source /etc/os-release
# Variables
KEYFILE_NAME="home_kimi.gpg"
KEYRINGS_DIR="/usr/share/keyrings" # target directory to store the key
URL="https://download.opensuse.org/repositories/home:kimi:utils/xUbuntu_${VERSION_ID}/Release.key"
DEST="$KEYRINGS_DIR/$KEYFILE_NAME"
if [ "${NAME:-}" != "Ubuntu" ]; then
echo "This script is only for Ubuntu. Exiting."
exit 0
else
echo "${NAME} ${VERSION_ID} detected."
fi
echo "Replacing home:kimi GPG key"
echo "from download.opensuse.org."
echo "Current key(s):"
ls -al /etc/apt/trusted.gpg.d/home_kimi* 2>/dev/null || true
ls -al /etc/apt/keyrings/home_kimi* 2>/dev/null || true
ls -al /usr/share/keyrings/home_kimi* 2>/dev/null || true
echo
# ensure target dir exists
mkdir -p -- "$KEYRINGS_DIR"
# download and dearmor to a temp file, then move into place
if wget --spider --quiet "$URL"; then
tmp="$(mktemp --tmpdir home_kimi_key.XXXXXX.gpg)"
if curl -fsSL "$URL" | gpg --dearmor > "$tmp"; then
mv -f -- "$tmp" "$DEST"
chmod 0644 "$DEST"
echo "Installed key at: $DEST"
else
rm -f -- "$tmp"
echo "Failed to download or dearmor key from $URL" >&2
exit 1
fi
else
echo "Remote key not available: $URL" >&2
exit 1
fi
echo
echo "Current key(s) after update:"
ls -al /etc/apt/trusted.gpg.d/home_kimi* 2>/dev/null || true
ls -al /etc/apt/keyrings/home_kimi* 2>/dev/null || true
ls -al "$KEYRINGS_DIR"/home_kimi* 2>/dev/null || true
echo
echo "Done."