当前位置: 首页 > news >正文

鸿蒙PC的包管理工具 Homebrew 正式上线,Harmonybrew介绍及使用指南

OpenHarmony 作为华为开源的操作系统,正在快速发展。然而,与 Linux 生态相比,OpenHarmony 上的包管理工具一直相对匮乏。开发者想在鸿蒙设备上安装开发工具、命令行软件时,往往需要手动下载、编译、配置,过程繁琐且不易维护。好消息来啦,鸿蒙PC上的包管理工具 Homebrew 上线。这是专为OpenHarmony系统打造的 Homebrew 移植版本,旨在将 Homebrew 强大而优雅的包管理能力带入鸿蒙生态。让熟悉的包管理体验,在鸿蒙世界里延续。

官方网站:https://harmonybrew.atomgit.com/


一、什么是 Harmonybrew?

Harmonybrew是一个开源的包管理器,它将经典的Homebrew(macOS / Linux 上最流行的包管理工具)移植到了OpenHarmony操作系统上。这意味着,开发者可以在鸿蒙设备上使用熟悉的brew installbrew searchbrew update等命令来安装和管理软件包。类似于Ubuntu上的apt-get或CentOS上的yum包管理工具,功能类似于Homebrew(Homebrew是Mac上最好用的包管理工具)。‌‌

特性说明
开源免费基于 Homebrew 开源项目,遵循 BSD 2-Clause 许可证
原生体验命令语法与 Homebrew 完全一致,零学习成本
鸿蒙适配针对 OpenHarmony 内核和文件系统做了深度适配
arm64 支持目前支持 arm64 架构的鸿蒙设备
多形态设备支持鸿蒙 PC、鸿蒙开发板、鸿蒙容器

二、背景与意义

OpenHarmony 作为华为开源的操作系统,正在快速发展。然而,与 Linux 生态相比,OpenHarmony 上的包管理工具一直相对匮乏。开发者想在鸿蒙设备上安装开发工具、命令行软件时,往往需要手动下载、编译、配置,过程繁琐且不易维护。

Harmonybrew 的目标就是填补这一空白。通过将 Homebrew 的强大能力带入 OpenHarmony,开发者可以:

  • 一键安装常用的命令行工具
  • 自动解决依赖关系
  • 方便地更新和卸载软件
  • 利用庞大的 Homebrew 生态(逐步适配)

三、支持的设备

Harmonybrew 目前支持三种设备形态:

3.1 鸿蒙 PC

项目说明
代表产品HUAWEI MateBook Pro
最低系统版本HarmonyOS 6.1.0.117 SP68
命令行环境HiShell
架构arm64

在鸿蒙 PC 上使用 Harmonybrew 最为便捷,HiShell 终端提供了完整的 shell 环境,安装体验最接近原生的 Homebrew。

3.2 鸿蒙开发板

项目说明
代表产品dayu200 (rk3568)
最低系统版本OpenHarmony 6.1
命令行环境hdc shell
架构arm64

通过 hdc(鸿蒙设备连接器)连接开发板,可以在开发板上使用 Harmonybrew。需要注意的是,部分目录需要手动配置,且数据在重启后可能丢失(需重新创建软链接)。

3.3 鸿蒙容器

项目说明
代表产品DockerHarmony
最低系统版本OpenHarmony 6.1
命令行环境任意
架构arm64

适合 CI/CD 环境或开发测试场景,容器内操作与开发板类似,但更方便管理和部署。

架构说明:目前仅支持arm64架构。


四、安装指南

4.1 在鸿蒙 PC 上安装

鸿蒙 PC 是体验 Harmonybrew 的最佳平台,安装步骤非常简单。

第一步:卸载冲突软件

如果 PC 中安装有GitNextDevBox这两个应用,请先将它们卸载。这些应用可能与 Homebrew 的运行环境产生冲突。

第二步:打开安全开关

进入设置 → 系统 → 开发者选项,打开“开发者选项”开关。

然后进入设置 → 隐私和安全 → 高级,打开“运行来自非应用市场的扩展程序”开关。

第三步:安装 Homebrew

在 HiShell 终端中执行以下命令:

zsh -c "$(curl -fsSL https://harmonybrew.atomgit.com/install.sh)"

安装脚本会自动检测系统环境,下载并安装适合鸿蒙系统的 Homebrew。

第四步:配置环境变量

安装完成后,按照脚本的提示,将 Homebrew 加入 PATH:

echo >> ~/.zshrc echo 'eval "$(/storage/Users/currentUser/.harmonybrew/bin/brew shellenv)"' >> ~/.zshrc eval "$(/storage/Users/currentUser/.harmonybrew/bin/brew shellenv)"

配置完成后,重新打开终端,输入brew --version确认安装成功。


4.2 在鸿蒙开发板上安装

开发板的安装步骤稍多一些,需要手动配置目录和环境。

第一步:配置所需目录

Homebrew 运行过程中需要使用$HOME/usr/bin/storage/Users/currentUser等目录,需要手动配置:

mount -o remount,rw / mkdir -p /usr mkdir -p /data/storage/Users/currentUser ln -s /bin /usr/bin # /storage 目录在 tmpfs 上,数据无法持久化,每次重启设备后需要重新创建软链接 ln -s /data/storage/Users /storage/Users # hdc shell 环境下 HOME 变量默认指向 / 目录,这个目录可用空间很少 # 需要将其指向一个大容量的目录 # 此配置仅在当前终端有效,每次进入 hdc shell 需要重新设置 export HOME=/storage/Users/currentUser
第二步:安装 curl 和 zsh

在上位机(Windows 电脑)下载好鸿蒙版 curl鸿蒙版 zsh,并用 hdc 将 tar 包推到设备上。

在设备上解压,把里面的命令软链接到/usr/bin目录:

mount -o remount,rw / tar -zxf curl-8.19.0-ohos-arm64.tar.gz -C /data ln -s /data/curl-8.19.0-ohos-arm64/bin/curl /usr/bin/curl tar -zxf zsh-5.9-ohos-arm64.tar.gz -C /data ln -s /data/zsh-5.9-ohos-arm64/bin/zsh /usr/bin/zsh
第三步:安装 Homebrew

确保开发板已联网,然后执行:

zsh -c "$(curl -fsSL https://harmonybrew.atomgit.com/install.sh)"
第四步:配置环境变量

手动将 Homebrew 加入到 PATH 中:

# 此配置仅在当前终端有效,每次进入 hdc shell 需要重新设置 export PATH=/storage/Users/currentUser/.harmonybrew/bin:$PATH

4.3 在鸿蒙容器上安装

容器内的安装介于 PC 和开发板之间,操作也相对简单。
鸿蒙容器项目的地址:https://github.com/hqzing/dockerharmony

新的镜像标签是这个 :hqzing/dockerharmony:latest

第一步:安装 zsh

在容器内通过 curl 下载 zsh,将其软链接到/usr/bin目录下:

curl -fLO https://github.com/Harmonybrew/ohos-zsh/releases/download/5.9/zsh-5.9-ohos-arm64.tar.gz tar -zxf zsh-5.9-ohos-arm64.tar.gz -C /opt ln -s /opt/zsh-5.9-ohos-arm64/bin/zsh /usr/bin/zsh
第二步:安装 Homebrew
zsh -c "$(curl -fsSL https://harmonybrew.atomgit.com/install.sh)"
第三步:配置环境变量

按照安装脚本的提示,执行以下命令,将 Homebrew 加入到 PATH 中:

echo >> ~/.mkshrc echo 'eval "$(/storage/Users/currentUser/.harmonybrew/bin/brew shellenv)"' >> ~/.mkshrc eval "$(/storage/Users/currentUser/.harmonybrew/bin/brew shellenv)"

五、常用命令速查

Harmonybrew 的命令与标准 Homebrew 完全一致,以下是常用命令列表:

命令说明
brew update更新 Homebrew 包管理器和包索引
brew formulae列出软件仓库中可用的软件包列表
brew search [keyword]在软件仓库中通过关键词搜索软件包
brew install [formula]安装软件包
brew uninstall [formula]卸载软件包
brew list查看已安装的软件包列表

实用管理命令

清除缓存:

rm -rf $(brew --cache)

彻底删除 Homebrew 安装目录(比卸载脚本删得更干净):

rm -rf $(brew --prefix)

安装与卸载脚本

安装 Homebrew:

zsh -c "$(curl -fsSL https://harmonybrew.atomgit.com/install.sh)"

卸载 Homebrew:

zsh -c "$(curl -fsSL https://harmonybrew.atomgit.com/uninstall.sh)"

六、项目架构与设计理念

6.1 与标准 Homebrew 的关系

Harmonybrew 是基于 Homebrew 的二次开发,并非从零编写。核心思路是:

  1. 复用 Homebrew 的核心逻辑—— Ruby 编写的 Formula 解析、依赖管理、安装引擎
  2. 替换底层系统接口—— 适配 OpenHarmony 的文件系统、进程管理、权限模型
  3. 重新编译依赖的工具链—— 如 curl、zsh 等需要在 OpenHarmony 上重新编译

6.2 存储路径

Harmonybrew 默认安装在用户目录下:

/storage/Users/currentUser/.harmonybrew/

这与标准 Homebrew 安装在/usr/local(macOS)或/home/linuxbrew(Linux)不同,主要是考虑到 OpenHarmony 的设备形态差异较大,安装在用户目录可以避免权限问题。

6.3 为什么需要 zsh?

Homebrew 的安装脚本和核心工具使用 Zsh 编写,因此在安装 Harmonybrew 之前,需要确保设备上有 Zsh。在鸿蒙 PC 上,HiShell 已经包含了 Zsh;在开发板和容器上,则需要手动安装。


七、常见问题与排错

Q1: 安装时报 “Permission denied” 错误

原因:文件系统权限不足。

解决:在开发板上需要先执行mount -o remount,rw /将根分区重新挂载为可读写。

Q2: hdc shell 下重启后 brew 命令找不到了

原因:开发板的/storage目录位于 tmpfs 上,重启后软链接和环境变量都会丢失。

解决:每次进入 hdc shell 后,重新执行以下命令:

ln -s /data/storage/Users /storage/Users export HOME=/storage/Users/currentUser export PATH=/storage/Users/currentUser/.harmonybrew/bin:$PATH

Q3: 安装过程中 curl 下载失败

原因:设备未联网或网络受限。

解决:确保设备能够访问https://harmonybrew.atomgit.comhttps://github.com

Q4: brew install 安装软件时报错

目前 Harmonybrew 还处于早期阶段,软件仓库中的 Formula 数量有限。如果安装某个 Formula 失败,可能是因为该 Formula 尚未完成鸿蒙适配。可以通过brew search查看当前可用的软件包列表。


八、贡献指南与社区

Harmonybrew 是一个开源社区项目,欢迎所有开发者参与贡献!

链接说明
贡献指南了解如何提交代码、报告 Bug、参与讨论
问题反馈提交 Issue 或反馈使用中的问题
社区说明了解社区行为准则和交流方式
常见问题查看更多常见问题解答
特色软件查看已经适配的特色软件列表

九、总结与展望

Harmonybrew 的正式上线,意味着 OpenHarmony 生态在开发者工具链上迈出了重要一步。

对于开发者而言,Harmonybrew 带来了:

  • 熟悉的体验—— 无需学习新工具,brew 命令即开即用
  • 高效的效率—— 一键安装软件包,告别手动编译和配置
  • 开放的生态—— 基于 Homebrew 的庞大社区,未来可用的软件包将越来越多

展望未来,Harmonybrew 团队计划:

  1. 适配更多的鸿蒙设备形态
  2. 扩充鸿蒙适配的 Formula 池
  3. 完善文档和社区建设
  4. 探索 x86_64 等其他架构的支持

立即开始使用 Harmonybrew:

zsh -c "$(curl -fsSL https://harmonybrew.atomgit.com/install.sh)"

官方网站:https://harmonybrew.atomgit.com/
开源仓库:https://atomgit.com/Harmonybrew

让包管理,从鸿蒙开始。

更多分享请访问:猫哥的博客

欢迎加入鸿蒙PC开发者社区,共同打造开发者工具生态: 鸿蒙PC开发者社区

http://www.jsqmd.com/news/861355/

相关文章:

  • 1987年5月15日中午11-13点出生性格、运势和命运
  • 从零开始学AI Agent:软件工程视角下的企业数字化转型实践指南(收藏版)
  • HBase 分布式集群部署实战:从解压到启动的完整指南
  • 健身 Agent:不止视频,更有 AI 人物实时跟练交互
  • 分享高三模拟卷资源盘点
  • 面试必看!大模型高频考点全覆盖(含LoRA、DPO、MoE、ZeRO、KV Cache等核心问题)
  • ZFX山海证券:“消费转向考验零售韧性”
  • 离散几何拓扑数论(终稿·全定义完整版一)
  • 网卡服务与配置
  • 2026年WMS软件怎么选?10款主流WMS软件功能对比与避坑指南
  • 第九届蓝桥杯国赛b组--备战国赛版h
  • 2026年京东云OpenClaw/Hermes Agent配置Token Plan集成一篇搞定
  • 8G 内存无独显也能跑!零基础本地部署轻量化私人 AI(完整版实操教程)
  • 【无标题】认识Python的数据可视化
  • ascend-transformer-boost:Transformer加速库架构原理剖析
  • 指控系统中态势感知与OODA双螺旋智能系统
  • 1987年6月27日下午13-15点出生性格、运势和命运
  • 沥青生产导向的常减压过程模拟及排产计划优化【附仿真】
  • 人工智能将如何创造就业:从岗位替代到生态重构的深度解析
  • 通过 API 实时监听企业微信外部群变更事件并同步本地数据库
  • android使用websocket
  • 3步实现百度网盘高速下载:Python解析工具实战指南
  • 2026年5月降AI软件红黑榜出炉:论文AI率90%降至3.8%,精准去除ai痕迹!
  • 千问 LeetCode 2538. 最大价值和与最小价值和的差值 Go实现
  • 如何构建一个健康的学术生态
  • Apache 2.4 版本如何启用 TLS 1.3 并配置 SSL 证书路径
  • 别再混用 Skill 和 Workflow:它俩不是一层东西
  • 耿同学正在推动中国科技进步
  • 【多通道滤波】基于最小均方(McFxLMS)算法用于自适应多通道有源噪声控制(MCANC)应用研究(Matlab代码实现)
  • 国产大模型2026年领跑全球AI榜单