#!/usr/bin/env bash

enable_apt_cache() {
	local apt_caching_server="http://172.16.230.100:3142";
	
	task_begin "Configuring ${apt_caching_server} as apt cache";
	
	subtask_begin "Updating apt configuration";
	echo "Acquire::http { Proxy \"${apt_caching_server}\"; }" >/etc/apt/apt.conf.d/proxy
	subtask_end "$?";
	
	# From /etc/os-release - see run.sh
	if [[ "${ID}" == "raspbian" ]]; then
		subtask_begin "Patching for Raspbian";
		if [[ -e "/etc/apt/sources.list.d/raspi" ]]; then
			rm /etc/apt/sources.list.d/raspi;
		fi
		subtask_end "$?";
	fi
	
	# HTTPS doesn't allow for our proxy to cache it
	subtask_begin "Reconfiguring existing apt sources https → http";
	sed -i 's/https:/http:/g' /etc/apt/sources.list;
	find /etc/apt/sources.list.d/ -type f -iname '*.list' -print0 | xargs -0 -n1 sed -i 's/https:\/\//http:\/\//g';
	subtask_end "$?";
	
	task_end "$?" "Failed to configure apt cache.";
}

enable_apt_cache;