choco 发布 x86 和 x64 包

问题描述

我一定是遗漏了什么。我想推送我的包的两个版本 - x86 和 x64。这是怎么做的?我没有找到任何关于它的文档,但基于这个问题似乎是可能的:https://github.com/chocolatey/ChocolateyGUI/issues/262

那么我如何发布同一个包的两种风格?

解决方法

除非您迫切需要同一个软件包的两个版本,否则您不需要其中的两个。 Chocolatey 的辅助函数在同一个 chocolateyInstall.ps1 脚本中支持 32 位和 64 位文件。

有关详细信息,请参阅 Install-ChocolateyPackage(其他帮助程序也有 32 位和 64 位微分器),但对于具有 64 对应项的参数(例如 -File 和 -File64 ),-File 应该是 32 位值,-File64 应该是 64 位值。其他人的工作方式大致相同。示例:

$installPkgArgs = @{
  File = 'https://server.domain.tld/installer32.msi'
  File64 = 'https://server.domain.tld/installer64.msi
  Checksum = '32bitinstallerchecksum'
  Checksum64 = '64bitinstallerchecksum'

  # Other args like SilentArgs,etc.
}

Install-ChocolateyPackage @installPkgArgs

在客户端,如果需要强制使用 32 位或 64 位版本(例如在 64 位系统上安装 32 位版本时),choco install --forceX86 pkg 将实现您想要的。您不太可能(尽管并非不可能)遇到使用单个包无法满足您需求的用例。