我最近了解了 Windows 10 内置的令人惊奇的(理论上)命令“winget”。
但有些事情让我担心:很多软件在安装程序中都选择了各种不利于用户的默认设置,从“启用遥测”到“同时安装这个额外的、不需要的恶意软件”。每当我手动安装任何软件时,我都会非常小心地禁用所有这些设置。但是我该怎么做呢winget
?
好吧,我不敢“全部升级”来尝试它,所以我选择了一个随机的、很少使用且正常的程序来尝试:Krita。
我之前在机器上手动安装了 Krita。现在我习惯winget upgrade KDE.Krita
升级 Krita。
它起作用了(但只有在我手动关闭 Krita 并接受“UAC”对话框之后,这让我怀疑这能有多自动化),但它确实在我的桌面上放置了一个 Krita 快捷方式,这是安装程序中的一个复选框,默认情况下是选中的,但如果是我的话,我永远不会将其选中。
所以这已经基本告诉我,winget
相信程序的制作者会使用他们希望你使用的任何东西。
遗憾的是,尽管这似乎是真的,但winget
对我来说却毫无用处。太多软件在更新时过于急于重新启用对用户不友好的选项(这几乎总是会重新运行整个安装程序)。
尽管如此,winget
如果我能够使用的话,那就太好了,所以我仍然在这里询问,看看你是否可以告诉我一些解决这个安全和隐私问题的方法。
答案1
首先,你误解了什么温格特是。它是一个类似于 Linux 的包管理器的包管理器。因此它可以从许多来源安装包。当然,如果你选择的来源不受信任,那么 winget 就无法对你设备的安全性做太多事情。但让我们假设我们谈论的是官方来源。
其次,你的实验并没有告诉你软件是否完全信任安装程序。为此,你需要了解被接受为软件包的过程。提到的官方来源有一些验证过程。微软社区一号有很多政策上市.其中一个链接至不需要的软件描述基本上涵盖了您所描述的情况。
您必须收到有关设备上正在发生的事情的通知,包括软件在做什么以及它是否处于活动状态。
缺乏选择的软件可能会:
(...)
未经您的许可、互动或同意,安装、重新安装或删除软件。
安装其他软件但没有明确指出其与主软件的关系。
版主会准确检查所有信息吗?我认为没有人能回答,但请记住,人为错误总是有可能的。就像您可能会错过一个随机的半隐藏复选框一样。
您也可以随时使用--override
或--interactive
开关在需要时向安装程序传递不同的选项。
答案2
对于 Winget repo 安全吗一位微软员工对此进行了回答:
Windows 软件包管理器社区应用存储库会对提交的软件包执行多次自动扫描,包括动态分析。成功扫描后,管理员还会在添加软件包之前检查元数据。它主要由社区维护,因此新版本软件的更新取决于社区或发布者是否保持最新。我们提供了工具来帮助发布者使用https://github.com/microsoft/winget-create
提交的内容似乎经过了扫描,结果由版主查看。你要么信任这个过程,要么不信任,但 winget 似乎不信任任何没有经过这个过程的东西。
我注意到,当您从某个网站下载并安装软件包时,它只会被您本地的防病毒软件扫描,您看不到任何结果或元数据。从这个方面来看,Winget 更安全一些。
答案3
温格特能从 MS 商店安装,但它也有自己的存储库。
我不知道它是否会继续更新,但 winget 安装和升级命令参数有几个值得关注的选项
-i,--interactive Request interactive installation; user input may be needed`
因此,您可以在初始安装期间调整选项,或者
--override Override arguments to be passed on to the installer`
这将需要应用程序的安装程序具有您需要的参数。
您可以单独更新具有特定选项的应用程序,然后使用 winget 批量更新其余应用程序。这有点麻烦,但这是最好的选择
winget install -?
您可以使用和查找选项winget update -?