[How-To] Manually upgrade mono from 5.10 to 5.20 in a FreeNAS Jail

[How-To] Manually upgrade mono from 5.10 to 5.20 in a FreeNAS Jail

thepixelgeek

Patron
Joined
Jan 21, 2016
Messages
271
I actually ended up figuring it out thanks to comment #75 by jasonsansone. The install ran perfectly.

---- How I did it ----
  1. Follow the link (comment #75 by jasonsansone) go to the link and download mono-6.8.0.105.txz
    1. https://www.ixsystems.com/community...20-in-a-freenas-jail.78871/page-4#post-573573
  2. Move the file into your Sonarr jail
    1. I used FileZilla to transfer tile to /tmp/mono-6.8.0.105.txz in my Jail
  3. Install the package (from inside the jail)
    1. pkg install /tmp/mono-6.8.0.105.txz


I was trying to figure all this out to upgrade Sonarr to V3 on my Freenas machine. I created a guide in my reddit post if anyone is interested:
I tried that for Radarr, but no luck. I get "All repositories are up to date". My radarr mono is at 5.10.1.57.
 

thepixelgeek

Patron
Joined
Jan 21, 2016
Messages
271
More detail needed please geek...

It worked fine for me too.

Sonarr, radarr both reporting 6.8 mono
Not sure what else I can provide. If memory serves, Radarr was manually installed and not by plugin.

I made a tmp directory via Filezilla inside the Radarr jail. Ran the pkg install from within the jail via terminal.

@ARRRRGGGGHHH Please let me know what else I can provide.

Edit: I did do a pkg update && pkg upgrade before trying to update Mono. Oh, and updated to the latest Radarr.
 

zperetz

Dabbler
Joined
Dec 2, 2017
Messages
36
Not sure what else I can provide. If memory serves, Radarr was manually installed and not by plugin.

I made a tmp directory via Filezilla inside the Radarr jail. Ran the pkg install from within the jail via terminal.

@ARRRRGGGGHHH Please let me know what else I can provide.

Edit: I did do a pkg update && pkg upgrade before trying to update Mono. Oh, and updated to the latest Radarr.
Use pkg install -f /tmp/mono-6.8.0.105.txz inside jail to be sure it was installed over. And then please put the output of pkg info | grep mono here.
 

hertzsae

Contributor
Joined
Sep 23, 2014
Messages
118
No more need to compile or install pkgs from third party sources. mono5.20 and mono6.8 now exist as stand alone packages on Freshports.
"pkg install -y mono6.8" or "pkg install -y mono5.20" should get you the correct version.

From what I'm reading, the plan is to get "mono" to 6.8, but it currently breaks some dependent packages. So until those get fixed, they temporarily put separate ports out.
 

zperetz

Dabbler
Joined
Dec 2, 2017
Messages
36
No more need to compile or install pkgs from third party sources. mono5.20 and mono6.8 now exist as stand alone packages on Freshports.
"pkg install -y mono6.8" or "pkg install -y mono5.20" should get you the correct version.
Thanks! It's not that easy due to lack of compiled packages, but building from ports works without any single problem and mono6.8-6.8.0.123 is here.

UPD: now the packages are available, usual installation via pkg is possible.
 
Last edited:

thepixelgeek

Patron
Joined
Jan 21, 2016
Messages
271
Use pkg install -f /tmp/mono-6.8.0.105.txz inside jail to be sure it was installed over. And then please put the output of pkg info | grep mono here.

Code:
root@radarr:~ # pkg install -f /tmp/mono-6.8.0.105.txz
Updating FreeBSD repository catalogue...
[radarr] Fetching meta.txz: 100%    916 B   0.9kB/s    00:01   
[radarr] Fetching packagesite.txz: 100%    6 MiB   6.2MB/s    00:01   
Processing entries:   0%
Newer FreeBSD version for package php74-pear-XML_Transformer:
To ignore this error set IGNORE_OSVERSION=yes
- package: 1104001
- running kernel: 1103000
Ignore the mismatch and continue? [y/N]: y
Processing entries: 100%
FreeBSD repository update completed. 30622 packages processed.
All repositories are up to date.
pkg: No packages available to install matching '/tmp/mono-6.8.0.105.txz' have been found in the repositories
root@radarr:~ # pkg info | grep mono
mono-5.10.1.57_3               Open source implementation of .NET Development Framework
root@radarr:~ # mono --version
Mono JIT compiler version 5.10.1.57 (5.10.1.57 Sat May 30 04:05:04 UTC 2020)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
    TLS:           __thread
    SIGSEGV:       altstack
    Notification:  kqueue
    Architecture:  amd64
    Disabled:      none
    Misc:          softdebug
    Interpreter:   yes
    LLVM:          supported, not enabled.
    GC:            sgen (concurrent by default)

 

thepixelgeek

Patron
Joined
Jan 21, 2016
Messages
271
Got it installed now. I may have had the /tmp folder in the wrong place, to begin with.
 

raidflex

Guru
Joined
Mar 14, 2012
Messages
531
No more need to compile or install pkgs from third party sources. mono5.20 and mono6.8 now exist as stand alone packages on Freshports.
"pkg install -y mono6.8" or "pkg install -y mono5.20" should get you the correct version.

From what I'm reading, the plan is to get "mono" to 6.8, but it currently breaks some dependent packages. So until those get fixed, they temporarily put separate ports out.

The mono6.8 pkg seems to break network connectivity for Sonarr and Radarr. If I attempt to update both apps say "failed to fetch update." Also all indexers fail to connect. As soon as I reverted back to mono v6.4 everything worked. I also tried this on a new clean 12.2 jail with the same result.
 

hertzsae

Contributor
Joined
Sep 23, 2014
Messages
118
The mono6.8 pkg seems to break network connectivity for Sonarr and Radarr. If I attempt to update both apps say "failed to fetch update." Also all indexers fail to connect. As soon as I reverted back to mono v6.4 everything worked. I also tried this on a new clean 12.2 jail with the same result.
That's unfortunate. As a data point, I'm on 11.3U5 with jails at 11.4-RELEASE-p6 and mono6.8 works for both Sonarr 2.0.0.5344 and Radarr 3.0.1.4259 installed manually (no plugins).

My sonarr jail was created with the following command:
Code:
iocage create -n "sonarr" -r 11.4-RELEASE interfaces="vnet0:bridge0" defaultrouter="none" vnet="on" dhcp="on" bpf="yes" allow_raw_sockets="1" boot="on"
 

raidflex

Guru
Joined
Mar 14, 2012
Messages
531
That's unfortunate. As a data point, I'm on 11.3U5 with jails at 11.4-RELEASE-p6 and mono6.8 works for both Sonarr 2.0.0.5344 and Radarr 3.0.1.4259 installed manually (no plugins).

My sonarr jail was created with the following command:
Code:
iocage create -n "sonarr" -r 11.4-RELEASE interfaces="vnet0:bridge0" defaultrouter="none" vnet="on" dhcp="on" bpf="yes" allow_raw_sockets="1" boot="on"

I am on Sonarr V3, that could be the issue also, although my radarr version is the same as yours. I am also on Truenas 12.2-U1 and tested in a 12.2 Jail, this is also with a manual install in a basejail.

I also have Vlans setup as well, so a little more complicated setup.

All I know is I can easily replicate the issue by switching from v6.4 to v6.8. If I go back to v6.4 everything is working fine. Its not really a big deal since everything works fine with mono v6.4, just something I noticed.
 

rmccullough

Patron
Joined
May 17, 2018
Messages
269
It is worth noting that when I installed mono6.8 in my Radarr jail, it removed Radarr since it is flagged as being dependent on mono 5.10. You also can't just re-install Radarr as that will then revert mono as well. So what I did was setup a temp jail, installed Radarr, and then tar/gz the /usr/local/share/radarr directory and extracted it in my Radarr jail. I also had to copy/paste the /usr/local/etc/rc.d/radarr startup script.

I may try to do this upgrade for Sonarr next week. Before I do, I think I will make sure to backup the Sonarr directory and the startup script beforehand to save me from needing to standup the temp jail.

Lastly, make sure to stop the service before installing mono 6.8. I found Radarr was uninstalled, but the process was still running. Very weird.
 

raidflex

Guru
Joined
Mar 14, 2012
Messages
531
It is worth noting that when I installed mono6.8 in my Radarr jail, it removed Radarr since it is flagged as being dependent on mono 5.10. You also can't just re-install Radarr as that will then revert mono as well. So what I did was setup a temp jail, installed Radarr, and then tar/gz the /usr/local/share/radarr directory and extracted it in my Radarr jail. I also had to copy/paste the /usr/local/etc/rc.d/radarr startup script.

I may try to do this upgrade for Sonarr next week. Before I do, I think I will make sure to backup the Sonarr directory and the startup script beforehand to save me from needing to standup the temp jail.

Lastly, make sure to stop the service before installing mono 6.8. I found Radarr was uninstalled, but the process was still running. Very weird.

What I did was lock the sonarr and radarr packages so when I installed mono 6.8 it only removed mono 5.10 and not radarr/sonarr packages.
 

hertzsae

Contributor
Joined
Sep 23, 2014
Messages
118
I didn't use the pkg system to install sonarr/radarr. I somewhat followed the directions in the guide over in the resources section, customizing it heavily for my environment. Perhaps there's something with the pkg install that doesn't mesh with the newer mono and it is likely worth trying to install them manually.
 

sindreruud

Dabbler
Joined
Sep 21, 2017
Messages
24
The new pkg worked for me, and it is a very simple process done in 2 minutes. But please do a snapshot of your jail and config before.

FreeNAS 11.3U5
Jail is 11.4-RELEASE-p6
Radarr 3.0.1.4259
mono-5.10.1.57_3

My steps was:

SSH into the FreeNAS.

Get into the jail
iocage console radarr

Stop radarr
service radarr stop

Lock the radarr package (otherwise it will be removed when updating mono, because it is a dependency)
pkg lock radarr

See which mono packages are available
pkg search mono

At the time of writing, it is one of these
Code:
mono-5.10.1.57_3               Open source implementation of .NET Development Framework
mono-addins-1.3_1              Mono framework to create extensible applications
mono-basic-4.7                 VisualBasic.NET support for Mono
mono5.10-5.10.1.57_3           Open source implementation of .NET Development Framework
mono5.20-5.20.1.34             Open source implementation of .NET Development Framework
mono6.8-6.8.0.123              Open source implementation of .NET Development Framework
monodevelop-7.6.11.7_2         IDE for the .NET platform


I decided to go for 5.20 as that is what radarr suggested. So go ahead and install it
pkg install mono5.20-5.20.1.34

It will prompt you to confirm that you want to remove the old mono pkg and install the new one. WARNING, if you did not pkg lock radarr, it wil also remove radarr during this install.

Start radarr again
service radarr start

That's it! Super simple, done in 2 minutes.
 

Mannekino

Patron
Joined
Nov 14, 2012
Messages
332
@sindreruud thank you, I tried this and it worked just fine. Except the rc script for Radarr was broken for me. I originally installed Radarr using the pkg package and the rc script using a different name for the pid file, I changed that line in the script so it points to radarr.pid now.
 

verinas

Dabbler
Joined
Mar 29, 2016
Messages
34
Not having any joy with this so far.

I have Radarr installed as a plugin on 11.2-RELEASE-p15 (freenas is FreeNAS-11.3-U1 but this was an older iocage)
1) service stop radarr doesn't work as Radarr isn't running as service in this plugin for whatever reason. The only way I could stop radarr was the kill the mono process.
2) I can't upgrade the jail I get an error "A plugin manifest matching radarr could not be found!"
3) I followed the original steps to upgrade mono but when I try to make -DBACH install clean anything I get the following error:
===> mono-5.20.1.34_3 pkg(8) must be version 1.15.9 or greater, but you have
1.12.0. You must upgrade the ports-mgmt/pkg port first.
4) I gave up trying to resolve 3 because it wouldn't let me upgrade ports-mgmt/pkg either
5) pkg search mono only finds 5.10 despite others posting that newer versions are available. I have no idea why.

Any ideas on how to resolve this on my 11.2 jail before I have to create a new one?
 

hertzsae

Contributor
Joined
Sep 23, 2014
Messages
118
@verinas, if you're using a plugin, then I would only update through the plugin system. If you want to manually update things, then I would create a jail manually. It's pretty easy to create a new jail and copy your config over. There's a pretty good guide in the resources section on creating a bunch of jails including radarr.
 

Brownz

Dabbler
Joined
Sep 5, 2017
Messages
23
The new pkg worked for me, and it is a very simple process done in 2 minutes. But please do a snapshot of your jail and config before.

FreeNAS 11.3U5
Jail is 11.4-RELEASE-p6
Radarr 3.0.1.4259
mono-5.10.1.57_3

My steps was:

SSH into the FreeNAS.

Get into the jail
iocage console radarr

Stop radarr
service radarr stop

Lock the radarr package (otherwise it will be removed when updating mono, because it is a dependency)
pkg lock radarr

See which mono packages are available
pkg search mono

At the time of writing, it is one of these
Code:
mono-5.10.1.57_3               Open source implementation of .NET Development Framework
mono-addins-1.3_1              Mono framework to create extensible applications
mono-basic-4.7                 VisualBasic.NET support for Mono
mono5.10-5.10.1.57_3           Open source implementation of .NET Development Framework
mono5.20-5.20.1.34             Open source implementation of .NET Development Framework
mono6.8-6.8.0.123              Open source implementation of .NET Development Framework
monodevelop-7.6.11.7_2         IDE for the .NET platform


I decided to go for 5.20 as that is what radarr suggested. So go ahead and install it
pkg install mono5.20-5.20.1.34

It will prompt you to confirm that you want to remove the old mono pkg and install the new one. WARNING, if you did not pkg lock radarr, it wil also remove radarr during this install.

Start radarr again
service radarr start

That's it! Super simple, done in 2 minutes.

I have followed this guide, except when I run the pkg search mono command it returns these results instead:

Code:
anomaly-mono-g20200110         Retrofuturism inspired monospaced programming font
ap24-mod_mono-3.13             Apache module for serving ASP.NET applications
ar-ae_fonts_mono-1.0_5         Collection of PCF fonts that include Arabic glyphs
consolamono-ttf-20130127_2     Monospace font created for programming, text editors and terminal-use
fantasque-sans-mono-1.8.0      Programming font, designed with functionality in mind
jetbrains-mono-2.001,1         Free and open source typeface for developers
mono-5.10.1.57_3               Open source implementation of .NET Development Framework
mono-addins-1.3_1              Mono framework to create extensible applications
mono-basic-4.7                 VisualBasic.NET support for Mono
monodevelop-7.6.11.7_2         IDE for the .NET platform
monoid-0.61_1                  Coding font with alternates, ligatures and contextual positioning
monolith-2.3.1_1               CLI tool for saving complete web pages as a single HTML file
monotone-1.1_19                Distributed version control system with digital signatures
p5-Monoceros-0.27_1            PSGI/Plack server w/ event driven connection manager, prefork workers
py27-monotonic-1.5             Python 3 monotonic time module for Python 2
py37-monotonic-1.5             Python 3 monotonic time module for Python 2
rubygem-mono_logger-1.1.0      Lock-free logger compatible with Ruby 2.0
steps-mono-0.3.29              Monospace font created for the French magazine Etapes
victor-mono-ttf-1.4.1          Programming font with cursive italics and ligatures
wine-mono-4.9.4_1              Mono .NET implementation for Wine
wine-mono-devel-5.1.0          Mono .NET implementation for Wine development branch

Not sure why my output is different but the search list doesn't show the new mono versions (mono 5.20 and 6.8 are missing).
I also upgraded my jail version to '11.4-RELEASE-p6 ' to make sure I was running a similar environment.
I tried running various install commands but surprisingly they are not available.

Anyone got any ideas how I can access the new mono packages?
 
Top