diff --git a/installJRMC b/installJRMC index e55a2f8..6729703 100755 --- a/installJRMC +++ b/installJRMC @@ -16,11 +16,14 @@ shopt -s extglob _scriptversion="1.1.0" -_boardurl="https://yabb.jriver.com/interact/index.php/board,71.0.html" # Media Center 28, only required if buildah is unavailable _outputdir="$PWD/output" _createrepo_webroot="/srv/jriver" _exec_user="$(whoami)" +# Version control +_boardurl="https://yabb.jriver.com/interact/index.php/board,71.0.html" # Media Center 28, only required if buildah is unavailable +# _mcversion="28.0.84" # set manually + printHelp() { debug "Running: ${FUNCNAME[0]}" @@ -37,7 +40,7 @@ printHelp() { --build Build RPM from source DEB (but don't install it) --mcversion VERSION - Specify the MC version, ex. "28.0.25" (Default: scrape latest version from Interact) + Specify the MC version, ex. "28.0.25" (Default: latest version) --outputdir PATH Generate rpmbuild output in this directory (Default: $PWD/output) --restorefile RESTOREFILE @@ -191,6 +194,7 @@ ifSudo() { fi } + parseInput() { debug "Running: ${FUNCNAME[0]}" @@ -199,7 +203,7 @@ parseInput() { _install="repo" fi - if _input=$(getopt -o +i:vdhus:c: -l install:,build,outputdir:,mcversion:,restorefile:,betapass:,service-user:,service:,version,debug,help,uninstall,createrepo,createrepo-webroot:,createrepo-user:,vncpass:,display:,container: -- "$@"); then + if _input=$(getopt -o +i:vdhus:c: -l install:,build,outputdir:,mcversion:,restorefile:,betapass:,service-user:,service:,version,debug,help,uninstall,createrepo,createrepo-webroot:,createrepo-user:,vncpass:,display:,container:,tests -- "$@"); then eval set -- "$_input" while true; do case "$1" in @@ -269,6 +273,10 @@ parseInput() { --uninstall|-u) _uninstall=true ;; + --tests) + echo "Running tests, all other options are skipped" + tests + ;; --) shift break @@ -318,8 +326,6 @@ getLatestVersion() { # One or more package names # Options: # --noquery, -n: Do not query the package state (useful if installing a local RPM) -# Returns: -# Returns 1 if failed ####################################### installPackage() { debug "Running: ${FUNCNAME[0]}" "$@" @@ -390,7 +396,7 @@ installPackage() { ####################################### -# Adds the JRiver repos per distro +# Adds the JRiver repos ####################################### addRepo() { debug "Running: ${FUNCNAME[0]}" @@ -468,8 +474,6 @@ installMCFromRepo() { ####################################### # Acquire the source DEB package from JRiver's servers -# Returns: -# 0 if DEB file downloaded successfully, 1 if failed ####################################### acquireDeb() { debug "Running: ${FUNCNAME[0]}" @@ -510,8 +514,6 @@ acquireDeb() { ####################################### # Creates a SPEC file and builds the RPM from the source DEB using rpmbuild -# Returns: -# 0 if rpmbuild is successful, 1 if not ####################################### buildRPM() { debug "Running: ${FUNCNAME[0]}" @@ -626,8 +628,6 @@ buildRPM() { ####################################### # Copy the RPM to createrepo-webroot and runs createrepo as the createrepo-user -# Returns: -# 0 if createrepo is successful, 1 if not ####################################### runCreaterepo() { debug "Running: ${FUNCNAME[0]}" @@ -680,8 +680,6 @@ runCreaterepo() { ####################################### # Symlink certificates where JRiver Media Center expects them to be on Fedora/CentOS -# Returns: -# 0 if symlinking is unecessary or successful, 1 if not ####################################### symlinkCerts() { debug "Running: ${FUNCNAME[0]}" @@ -699,8 +697,6 @@ symlinkCerts() { ####################################### # Automatically restore the mjr license file if it is found next to # installJRMC or _restorefile is set -# Returns: -# 0 if license restored successfully or skipped, 1 if unsuccessful ####################################### restoreLicense() { debug "Running: ${FUNCNAME[0]}" @@ -728,8 +724,6 @@ restoreLicense() { # Opens ports using the system firewall tool # Arguments # Pre-defined service to enable -# Returns: -# 0 if ports opened sucessfully, 1 if not ####################################### openFirewall() { debug "Running: ${FUNCNAME[0]}" "$@" @@ -783,8 +777,6 @@ openFirewall() { ####################################### # Create the x11vnc password file -# Returns: -# 0 if password created sucessfully, 1 if not ####################################### setX11VNCPass() { debug "Running: ${FUNCNAME[0]}" @@ -816,8 +808,6 @@ setX11VNCPass() { ####################################### # Create the Xvnc password file -# Returns: -# 0 if password created sucessfully, 1 if not ####################################### setVNCPass() { debug "Running: ${FUNCNAME[0]}" @@ -1188,10 +1178,8 @@ uninstall() { tests() { - # To test on Mint: sudo apt-get install -y spice-vdagent ca-certificates git - : - + exit $? } @@ -1236,7 +1224,7 @@ main() { runCreaterepo fi - # Install the rpm + # Install RPM if [[ -v _install && "$_install" == "rpm" ]]; then installPackage --noquery "$_mcrpm" symlinkCerts