Compare commits
6 Commits
f07dfa9ece
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
| f2aeef29f0 | |||
| ef6fb474b6 | |||
| 73eaeb24b4 | |||
| 32e35bfe3a | |||
| d69d33d51d | |||
| d7d5af3a0b |
@@ -31,7 +31,7 @@ $ installJRMC --help
|
|||||||
--compat
|
--compat
|
||||||
Build/install MC without minimum dependency version requirements.
|
Build/install MC without minimum dependency version requirements.
|
||||||
--mcversion VERSION
|
--mcversion VERSION
|
||||||
Specify the MC version, ex. "33", "35.0.39", or "35.0.39-1" (default: latest).
|
Specify the MC version, ex. "33", "35.0.43", or "35.0.43-1" (default: latest).
|
||||||
--arch ARCH
|
--arch ARCH
|
||||||
Specify the target MC architecture, ex. "amd64", "arm64", etc (default: host architecture).
|
Specify the target MC architecture, ex. "amd64", "arm64", etc (default: host architecture).
|
||||||
--mcrepo REPO
|
--mcrepo REPO
|
||||||
@@ -126,8 +126,8 @@ Install the latest version of MC33 from the best available repository with debug
|
|||||||
Install a more widely-compatible version of the latest MC version.
|
Install a more widely-compatible version of the latest MC version.
|
||||||
[code]installJRMC --install repo --service jriver-mediacenter --service-type user[/code]
|
[code]installJRMC --install repo --service jriver-mediacenter --service-type user[/code]
|
||||||
Install MC from the repository and start/enable jriver-mediacenter.service as a user service.
|
Install MC from the repository and start/enable jriver-mediacenter.service as a user service.
|
||||||
[code]installJRMC --install local --compat --restorefile /path/to/license.mjr --mcversion 35.0.39[/code]
|
[code]installJRMC --install local --compat --restorefile /path/to/license.mjr --mcversion 35.0.43[/code]
|
||||||
Build and install an MC 35.0.39 comptability RPM locally and activate it using the [tt]/path/to/license.mjr[/tt].
|
Build and install an MC 35.0.43 comptability RPM locally and activate it using the [tt]/path/to/license.mjr[/tt].
|
||||||
[code]installJRMC --createrepo --createrepo-webroot /srv/jriver/repo --createrepo-user www-user[/code]
|
[code]installJRMC --createrepo --createrepo-webroot /srv/jriver/repo --createrepo-user www-user[/code]
|
||||||
Build an RPM locally for the current distro, move it to the webroot, and run createrepo as www-user.
|
Build an RPM locally for the current distro, move it to the webroot, and run createrepo as www-user.
|
||||||
[code]installJRMC --service jriver-createrepo --createrepo-webroot /srv/jriver/repo --createrepo-user www-user[/code]
|
[code]installJRMC --service jriver-createrepo --createrepo-webroot /srv/jriver/repo --createrepo-user www-user[/code]
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ $ installJRMC --help
|
|||||||
--compat
|
--compat
|
||||||
Build/install MC without minimum dependency version requirements.
|
Build/install MC without minimum dependency version requirements.
|
||||||
--mcversion VERSION
|
--mcversion VERSION
|
||||||
Build or install a specific MC version, ex. "35.0.39" or "33" (default: latest).
|
Build or install a specific MC version, ex. "35.0.43" or "33" (default: latest).
|
||||||
--mcrepo REPO
|
--mcrepo REPO
|
||||||
Specify the MC repository, ex. "bullseye", "bookworm", "noble", etc (default: latest official).
|
Specify the MC repository, ex. "bullseye", "bookworm", "noble", etc (default: latest official).
|
||||||
--arch ARCH
|
--arch ARCH
|
||||||
@@ -130,9 +130,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.
|
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 35.0.39`
|
* `installJRMC --install local --compat --restorefile /path/to/license.mjr --mcversion 35.0.43`
|
||||||
|
|
||||||
Build and install an MC 35.0.39 compatibility RPM locally and activate it using the `/path/to/license.mjr`.
|
Build and install an MC 35.0.43 compatibility RPM locally and activate it using the `/path/to/license.mjr`.
|
||||||
|
|
||||||
* `installJRMC --createrepo --createrepo-webroot /srv/jriver/repo --createrepo-user www-user`
|
* `installJRMC --createrepo --createrepo-webroot /srv/jriver/repo --createrepo-user www-user`
|
||||||
|
|
||||||
|
|||||||
26
installJRMC
26
installJRMC
@@ -21,8 +21,8 @@
|
|||||||
# shellcheck disable=SC2329
|
# shellcheck disable=SC2329
|
||||||
shopt -s extglob
|
shopt -s extglob
|
||||||
|
|
||||||
declare -g SCRIPT_VERSION="1.35.10"
|
declare -g SCRIPT_VERSION="1.35.12"
|
||||||
declare -g MC_VERSION_HARDCODE="35.0.39" # do find all replace
|
declare -g MC_VERSION_HARDCODE="35.0.43" # do find all replace
|
||||||
declare -g MC_REPO_HARDCODE="bookworm" # should match the MC_VERSION_HARDCODE
|
declare -g MC_REPO_HARDCODE="bookworm" # should match the MC_VERSION_HARDCODE
|
||||||
declare -g BOARD_ID="92.0" # MC35 board ID for fallback latest version detection
|
declare -g BOARD_ID="92.0" # MC35 board ID for fallback latest version detection
|
||||||
declare -gi SELF_UPDATE_SWITCH=1 # 0 to disable installJRMC self-update
|
declare -gi SELF_UPDATE_SWITCH=1 # 0 to disable installJRMC self-update
|
||||||
@@ -779,6 +779,8 @@ translate_packages() {
|
|||||||
requires_arr=("${requires_arr[@]/libwebkit2gtk-4.0*/webkit2gtk4.0}")
|
requires_arr=("${requires_arr[@]/libwebkit2gtk-4.0*/webkit2gtk4.0}")
|
||||||
requires_arr=("${requires_arr[@]/libwebkit2gtk-4.1*/webkit2gtk4.1}")
|
requires_arr=("${requires_arr[@]/libwebkit2gtk-4.1*/webkit2gtk4.1}")
|
||||||
requires_arr=("${requires_arr[@]/libsdbus-c++1/sdbus-cpp}")
|
requires_arr=("${requires_arr[@]/libsdbus-c++1/sdbus-cpp}")
|
||||||
|
requires_arr=("${requires_arr[@]/libdbus-1-3/dbus-libs}")
|
||||||
|
requires_arr=("${requires_arr[@]/libxss1/libXScrnSaver}")
|
||||||
recommends_arr=("${recommends_arr[@]/fdkaac/fdk-aac-free}")
|
recommends_arr=("${recommends_arr[@]/fdkaac/fdk-aac-free}")
|
||||||
recommends_arr+=("mesa-va-drivers-freeworld|mesa-va-drivers")
|
recommends_arr+=("mesa-va-drivers-freeworld|mesa-va-drivers")
|
||||||
recommends_arr+=("mesa-vulkan-drivers-freeworld|mesa-vulkan-drivers")
|
recommends_arr+=("mesa-vulkan-drivers-freeworld|mesa-vulkan-drivers")
|
||||||
@@ -804,6 +806,7 @@ translate_packages() {
|
|||||||
requires_arr=("${requires_arr[@]/libharfbuzz0b/libharfbuzz0}")
|
requires_arr=("${requires_arr[@]/libharfbuzz0b/libharfbuzz0}")
|
||||||
requires_arr=("${requires_arr[@]/libwebkit2gtk-4.0*/libwebkit2gtk-4_0-37}")
|
requires_arr=("${requires_arr[@]/libwebkit2gtk-4.0*/libwebkit2gtk-4_0-37}")
|
||||||
requires_arr=("${requires_arr[@]/libwebkit2gtk-4.1*/libwebkit2gtk-4_1-0}")
|
requires_arr=("${requires_arr[@]/libwebkit2gtk-4.1*/libwebkit2gtk-4_1-0}")
|
||||||
|
requires_arr=("${requires_arr[@]/libxss1/libXss1}")
|
||||||
for i in "${!requires_arr[@]}"; do
|
for i in "${!requires_arr[@]}"; do
|
||||||
[[ ${requires_arr[$i]} == "mesa-vulkan-drivers" ]] && unset -v 'requires_arr[i]'
|
[[ ${requires_arr[$i]} == "mesa-vulkan-drivers" ]] && unset -v 'requires_arr[i]'
|
||||||
[[ ${requires_arr[$i]} == "libsdbus-c++1" ]] && unset -v 'requires_arr[i]'
|
[[ ${requires_arr[$i]} == "libsdbus-c++1" ]] && unset -v 'requires_arr[i]'
|
||||||
@@ -845,6 +848,8 @@ translate_packages() {
|
|||||||
requires_arr=("${requires_arr[@]/mesa-vulkan-drivers/lib64dri-drivers}")
|
requires_arr=("${requires_arr[@]/mesa-vulkan-drivers/lib64dri-drivers}")
|
||||||
requires_arr=("${requires_arr[@]/vulkan-icd/vulkan-loader}")
|
requires_arr=("${requires_arr[@]/vulkan-icd/vulkan-loader}")
|
||||||
requires_arr=("${requires_arr[@]/libwebkit2gtk-4.1-0/lib64webkit2gtk4.1}")
|
requires_arr=("${requires_arr[@]/libwebkit2gtk-4.1-0/lib64webkit2gtk4.1}")
|
||||||
|
requires_arr=("${requires_arr[@]/libdbus-1-3/libdbus-1_3}")
|
||||||
|
requires_arr=("${requires_arr[@]/libxss1/libxscrnsaver1}")
|
||||||
recommends_arr=("${recommends_arr[@]/musepack-tools/mppenc}")
|
recommends_arr=("${recommends_arr[@]/musepack-tools/mppenc}")
|
||||||
for i in "${!recommends_arr[@]}"; do
|
for i in "${!recommends_arr[@]}"; do
|
||||||
[[ ${recommends_arr[$i]} == "fdkaac" ]] && unset -v 'recommends_arr[i]'
|
[[ ${recommends_arr[$i]} == "fdkaac" ]] && unset -v 'recommends_arr[i]'
|
||||||
@@ -1159,7 +1164,7 @@ link_ssl_certs() {
|
|||||||
for f in "${source_certs[@]}"; do
|
for f in "${source_certs[@]}"; do
|
||||||
if [[ -f $f ]]; then
|
if [[ -f $f ]]; then
|
||||||
if execute sudo ln -fs "$f" "$mc_cert_link"; then
|
if execute sudo ln -fs "$f" "$mc_cert_link"; then
|
||||||
debug "Symlinked $mc_cert_link to $f"
|
echo "Symlinked $mc_cert_link to $f"
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
@@ -1207,6 +1212,7 @@ restore_license() {
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
return 1
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1792,7 +1798,8 @@ main() {
|
|||||||
EOF
|
EOF
|
||||||
;;
|
;;
|
||||||
debian|ubuntu)
|
debian|ubuntu)
|
||||||
local keyfile="/usr/share/keyrings/jriver-com-archive-keyring.gpg"
|
local keyurl="https://dist.jriver.com/mediacenter@jriver.com.gpg.complete"
|
||||||
|
local keyfile="/usr/share/keyrings/jriver-com-archive-keyring-complete.gpg"
|
||||||
local channel="latest"
|
local channel="latest"
|
||||||
[[ -n $BETAPASS ]] && channel="beta"
|
[[ -n $BETAPASS ]] && channel="beta"
|
||||||
|
|
||||||
@@ -1803,7 +1810,7 @@ main() {
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Installing JRiver Media Center GPG key"
|
echo "Installing JRiver Media Center GPG key"
|
||||||
download "https://dist.jriver.com/mediacenter@jriver.com.gpg.key" "-" |
|
download "$keyurl" "-" |
|
||||||
gpg --dearmor | sudo tee "$keyfile" &>/dev/null
|
gpg --dearmor | sudo tee "$keyfile" &>/dev/null
|
||||||
|
|
||||||
echo "Installing repository file: $repo_file"
|
echo "Installing repository file: $repo_file"
|
||||||
@@ -1892,6 +1899,13 @@ main() {
|
|||||||
unknown) install_mc_generic ;;
|
unknown) install_mc_generic ;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
# shellcheck disable=SC2181
|
||||||
|
if [[ $? -eq 0 ]]; then
|
||||||
|
echo "Successfully installed JRiver Media Center"
|
||||||
|
else
|
||||||
|
err "MC package install failed!"
|
||||||
|
fi
|
||||||
|
|
||||||
link_ssl_certs
|
link_ssl_certs
|
||||||
restore_license
|
restore_license
|
||||||
open_firewall "jriver-mediacenter" "52100-52200/tcp" "1900/udp"
|
open_firewall "jriver-mediacenter" "52100-52200/tcp" "1900/udp"
|
||||||
@@ -1994,7 +2008,7 @@ create_mc_apt_container() {
|
|||||||
CNT=$(buildah from --quiet alpine:edge) &&
|
CNT=$(buildah from --quiet alpine:edge) &&
|
||||||
buildah run --env MC_REPO="$repo" --env MC_ARCH="$MC_ARCH" --env CHANNEL="$channel" "$CNT" -- sh -c '
|
buildah run --env MC_REPO="$repo" --env MC_ARCH="$MC_ARCH" --env CHANNEL="$channel" "$CNT" -- sh -c '
|
||||||
apk add --quiet --no-progress --no-cache apt curl gnupg
|
apk add --quiet --no-progress --no-cache apt curl gnupg
|
||||||
curl -fsSL https://dist.jriver.com/mediacenter@jriver.com.gpg.key | gpg --quiet --dearmor -o /usr/share/keyrings/jriver-com-archive-keyring.gpg
|
curl -fsSL https://dist.jriver.com/mediacenter@jriver.com.gpg.complete | gpg --quiet --dearmor -o /usr/share/keyrings/jriver-com-archive-keyring.gpg
|
||||||
cat <<-EOF > /etc/apt/sources.list.d/jriver.sources
|
cat <<-EOF > /etc/apt/sources.list.d/jriver.sources
|
||||||
Types: deb
|
Types: deb
|
||||||
URIs: https://dist.jriver.com/$CHANNEL/mediacenter/
|
URIs: https://dist.jriver.com/$CHANNEL/mediacenter/
|
||||||
|
|||||||
Reference in New Issue
Block a user