Apt 错误地将当前安装的 `code` 包标记为不同的版本

Apt 错误地将当前安装的 `code` 包标记为不同的版本

我正在使用 Pop!_OS 18.04 和 VS Code。不幸的是,Popcode在其存储库中提供的软件包略有损坏,我更喜欢使用 Microsoft 提供的code。我已添加其源代码,apt 可以看到它。我也有这个/etc/apt/preferences.d/vs-code-prefer-microsoft

Package: code
Pin: origin "packages.microsoft.com"
Pin-Priority: 1000

apt-cache policy code打印如下:

code:
  Installed: (none)
  Candidate: 1.58.2-1626302803
  Version table:
     1.58.2-1626302803 500
        500 http://apt.pop-os.org/proprietary bionic/main amd64 Packages
        100 /var/lib/dpkg/status
     1.58.2-1626302803 1000
        500 http://packages.microsoft.com/repos/code stable/main amd64 Packages
     1.58.1-1626158276 1000
        500 http://packages.microsoft.com/repos/code stable/main amd64 Packages

apt install code从 下载软件包http://packages.microsoft.com并成功安装,但随后apt-cache policy code坚持apt.pop-os.org安装该版本:

code:
  Installed: 1.58.2-1626302803
  Candidate: 1.58.2-1626302803
  Version table:
 *** 1.58.2-1626302803 500
        500 http://apt.pop-os.org/proprietary bionic/main amd64 Packages
        100 /var/lib/dpkg/status
     1.58.2-1626302803 1000
        500 http://packages.microsoft.com/repos/code stable/main amd64 Packages

并且apt upgrade每次都想“降级”它。apt list --upgradable但没有提到它。

我已尝试将包的优先级设置apt.pop-os.orgcode50反映apt-cache policy code这一点,但问题仍然存在。

我怎样才能让它可靠地工作?我希望 Microsoft 版本始终是首选。

相关内容