39

I have been having a play using MS Azure through Ubuntu, but in order to manage my Azure Server, it's asked me to install Silverlight which has then directed me to install Mono.

I've downloaded Mono but the Archive Manager won't open it.

Reading around, I am guessing this is because I am running a 64-bit system, and I gather that to get Mono running in 64-bit, it needs installing through code.

I'm super new to both Ubuntu and Linux. Please advise what to run in a terminal session in order to get Mono installed so that I can get back to Azure.

4 Answers 4

63

To install mono

sudo apt-get install mono-complete

Silverlight is not available on Linux, but you can try alternatives such as Pipelight.

2
  • sudo apt-get install mono-complete worked for me, many thanks for your help.
    – Jon295087
    Jul 18, 2014 at 6:46
  • If you get a "package not found" type of error, you need to run sudo apt-get update first to update the list of known packages on your machine.
    – ashes999
    Feb 26, 2017 at 17:57
8

Installing Mono if your are behind a proxy or a firewall When :

  1. Ports are blocked (keyserver.ubuntu.com:11371)
  2. When you are not able to add a signing key

Add Signing Key using

    wget "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF" -O out && sudo apt-key add out && rm out

Add Repository

    echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list  

Update repolist

sudo apt-get update    

Install Mono (using the package names in bold)

The package mono-devel should be installed to compile code.

The package mono-complete should be installed to install everything - this should cover most cases of “assembly not found” errors.

The package referenceassemblies-pcl should be installed for PCL compilation support - this will resolve most cases of “Framework not installed: .NETPortable” errors during software compilation.

1
  • 1
    +1 for describing the steps. Is helpful for new readers Jan 11, 2016 at 6:09
3

Intro

sudo apt-get install mono-complete does in fact install mono in most cases as expected. But if you only install mono-complete without first adding Mono Project GPG signing key and the package repository (and updating the repolist) you are in a great danger to be using the old and obsolete versions of TLS/SSL algorithms among other potentially harmful pieces of code, at least for now.

If you want to use mono more safely you should follow the instructions described in mono-project.com install page or a similar one.

Example:


sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list
sudo apt-get update
sudo apt-get install mono-complete

Mono JIT compiler version 4.2.1 -> 4.4.2

Example2


apt-get -y update && \
  apt-get -y install \
  wget \
  tar \
  git \
  autoconf \
  libtool \
  automake \
  build-essential \
  mono-devel \
  gettext
wget http://download.mono-project.com/sources/mono/mono-4.6.0.125.tar.bz2 -O mono-4.6.0.125.tar.bz2
tar xvf mono-4.6.0.125.tar.bz2
cd "mono-4.6.0/"
./configure
make
make install

Mono JIT compiler version 4.2.1 -> 4.6.0.125 You can find the other stable versions out there on the same page also.

Background information

Testing done with the mono .Net implementation using ubuntu 16.04 and 14.04 (with docker).

Install only mono-complete:

  • Does not reject connections if server certificate is expired.

Do as instructed in the "Example1" or "Example2" -section

  • Reject connections if server certificate is expired.
  • More safe

I know this because i used trytls to test mono against badssl and other TLS/SSL testing-backends using C#-Net, F#-Net and VB-Net.

2

sudo apt-get install mono-xsp4

Works for me (first try sudo apt-get install mono-complete, but it still not working, then sudo apt-get install mono-xsp4 and works).

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .