如何使用 openEuler 用户软件仓(EUR)
上篇文章openEuler用户软件仓(EUR)介绍)分享了什么是 EUR 以及为什么要使用 EUR。
本文将为大家分享 openEuler 用户软件仓(EUR)的使用方法,帮助大家在 EUR 中构建自己的软件包。
基本概念
在使用用户软件仓前,有如下几个概念需要您了解:
用户:用户是使用本系统的主体,也是所有操作的发起者;
项目:每个用户可以创建多个项目,项目用于组织一个或多个软件包,每个项目可以针对这组软件包生成针对各个 openEuler 版本的软件包仓库;
软件包:代表一个源码包;
构建:rpm 包的一次构建的上下文,包括 srpm 包和其构建生成的一些 rpm 包;
仓库:针对特定 openEuler 版本构建的的软件包仓库。
逻辑如下:
如何使用
准备工作
使用 EUR 无需任何门槛,您只需注册一个 openEuler 账号即可使用。
openEuler 账号中心:
https://id.openeuler.org/zh/profile
![](https://static001.geekbang.org/infoq/26/26538ed523f3e427780b254d3ba11713.jpeg?x-oss-process=image%2Fresize%2Cp_80%2Fauto-orient%2C1)
openEuler 账号可以通过 Gitee 或 Github 账号直接登录,也可以直接通过邮箱直接注册。
进入用户软件仓首页并且登录之后,就可以开始构建自己的软件包了。
用户软件仓首页:
https://eur.openeuler.openatom.cn/
创建一个新的项目
点击 new project 按钮,创建一个新的项目:
![](https://static001.geekbang.org/infoq/13/132c989570145b3ccc77889d1fcd6791.png)
项目名称:后续无法再修改;
项目描述,指南,主页,联系人:可选配置,项目创建后支持修改;
Chroots:必须配置,选择需要的软件包构建环境,项目创建后支持修改;
External Repositories: 可选配置,如果构建过程中依赖其他的软件仓库,可以填写在这里。
项目创建后,在 Repo Download 处,即可下载对应版本的仓库配置文件。
![](https://static001.geekbang.org/infoq/48/4830e169510dfa30936bd8f8c54634e9.png)
构建一个简单的包
由于当前仓库中可用的软件包较少,开发者们可以自行 DIY,添加所需软件包。
点击 packages 标签页,创建一个新的软件包:
![](https://static001.geekbang.org/infoq/15/1582c589cc8b780e54df0c5c22258893.png)
这里我们直接添加 openEuler 的 isulad 软件包,因为其已经包含构建所需要的 spec 和源码包。
![](https://static001.geekbang.org/infoq/c7/c7a484b00394c54ede4f7288d2471218.png)
软件包创建完成后,点击 rebuild 即可触发一次构建。
![](https://static001.geekbang.org/infoq/c5/c5ccd020dd2b466a6c9e34f13f3206f2.png)
![](https://static001.geekbang.org/infoq/5b/5bc0d31a6146c4c0db2580da87840521.png)
再次点击 Build,后台构建系统就会开始构建你的软件包,通过点击任务 id,可以实时观看任务的日志。
![](https://static001.geekbang.org/infoq/31/312c1e94c7d1f50c902fdac014dd776a.png)
快速构建 pypi 上的软件包
个人软件仓提供了快速打包 pypi 上软件包的能力,在添加软件包时,可以直接根据 pypi 上的包名添加。
![](https://static001.geekbang.org/infoq/12/12838b3da77ec87cfbb6ced1c803dfef.png)
快速构建 rubyGem 上的软件包
rubyGem 上的软件包,可以通过 project->builds->new build 来进行构建。
![](https://static001.geekbang.org/infoq/08/08cdb7797a95976a8f3bfff179d40fd8.png)
应用 EUR 中的软件包
curl -OL<下面复制得到的 url>,可以直接下载对应的仓库配置;
![](https://static001.geekbang.org/infoq/73/73580a66023ba602869133b73b67e396.png)
再使用 dnf in 即可安装对应仓库中的软件包,每个 project 都有独立的 gpg key 对 rpm 包进行签名。
![](https://static001.geekbang.org/infoq/85/85d50b6bb4b06be9c90b4066f8e7b754.png)
联系我们
如果您在使用过程中有任何意见或建议,可以给我们发邮件:infra@openeuler.org,同时也可以在社区论坛( https://forum.openeuler.org/ )中交流讨论。
![](https://static001.geekbang.org/infoq/1f/1f7ed7783a4484933e2a4c128e0054ea.png)
评论