はじめに
仕事用検証環境でMono(mono-complete)が必要でしたが、公式のやり方だとapt-keyがProxyに阻まれインストールできず。
18.04からはaptでインストールできるようになったと聞き、入れてみましたが4系の最新版が入ってくるので検証したいアプリ動かず、という状況でした。
sudo apt install mono-complete
なんとか5系の最新版をインストールしたかったので探ったところ、GithubのIssuesで「aptのリポジトリに追加したらええで!(超意訳)」って書いてあったのでやってみました。
事前準備
たぶん大丈夫だと思いますが、ネットワーク設定(主にProxy)を行ってブラウザでググれる(証明書エラーとか出ない)状況を前提とします。
また、aptも個別でProxy設定する必要があるので、通常のapt update
がエラー無く行えることを確認してください。
最新版をインストールする
-
下記コマンドを実行して、鍵を取得する
--keyserver
の後ろに--keyserver-option http-proxy=http://proxyaddress:port
を付けてあげると、Proxyに阻まれずkeyserverに接続できるようになります。
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --keyserver-option http-proxy=http://proxyaddress:port --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
```
-
下記コマンドを実行して、リポジトリを追加する
echo "deb https://download.mono-project.com/repo/ubuntu stable-bionic main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list
```
-
apt update
を実行する(ここでエラーになった場合は、下記「エラーになる場合」を参照)
sudo apt update
```
-
apt install mono-complete
を実行してインストールする
sudo apt install mono-complete
```
-
Monoのバージョンを確認する
mono --version
```
ここのページのバージョンと同じであることを確認してください。
最新版にアップデートする
すでにmono4系をインストールしている場合はこちら
-
下記コマンドを実行して、鍵を取得する(すでに取得済みであれば不要)
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --keyserver-option http-proxy=http://proxyaddress:port --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
```
-
下記コマンドを実行して、リポジトリを追加する
echo "deb https://download.mono-project.com/repo/ubuntu stable-bionic main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list
```
-
apt update
を行う(ここでエラーになった場合は、下記「エラーになる場合」を参照)
sudo apt update
```
-
apt upgrade
を行う
sudo apt upgrade
```
-
Monoのバージョンを確認する
mono --version
```
エラーになる場合
お使いの環境(主にProxy)により、https://~
だとエラーになる可能性があります。
その場合は/etc/apt/sources.list.d/mono-official-stable.list
を開いてdev http://~
に修正してください。
Monoのリポジトリ
下記のURLにMonoのバージョンが各種ありますので、必要に応じてインストールしたいリポジトリを変更すると最新版以外の任意のバージョンがインストールできると思われます。
参考
【2019/4/4大幅修正】
投稿後、しばらくして自分でやってみたらできなかったので修正しました。
すまねぇ・・・すまねぇ・・・。