gpt4 book ai didi

ruby - 如何使用 Chocolatey 覆盖 Ruby 和 Ruby DevKit 安装目录?

转载 作者:数据小太阳 更新时间:2023-10-29 08:45:55 25 4
gpt4 key购买 nike

我对 chocolatey 有点陌生,过去在 Windows 8 上安装过几个软件包,我开始喜欢它了。

我注意到 chocolatey 将软件包安装在默认的 Windows 程序目录中(即“Program Files x86”左右)。也许还有更多我想念的东西。

对于 Ruby 2.1.5 和 Ruby DevKit 的具体情况,我有几个问题:

  • 如何确保使用 chocolatey 安装 x64 版本的 Ruby 和 Ruby DevKit?
  • 如何从 chocolatey 设置自定义安装目录?

我知道有一些关于更改安装目录的信息,但参数语法取决于正在安装的特定包使用的安装系统(如果有的话),在本例中为 Ruby & Ruby DevKit。我还没有找到 ruby​​ 和 ruby​​ devkit 在 Windows 上的 CLI 安装字符串。任何帮助是极大的赞赏。谢谢

最佳答案

预警

来自 *nix 的部分 Ruby 不喜欢空格。 gem 就是其中之一。这不是 Chocolatey 的东西,只是一个 FYI,以防万一您将它放入 Program Files 后遇到问题。它可能在那里不起作用,所以如果遇到问题,请将它移到其他地方。

如果我没记错的话,安装程序也不会真正更新权限,所以你要自己确保你的权限是好的,这样你就可以运行它了,例如Program Files 仅管理员可写,除非您运行管理提示(这是 UAC,它将您从非提升进程中的管理员组中删除),否则您不会拥有它。

保证 x64?

如果您使用的是 64 位系统并且软件包中包含 x64 url​​,您将获得该软件的 64 位版本,除非您专门使用 -x86 强制使用 32-位版本。

  • 查看 Ruby 2.1.5 package files - 我们看到 chocolateyInstall.ps1 有这一行(注意 $url64,所以我们很好):

安装-ChocolateyPackage "$packageId"'exe' "$silentArgs""$url""$url64"-checksum $checksum -checksum64 $checksum64

  • 查看 Ruby2.DevKit package files - chocolateyInstall.ps1 有这一行(再次使用 x64 url​​):

Get-ChocolateyWebFile 'ruby2.devkit' "$file"-url "$url"-url64bit "$url64"-checksum "$checksum"-checksum64 "$checksum64"-checksumType "$checksumType"

自定义安装文件夹

通常,您会通过 installargs 传递用于更改目录的 native 开关。然而,由于上述已知问题,这些软件包使用 Chocolatey 的 Get-BinRoot 来确定安装它们自己的位置。

Chocolatey 的 Get-BinRoot

Get-BinRoot 使用名为 ChocolateyBinRoot 的环境变量(默认设置为 $env:SystemDrive\tools)来确定放置位置某些实际上不符合 Program Files 条件的软件。您可以将其设置在任何您想要的位置,包括 Program Files 文件夹,它将使用该位置。

为 v2 安装 Ruby 和 DevKit

  • choco install ruby​​ -version 2.1.5
  • 如果在 cmd.exe refreshenv 中,否则关闭并重新打开 shell。
  • choco install ruby​​2.devkit(注意ruby2)
  • 检查 DevKit 文件夹中的 config.yml 以查看它是否选择了 ruby​​ 安装,否则设置它并运行 ruby dk.rb install(您可能需要force) 在 devkit 文件夹中将其安装到 ruby​​ 中。有关详细信息,请参阅 DevKit
  • 如果在 cmd.exe refreshenv 中,否则关闭并重新打开 shell。
  • 现在我想说您可以安装 gems,但您仍然需要处理更新 ssl certificate for rubygems.org 的问题。我在 vagrant-windows-puppet 上有一个例子。
  • 完成。

关于ruby - 如何使用 Chocolatey 覆盖 Ruby 和 Ruby DevKit 安装目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28745148/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com