Getting started with .NET on Ubuntu Linux

Written by xameeramir | Published 2017/12/25
Tech Story Tags: ubuntu | dotnet-core | linux | mono | ide

TLDRvia the TL;DR App

Since, ASP.NET vNext’s open source .NET core’s [1.0.0](https://github.com/aspnet/Home/wiki/Roadmap) release is nearby, I was trying to get my hands dirty with .NET outside Windows.

Install the .NET Version Manager (DNVM)

First install unzip and curl if you don’t already have them

sudo apt-get install unzip curl

Download and install DNVM

curl -sSL https://raw.githubusercontent.com/aspnet/Home/dev/dnvminstall.sh | DNX_BRANCH=dev sh && source ~/.dnx/dnvm/dnvm.sh

Use dnvm to verify installation

Installing the Mono.NET Execution Environment (DNX)

.NET core is still immature, so for the time being it’s better to at least get started with Mono.

The below commands were tested on a 64bit laptop to install Mono on Ubuntu:

  • 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 using echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list
  • Update repolist using sudo apt-get update
  • Install mono-devel using sudo apt-get install mono-devel
  • Install mono-complete using sudo apt-get install mono-complete
  • Install referenceassemblies-pcl using sudo apt-get install referenceassemblies-pcl

Verify installation using dpkg

apt-cache policy <package-name> can also be used to verify installation

I was having troubles setting up Mono on my Ubuntu 14.4 machine, I was not able to get required [ca-certificates-mono](http://www.mono-project.com/docs/getting-started/install/linux/#notes) package.

So, I had uninstalled Mono with sudo apt-get purge mono-complete and followed the above commands.

Installing libuv

To host ASP.NET MVC 5 apps outside IIS, it’s necessary to install libuv, follow the below commands:

sudo apt-get install make automake libtool curlcurl -sSL https://github.com/libuv/libuv/archive/v1.4.2.tar.gz | sudo tar zxfv - -C /usr/local/srccd /usr/local/src/libuv-1.4.2sudo sh autogen.shsudo ./configuresudo makesudo make installsudo rm -rf /usr/local/src/libuv-1.4.2 && cd ~/sudo ldconfig

Install Monodevelop IDE

From VS code docs

An example of a non-supported project type is an ASP.NET MVC Application.

In this case, MonoDevelop can be used

sudo apt-get install monodevelop

which supports ASP.NET MVC projects.

Phew, it looks like everything is ready to see .NET in action outside Windows.

Photos

Originally published at xameeramir.github.io.


Published by HackerNoon on 2017/12/25