#!/usr/bin/env bash

## of-install v1.24 (29th March 2026)
##  Simple installers for software on OpenFrames.

usage() {
	echo "Usage: $0 <option> [options]"
	echo
	echo "  mplayer      :  Installs mplayer with OpenFrame settings."
	echo "  xserver      :  Installs the X.Org Server."
	echo
	exit 1
}

if [ "$#" -lt 1 ] || [[ "$1" == "-h" ]] || [[ "$1" == "--help" ]]; then
	usage
fi

if [ "$(id -u)" -ne 0 ]; then
	echo "You need to run this with superuser privileges. Try 'sudo $0'."
	exit 1
fi


### Installers

mplayer() {

	echo "Installing mplayer..."
	echo
	apt-get -y install mplayer

	cat >> /etc/mplayer/mplayer.conf << 'EOF'

###OpenFrame Specific
vo=x11
va=x11
ao=alsa
zoom=yes
fs=yes
EOF

	cat >> /etc/mplayer/input.conf << 'EOF'

###OpenFrame Specific
MOUSE_BTN0_DBL quit
MOUSE_BTN0-MOUSE_BTN0_DBL quit
EOF

	sync
	echo "Installation of mplayer completed."

}


xserver() {

	apt-get -y install xserver-xorg xserver-xorg-legacy x11-utils x11-xserver-utils xauth xinit xinput xterm
	of-settings xdefaults

	sync
	echo "Installation of Xserver completed."

}


### Triggers

echo "Installing ${1}..."
echo

case "${1}" in

	mplayer)
		[ ! -x /usr/bin/xinit ] && apt update && xserver
		mplayer
	;;

	xserver)
		apt update
		xserver
	;;

	*)
		echo "No installation script for '${1}'."
		exit 1
	;;

esac

exit 0
