#!/bin/bash

######
#
## Simple script to get required #
#  apt repository signing keys. ##
                                 #
                             #####
### version	2.6
### date	2026/04/25

key_base=/etc/apt/trusted.gpg.d/

key_nanolx=https://www.nanolx.org/apt/photonic.asc
key_nanolx_store=${key_base}/nanolx2016.asc

key_liquorix=https://liquorix.net/liquorix-keyring.gpg
key_liquorix_store=${key_base}/liquorix.asc

key_winehq=https://dl.winehq.org/wine-builds/winehq.key
key_winehq_store=${key_base}/winehq.asc

key_i2p=https://geti2p.net/_static/i2p-archive-keyring.gpg
key_i2p_store=${key_base}/i2p.asc

pkg_debmultimedia_add=https://www.deb-multimedia.org/pool/main/d/deb-multimedia-keyring/
pkg_debmultimedia_name=deb-multimedia-keyring_2024.9.1_all.deb

grab_key () {
	key="${1}"
	store="${2}"

	wget -q "${key}" -O "${store}"
}

grab_pkg () {
	wget "${1}${2}" -O "/tmp/${2}"
	dpkg -i "/tmp/${2}"
	rm -f "/tmp/${2}"
}

if [[ ${EUID} != 0 ]]; then
	echo "not root - exiting"
else
	command -v wget >/dev/null || apt install wget
	[[ -d "${key_base}" ]] || mkdir -p "${key_base}"

	# Nanolx signing key
	grab_key "${key_nanolx}" "${key_nanolx_store}"

	# Liquorix signing key
	grab_key "${key_liquorix}" "${key_liquorix_store}"

	# WineHQ signing key
	grab_key "${key_winehq}" "${key_winehq_store}"

	# i2p signing key
	grab_key "${key_i2p}" "${key_i2p_store}"

	# deb-multimedia signing key
	grab_pkg "${pkg_debmultimedia_add}" "${pkg_debmultimedia_name}"

	# update apt index
	apt update -q
fi
