diff --git a/scripts/detect_host_profile.sh b/scripts/detect_host_profile.sh new file mode 100644 index 0000000..789e3a1 --- /dev/null +++ b/scripts/detect_host_profile.sh @@ -0,0 +1,81 @@ +#!/usr/bin/env bash +set -euo pipefail + +CONFIG_DIR="/var/lib/virtuality/config" +PROFILE_FILE="${CONFIG_DIR}/host_profile.json" +ARCH="$(uname -m 2>/dev/null || echo unknown)" +MODEL="unknown" + +if [[ -r /proc/device-tree/model ]]; then + MODEL="$(tr -d '\0' /dev/null 2>&1 && QEMU_X86="true" + +QEMU_ARM="false" +command -v qemu-system-aarch64 >/dev/null 2>&1 && QEMU_ARM="true" + +VIRT_INSTALL="false" +command -v virt-install >/dev/null 2>&1 && VIRT_INSTALL="true" + +NFT="false" +command -v nft >/dev/null 2>&1 && NFT="true" + +mkdir -p "$CONFIG_DIR" +cat > "$PROFILE_FILE" <&2