当前位置:   article > 正文

mac linux 切换,技术|Homebrew:让你从 Mac 切换到 Linux 更轻松

linuxbrew apt 优劣

不管你是想要更舒服地从 Mac 搬到 Linux,还是不满意常规的 Linux 包管理器,都可以试试 Homebrew。

Homebrew 项目最初是为了给 Mac 用户提供一个非官方的 Linux 式的包管理器。用户很快就爱上了它友好的界面以及帮助性的提示,而且,它已经被移植到 Linux 系统 —— 这看起来像是一个奇怪的命运转折。

一开始,有两个分开的项目分别针对 macOS 和 Linux (Homebrew 与 Linuxbrew),但是现在是由 Homebrew 核心管理着这两个操作系统。由于我正 从 Mac 切换到 Linux,所以一直在研究我在 macOS 最常用的开源软件在 Linux 表现如何,最终,我很高兴地发现 Homebrew 对 Linux 的支持太赞了!

为什么要在 Linux 使用 Homebrew 呢?

长期使用 Linux 的用户对 Homebrew 的第一反应是:“为什么不直接使用……呢”,省略号代表他们喜欢的某个 Linux 包管理器。基于 Debian 的系统早就有了 apt,基于 Fedora 的系统则有 dnf 和 yum,并且像 Flatpak 跟 AppImage 这样的项目,在两种系统上都能流畅运行。我花了不少时间尝试这些技术,不得不说,它们都有其强大之处。

那我为什么还要 坚持使用 Homebrew 呢?首先,我对它非常熟悉。在为我过去使用的专有软件寻找开源替代品的过程中,我已经学会了许多使用方法,而保持一些熟悉的东西,比如 Homebrew,可以让我专注于一次学习一件事情,而不是被不同系统间的差异搞垮。

此外,我没有看到哪一个包管理器像 Homebrew 一样,对用户如此友好。正如默认的帮助命令一样,命令井然有序:

$ brew -h

Example usage:

brew search [TEXT|/REGEX/]

brew info [FORMULA...]

brew install FORMULA...

brew update

brew upgrade [FORMULA...]

brew uninstall FORMULA...

brew list [FORMULA...]

Troubleshooting:

brew config

brew doctor

brew install --verbose --debug FORMULA

Contributing:

brew create [URL [--no-fetch]]

brew edit [FORMULA...]

Further help:

brew commands

brew help [COMMAND]

man brew

过于简短的输出可能会被误解为它功能局限,但是你简单看看每一个子命令,都有很丰富的功能。虽然上面的列表只有短短 23 行,但对高级用户来说,光是子命令 install 就包含整整 79 行的帮助信息:

$ brew --help | wc -l

23

$ brew install --help | wc -l

79

它可以选择忽略或者安装依赖关系,也可以选择用源代码编译以及用什么编译器来编译某个确切的上游 Git 提交,或者选择应用的官方 “灌装” 版。总而言之,Homebrew 即适合新手,也同样能满足老鸟。

开始在 Linux 使用 Homebrew

如果你想要试着使用 Homebrew,可以用这个单行脚本在 Mac 或者 Linux 上进行安装:

$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

这条命令会立即开始安装 Homebrew。如果你比较谨慎,可以使用 curl 将该文件下载到本地,检查完毕之后再运行。

$ curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh --output homebrew_installer.sh

$ more homebrew_installer.sh # 审核该脚本,直到你觉得没问题了

$ bash homebrew_installer.sh

对 Linux 的安装步骤还包括如何配置点文件,对于 Debian 系统来说是 ~/.profile,对于 Fedora 系统是 ~/.bash_profile。

$ test -d /home/linuxbrew/.linuxbrew && eval $(/home/linuxbrew/.linuxbrew/bin/brew shellenv)

$ test -r ~/.bash_profile && echo "eval \$($(brew --prefix)/bin/brew shellenv)" >>~/.bash_profile

$ echo "eval \$($(brew --prefix)/bin/brew shellenv)" >>~/.profile

为了确认已经安装好,Homebrew 团队提供一个空的 hello “秘方” 供测试:

$ brew install hello

==> Downloading https://linuxbrew.bintray.com/bottles/hello-2.10.x86_64_linux.bottle.tar.gz

######################################################################## 100.0%

==> Pouring hello-2.10.x86_64_linux.bottle.tar.gz

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/381719
推荐阅读
相关标签