INTERACT FORUM

More => Old Versions => JRiver Media Center 24 for Linux => Topic started by: BryanC on April 16, 2018, 11:21:25 pm

Title: Set up JRiver Media Center 24 in Fedora
Post by: BryanC on April 16, 2018, 11:21:25 pm
README:
1. 64-bit only
2. This script will not point major upgrades (i.e. from v23 to v24) to the old library. It is recommended to first perform a library backup, install the new major version, and then restore the library backup.
3. You can install beta versions by placing the .deb file in the SOURCES directory and running the script as outlined below. Update (20-MAR-2019): beta version support added, simply run the script per usual and enter the beta team password when prompted.

How to install:

1. Extract install_MC_fedora.zip:
Code: [Select]
unzip install_MC_fedora.zip
2. You may need to make the script executable:
Code: [Select]
sudo chmod +x ./install_MC_fedora.sh
3. Install or update MC (the script will ask for your sudo password to install necessary packages):
Code: [Select]
./install_MC_fedora.sh 24.0.28 (where 24.0.28 is the current debian AMD64 version)

4. Install your .mjr license (change XXXXXX and the path to match your license file):
Code: [Select]
mediacenter24 /RestoreFromFile "~/Downloads/Media Center24 Master-XXXXXX.mjr"
Changelog:
1. Added test for rpm-build package (and add if necessary) (20-FEB-2017)
2. Added test for rpmfusion repos (and add if necessary) (20-FEB-2017)
3. Script is now MC version agnostic and self-contained (20-FEB-2017)
4. Changed versioning system used in rpmbuild. MC point versions are now stored as the variation number. DNF may erroneously report a downgrade the first time the new package number is installed. (20-FEB-2017)
5. Check for RPMFusion repos before installing dpkg and rpm-build (27-APR-2017)
6. Fix dpkg check (31-MAY-2017)
7. Attempted fix for rpm-build check (21-JAN-2018)
8. Add libgomp dependency (13-MAY-2018)
9. Add gtk3 dependencies (19-MAY-2018)
10. Install and symlink ca-certificates files for license registration (24-MAY-2018)
11. Fix ca-certificates symlinking (28-MAY-2018)
12. Add some silent logic for future CentOS support (CentOS 8) (29-MAY-2018)
13. Add web browsing dependencies (29-MAY-2018)
14. Complete silent CentOS logic (30-MAY-2018)
15. Use default .desktop file (30-MAY-2018)
16. Add security limits file to rpmbuild (05-JAN-2019)
17. Update security limits file naming for upcoming JRiver Media Center 25 (20-MAR-2019)
18. Add beta version support (20-MAR-2019)
19. Make rpmbuild error output noisier (20-MAR-2019)
Title: Re: Set up JRiver Media Center 24 in Fedora
Post by: astromo on May 28, 2018, 09:13:54 am
Bryan, out of interest, could this script be relatively easily modified to work for CentOS (which I think is a common relative of Fedora), instead of Fedora itself?

What would need to change?
Title: Re: Set up JRiver Media Center 24 in Fedora
Post by: BryanC on May 28, 2018, 10:13:07 am
Bryan, out of interest, could this script be relatively easily modified to work for CentOS (which I think is a common relative of Fedora), instead of Fedora itself?

What would need to change?

Could you try out the attached script on CentOS?
(I removed the script and posted a new version below). I added a host OS check to install the corresponding RHEL RPMFusion repos on CentOS. The only question left is if they actually contain the necessary libraries and versions. I'm currently on flaky internet so downloading CentOS will take ages for me to test.
Title: Re: Set up JRiver Media Center 24 in Fedora
Post by: astromo on May 28, 2018, 04:20:58 pm
I've got a CentOS 7 machine that's running a mergerfs (https://github.com/trapexit/mergerfs) storage pool on a repurposed Thecus N5550 NAS box. The standard OEM offerings didn't include something as flexible as a single pool that could deal with a single disk failure and still maintain the data integrity of the other disks. I use it to back up my primary NAS.

Anyhoo, it's because it's running CentOS that made me think, "why just Fedora?" for your script. I'll give it a try, even though I've got no need to run MC from the N5550, and report back. Might take a little while to make happen, so don't worry if I go quiet for a bit.
Title: Re: Set up JRiver Media Center 24 in Fedora
Post by: BryanC on May 28, 2018, 04:43:26 pm
It was actually a timely request because I've been mulling setting up MC and my media collection in a storage VPS running CentOS. I've been traveling a lot lately and thus I usually don't have control over the hardware NAT (unless the host has been so inept kind enough to keep the default password), limiting my ability to access my collection on-the-go via Gizmo or my library client.

I'll try to spin one up when I get a chance and test the repos.
Title: Re: Set up JRiver Media Center 24 in Fedora
Post by: BryanC on May 28, 2018, 05:59:25 pm
Here is an updated script. I tested it on CentOS 7 and there is a pretty big issue in that the c++ libraries are too old to run MC. I will see if I can find a workaround.

Edit: I tried symlinking a newer version of libstdc++.so as a long shot fix and no go. There are three options here:

1. Container
2. Wait for CentOS 8
3. JRiver statically links libstdc++

I checked and statically linking libstdc++ does not invoke the GPL.
Title: Re: Set up JRiver Media Center 24 in Fedora
Post by: astromo on May 29, 2018, 03:28:38 am
Here is an updated script. I tested it on CentOS 7 and there is a pretty big issue in that the c++ libraries are too old to run MC. I will see if I can find a workaround.

Edit: I tried symlinking a newer version of libstdc++.so as a long shot fix and no go. There are three options here:

1. Container
2. Wait for CentOS 8
3. JRiver statically links libstdc++

I checked and statically linking libstdc++ does not invoke the GPL.

Here's the kernel of the OS that my unit is running:
Quote
$ uname -r
3.10.0-693.21.1.el7.centos.plus.x86_64
I suspect you're running plain vanilla CentOS, whereas I need to run CentOS Plus for the NAS monitoring software. I'm guessing that might be the key difference.

See the attachment for the installation log (sorry it's incomplete - couldn't be helped - a lot of dependencies needed to be installed). Looks like the script worked fine. Here's the final run down to prove the point:
Quote
Running transaction
  Installing : lame-libs-3.100-1.el7.x86_64                                 1/5
  Installing : lame-3.100-1.el7.x86_64                                      2/5
  Installing : 1:vorbis-tools-1.4.0-12.el7.x86_64                           3/5
  Installing : librtmp-2.4-7.20160224.gitfa8646d.el7.x86_64                 4/5
  Installing : MediaCenter-24-28.el7.x86_64                                 5/5
  Verifying  : MediaCenter-24-28.el7.x86_64                                 1/5
  Verifying  : librtmp-2.4-7.20160224.gitfa8646d.el7.x86_64                 2/5
  Verifying  : 1:vorbis-tools-1.4.0-12.el7.x86_64                           3/5
  Verifying  : lame-3.100-1.el7.x86_64                                      4/5
  Verifying  : lame-libs-3.100-1.el7.x86_64                                 5/5

Installed:
  MediaCenter.x86_64 0:24-28.el7

Dependency Installed:
  lame.x86_64 0:3.100-1.el7
  lame-libs.x86_64 0:3.100-1.el7
  librtmp.x86_64 0:2.4-7.20160224.gitfa8646d.el7
  vorbis-tools.x86_64 1:1.4.0-12.el7

Complete!
JRiver Media Center 24.0.28 installed successfully!

Nice work Bryan. I think you nailed it but I probably won't be able to do a full test because my CentOS box is running headless.
Title: Re: Set up JRiver Media Center 24 in Fedora
Post by: BryanC on May 29, 2018, 07:12:00 am
It will install fine, but when you go to run mediacenter24 it won't run because the libstdc++.so library ABI is too old. CentOS ships with GCC 4.8 and MC requires 4.9 at a minimum. If I feel motivated this week I may dockerize it, or wait on Bob's response in the thread I started. BTW, you can remove devtoolset-6 and the centos-release-scl repo, I was just using those to test the viability of dynamically linking a newer library.
Title: Re: Set up JRiver Media Center 24 in Fedora
Post by: mattkhan on May 29, 2018, 07:24:40 am
There is a 24 docker already - https://hub.docker.com/r/jatzoo/jrivermc24/
Title: Re: Set up JRiver Media Center 24 in Fedora
Post by: guycarmin on November 14, 2018, 02:05:23 am
Hey - What about adding a fedora repository as you have for ubuntu?
 you said to install the 24.0.48 version while there are newer versions (I'm using 24.0.55 that I manage to wget from ubuntu repo's)...

Title: Re: Set up JRiver Media Center 24 in Fedora
Post by: BryanC on November 14, 2018, 12:41:45 pm
While my dev machines all run Fedora or CentOS, my cloud VPS's (that could be used to host a fedora repo) are all running Ubuntu. Maybe if my providers update their OS options I would be able to do this in the future.

Edit: Upon further analysis it looks like I can run createrepo on Ubuntu. I'll look into it when I get a chance.
Title: Re: Set up JRiver Media Center 24 in Fedora
Post by: Awesome Donkey on November 14, 2018, 01:10:08 pm
Hey - What about adding a fedora repository as you have for ubuntu?

There isn't a Ubuntu repo. There's a Debian repo, which is the only Linux distro JRiver Media Center for Linux officially supports. But it just happens that the Debian repo can also be used in Debian derivatives like Ubuntu and Linux Mint (since they all use apt) but they're not officially supported.

Since JRiver only officially supports Debian, them adding a Fedora repo or providing RPM packages is doubtful. But that's why this topic is here. ;)
Title: Re: Set up JRiver Media Center 24 in Fedora
Post by: digimuse on November 27, 2018, 02:57:42 pm
I got an error when trying to upgrade to MediaCenter-24.0.64-3-amd64.deb

The content of my SOURCES directory:
Code: [Select]
-rw-r--r--. 1 id id 37746638 May 14  2018 MediaCenter-24.0.28-amd64.deb
-rw-r--r--. 1 id id 38467378 Aug 10 12:37 MediaCenter-24.0.46-amd64.deb
-rw-r--r--. 1 id id 38638716 Nov  2 12:59 MediaCenter-24.0.61-amd64.deb
-rw-r--r--. 1 id id 38687690 Nov 20 14:07 MediaCenter-24.0.64-3-amd64.deb

Update failure:
Code: [Select]
./install_MC_fedora.sh 24.0.64-3
Converting DEB to RPM...
Conversion Failed!

But installing the previous version MediaCenter-24.0.61-amd64.deb still works:
Code: [Select]
./install_MC_fedora.sh 24.0.61
Converting DEB to RPM...
Attempting to install RPM...
Last metadata expiration check: 0:18:49 ago on Tue 27 Nov 2018 12:23:24 PM PST.
Package MediaCenter-24-61.fc28.x86_64 is already installed, skipping.
Dependencies resolved.
Nothing to do.
Complete!
JRiver Media Center 24.0.61 installed successfully!

Could there be a problem in the scripts for a hypen in the argument for the MC version, e.g., "64-3"?
Title: Re: Set up JRiver Media Center 24 in Fedora
Post by: Awesome Donkey on November 27, 2018, 03:04:44 pm
Download the MediaCenter-24.0.64-3-amd64.deb file and put in the directory the script usually downloads the .deb files. Then rename it and remove the -3 from the file name. Then use ./install_MC_fedora.sh 24.0.64 and see if it'll build it - it should see that renamed MediaCenter-24.0.64-amd64.deb in the directory and use it, instead of re-downloading it then proceed as normal.

I think this was something I noticed a couple times when I was testing Fedora and there was hyphen+numbered (or hotfix/re-release) builds like that. Renaming it and proceeding like normal worked if I recall.
Title: Re: Set up JRiver Media Center 24 in Fedora
Post by: digimuse on November 27, 2018, 04:15:49 pm
I followed your suggestion. It worked - thanks!

I renamed my previously downloaded version 24.0.64-3 to 24.0.64, and then ran the installer:

Quote
# mv SOURCES/MediaCenter-24.0.64-3-amd64.deb SOURCES/MediaCenter-24.0.64-amd64.deb
# ./install_MC_fedora.sh 24.0.64
....
JRiver Media Center 24.0.64 installed successfully!

In MC Help -> About Media Center shows: "Media Center 24.0.64 (64-bit)". I presume this is MediaCenter-24.0.64-3.
Title: Re: Set up JRiver Media Center 24 in Fedora
Post by: BryanC on January 05, 2019, 10:42:26 am
Just a note that MC versions >24.0.72 will need to use the updated script I just added to the OP.
Title: Re: Set up JRiver Media Center 24 in Fedora
Post by: max096 on February 24, 2019, 02:13:17 pm
I just tried to do this on my notebook. It didn't work and I tracked down the reason that dpkg didn't install (not sure why yet). Since I don't know what liblzma.so.5(XZ_5.1.2alpha)(64bit) should be.

Code: [Select]
Last metadata expiration check: 0:29:49 ago on Sun 24 Feb 2019 08:29:08 PM CET.
Package dpkg-1.18.25-5.fc29.x86_64 is already installed.
Dependencies resolved.

 Problem: cannot install the best candidate for the job
  - nothing provides liblzma.so.5(XZ_5.1.2alpha)(64bit) needed by dpkg-1.18.25-6.el7.x86_64
  - nothing provides liblzma.so.5(XZ_5.2.2)(64bit) needed by dpkg-1.18.25-6.el7.x86_64
==============================================================================================================
 Package                Architecture             Version                         Repository              Size
==============================================================================================================
Skipping packages with broken dependencies:
 dpkg                   x86_64                   1.18.25-6.el7                   epel                   1.3 M

Transaction Summary
==============================================================================================================
Skip  1 Package

Nothing to do.
Complete!

Since I don't feel like fixing it right now I just compiled it on my desktop and copied the rpm over.

Installing the rpm I made on my desktop with "dnf install ./MediaCenter-24-74.fc29.x86_64.rpm" worked perfectly fine. I actually wanted to upload it here for others to use when the conversion does not work out. But unfortunately the file is too large to upload here.
Title: Re: Set up JRiver Media Center 24 in Fedora
Post by: BryanC on February 24, 2019, 05:30:16 pm
I just tried to do this on my notebook. It didn't work and I tracked down the reason that dpkg didn't install (not sure why yet). Since I don't know what liblzma.so.5(XZ_5.1.2alpha)(64bit) should be.

Code: [Select]
Last metadata expiration check: 0:29:49 ago on Sun 24 Feb 2019 08:29:08 PM CET.
Package dpkg-1.18.25-5.fc29.x86_64 is already installed.
Dependencies resolved.

 Problem: cannot install the best candidate for the job
  - nothing provides liblzma.so.5(XZ_5.1.2alpha)(64bit) needed by dpkg-1.18.25-6.el7.x86_64
  - nothing provides liblzma.so.5(XZ_5.2.2)(64bit) needed by dpkg-1.18.25-6.el7.x86_64
==============================================================================================================
 Package                Architecture             Version                         Repository              Size
==============================================================================================================
Skipping packages with broken dependencies:
 dpkg                   x86_64                   1.18.25-6.el7                   epel                   1.3 M

Transaction Summary
==============================================================================================================
Skip  1 Package

Nothing to do.
Complete!

Since I don't feel like fixing it right now I just compiled it on my desktop and copied the rpm over.

Installing the rpm I made on my desktop with "dnf install ./MediaCenter-24-74.fc29.x86_64.rpm" worked perfectly fine. I actually wanted to upload it here for others to use when the conversion does not work out. But unfortunately the file is too large to upload here.

It looks like DNF is trying to reinstall dkpg from the EPEL with broken dependencies. I would clear your DNF cache and disable the EPEL repo before trying to run the script.
Title: Re: Set up JRiver Media Center 24 in Fedora
Post by: Bongo on March 09, 2019, 10:11:55 am
Hi,

I've just downloaded the script (version post 1) and followed the instructions.
The script has started well but i got an error after the downloading of source DEB, at the conversion step
"Conversion DEB to RPM...Conversion failed!"

I am on FEDORA 29 server.

Would you have any idea to solve this ?

Thank you
Title: Re: Set up JRiver Media Center 24 in Fedora
Post by: Bongo on March 09, 2019, 10:50:55 am
Hi,

I've just downloaded the script (version post 1) and followed the instructions.
The script has started well but i got an error after the downloading of source DEB, at the conversion step
"Conversion DEB to RPM...Conversion failed!"

I am on FEDORA 29 server.

Would you have any idea to solve this ?

Thank you

My bad,
I have launched the install for 24 0 72 and it worked.
Title: Re: Set up JRiver Media Center 24 in Fedora
Post by: BryanC on March 20, 2019, 11:15:54 am
Just a heads up that the latest version of the script now supports beta versions and fixes compatibility with the upcoming MC 25 release.