INTERACT FORUM

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1] 2   Go Down

Author Topic: installJRMC - MC installer for Linux  (Read 17661 times)

BryanC

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 2677
installJRMC - MC installer for Linux
« on: June 21, 2021, 09:00:59 am »

installJRMC

This program will install JRiver Media Center and associated services on most major Linux distros.

You can always find the latest version of installJRMC, changelog, and documentation in my repository.

Installing

Download and unzip installJRMC from the attachment below or curl the latest stable version directly from my repo:

Code: [Select]
curl -O https://git.bryanroessler.com/bryan/installJRMC/raw/master/installJRMC && chmod +x ./installJRMC
Executing

Code: [Select]
installJRMC [--option [ARGUMENT]]
Running `installJRMC` without any options will install the latest version of JRiver Media Center from the official JRiver repository (Ubuntu/Debian) or my unofficial repository (Fedora/CentOS) using the system package manager (--install repo). If any other option is specified, then the install method (i.e. --install repo or --install local) will need to be explicitly specified. This makes it possible to install services and containers independent of MC.

Note: installJRMC does not perform library migrations. Before moving to a new major version (i.e. v27->v28), you should first perform a library backup, install the new major version, and then restore the library.

Options

Code: [Select]
$ installJRMC --help
--install, -i repo|local
    repo: Install MC from repository, future updates will be handled by the system package manager
    local: Build and install MC package locally
--build[=suse|fedora|centos]
    Build RPM from source DEB but do not install
    Optionally, specify a target distro for cross-building (ex. --build=suse, note the '=')
--compat
    Build/install MC without minimum library specifiers
--mcversion VERSION
    Build or install a specific MC version, ex. "28.0.100"
--outputdir PATH
    Generate rpmbuild output in this PATH (Default: ./output)
--restorefile RESTOREFILE
    Restore file location for automatic license registration
--betapass PASSWORD
    Enter beta team password for access to beta builds
--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: system)
--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/)
  --createrepo-user USER
      The web server user if different from the current user
--version, -v
    Print this script version and exit
--debug, -d
    Print debug output
--help, -h
    Print help dialog and exit
--uninstall, -u
    Uninstall JRiver MC, cleanup service files, and remove firewall rules (does not remove library or media files)

Services

Code: [Select]
jriver-mediaserver
    Enable and start a mediaserver systemd service (requires an existing X server)
jriver-mediacenter
    Enable and start a mediacenter systemd service (requires an existing X server)
jriver-x11vnc
    Enable and start x11vnc for the local desktop (requires an existing X server, does NOT support Wayland)
  --vncpass and --display are also valid options (see below)
jriver-xvnc
    Enable and start a new Xvnc session running JRiver Media Center
  --vncpass PASSWORD
    Set vnc password for x11vnc/Xvnc access. If no password is set, the script will either use existing password stored in ~/.vnc/jrmc_passwd or use no password
  --display DISPLAY
    Manually specify display to use for x11vnc/Xvnc (ex. ':1')
jriver-createrepo
    Install hourly service to build latest MC RPM and run createrepo
    By default installs as root service to handle www permissions more gracefully

MC helper services are installed as system-level services (--service-type=system) by default and are manipulable as admin:
Code: [Select]
sudo systemctl stop jriver-servicename@username.service
It is also possible to create user-level services (--service-type=user) that can be manipulated by the current unprivileged user:
Code: [Select]
systemctl --user stop jriver-mediacenter
Multiple services (but not --service-types) can be installed at one time using multiple --service blocks:
Code: [Select]
installJRMC --install repo --service jriver-x11vnc --service jriver-mediacenter
jriver-x11vnc versus jriver-xvnc

jriver-x11vnc shares your existing X display via VNC and can be combined with additional services to start Media Center or Media Server. Conversely, jriver-xvnc creates a new Xvnc display and starts a JRiver Media Center service in the foreground of the new VNC display.

Note: If jriver-xvnc finds an existing display it will attempt to increment the display number by 1. This should work fine in most cases, but if you have multiple running X servers on your host machine you should use the --display option to specify a free display.

Containers

Coming soon!

Firewall

installJRMC will automatically add port forwarding firewall rules enabling remote access to Media Server (52100-52200/tcp, 1900/udp DLNA) and Xvnc/x11vnc (depends on port selection). installJRMC uses `firewall-cmd` on EL distros and `ufw` on Ubuntu/Debian.

Note: ufw is not installed by default on Debian but will be installed by installJRMC. To prevent user lock-out (i.e. SSH), Debian users that have not already enabled ufw will need to `sudo ufw enable` after running installJRMC and inspecting their configuration.

Examples

Code: [Select]
installJRMCInstall the latest version of MC from the best available repository.
Code: [Select]
installJRMC --install local --compatInstall a more widely-compatible version of the latest MC version.
Code: [Select]
installJRMC --install repo --service jriver-mediacenter --service-type userInstall MC from the repository and start/enable jriver-mediacenter.service as a user service.
Code: [Select]
installJRMC --install local --compat --restorefile /path/to/license.mjr --mcversion 28.0.100Build and install an MC 28.0.100 comptability RPM locally and activate it using the /path/to/license.mjr
Code: [Select]
installJRMC --createrepo --createrepo-webroot /srv/jriver/repo --createrepo-user www-userBuild an RPM locally for the current distro, move it to the webroot, and run createrepo as www-user.
Code: [Select]
installJRMC --service jriver-createrepo --createrepo-webroot /srv/jriver/repo --createrepo-user www-userInstall the jriver-createrepo timer and service to build the RPM, move it to the webroot, and run createrepo as www-user hourly.
Code: [Select]
installJRMC --install repo --service jriver-x11vnc --service jriver-mediacenter --vncpass "letmein"Install services to share the existing local desktop via VNC and automatically run MC on startup.
Code: [Select]
installJRMC --install repo --service jriver-xvnc --display ":2"Install an Xvnc server on display ':2' that starts MC.
Code: [Select]
installJRMC --uninstallUninstall MC and its associated services and firewall rules. This will not remove your media, media library/database, or automated library backup folder.

Additional Info

Did you find installJRMC useful? Buy me a coffee!

Did you find a bug? Let me know on Interact!
Logged

Belarathon

  • World Citizen
  • ***
  • Posts: 161

Hi there - I am getting this on Fedora, after using your script to successfully setup the first mc28 release:

See attachment
Logged
JRiver Media Center 27 → Topping E30 → Luxkit z501 or Sherwood S5000 → A/D/S L810

BryanC

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 2677

Does that happen when using DNF to update? I'm wondering if the software center mandates GPG keys. I can work on signing the RPMs eventually, but I currently have GPG checks disabled in the .repo files.
Logged

Belarathon

  • World Citizen
  • ***
  • Posts: 161

Thanks for replying, but I've since ditched Fedora for Arch.
Logged
JRiver Media Center 27 → Topping E30 → Luxkit z501 or Sherwood S5000 → A/D/S L810

BryanC

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 2677

I pushed the latest test build (28.0.64) into the upstream repo to help test out JRVR. If you are having problems with the latest test version you can use `dnf downgrade` to rollback.
Logged

InflatableMouse

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3978

Has anyone ever installed the rpm built from the deb on Suse?

I installed on tumbleweed and it complains that "nothing provides 'libglvnd-glx' needed by the to be installed MediaCenter-28.0.73-1.x86_64'. I ignored, it installed but theres a weird issue where I can't click and resize from the borders. So Im either stuck with postal stamp size window, or maximized on 34" ultra wide.
Logged

BryanC

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 2677

Has anyone ever installed the rpm built from the deb on Suse?

I installed on tumbleweed and it complains that "nothing provides 'libglvnd-glx' needed by the to be installed MediaCenter-28.0.73-1.x86_64'. I ignored, it installed but theres a weird issue where I can't click and resize from the borders. So Im either stuck with postal stamp size window, or maximized on 34" ultra wide.

Do you have that package installed?

https://software.opensuse.org/package/libglvnd
Logged

Awesome Donkey

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 7885
  • Long cold Winter...

OpenSUSE is an interesting one to mess with, I have Tumbleweed installed in a virtual machine that I've been experimenting with in my free time. You can mostly get Media Center 28 working, but you'll run into issues like this unfortunately. The libglvnd-glx error happens even if libglvnd is installed.
Logged
I don't work for JRiver... I help keep the forums safe from "male enhancements" and other sources of sketchy pharmaceuticals.

Windows 11 24H2 Update 64-bit + Ubuntu 24.10 Oracular Oriole 64-bit | Windows 11 24H2 Update 64-bit (Intel N305 Fanless NUC 16GB RAM/500GB M.2 NVMe SSD)
JRiver Media Center 33 (Windows + Linux) | iFi ZEN DAC 3 | JBL 306P MkII Studio Monitors | Audio-Technica ATH-M50x Headphones

InflatableMouse

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3978

Do you have that package installed?

https://software.opensuse.org/package/libglvnd

Yeah, its not the same package Im afraid.

MC works mostly, but first thing I noticed is I can't resize the window from the edges or corners.
Logged

bob

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 13931

Yeah, its not the same package Im afraid.

MC works mostly, but first thing I noticed is I can't resize the window from the edges or corners.
Did you try with the system keys?
I think it's alt-left click drag for one and alt-center click drag for the other (resize and drag).
Logged

InflatableMouse

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3978

Did you try with the system keys?
I think it's alt-left click drag for one and alt-center click drag for the other (resize and drag).


Nope, doesn't work either.

I did notice that after a maximize and restore I can move the window, and I'll get a resize mouse cursor on the edges. Resizing still doesn't work but at least its showing me its willing  ;D.
Logged

bob

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 13931

Nope, doesn't work either.

I did notice that after a maximize and restore I can move the window, and I'll get a resize mouse cursor on the edges. Resizing still doesn't work but at least its showing me its willing  ;D.
This is super low level stuff, especially if the system keys don't work.
Only libs involved at that level are X11 and xcb.
Logged

cycler2

  • Recent member
  • *
  • Posts: 46

Good Afternoon,
I have been using JRiver 27 for Linux successfully for a few months now (using Mint)  and just tried to install version 28 following the scripts provided in the Forum.  (thanks for those; made it easy even for a Linux noob.)  The download and installation was apparently successful, but my current master license was not installed.  Here's the error message I got:

"JRiver Media Center installed successfully
error: expired license file or time/date error
CRegistrationHelper::RestoreFromFile: bInstalledOk is false, error = Unknown Error
Could not restore license from file /home/alfacar/Media Center28 Master-xxxxxx.mjr"
 
My master license is in a folder on my Linux desk top. My license is current and the time/date setting on my desk top is correct.

Would appreciate some guidance from the pros in this forum.

Thanks
Rich
Logged

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72534
  • Where did I put my teeth?

Copy and Paste the Registration Code.  Don't use the mjr file.
Logged

Awesome Donkey

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 7885
  • Long cold Winter...

It's probably from the spaces in the license file's name. There's two quick ways that should get it working for you...

1) Try removing the spaces by renaming it from Media Center28 Master-xxxxxx.mjr to MediaCenter28-Master-xxxxxx.mjr and see if that works.

Or...

2) You can escape the spaces by adding \ backslashes in the terminal command before the spaces, something like this command (edit it as needed): mediacenter28 /RestoreFromFile /home/alfacar/Media\ Center28\ Master-xxxxxx.mjr

One of those methods should work for you. :)
Logged
I don't work for JRiver... I help keep the forums safe from "male enhancements" and other sources of sketchy pharmaceuticals.

Windows 11 24H2 Update 64-bit + Ubuntu 24.10 Oracular Oriole 64-bit | Windows 11 24H2 Update 64-bit (Intel N305 Fanless NUC 16GB RAM/500GB M.2 NVMe SSD)
JRiver Media Center 33 (Windows + Linux) | iFi ZEN DAC 3 | JBL 306P MkII Studio Monitors | Audio-Technica ATH-M50x Headphones

cycler2

  • Recent member
  • *
  • Posts: 46

Thanks for your prompt reply.  I'll give it a try and report back, probably tomorrow.
Rich
Logged

cycler2

  • Recent member
  • *
  • Posts: 46

Awesome Donkey-- All is well now.  I think the initial problem was twofold: 1.  I couldn't "see" the installed JRiver 28 after installing it--probably required a restart and, 2.  The license key (mjr file?) I had saved to my desktop probably had expired.  So on restart today,  JRiver 28 appeared in the application menu and I entered my registration code into help-->registration code. 
Thanks for your help. 
Logged

BryanC

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 2677

I just released a new version that has a lot of changes under the hood but not many user-facing.

A few notes for v1.0b1:

  • Updated the rpm package dependencies to match the Buster deb. This includes the new Vulkan libraries. This may cause issues on older rpm distros like CentOS.
  • I've been trying to come up with a better way to scrape the latest version in a more reliable manner. In this version, if buildah/podman are available in your OS's repos, they will be used to scrape the version number from the JRiver repos inside a container. If not, the old method (scraping Interact) will be used as a fallback. This method isn't perfect yet because it still requires knowing the debian development base name but that only changes every 3-5 versions, which is an improvement in my book.
  • Renamed jriver-xvnc-mediacenter service to jriver-xvnc
  • Added plumbing for SUSE support. It's completely untested (my attempts at getting a working live VM for SUSE have not gone well) but it should at least allow SUSErs to build RPMs (if not install them)
  • The default install version for pre-Buster distros is 26.0.107. This can be overridden with --mcversion and is not enforced when using --createrepo. This should improve user experience on older distros.


Oftentimes the JRiver dependency versions change mid-cycle so it's possible that interim builds since 26.0.107 may work OK on older distros. Feedback from users with legacy distros with more recent MC versions working would be appreciated so I can tune the defaults.
Logged

Awesome Donkey

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 7885
  • Long cold Winter...

  • Added plumbing for SUSE support. It's completely untested (my attempts at getting a working live VM for SUSE have not gone well) but it should at least allow SUSErs to build RPMs (if not install them)

What VM app are you using? I'm able to install OpenSUSE Tumbleweed in VMware Workstation 16.2 (setting it as Other Linux 5.x kernel 64-bit) and I did test the script this is the output on the first run...

Code: [Select]
michael@localhost:~/Git/installJRMC> ./installJRMC
SUSE support is experimental!
[sudo] password for root:
Using MC version 28.0.87 determined by webscrape
To override, use --mcversion
Installing JRiver Media Center 28.0.87 from repository.
Future updates will be handled by your package manager.
This may take a few minutes to complete.
Use --debug for verbose output.
Adding repository 'jriver' .......................................................................................[done]
Warning: GPG checking is disabled in configuration of repository 'jriver'. Integrity and origin of packages cannot be verified.
Repository 'jriver' successfully added

URI         : https://repos.bryanroessler.com/jriver
Enabled     : Yes
GPG Check   : No
Autorefresh : No
Priority    : 99 (default priority)

Repository priorities are without effect. All enabled repositories share the same priority.
Error: Package update failed!

But, the repo does install and it can check for updates. Will check building here in a few once system updates are done.

EDIT: After doing system updates the repo somehow downgraded Media Center 28.0.87 to MC26. It must think it's an older distro or something. :P
Logged
I don't work for JRiver... I help keep the forums safe from "male enhancements" and other sources of sketchy pharmaceuticals.

Windows 11 24H2 Update 64-bit + Ubuntu 24.10 Oracular Oriole 64-bit | Windows 11 24H2 Update 64-bit (Intel N305 Fanless NUC 16GB RAM/500GB M.2 NVMe SSD)
JRiver Media Center 33 (Windows + Linux) | iFi ZEN DAC 3 | JBL 306P MkII Studio Monitors | Audio-Technica ATH-M50x Headphones

bob

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 13931

What VM app are you using? I'm able to install OpenSUSE Tumbleweed in VMware Workstation 16.2 (setting it as Other Linux 5.x kernel 64-bit) and I did test the script this is the output on the first run...

Code: [Select]
michael@localhost:~/Git/installJRMC> ./installJRMC
SUSE support is experimental!
[sudo] password for root:
Using MC version 28.0.87 determined by webscrape
To override, use --mcversion
Installing JRiver Media Center 28.0.87 from repository.
Future updates will be handled by your package manager.
This may take a few minutes to complete.
Use --debug for verbose output.
Adding repository 'jriver' .......................................................................................[done]
Warning: GPG checking is disabled in configuration of repository 'jriver'. Integrity and origin of packages cannot be verified.
Repository 'jriver' successfully added

URI         : https://repos.bryanroessler.com/jriver
Enabled     : Yes
GPG Check   : No
Autorefresh : No
Priority    : 99 (default priority)

Repository priorities are without effect. All enabled repositories share the same priority.
Error: Package update failed!

But, the repo does install and it can check for updates. Will check building here in a few once system updates are done.

EDIT: After doing system updates the repo somehow downgraded Media Center 28.0.87 to MC26. It must think it's an older distro or something. :P
Don't know if this matters but MC26 was Jessie and MC27 and MC28 require Buster (and use buster in the repo line).
Logged

BryanC

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 2677

What VM app are you using? I'm able to install OpenSUSE Tumbleweed in VMware Workstation 16.2 (setting it as Other Linux 5.x kernel 64-bit) and I did test the script this is the output on the first run...

Code: [Select]
michael@localhost:~/Git/installJRMC> ./installJRMC
SUSE support is experimental!
[sudo] password for root:
Using MC version 28.0.87 determined by webscrape
To override, use --mcversion
Installing JRiver Media Center 28.0.87 from repository.
Future updates will be handled by your package manager.
This may take a few minutes to complete.
Use --debug for verbose output.
Adding repository 'jriver' .......................................................................................[done]
Warning: GPG checking is disabled in configuration of repository 'jriver'. Integrity and origin of packages cannot be verified.
Repository 'jriver' successfully added

URI         : https://repos.bryanroessler.com/jriver
Enabled     : Yes
GPG Check   : No
Autorefresh : No
Priority    : 99 (default priority)

Repository priorities are without effect. All enabled repositories share the same priority.
Error: Package update failed!

But, the repo does install and it can check for updates. Will check building here in a few once system updates are done.

EDIT: After doing system updates the repo somehow downgraded Media Center 28.0.87 to MC26. It must think it's an older distro or something. :P

I'm using Boxes (libvirtd). I prefer live ISOs for debugging as it is faster than snapshots, so I was messing around with Krypton/Argon as SUSE install media requires a disk install. I can manage that with snapshots but the SUSE installer never seems to complete unfortunately. Edit: Got it working. Not sure why it is being detected as an older version, you can see my logic here (from /etc/os-release):

Code: [Select]
        _base="buster" # For container method
        _boardurl="https://yabb.jriver.com/interact/index.php/board,71.0.html"
        if [[ "$ID" == "ubuntu" ]]; then
            # [[ "$VERSION_CODENAME" =~ ^(focal|groovy|hirsute|impish)$ ]] && \
            #     _base="bullseye"
            [[ "$VERSION_CODENAME" =~ ^(cosmic|disco|eoan)$ ]] && \
                _base="buster"
            [[ "$VERSION_CODENAME" =~ ^(xenial|yakkety|zesty|artful|bionic)$ ]] && \
                _mcversion="26.0.107"
            [[ "$VERSION_CODENAME" =~ ^(trusty|utopic|vivid|wily)$ ]] && \
                _mcversion="26.0.107"
        elif [[ "$ID" == "debian" ]]; then
            _base="$VERSION_CODENAME"
            [[ $VERSION_ID -eq 10 ]] && \
                _base="buster"
            [[ $VERSION_ID -le 9 ]] && \
                _mcversion="26.0.107" # For 9 and 8
        elif [[ "$ID" == "centos" ]]; then
            [[ "$VERSION_ID" -eq "8" ]] && \
                _base="buster"
            [[ "$VERSION_ID" -lt "8" ]] && \
                _mcversion="26.0.107" # Doubtful
        fi


In the next version I'll also disable the version limits for building (but not installing) RPMs.

Don't know if this matters but MC26 was Jessie and MC27 and MC28 require Buster (and use buster in the repo line).


What prompted this was the inability to install buster MC28 on Ubuntu 18.04 (bionic), itself based on Buster but with out-of-date dependencies. It may be possible to install MC27 if the deb has older dependencies. If the distro is super old (older than buster) the default is to fallback to MC26 (jessie-based).
Logged

BryanC

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 2677

I added version 1.0b3 that should flesh out SUSE support for the `--install rpm` method. I had to do a lot of package translations for that one!

Currently there is no cross-building allowed and the RPMs built on SUSE are not compatible with Fedora/CentOS and vice versa.

This will also allow a SUSE user to maintain their own repository for other users using the jriver-createrepo service if they are so inclined.
Logged

Awesome Donkey

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 7885
  • Long cold Winter...

This new version works much better! However, running the script for the first time results in...

Code: [Select]
Error: JRiver Media Center installation failed
Running it again with --debug results in...

Code: [Select]
./installJRMC --debug
SUSE support is experimental!
Debugging on
installJRMC version: 1.0b3
Debug: Running: getLatestVersion
Using MC version 28.0.87 determined by containerized package manager
To override, use --mcversion
Debug: Running: installMCFromRepo
Installing JRiver Media Center 28.0.87 from repository.
Future updates will be handled by your package manager.
Debug: Running: addRepo
Debug: Updating package list
Debug: installPackage --nocheck MediaCenter
Debug: Running: installPackage --nocheck --nogpgcheck MediaCenter
Debug: Installing: MediaCenter
Debug: pkg_install --allow-unsigned-rpm MediaCenter
Problem: nothing provides 'libglvnd-glx' needed by the to be installed MediaCenter-28.0.87-1.x86_64
 Solution 1: do not install MediaCenter-28.0.87-1.x86_64
 Solution 2: break MediaCenter-28.0.87-1.x86_64 by ignoring some of its dependencies

Choose from above solutions by number or cancel [1/2/c/d/?] (c): c
Error: Failed to install MediaCenter. Attempting to continue...
Error: JRiver Media Center installation failed

Yikes, yeah, this one has been around for awhile now. It automatically inputs c and fails the install. Anyways libglvnd-glx isn't available in openSUSE but libglvnd is and is installed.
Logged
I don't work for JRiver... I help keep the forums safe from "male enhancements" and other sources of sketchy pharmaceuticals.

Windows 11 24H2 Update 64-bit + Ubuntu 24.10 Oracular Oriole 64-bit | Windows 11 24H2 Update 64-bit (Intel N305 Fanless NUC 16GB RAM/500GB M.2 NVMe SSD)
JRiver Media Center 33 (Windows + Linux) | iFi ZEN DAC 3 | JBL 306P MkII Studio Monitors | Audio-Technica ATH-M50x Headphones

BryanC

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 2677

This new version works much better! However, running the script for the first time results in...

Code: [Select]
Error: JRiver Media Center installation failed
Running it again with --debug results in...

Code: [Select]
./installJRMC --debug
SUSE support is experimental!
Debugging on
installJRMC version: 1.0b3
Debug: Running: getLatestVersion
Using MC version 28.0.87 determined by containerized package manager
To override, use --mcversion
Debug: Running: installMCFromRepo
Installing JRiver Media Center 28.0.87 from repository.
Future updates will be handled by your package manager.
Debug: Running: addRepo
Debug: Updating package list
Debug: installPackage --nocheck MediaCenter
Debug: Running: installPackage --nocheck --nogpgcheck MediaCenter
Debug: Installing: MediaCenter
Debug: pkg_install --allow-unsigned-rpm MediaCenter
Problem: nothing provides 'libglvnd-glx' needed by the to be installed MediaCenter-28.0.87-1.x86_64
 Solution 1: do not install MediaCenter-28.0.87-1.x86_64
 Solution 2: break MediaCenter-28.0.87-1.x86_64 by ignoring some of its dependencies

Choose from above solutions by number or cancel [1/2/c/d/?] (c): c
Error: Failed to install MediaCenter. Attempting to continue...
Error: JRiver Media Center installation failed

Yikes, yeah, this one has been around for awhile now. It automatically inputs c and fails the install. Anyways libglvnd-glx isn't available in openSUSE but libglvnd is and is installed.

Try using --install rpm and not the default installation method (repo).

The rpms in my repo are built for Fedora/CentOS so they won't work on SUSE. You need to build the SUSE RPM on SUSE using --install rpm (or --build if you want to manually install it later). SUSE users can create their own repository for other users using --createrepo or --service jriver-createrepo to automatically build the latest version. At some point in the future I may add a SUSE repo, but I'll need to enable cross-building first and make sure we get reliable rpms.
Logged

BryanC

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 2677

I just released a new version with SUSE RPM cross-building. Eventually I may host a SUSE RPM but I'm migrating infra so for now just use the --install rpm method on SUSE.
Logged

Awesome Donkey

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 7885
  • Long cold Winter...

Trying to use the latest version of the script on Fedora 35 always results in...

Code: [Select]
Building version 28.0.94, please wait...
Error: Build failed.
Removing source DEB

Using --debug isn't showing anything interesting why the build fails. Tried using --mcversion 28.0.94, --install rpm, etc. and nothing works. However, an older version of the script does work and I was able to build 28.0.94 and install it on Fedora 35.
Logged
I don't work for JRiver... I help keep the forums safe from "male enhancements" and other sources of sketchy pharmaceuticals.

Windows 11 24H2 Update 64-bit + Ubuntu 24.10 Oracular Oriole 64-bit | Windows 11 24H2 Update 64-bit (Intel N305 Fanless NUC 16GB RAM/500GB M.2 NVMe SSD)
JRiver Media Center 33 (Windows + Linux) | iFi ZEN DAC 3 | JBL 306P MkII Studio Monitors | Audio-Technica ATH-M50x Headphones

BryanC

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 2677

Trying to use the latest version of the script on Fedora 35 always results in...

Code: [Select]
Building version 28.0.94, please wait...
Error: Build failed.
Removing source DEB

Using --debug isn't showing anything interesting why the build fails. Tried using --mcversion 28.0.94, --install rpm, etc. and nothing works. However, an older version of the script does work and I was able to build 28.0.94 and install it on Fedora 35.

There was a derp leftover from adding the SUSE crossbuilding. Please try v1.0b4 that I just attached to the OP or pull from master. I also improved version scraping reliability so hopefully that works on SUSE now so no need to manually use --mcversion.

After I finish migrating infra I will try to containerize rpmbuild next.
Logged

Awesome Donkey

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 7885
  • Long cold Winter...

Great, works fine now, thanks! :)

P.S. Is it possible to get both --mcversion and --install rpm working at the same time? Sometimes it helps with downgrading to check for issues and test stuff, and having one command to build the RPM and to install the RPM could be very useful.
Logged
I don't work for JRiver... I help keep the forums safe from "male enhancements" and other sources of sketchy pharmaceuticals.

Windows 11 24H2 Update 64-bit + Ubuntu 24.10 Oracular Oriole 64-bit | Windows 11 24H2 Update 64-bit (Intel N305 Fanless NUC 16GB RAM/500GB M.2 NVMe SSD)
JRiver Media Center 33 (Windows + Linux) | iFi ZEN DAC 3 | JBL 306P MkII Studio Monitors | Audio-Technica ATH-M50x Headphones

BryanC

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 2677

P.S. Is it possible to get both --mcversion and --install rpm working at the same time? Sometimes it helps with downgrading to check for issues and test stuff, and having one command to build the RPM and to install the RPM could be very useful.

Using those options together seems to work fine on Fedora.

Logged

BryanC

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 2677

Uploaded v1.0b5 with new option "--compat" to build/install RPMs without minimum library version specifiers. This will allow RPMs to successfully install on distros that have older libraries than what MC is built with on Debian Buster (i.e. CentOS 8).

Example:

Code: [Select]
./installJRMC --install rpm --compat
Make sure to first remove your RPM output folder (./output/RPMS) so that installJRMC will rebuild the RPM (without minimum version specifiers).
Logged

bob

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 13931

I wonder if I could relax the library requirements in the deb a bit?
Specifiers past the minor version of a library probably aren't significant.

If the distro libraries have different minor versions though I would expect there to be issues.
Logged

BryanC

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 2677

I wonder if I could relax the library requirements in the deb a bit?
Specifiers past the minor version of a library probably aren't significant.

If the distro libraries have different minor versions though I would expect there to be issues.

if there aren't tradeoffs that would increase the # of distros capable of running MC (not just in the RPM world but older *buntu too). At some point I will translate instead of hardcoding the RPM dependencies so future library requirement changes on your end can propagate automatically.
Logged

Hendrik

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 10968

Our requirements aren't overly specific for everything - for example gtk3 3.24 seems like a reasonable version, but it was one of those causing issues with CentOS 8.x, so while overly specific requirements might not be required, it also likely wouldn't help that much. If a distro is behind, it'll be a full version behind in most cases.
Logged
~ nevcairiel
~ Author of LAV Filters

arch7tect

  • Member
  • *
  • Posts: 1

do not work on kde neon.
$ cat /etc/os-release
NAME="KDE neon"
VERSION="5.23"
ID=neon
ID_LIKE="ubuntu debian"

dirty hack:
    ID="ubuntu"
    debug "Platform: $ID $VERSION_ID"

Logged

BryanC

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 2677

do not work on kde neon.
$ cat /etc/os-release
NAME="KDE neon"
VERSION="5.23"
ID=neon
ID_LIKE="ubuntu debian"

dirty hack:
    ID="ubuntu"
    debug "Platform: $ID $VERSION_ID"

Gotcha, I'll check it out. I've got a fairly big change coming that will 1) inherit dependency versions from the .deb file, 2) allow services to be installed as true user services (so they can be manipulated with systemctl --user without root) using new --service-type user, and 3) extend --compat mode to debian installations too (so older distros can try running MC with outdated libraries). It just needs a bit more polishing. I'll add Neon support before the next release too.
Logged

BryanC

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 2677
Re: installJRMC - (Almost) Universal MC installer for Linux
« Reply #35 on: January 14, 2022, 11:43:25 am »

I just released v1.0b7. This is a major rewrite that should bring installJRMC a lot closer to a 1.0 milestone. There are too many changes to list here, if there was something broken before it should hopefully be fixed, but let me know if not. Note that there are some changes in syntax, --install rpm will still work but has been superseded by --install local. This enables local "rebuilding" of deb files, allowing --compat to work for deb-based distros too!

I also enabled boutique distro support for all DEB and RPM-based distributions so I'm considering this an (almost) universal installer at this point. No Arch or Gentoo support, but if anyone wants to help I can add those too.

The major limitation to running modern MC on older distros is still the glibc/libc6 version for ABI compatability. I haven't gone back to older MC versions to perform package translations for deprecated dependencies, so if anyone is trying to install an old MC version for ABI compatibility and is running into errors, just share the relevant output (with --debug) and I will add a translation.
Logged

Awesome Donkey

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 7885
  • Long cold Winter...
Re: installJRMC - Universal MC installer for Linux
« Reply #36 on: January 14, 2022, 01:24:24 pm »

Installing MC on Arch is actually pretty simple by using a PKGBUILD, which this one can be found on the AUR (then modified for the user's needs). How this works specifically is with each new MC build the SHA256 hash needs to be updated. The only problem with the package currently on the AUR is, it's a "generic" jriver-media-center package, but I've always thought it should be split for each major version of MC due to how licensing and upgrades work, it doesn't really make sense to me to have a single package that rolls from one new major release to another. *shrugs* But I digress...

Here's the PKGBUILD: https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=jriver-media-center

One thing you could do for Arch is to basically follow the PKGBUILD there, but update/improve it and name it jriver-media-center28. Because the jriver-media-center28 package doesn't currently exist, the pacman package manager (and any AUR helper you're using) will complain about it. So in that case what I'd also recommend is having the script update /etc/pacman.conf and add jriver-media-center28 to the IgnorePkg list. That way with each new MC update the script can check for a newer MC, generate a new PKGBUILD for that new build and calculate the SHA256(s), then build the package. And your package manager won't complain about it not existing on the AUR! And it can even install the package too.

If desired you could even create your own user repository for MC and use that for packages and updates, this explains how it works: https://www.sainnhe.dev/post/create-personal-arch-linux-package-repository/

Or the alternative is to use a local repository which is documented here: https://wiki.archlinux.org/title/Pacman/Tips_and_tricks#Custom_local_repository

TL;DR, one of the easier ways to do it:

1) Check the latest version of Media Center and if a new build is available generate a PKGBUILD for the latest version of Media Center.

2) Name the package for the latest MC major version, e.g. jriver-media-center28 then add that package to IgnorePkg section of /etc/pacman.conf, e.g. IgnorePkg = jriver-media-center28

3) Build the package using the makepkg -s command. You can also build and install the package via makepkg -si.

4) Install the package either via sudo pacman -U <path to package> or by using makepkg -si as mentioned above.
Logged
I don't work for JRiver... I help keep the forums safe from "male enhancements" and other sources of sketchy pharmaceuticals.

Windows 11 24H2 Update 64-bit + Ubuntu 24.10 Oracular Oriole 64-bit | Windows 11 24H2 Update 64-bit (Intel N305 Fanless NUC 16GB RAM/500GB M.2 NVMe SSD)
JRiver Media Center 33 (Windows + Linux) | iFi ZEN DAC 3 | JBL 306P MkII Studio Monitors | Audio-Technica ATH-M50x Headphones

BryanC

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 2677
Re: installJRMC - Universal MC installer for Linux
« Reply #37 on: January 14, 2022, 01:40:53 pm »

OK, I'll take a look at adding Arch support in my next stretch of spare time.
Logged

BryanC

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 2677
Re: installJRMC - Universal MC installer for Linux
« Reply #38 on: January 20, 2022, 10:00:52 pm »

One thing you could do for Arch is to basically follow the PKGBUILD there, but update/improve it and name it jriver-media-center28. Because the jriver-media-center28 package doesn't currently exist, the pacman package manager (and any AUR helper you're using) will complain about it. So in that case what I'd also recommend is having the script update /etc/pacman.conf and add jriver-media-center28 to the IgnorePkg list. That way with each new MC update the script can check for a newer MC, generate a new PKGBUILD for that new build and calculate the SHA256(s), then build the package. And your package manager won't complain about it not existing on the AUR! And it can even install the package too.

TL;DR, one of the easier ways to do it:

1) Check the latest version of Media Center and if a new build is available generate a PKGBUILD for the latest version of Media Center.

2) Name the package for the latest MC major version, e.g. jriver-media-center28 then add that package to IgnorePkg section of /etc/pacman.conf, e.g. IgnorePkg = jriver-media-center28

3) Build the package using the makepkg -s command. You can also build and install the package via makepkg -si.

4) Install the package either via sudo pacman -U <path to package> or by using makepkg -si as mentioned above.

I've got a few questions and comments before I dive in:
  • Which type of firewall do most Arch users typically use? I can use nftables but the firewall managers are nicer to interact with. I see that Arch recommends firewall-cmd yet it's not pre-installed.
  • Re; package naming convention. I do understand the maintainer's reasoning behind making the jriver-media-center package essentially a "rolling" installation. It makes it easier to manage (no manual versioning required) and users can always install a specific version if they choose to (and add an exclusion to their package manager to peg it). I treat MC as a subscription service at this point, but I do understand your point re: licensing and major versions. installJRMC currently installs a "rolling" package name "MediaCenter" on rpm-based distros and uses your preferred (and the default method) of per-version package names on deb-based distros. I would like for these to be consistent in the future but rolling makes upgrades more seamless for my clients as I tend to run beta builds, although I'm not hard set on this.
Logged

Awesome Donkey

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 7885
  • Long cold Winter...
Re: installJRMC - MC installer for Linux
« Reply #39 on: January 21, 2022, 11:00:02 am »

1. Typically a firewall isn't activated and used unless the user wants it (none of my Arch installs have a firewall running), and usually then it's either something using nftables or iptables.

2. Fair enough, but personally I'd probably still manually keep the package name with the version number.
Logged
I don't work for JRiver... I help keep the forums safe from "male enhancements" and other sources of sketchy pharmaceuticals.

Windows 11 24H2 Update 64-bit + Ubuntu 24.10 Oracular Oriole 64-bit | Windows 11 24H2 Update 64-bit (Intel N305 Fanless NUC 16GB RAM/500GB M.2 NVMe SSD)
JRiver Media Center 33 (Windows + Linux) | iFi ZEN DAC 3 | JBL 306P MkII Studio Monitors | Audio-Technica ATH-M50x Headphones

countryboy

  • Recent member
  • *
  • Posts: 7
Re: installJRMC - MC installer for Linux
« Reply #40 on: February 18, 2022, 12:19:14 am »

I did a post on the main forum today about stability problems with jriver running headless.  @BryanC suggested using the installJRMC script to install and configure a tigervnc server running an instance of jriver.  His clever script sets this up automatically, and I thought it was a clever idea to provide a virtual console for a headless machine.  It seemed to work, but I'm a bit clueless on configuration and use.
what I did: used the package manager to remove my existing media center, then used the script:
installJRMC --install repo --service jriver-xvnc

After rebooting as a precaution, I see this, which looks good to me:
ps -ef |grep jriver
jim         3786       1  1 21:35 ?        00:00:00 /usr/bin/perl /usr/bin/vncserver :1 -geometry 1440x900 -alwaysshared -name jriver:1 -SecurityTypes None -autokill -xstartup /usr/bin/mediacenter28
jim         3794    3786  0 21:35 ?        00:00:00 /usr/bin/perl /usr/bin/vncserver :1 -geometry 1440x900 -alwaysshared -name jriver:1 -SecurityTypes None -autokill -xstartup /usr/bin/mediacenter28
jim         3795    3794  3 21:35 ?        00:00:00 /usr/bin/Xtigervnc :1 -rfbport 5901 -localhost=1 -SecurityTypes None -ClientWaitTimeMillis 30000 -NeverShared=0 -AlwaysShared=1 -geometry 1440x900 -desktop jriver:1 -depth 24 -auth /home/jim/.Xauthority
jim         4012    2806  0 21:35 pts/0    00:00:00 grep jriver

I also note that if I try starting another instance of mediacenter from the console, it runs but warns me the library is readonly: makes sense, since another copy of jriver is already running.
Well, but now I need some handholding.  I haven't yet tested whether this VNC trick solves my stability problem running headless, but it certainly looks good.  However, I need some newbie help in accessing the server: have mercy, I haven't used VNC in decades...
- neither the web interface nor gizmo can access the jriver server running on the VNC display.  if I start a read-only media server on the console, both work fine
- on android, I tried using VNC connect to access the server.  no luck.

assuming the stability problem is solved with this trick, how do I access mediacenter once I am headless again? probably dumb question, but us old guys have no shame....
Logged

BryanC

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 2677
Re: installJRMC - MC installer for Linux
« Reply #41 on: February 18, 2022, 09:28:34 am »

It looks like VNC is running on port 5901 so in your VNC client you will want to specify the port manually as the standard port for VNC is 5900. installJRMC does this on purpose to avoid conflicting with other services.

In some clients this can be done with your.host:5901, others may have a separate combobox to specify the custom port separately.

Let me know if that gets you any further along. The underlying reason why this is required is that MC depends on an active X11 session to launch. tigervnc provides an easy way to make this happen with the added benefit of a remote GUI. It is strange that you cannot connect to the Library Server, but once you can access the VNC session then you should be able to confirm the Media Network settings are correct.
Logged

countryboy

  • Recent member
  • *
  • Posts: 7
Re: installJRMC - MC installer for Linux
« Reply #42 on: February 18, 2022, 03:07:40 pm »

thanks for the reply and help.  bottom line is that I think things are mostly configured ok but there is some security settings I am missing. Maybe this is all newbie stuff you shouldn't need to help...
here's some info:
ss -tulpn gives:
tcp     LISTEN   0        5                  [::1]:5901              [::]:*      users:(("Xtigervnc",pid=824126,fd=10)

syslog shows:
Feb 18 11:29:40 melody vncserver[839567]: Please be aware that you are exposing your VNC server to all users on the
Feb 18 11:29:40 melody vncserver[839567]: local machine. These users can access your server without authentication!
Feb 18 11:29:40 melody vncserver[839575]: New Xtigervnc server 'jriver:1' on port 5901 for display :1.
Feb 18 11:29:40 melody vncserver[839575]: Use xtigervncviewer -SecurityTypes None :1 to connect to the VNC server.

I've tried several vnc clients, including VNC connect on android, tightvnc on windows, and vncviewer on raspberry pi OS. A typical error message is "no connection could be made because the target machine actively refused it." (This is from vncviewer on the pi, when I try either of port or display  ('vncviewer <serverIP>::5901' or 'vncviewer <serverIP>:1)

The ps output seems to show a vnc server running without security.  does debian have default additional port security?

All the machines are on a common subnet, direct connect via ethernet (except android tablet wirelessly bridged onto same subnet)

The vnc server started automatically as a result of installrmc seems to have security turned off (but I'm not an expert): some debian 11.2 port security problem (?)  here's the ps output again

jim        24798       1  7 12:59 ?        00:00:00 /usr/bin/perl /usr/bin/vncserver :1 -geometry 1440x900 -alwaysshared -name jriver:1 -SecurityTypes None -autokill -xstartup /usr/bin/mediacenter28
jim        24806   24798  0 12:59 ?        00:00:00 /usr/bin/perl /usr/bin/vncserver :1 -geometry 1440x900 -alwaysshared -name jriver:1 -SecurityTypes None -autokill -xstartup /usr/bin/mediacenter28
jim        24807   24806  4 12:59 ?        00:00:00 /usr/bin/Xtigervnc :1 -rfbport 5901 -localhost=1 -SecurityTypes None -ClientWaitTimeMillis 30000 -NeverShared=0 -AlwaysShared=1 -geometry 1440x900 -desktop jriver:1 -depth 24 -auth /home/jim/.Xauthority

Not sure where to go next, I'm not a vnc expert....
Logged

BryanC

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 2677
Re: installJRMC - MC installer for Linux
« Reply #43 on: February 18, 2022, 04:42:35 pm »

I can reproduce this in my Debian VM so I'll do some digging.
Logged

BryanC

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 2677
Re: installJRMC - MC installer for Linux
« Reply #44 on: February 18, 2022, 06:11:01 pm »

OK, this issue should be fixed in 1.0b11, thanks for reporting it!

Before running the new version of installJRMC, stop the existing service first `sudo systemctl stop jriver-xvnc@jim.service` to clear it from memory.

That should fix your connection issue as well (the service was looping).
Logged

countryboy

  • Recent member
  • *
  • Posts: 7
Re: installJRMC - MC installer for Linux
« Reply #45 on: February 18, 2022, 09:39:31 pm »

I'm afraid it didn't fix the problem for LAN hosts. 
- stop the service as you suggested
- use apt and remove mediacenter28
- download b11 version of installJRMC, unzip, and run
- reboot as a precaution

once again, looks like vnc is running the service:
ps -ef |grep jriver
jim         1221       1  0 19:01 ?        00:00:00 /usr/bin/perl /usr/bin/vncserver :1 -geometry 1440x900 -alwaysshared -name jriver:1 -SecurityTypes None -autokill -xstartup /usr/bin/mediacenter28
jim         1222    1221  0 19:01 ?        00:00:00 /usr/bin/Xtigervnc :1 -rfbport 5901 -localhost=1 -SecurityTypes None -ClientWaitTimeMillis 30000 -NeverShared=0 -AlwaysShared=1 -geometry 1440x900 -desktop jriver:1 -depth 24 -auth /home/jim/.Xauthority

try clients: still get connection refused.  on raspbian at least, the message from vncviewer has changed slightly, from the previous "no connection could be made because the target machine actively refused it." to "the connection was refused by the computer".

However, I used 'xtigervncviewer' on the debian mediaserver machine itself, specifying 'localhost::5901' --- and it connected fine and displayed the media server screen. I was able to interact as usual with the mediaserver.  so the system seems to be working but something is messing up access from other hosts on the LAN. Maybe I need to research debian 11.2 port security?

Logged

countryboy

  • Recent member
  • *
  • Posts: 7
Re: installJRMC - MC installer for Linux
« Reply #46 on: February 18, 2022, 09:47:33 pm »

sorry, hit send before fully engaging brain.  both panel and gizmo work with the new configuration.  I just can't display the jriver X display from a VNC client other than the mediaserver itself.  progress has been made.... and I'm unclear on how the access code is supposed to be entered (or if) when using a remote VNC client.

I'll also try bringing it up headless and see if the stability issue for headless is gone with the virtual display functioning and report on that..
Logged

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72534
  • Where did I put my teeth?
Re: installJRMC - MC installer for Linux
« Reply #47 on: February 18, 2022, 10:16:59 pm »

You might want to try a different virtual desktop
Logged

countryboy

  • Recent member
  • *
  • Posts: 7
Re: installJRMC - MC installer for Linux
« Reply #48 on: February 19, 2022, 02:49:18 pm »

well, this message is intended to be a helpful assessment, not critical.  I used my headless install for a few hours last night (primarily with gizmo), and for my use there were a couple of showstoppers.  This may not belong in the installJRMC subtopic.
I've tried to keep the variables under control with a clean install.  I have a relatively good mini PC, an intel NUC 10i7FNH - Intel corei7-10710U, 32 G RAM, 1TB SSD.  My house ethernet is all cat 6 switched, single subnet.  My music files are on an NFS server on the LAN.  I have a large music repository and over the years have used most of the music software out there.  I have been running this exact system (music repository/NFS server, network NUC, audio system) for nearly a year with roon without issues, so I think the platform is healthy and stable. (The only systems I have found that do well with large repositories are roon and jriver. I have issues with roon's privacy policy) 

so, I installed fresh copy of debian 11.2 on the NUC.  Did not add any applications or packages, other than a couple of network/system packages.  (debian default no longer comes with netstat?)  used installJRMC specifying mediacenter28, imported my library (fastest indexing I've ever seen, BTW).  Tried to run headless, got crashes predictably after about 10 minutes.  As documented previously in this subtopic, got help from BryanC and reinstalled mediacenter to use xvnc. with the 11b version of installJRMC, this worked (though there is still a vnc remote client connect issue, not important for this message, and appears to be a lingering stability problem).

I connected the newly installed headless mediacenter via USB to my benchmark DAC and sat down to listen, using gizmo on an android tablet (I've also used web panel a little). There are 3 issues that I think critical:

1. fairly predictably, playback will stop after perhaps 30 minutes of play.  This happened to me about 4 times in 2 hours.  Usually it will come back spontaneously, but at least once I had to restart gizmo and reconnect.  The symptom makes me think that some resource is being allocated and not released.  Have not tried panel to compare playback with gizmo.

2. mediacenter stayed up for my listening session, but died overnight.  I haven't done a log analysis yet. This same hardware and network were used with the same audio system for nearly a year with roon, and I did not experience any playback stoppage or system crashes in all that time, so this is very likely a mediacenter software issue. Update: restarted the mediacenter machine this morning, did a bit of browsing with panel, and it crashed again after perhaps 30 minutes (the machine, not just mediacenter)

3. gizmo is more like an alpha or proof of concept, and panel is limited.  There does not seem to be a good client for mediacenter.  To be concrete, just as examples,
- I have multiple copies of some albums: miles davis conception in both DSD (.dsf) and flac. dsf for the big fancy audio system, flac for playing on simple devices.  with gizmo, I can't tell these apart and don't see how to check the encoding while playing.
- with a large music repository, search is painful or impossible. on gizmo, a search for miles davis offers me only the play options: does not let me drop down and browse all my miles davis albums.  A quick look at panel indicates it does not resolve any of this.

So, perhaps mediacenter on a windows console is spiffy.  for a headless linux mediacenter, there are stability and playback problems, and no good client option.  I might try running the full mediacenter interface via vnc on a tablet - if I can get vnc to work on the client, but the stability would need to be resolved for production use....

again, not meaning to be negative, but this is my experience to date. a headless, stable mediacenter with a full featured client would be awesome. 
Logged

BryanC

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 2677
Re: installJRMC - MC installer for Linux
« Reply #49 on: February 19, 2022, 05:07:51 pm »

You may want to break out your concerns into individual threads but I will try to address what I can here.

1. Gizmo is "supported" but for most intents and purposes has been superseded as the "in-house" mobile playback application by JRemote2. Therefore, your problems might actually be linked to the playback app and/or Android powersaving features (since there seems to be a time element involved).

2. On my system, MC does very infrequently crash, usually when I am taxing the import/analysis functions and clicking around the UI trying to tag stuff. But it maybe happens once a week at most and I'm a heavy user as I listen to MC nearly all day while programming. One thing that may contribute to your issues following import is that MC will build thumbnails of cover art and other images, which can be quite demanding on the disk/cpu. I like to force build them manually up front (search for "build thumbnails" in the options and you will be able to trigger it manually), after which I find MC to be more stable and less demanding on the system (I have ~100k files in my library, for reference).

3. The systemd service created by installJRMC should automatically restart the xvnc session if MC crashes, if it's not doing this, I can look into it. The cause of your original issue that I fixed was a change in how Xtigervnc forks its underlying processes, at least on Debian, which may also impact the ability of systemd to determine that the process has failed, I haven't looked into it.

4. For your multi-format files, look into using MC's "stacks" feature to treat them as a single entity, which may make browsing and playback more straightforward for you.

Hopefully this gives you some things to try out to fix your issues! I can assure you that MC is still the premier media management application for Linux despite some quirks, and it's worth working through them.
Logged
Pages: [1] 2   Go Up