回滚单声道 4.0.1 到 3.12.0

Rollback mono 4.0.1 to 3.12.0

所以,我们的单声道从 3.12.0 更新到 4.0.1,并导致了 nunit 的一系列问题,如下所示:New SIGABRT after upgrading to Mono 4 running NUnit tests虽然升级到 4.1.0 快照修复了这些问题,但它没有尚未正式发布,我们不想使用它。相反,我们想降级回 3.12.0,但似乎我什至无法做到这一点。 运行 apt-cache showpkg mono-complete 只给我以下选项

matt@matt-T420:~/vw3$ apt-cache showpkg mono-complete
Package: mono-complete
Versions: 
4.0.1-0xamarin4 (/var/lib/apt/lists/download.mono-project.com_repo_debian_dists_wheezy_main_binary-amd64_Packages)
 Description Language: 
                 File: /var/lib/apt/lists/ca.archive.ubuntu.com_ubuntu_dists_vivid_universe_binary-amd64_Packages
                  MD5: dacc30c6a4347277b44c68a99c998d5f
 Description Language: en
                 File: /var/lib/apt/lists/ca.archive.ubuntu.com_ubuntu_dists_vivid_universe_i18n_Translation-en
                  MD5: dacc30c6a4347277b44c68a99c998d5f

3.2.8+dfsg-4ubuntu4 (/var/lib/apt/lists/ca.archive.ubuntu.com_ubuntu_dists_vivid_universe_binary-amd64_Packages)
 Description Language: 
                 File: /var/lib/apt/lists/ca.archive.ubuntu.com_ubuntu_dists_vivid_universe_binary-amd64_Packages
                  MD5: dacc30c6a4347277b44c68a99c998d5f
 Description Language: en
                 File: /var/lib/apt/lists/ca.archive.ubuntu.com_ubuntu_dists_vivid_universe_i18n_Translation-en
                  MD5: dacc30c6a4347277b44c68a99c998d5f

但是,如果我浏览到 http://origin-download.mono-project.com/repo/debian/dists/wheezy/snapshots/3.12.0/,我可以看到该包,但我不确定如何将它添加到我的存储库列表中。我不知道如何将 echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list 修改为 pint 到那个 3.12.0 文件夹。

我基本上只是想吹走 mono-4.0,重新安装 3.12.0,然后 pin/hold 在那个版本。有人可以帮忙吗?

用 apt 降级软件包有点痛苦。

you'll basically need to "apt-get install libfoo=3.12.1-0xamarin4" with every upgraded lib on the same command line.

来源:https://twitter.com/directhex/status/596382226121674752(来自 Mono 包的创建者)

您可以按照http://www.mono-project.com/docs/getting-started/install/linux/#accessing-older-releases

添加旧包repo的快照

首先删除单声道 4.0.1

sudo apt-get remove mono-complete

sudo apt-get purge mono-complete

sudo apt-get autoremove

经过几次尝试,我修改了我的回购协议,这似乎奏效了:

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

然后 运行:

sudo apt-get update

sudo apt-get install mono-complete

mono --version

我现在运行3.12