#!/bin/bash
# Requires: llvm18-libcxx
# Requires: llvm18-libcxxabi
# Requires: llvm18-libunwind
# Requires: glibc2.43
# Requires: lib64tiff6
# Requires: patchelf

KOMPAS_REPO_URL="${KOMPAS_REPO_URL:-https://repo.ascon.ru/stable/rpm/redos/8.0/}"
KOMPAS_REPO_URL1="${KOMPAS_REPO_URL1:-https://repo.ascon.ru/personal/rpm/redos/8.0/}"
# KOMPAS_INSTALL: all (default), kompas, viewer, home, study
KOMPAS_INSTALL="${KOMPAS_INSTALL:-all}"

# /usr/bin/kompas3d-viewer-v25
# /usr/bin/kompas-v25
# /usr/bin/kompas-home-v25
# /usr/bin/kompas-study-v25

case "$KOMPAS_INSTALL" in
	all|kompas|viewer|home|study) ;;
	*) echo "Error: KOMPAS_INSTALL must be all, kompas, viewer, home or study" >&2; exit 1 ;;
esac

packages=""
[ "$KOMPAS_INSTALL" = "all" ] || [ "$KOMPAS_INSTALL" = "kompas" ] && packages="$packages ascon-kompas3d-v25-full"
[ "$KOMPAS_INSTALL" = "all" ] || [ "$KOMPAS_INSTALL" = "viewer" ] && packages="$packages ascon-kompas3d-viewer-v25-full"
[ "$KOMPAS_INSTALL" = "home" ] && packages="$packages ascon-kompas3d-home-v25-full"
[ "$KOMPAS_INSTALL" = "study" ] && packages="$packages ascon-kompas3d-study-v25-full"

REPO_ARGS=(--repofrompath "kompas,$KOMPAS_REPO_URL")
[ -n "$KOMPAS_REPO_URL1" ] && REPO_ARGS+=(--repofrompath "kompas1,$KOMPAS_REPO_URL1")
[ -n "$KOMPAS_REPO_URL2" ] && REPO_ARGS+=(--repofrompath "kompas2,$KOMPAS_REPO_URL2")
[ -d /usr/share/kompas/repo ] && REPO_ARGS+=(--repofrompath "kompaslocal,/usr/share/kompas/repo")

dnf \
	--nogpgcheck \
	"${REPO_ARGS[@]}" \
	install -y \
	$packages

if [ $? -ne 0 ]; then
	echo "Ошибка установки пакетов" >&2
	exit 1
fi

setup-kompas-v25
