欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

chocolatey_开始使用开源Windows软件包管理器:Chocolatey

程序员文章站 2024-03-21 17:11:22
...

chocolatey

早在1990年代,Linux是一个年轻的操作系统时, Ian Murdock就以现在的apt命令的形式发明了应用商店的概念。 这就提出了一个想法,即计算机的容量是无限的,实际上,任何命令都应该对您可用; 您要做的就是将其从网络存储库复制到本地系统。 当时这似乎是不可能的,但是现在不管是使用DNF或Apt的Linux计算机,使用Homebrew的Mac OS还是使用Chocolatey的 Windows,它现在都已经很普遍了。

Chocolatey是Windows的软件管理自动化工具,它将安装程序,可执行文件,ZIP文件和脚本包装到已编译的程序包中。 它以Apt和yum为模型,并为Microsoft操作系统开启了可自动化和可预测的程序包管理的新世界。 Chocolatey是开源的,并鼓励社区的参与。 学习和使用Chocolatey的人越多,其套餐产品就可以增长的越多。

Chocolatey的优势

如果您以前从未使用过软件包管理器,那么Chocolatey的优势可能不会立即显现出来。 当您开始使用Chocolatey时,可能只用一个或两个命令就可以使用所有出色的开源软件,这会让您感到兴奋。 您不必遍历互联网的各个角落来寻找炫酷的新应用程序。 数千个都是可发现的,并汇总在一个列表中(但仍然彼此独立在线,这是健康多样的生态系统的重要特征)。 一旦适应了要运行的许多新软件选择,就可以轻松地一次更新随Chocolatey一起安装的所有软件。 最后,如果您是一名开发人员,您会喜欢轻松安装和跟踪开发环境。

Chocolatey是迈向勇敢新世界的大胆一步,因此请做好准备!

安装Chocolatey

Chocolatey需要7-ZipPowerShell和管理员权限。 如果尚未安装7-Zip,请在安装Chocolatey之前先下载并安装。 它是一个功能强大的开源存档实用程序,无论有没有Chocolatey,您都会很高兴。

要在管理员模式下运行PowerShell,请单击桌面左下角的Windows菜单,然后键入powershell 右键单击应用程序菜单中的PowerShell条目,然后选择以管理员身份运行

创建执行策略的例外

PowerShell具有安全功能,可帮助用户设置基本规则以控制PowerShell何时可以运行脚本或加载重要的配置文件。 通过配置执行策略,用户可以避免无意中运行恶意脚本。

策略设置并不是限制性的,您可以通过PowerShell中的直接命令轻松地对其进行调整。 有许多策略定义可用,您可以使用以下命令检查当前策略:

 PS> Get-ExecutionPolicy 

如果返回Restricted ,则将其设置为AllSigned,以允许具有受信任的发布者有效签名的脚本(当您尝试运行由尚未归为受信任者签名的脚本时,它会提示您)。 为此,请执行以下操作:

 PS> Set-ExecutionPolicy AllSigned 

安装choco命令

在安装Chocolatey及其choco命令之前,请通读安装脚本。

因为以管理员身份运行PowerShell将您置于C:\ Windows \ stystem32目录中,所以请使用以下命令将其更改为硬盘驱动器上的合理位置,例如主目录:

PS> pwd
C:\Windows\System32
PS> cd \Users\$env.UserName

在撰写本文时,PowerShell中存在一个错误,导致它在通过Internet协商SSL时使用TLS 1.0。 您必须告诉它使用最新版本的TLS,最简单的方法是为PowerShell循环设置一些选择,直到找到正确的连接方法为止:

 PS> [Net.ServicePointManager]::SecurityProtocol = "Tls12, Tls11, Tls" 

下载安装脚本:

 PS> Invoke-Webrequest -Uri https://chocolatey.org/install.ps1 -OutFile chocolatey-install.ps1 

在您喜欢的文本编辑器中打开由Invoke-Webrequest命名为Chocolatey-install.ps1的下载文件,或者在PowerShell中读取它:

 PS> cat chocolatey-install.ps1 | more 

如果您不熟悉PowerShell,这是一种熟悉其语法的好方法。 更重要的是,阅读要运行的脚本是实现良好安全性的至关重要的一步。

阅读完安装脚本并对要执行的操作感到满意之后,请运行它:

 Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1')) 

运行巧克力

Chocolatey系统的主要界面是choco命令,您刚刚将其安装在计算机上。 使用choco ,您可以搜索软件包以进行安装,安装和更新。

如果您不知道存在哪些软件包,搜索软件包是一个挑战。 您可以使用list子命令列出(理论上)Chocolatey存储库中的所有软件包:

 PS> choco list 

在撰写本文时,这仅返回了8,000多个可用软件包中的大约1,000个软件包。 要浏览Chocolatey存储库中的所有软件包,请打开Web浏览器,然后导航至Chocolatey.org/packages

用choco搜索包裹

如果知道所需的软件包,则可以使用list选项以及软件包名称在Chocolatey存储库中进行搜索。 list选项有两个别名searchfind ,因此请使用最自然的子命令。)因为choco搜索标题和描述,通常会有很多输出,因此您可能希望通过更多过滤输出:

 PS> choco search git | more 

使用choco安装软件包

确认软件包的可用性后,请使用install命令将其安装在系统上:

 PS> choco install git 

根据应用程序类型的不同,可以从Windows菜单中使用它,也可以仅将其作为PowerShell命令使用。 例如, git默认情况下没有GUI,因此它仅是PowerShell命令,而前端git-cola是GUI应用程序,出现在Windows菜单中。

使用choco更新软件包

有两种方法可以更新使用choco安装的软件包。 您可以单独升级软件包,也可以一次升级所有软件包。

要仅升级一个软件包,请使用升级选项,后跟要升级的软件包的名称。 例如,要升级名为foo的软件包:

 PS> choco upgrade foo 

要升级所有软件包,请使用关键字all作为软件包名称:

 PS> choco upgrade all 

用巧克力去除包装

如果您确定某个软件包不可用,则可以使用uninstall子命令从其系统中清除该软件包,后跟要删除的软件包名称。 例如,删除一个名为foo的包:

PS> choco uninstall foo

探索开源

Chocolatey是开源的,它使安装许多有用的开源软件包变得非常容易。 但是,并非Chocolatey提供的所有内容都是开源的,因此请仔细检查许可证。

如果您不熟悉开源,那么这是发现新工具,库和应用程序的好方法。 如果您已经熟悉开源,Chocolatey提供了一种简单的方法来安装和维护您喜欢的软件包。 最重要的是,如果您要迁移到Linux,Chocolatey对重要的Linux概念进行了很好的介绍。 不要否认尝试巧克力味的乐趣。 比听起来更健康。

翻译自: https://opensource.com/article/20/3/chocolatey

chocolatey