众所周知,让我们的Linux系统保持最新状态将使用多个包管理器。例如,在Ubuntu中,您无法使用sudoaptupdate和sudoaptupgrade命令升级所有软件。此命令仅升级使用APT包管理器安装的应用程序。您可能使用cargo、pip、npm、snap、flatpak或Linuxbrew包管理器安装了其他软件。您需要使用适当的包管理器来使它们全部更新。再也不!向topgrade打个招呼吧,这是一种可以同时升级系统上所有软件的工具。您不需要运行每个包管理器来更新包。这个topgrade工具通过检测已安装的包、工具、插件并运行相应的包管理器来更新Linux中的所有软件,用一条命令解决了这个问题。它是免费和开源的,用Rust语言编写。它支持GNU/Linux和MacOSX。在Linux中使用一条命令升级AUR中存在的所有软件topgrade。因此,您可以在任何基于Arch的系统中使用Yay帮助程序安装它。$yay-Stopgrade在其他Linux发行版上,您可以使用cargo包管理器安装topgrade。要安装cargopackagemanager,请参考以下链接:在Linux上安装rust语言然后,运行以下命令安装topgrade。$cargoinstalltopgrade安装完成后,运行topgrade升级Linux系统中的所有软件。$topgrade调用topgrade后,它将一项一项执行以下任务。如有必要,系统会要求您提供root/sudo用户密码。1.运行系统的包管理器:Arch:运行yayorfallbacktopacmanCentOS/RHEL:运行yumupgradeFedora:运行dnfupgradeDebian/Ubuntu:运行aptupdate和aptdist-upgradeLinux/macOS:运行brewupdate和酿造升级2。检查Git是否跟踪以下路径。如果有,请拉取它们:~/.emacs.d(无论你使用Spacemacs还是自定义配置都应该可用)~/.zshrc~/.oh-my-zsh~/.tmux~/.config/fish/config.fish自定义路径3.Unix:运行zplugupdate4.Unix:使用TPM升级tmux插件5.运行cargoinstall-update6。升级Emacs包7.升级Vim包。两者都可用于以下插件框架:NeoBundleVundlePlug8、升级npm全局安装包9、升级Atom包10、升级Flatpak包11、升级snap包12、Linux:运行fwupdmgr以显示固件升级。(仅查看??。不会实际执行升级)13.运行自定义命令。***,topgrade将运行needrestart以重新启动所有服务。在MacOSX上,它更新AppStore程序。我的Ubuntu18.04LTS测试环境的示例输出:好处是,如果一个任务失败,它会自动运行下一个任务并完成所有其他后续任务。***,它将显示一个摘要,其中包含运行了多少任务、成功了多少以及失败了多少等详细信息。推荐阅读:就个人而言,我喜欢创建一个像topgrade这样的程序并使用一个命令升级使用各种包管理器安装的所有软件的想法。我希望你也觉得它有用。还有更多好东西。敬请关注!
