# Attach/create toolbx container with specified name.
# By default uses `main` name.
# Usage: tba [NAME]
function tba() {
	local name="${1}"
	
	# set default name.
	if [[ "${name}" = "" ]]; then
		name="main"
	fi

	# start container or run command inside it if specified.
	if [[ "${2}" = "" ]]; then
		# set hostname.
		toolbox --container "${name}" run sudo hostname "${HOSTNAME}-${name}"
		
		# try to enter or create if failed.
		toolbox enter "${name}" || {
			# create container.
			toolbox create "${name}"
			
			# initialize container.
			toolbox --container "${name}" run sudo hostname "${HOSTNAME}-${name}"
			# toolbox --container "$name" run sudo rm /root/.bashrc
			# toolbox --container "$name" run sudo ln -s $HOME/.linux /root/.linux
			# toolbox --container "$name" run sudo ln -s /root/.linux/bash/bashrc.sh /root/.bashrc
			
			# enter container, finally.
			toolbox enter "${name}"
		}
	else
		# set hostname.
		toolbox --container "${name}" run sudo hostname "${HOSTNAME}-${name}"
		
		# run command inside container.
		toolbox --container "${name}" run ${@:2}
	fi
}

# Remove toolbx container with specified name.
# By default uses `main` name.
# Usage: tbk [NAME]
function tbk() {
	local name="${1}"
	
	# set default name.
	if [[ "${name}" = "" ]]; then
		name="main"
	fi

	# stop and remove podman container.
	podman stop "${name}" > /dev/null && podman rm "${name}" > /dev/null
}

# Install rpm-fusion repository into container with specified name.
# By default uses `main` name.
# Usage: tb_rpmfusion [NAME]
function tb_rpmfusion() {
	local name="${1}"
	
	# set default name.
	if [[ "${name}" = "" ]]; then
		name="main"
	fi
	
	# run dnf inside container.
	toolbox --container "${name}" run sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
}

# List all available containers.
function tbl() {
	toolbox list -c
}

# Autocomplete with available containers.
function _tb_containers() {
	_autocomplete_first "$(toolbox list -c | sed -e '1d' | awk '{ print $2 }')"
}

complete -F _tb_containers tba tbk tb_rpmfusion