问题标签 [chocolatey]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
vagrant - 如何管理安装在 Windows 开发机器上的应用程序?
什么工具可以让我以简单直接的方式管理 Windows 开发机器(和 Windows 詹金斯机器)上安装的内容?我想像这样制作一个文件:
然后我会在这个文件中指出这个幻想工具,它会做到这一点,在必要时进行升级等。
我看过 Saltstack(太难了)、Ansible(Linux 大师)、Chef(难)、Puppet(难)、Vagrant(VM)、Boxen(OSX),当然还有其他我忘记了。除了列出的原因之外,我仍然认为没有比我上面的幻想文件更多的配置,它们中的任何一个都无法工作。
我正在为包管理部分寻找 Chocolatey,它很棒。我只需要围绕它做一些简单的自动化。这个页面看起来很有希望,但它并不像我想的那么简单。
powershell - 管理 PowerShell 模块之间的共享代码
最近,我一直在深入研究 powershell 模块和清单的一些更高级的功能,以处理比一些功能的基本导出更高级的场景。听起来应该很明显,但我正在努力寻找一个很好的解决方案来在几个大型非平凡模块之间共享常见的“帮助”类型函数。特别是,我正在寻找一种解决方案:
- 允许共享“助手”类型的功能,而不必由任何人导出
- 允许从本地 repo 路径通过 PsGet 安装
让我谈谈我看到的一些挑战。
首先,据我所知,PsGet不能很好地处理模块依赖关系。这意味着模块之间的共享将是一场斗争。也许对此的解决方案是避免使用 PsGet,并使用自定义脚本将模块“安装”到本地模块路径,这可能更能容忍依赖关系和加载顺序。
我关于不使用模块导出来共享辅助函数的观点似乎也是一个问题。我可以看到的原因是希望别名、助手等用于常见的内部操作(在有用的函数中需要),这些操作要么是无用的,要么是不安全的。例如,用于获取本地脚本路径的简短别名(常用,比它应该的更嘈杂)。或者我最近用更少的选项围绕 PromptForChoice 做了一个简单的包装器。也许这整件事都不是一个真正的问题。但我不禁觉得,发布一个“utils”模块,它导出在真实模块中有用但对最终用户有用的低级函数,似乎是错误的方式。
我一直在玩的是一个小型构建结构,它可以测试然后打包模块,我希望能够实现一些代码共享。我一直在寻找在清单中使用 ScriptsToProcess 的替代方法,但这些似乎是绝对路径,而不是相对路径。
想象一个文件夹结构:
- 模块
- 实用程序
- console_helpers.ps1
- 模块A
- 模块A.psm1
- 模块A.psd1
- 模块B
- 模块B.psm1
- 模块B.psd1
- 打包模块
- 模块A.zip
- 模块B.zip
- 实用程序
我正在考虑的是你可以在每个 ScriptsToProcess 中列出相对路径,然后我的打包阶段将把这些相对路径拖到每个 zip 中。
这是一个可怕的疯狂想法吗?我对 ps 模块和 PsGet 真的没有像样的依赖支持吗?我很想听听任何研究过这个领域的人的反馈。我认为我希望获得粗略优先级的答案可能是:
- 这是共享代码而不公开代码的示例(可能是构建/打包级别的解决方案)
- 以下是如何使用 PsGet 使模块依赖项正常工作
- 以下是如何使模块依赖关系很好地工作,但你不能使用 PsGet
- 只需公开模块中的所有内容
- 这是一个糟糕的主意,你很糟糕
谢谢!
CalebB建议的更新
这是另一个示例来说明我要解决的问题。我发现用包装函数包装'&'风格的命令执行,处理检查退出代码等事情很有用。如果我正在构建六个模块,他们中的许多人会想要使用那个助手(明显地)。
我今天的选择似乎是把它放在一个模块中并导出它,但也许我不想把它导出,我想要更多的 . 源样式访问。如果我有一系列模块都在尝试使用这些东西,那么模块依赖管理的选项是有限的(PsGet 限制等)。
如果我一次“构建”所有模块(使用一些不错的 psake 和纠缠基础设施),也许我可以在此时使用 hack 将脚本嵌入到我的压缩模块中以“解决”所有这些问题?
node.js - Chocolatey 可以识别手动 nodejs 安装吗?
运行命令node -v
给出以下值:v0.10.33
. 我知道 Node.js 目前是 0.12 版。然而,当运行 a 时choco update nodejs
,提示显示“Nothing to update”。在“choco update npm”之后,npm 也会发生同样的情况。
我已经从他们网站 nodejs.org 上的安装包中安装了 Node.js。之后的一段时间,我还安装了 Chocolatey,并且时不时地使用该工具进行软件包安装。
是否可以让 Chocolatey 识别现有的 Node.js 安装并从那里选择 choco 更新?
我也希望能够以同样的方式从 Chocolatey 获取 npm 更新。
我没有最新的巧克力。
将 Chocolatey 升级到 v0.9.9.4 后
我使用 npm 更新了 Node.js。
但是,在版本 0.10.33 重新安装 Node.js 后,
我不能使用npm
:
在“npm.cmd”(C:\ProgramData\chocolatey\lib\npm\tools\npm.cmd)中找不到文件。这通常表示文件丢失或移动。
在我排除故障之前,我将暂时保留它。
chocolatey - 如何在没有确认的情况下更新所有 Chocolatey 应用程序?
我曾经能够打电话cup all
并更新我的应用程序。现在,它要求yes
确保我要安装选定的软件包。有没有一种方法可以让所有内容自动更新,而无需yes
为每次更新不断输入?
chocolatey - 如何在 Windows 上静默安装 Visual Studio Code?
当前观察到的行为:
- 调用 VSCodeSetup.exe
- 安装没有提示
- 代码打开,这对于 Windows 软件包来说有点令人惊讶
我正在创建一个 Chocolatey 包,理想情况下,我想要什么:
- 安装过程中没有横幅(但可以忍受)
- 代码打不开!伙计们,这对于包管理器来说是一个交易破坏者!
我意识到刚刚发布的 v 0.1.0 和我想要的东西可能是不可能的,但只是想公开它以防万一
- 这是可能的,并且
- 其他人可以帮助我弄清楚如何。
powershell - Where is the 'choco' command after a fresh install?
I installed Chocolatey and it works fine in the command prompt (cmd.exe
).
But, I'm lazy and want to call it from PowerShell. But, the command choco
is not recognized in PowerShell. I get something like
CommandNotFoundException
powershell - How to bypass Chocolatey install confirmation?
When I want to install packages like vagrant with chocolatey, I get the message:
The package vagrant wants to run 'chocolateyInstall.ps1'. Note: If you don't run this script, the installation will fail. Do you want to run the script?
Is there a way to overleap this question or something like a silent-mode?
One command for example in PowerShell:
Thanks in advance.
python - Permission denied on tools/python after chocolatey install?
Even though I have admin rights, I continue getting permission denied errors when writing to the files inside my chocolatey python installation. Why, how can I fix that?
c# - 如何创建一个依赖于“以项目为目标”的包的包?
我正在尝试创建一个巧克力包装。我最初创建了一个没有任何依赖项的版本,我只是在 tools/bin 目录中放置了一个 exe 文件,然后制作了一个简单的 nuspec 文件,这将正确地将 exe 文件安装到路径中,这就是我所需要的这个内部工具。
但是,该项目现在已经过重组,因此它依赖于外部依赖项。依赖项是一个 nuget 包,它与主项目位于同一存储库中。要添加依赖项,我将其添加到依赖项部分。Visual Studio 中的项目本身也依赖于此。这是我的nuspec文件:(我删除了一些数据,用rm标记,但应该不会影响它。其他一切都一样)
但是,当我尝试安装它时,我得到一个相当深奥的错误:
关于添加此依赖项,我做错了什么?