Compare commits
7 Commits
eb861f6d8f
...
aa58ddfb64
| Author | SHA1 | Date | |
|---|---|---|---|
| aa58ddfb64 | |||
| a5bb88d8ad | |||
| 83dea7a091 | |||
| 2440dba5db | |||
| 1cb78fe211 | |||
| 026b59acc7 | |||
| 2efeb624f7 |
@@ -23,9 +23,11 @@ $ installJRMC --help
|
||||
--compat
|
||||
Build/install MC without minimum dependency version requirements
|
||||
--mcversion VERSION
|
||||
Build or install a specific MC version, ex. "32.0.6" (default: latest version)
|
||||
Build or install a specific MC version, ex. "32.0.45" (default: latest version)
|
||||
--arch ARCH
|
||||
Specify the MC architecture, ex. "amd64", "arm64", etc (default: host architecture)
|
||||
--base DEBIAN_BASE
|
||||
Specify the MC debian base, ex. "bullseye", "bookworm", "noble", etc (default: latest official)
|
||||
--outputdir PATH
|
||||
Generate rpmbuild output in this PATH (default: ./output)
|
||||
--restorefile RESTOREFILE
|
||||
@@ -112,9 +114,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 32.0.6`
|
||||
* `installJRMC --install local --compat --restorefile /path/to/license.mjr --mcversion 32.0.45`
|
||||
|
||||
Build and install an MC 32.0.6 comptability RPM locally and activate it using the `/path/to/license.mjr`
|
||||
Build and install an MC 32.0.45 comptability RPM locally and activate it using the `/path/to/license.mjr`
|
||||
|
||||
* `installJRMC --createrepo --createrepo-webroot /srv/jriver/repo --createrepo-user www-user`
|
||||
|
||||
|
||||
30
installJRMC
30
installJRMC
@@ -2,7 +2,7 @@
|
||||
# Install JRiver Media Center and associated services
|
||||
# See installJRMC --help or printHelp() below
|
||||
#
|
||||
# Copyright (c) 2021-2023 Bryan C. Roessler
|
||||
# Copyright (c) 2021-2024 Bryan C. Roessler
|
||||
# This software is released under the Apache License.
|
||||
# https://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
@@ -16,10 +16,10 @@
|
||||
|
||||
shopt -s extglob
|
||||
|
||||
declare -g SCRIPTVERSION="1.0-dev"
|
||||
declare -g SCRIPTVERSION="1.0.2"
|
||||
declare -g BOARDURL="https://yabb.jriver.com/interact/index.php/board,83.0.html" # MC32
|
||||
declare -g DEBIANBASE="bullseye"
|
||||
declare -g MC_VERSION_HARDCODE="32.0.6" # Do find all replace
|
||||
declare -g MC_VERSION_HARDCODE="32.0.45" # Do find all replace
|
||||
|
||||
printHelp() {
|
||||
debug "Running: ${FUNCNAME[0]}"
|
||||
@@ -43,6 +43,8 @@ printHelp() {
|
||||
Specify the MC version, ex. "$MC_VERSION_HARDCODE" (default: latest version)
|
||||
--arch VERSION
|
||||
Specify the MC architecture, ex. "amd64", "arm64", etc (default: host architecture)
|
||||
--base DEBIAN_BASE
|
||||
Specify the MC debian base, ex. "bullseye", "bookworm", "noble", etc (default: latest official)
|
||||
--outputdir PATH
|
||||
Generate rpmbuild output in this directory (default: ./output)
|
||||
--restorefile RESTOREFILE
|
||||
@@ -169,11 +171,15 @@ init() {
|
||||
RPM_MGR="yum"
|
||||
fi
|
||||
;;
|
||||
rhel)
|
||||
rhel|almalinux)
|
||||
ID="centos"
|
||||
;;
|
||||
linuxmint|neon|zorin|*ubuntu*)
|
||||
ID="ubuntu"
|
||||
if [[ ${VERSION_ID%.*} -ge 24 ]]; then
|
||||
debug "Switching to noble repo for *buntu 24"
|
||||
declare -g DEBIANBASE='noble'
|
||||
fi
|
||||
;;
|
||||
*suse*)
|
||||
ID="suse"
|
||||
@@ -279,11 +285,12 @@ parseInput() {
|
||||
LOCAL_INSTALL_SWITCH=1
|
||||
fi
|
||||
|
||||
long_opts="install:,build::,outputdir:,mcversion:,restorefile:,betapass:,"
|
||||
long_opts="install:,build::,outputdir:,mcversion:,arch:,base:,compat,"
|
||||
long_opts+="restorefile:,betapass:,"
|
||||
long_opts+="service-type:,service:,services:,"
|
||||
long_opts+="version,debug,verbose,help,uninstall,tests,"
|
||||
long_opts+="version,debug,verbose,help,uninstall,tests,yes,auto,"
|
||||
long_opts+="createrepo::,createrepo-webroot:,createrepo-user:,"
|
||||
long_opts+="vncpass:,display:,container:,compat,arch:,yes,auto"
|
||||
long_opts+="vncpass:,display:,container:"
|
||||
short_opts="+i:vb::dhus:c:"
|
||||
|
||||
# Reset DEBUG and catch with getopt
|
||||
@@ -320,6 +327,9 @@ parseInput() {
|
||||
--arch)
|
||||
shift && USER_ARCH="$1"
|
||||
;;
|
||||
--base)
|
||||
shift && declare -g DEBIANBASE="$1"
|
||||
;;
|
||||
--restorefile)
|
||||
shift && RESTOREFILE="$1"
|
||||
;;
|
||||
@@ -772,8 +782,8 @@ buildRPM() {
|
||||
requires=("${requires[@]/libnspr4/mozilla-nspr}")
|
||||
requires=("${requires[@]/libfribidi0/fribidi}")
|
||||
requires=("${requires[@]/libfontconfig1/fontconfig}")
|
||||
requires=("${requires[@]/libfreetype6*/freetype}") # Remove minimum version specifier
|
||||
requires=("${requires[@]/libharfbuzz0b/libharfbuzz0}")
|
||||
requires=("${requires[@]/libwebkit2gtk*/libwebkit2gtk-4_0-37}")
|
||||
for i in "${!requires[@]}"; do
|
||||
[[ ${requires[$i]} == "mesa-vulkan-drivers" ]] && unset -v 'requires[i]'
|
||||
done
|
||||
@@ -814,7 +824,7 @@ buildRPM() {
|
||||
|
||||
Provides: mediacenter$MC_MVERSION
|
||||
|
||||
License: Copyright 1998-2023, JRiver, Inc. All rights reserved. Protected by U.S. patents #7076468 and #7062468
|
||||
License: Copyright 1998-2024, JRiver, Inc. All rights reserved. Protected by U.S. patents #7076468 and #7062468
|
||||
URL: http://www.jriver.com/
|
||||
|
||||
%define __provides_exclude_from ^%{_libdir}/jriver/.*/.*\\.so.*$
|
||||
@@ -835,7 +845,7 @@ buildRPM() {
|
||||
|
||||
%files
|
||||
%{_bindir}/mediacenter$MC_MVERSION
|
||||
%{_bindir}/mc$MC_MVERSION
|
||||
%{_bindir}/mc$MC_MVERSION
|
||||
%{_libdir}/jriver
|
||||
%{_datadir}
|
||||
%exclude %{_datadir}/applications/media_center_packageinstaller_$MC_MVERSION.desktop
|
||||
|
||||
Reference in New Issue
Block a user