diff --git a/README.md b/README.md index 38350f8..015b6b9 100755 --- a/README.md +++ b/README.md @@ -23,9 +23,9 @@ $ installJRMC --help --compat Build/install MC without minimum dependency version requirements --mcversion VERSION - Build or install a specific MC version, ex. "30.0.51" + Build or install a specific MC version, ex. "30.0.51" (default: latest version) --outputdir PATH - Generate rpmbuild output in this PATH (Default: ./output) + Generate rpmbuild output in this PATH (default: ./output) --restorefile RESTOREFILE Restore file location for automatic license registration --betapass PASSWORD @@ -33,14 +33,14 @@ $ installJRMC --help --service, -s SERVICE See SERVICES section below for the list of services to deploy --service-type user|system - Starts services at boot (system) or user login (user) (Default: per-service see SERVICES) + Starts services at boot (system) or user login (user) (default: per-service, see SERVICES) --container, -c CONTAINER (TODO: Under construction) See CONTAINERS section below for a list of containers to deploy --createrepo[=suse|fedora|centos] Build rpm, copy to webroot, and run createrepo. Optionally, specify a target distro for non-native repo (ex. --createrepo=fedora, note the '=') --createrepo-webroot PATH - The webroot directory to install the repo (Default: /var/www/jriver/) + The webroot directory to install the repo (default: /var/www/jriver/) --createrepo-user USER The web server user if different from the current user --version, -v @@ -110,9 +110,9 @@ Multiple services (but not `--service-types`) can be installed at one time using Install MC from the repository and start/enable `jriver-mediacenter.service` as a user service. -* `installJRMC --install local --compat --restorefile /path/to/license.mjr --mcversion 30.0.17` +* `installJRMC --install local --compat --restorefile /path/to/license.mjr --mcversion 30.0.51` - Build and install an MC 30.0.17 comptability RPM locally and activate it using the `/path/to/license.mjr` + Build and install an MC 30.0.51 comptability RPM locally and activate it using the `/path/to/license.mjr` * `installJRMC --createrepo --createrepo-webroot /srv/jriver/repo --createrepo-user www-user` diff --git a/installJRMC b/installJRMC index fcbb025..376a284 100755 --- a/installJRMC +++ b/installJRMC @@ -22,8 +22,7 @@ declare -g OUTPUTDIR="$PWD/output" # MC30 (Buster) declare -g BOARDURL="https://yabb.jriver.com/interact/index.php/board,76.0.html" declare -g DEBIANBASE="buster" -declare -g MCVERSION_HARDCODE="30.0.51" # Hardcoded fallback - +declare -g MCVERSION_HARDCODE="${MCVERSION:-"30.0.55"}" # Hardcoded fallback declare -g CREATEREPO_WEBROOT="/var/www/jriver" declare -g USER="${SUDO_USER:-$USER}" declare -g HOME; HOME=$(getent passwd "$USER" | cut -d: -f6) @@ -51,7 +50,7 @@ printHelp() { --outputdir PATH Generate rpmbuild output in this directory (default: ./output) --restorefile RESTOREFILE - Restore file location for automatic license registration (default: skip registration) + Restore file location for automatic license registration --betapass PASSWORD Enter beta team password for access to beta builds --service, -s SERVICE @@ -124,7 +123,7 @@ execute() { parseInput() { debug "Running: ${FUNCNAME[0]}" - declare -g BUILD_SWITCH REPO_INSTALL_SWITCH COMPAT_SWITCH TEST_SWITCH + declare -g BUILD_SWITCH REPO_INSTALL_SWITCH COMPAT_SWITCH TEST_SWITCH USER_VERSION_SWITCH declare -g LOCAL_INSTALL_SWITCH CREATEREPO_SWITCH UNINSTALL_SWITCH declare -g OUTPUTDIR RESTOREFILE BETAPASS SERVICE_TYPE VNCPASS USER_DISPLAY CREATEREPO_WEBROOT declare -ga SERVICES CONTAINERS @@ -170,7 +169,9 @@ parseInput() { shift && OUTPUTDIR="$1" ;; --mcversion) - shift && declare -g MCVERSION_INPUT="$1" + shift + MCVERSION="$1" + USER_VERSION_SWITCH=1 ;; --restorefile) shift && RESTOREFILE="$1" @@ -347,16 +348,12 @@ init() { setMCVersion() { debug "Running: ${FUNCNAME[0]}" - declare -g MCVERSION MCVERSION_SOURCE MVERSION MCPKG MCRPM + declare -g MCVERSION_SOURCE MVERSION MCPKG MCRPM declare cnt # User input - if [[ -v MCVERSION_INPUT ]]; then - if ! [[ "$MCVERSION_INPUT" =~ ([0-9]+.[0-9]+.[0-9]+) ]]; then - err "Incorrect --mcversion format provided" - printHelp && exit 1 - fi - MCVERSION="$MCVERSION_INPUT" + if (( USER_VERSION_SWITCH )) && + [[ "$MCVERSION" =~ ([0-9]+.[0-9]+.[0-9]+) ]]; then MCVERSION_SOURCE="user input" # Containerized package manager elif installPackage --silent buildah && @@ -375,8 +372,8 @@ setMCVersion() { MCVERSION_SOURCE="webscrape" # Hardcoded else - MCVERSION="$MCVERSION_HARDCODE" - MCVERSION_SOURCE="hardcoded version" + declare -g MCVERSION="$MCVERSION_HARDCODE" + MCVERSION_SOURCE="hardcoded or MCVERSION env" err "Warning! Using hardcoded version number" fi