How to Use the openEuler User Repository
TL;DR
The openEuler user repository is built based on the copr project. If you are familiar with copr, you can directly start your journey with the openEuler user repository.
Overview
This document describes how to use the openEuler user repository. Feedback channels are as follows:
- Submit an issue on Gitee.
- Leave your questions on the openEuler forum.
Basic Concepts
Before using the openEuler user repository, you need to know the following concepts:
- User: A user is the entity that uses the system and initiates all operations.
- Project: Each user can create multiple projects to organize one or more software packages by creating a software package repository for each openEuler release.
- Software package: source package
- Build: context of a build of an RPM package, including the srpm package and some RPM packages generated during the build process.
- Repository: software package repository built for a openEuler release
└── User
├── Project
│ └── package 1
│ ├── build 1
│ │ └── log
│ ├── build 2
│ │ └── log
│ ├── build 3
│ │ └── log
│ │ └── rpms
│ │ └── src.rpm
│ └── package 2
│ └── repo for 22.03-x86_64
│ ├── pkg1.noarch.rpm
│ ├── pkg1-debuginfo.rpm
│ ├── pkg2.x86_64.rpm
│ ├── pkg2-debuginfo.rpm
│ └── repo for 22.03-aarch64
How to Use
Preparations
An openEuler account is required. If you do not have an account, register one in the openEuler account center.
Register or log in to your openEuler account.
Go to the home page of the openEuler user repository.
Use your openEuler ID to log in. After the login, your profile is displayed.
Building a Project
Click New Project to create a project.
- Project Name: This parameter cannot be modified after the project is created.
- Description, Instructions, Homepage, and Contact: These parameters are optional and can be modified after the project is created.
- Chroots: This parameter is mandatory and can be modified after the project is created. Select a required software package build environment.
- External Repositories: This parameter is optional. Input software repositories on which the build process depends.
Click Create.
After the project is created, you can download the repository configuration file of a required version under Repo Download. (No software package is available in the current repository.)
Then, let's build a simple software package!
Click the Packages tab and then click Create a New Package.
We can directly add the isulad software package of openEuler because it contains the SPEC file and source package required for the build.
After the software package is created, click Rebuild to trigger a build.
Click Build. The background build system starts to build your software package. You can click the task ID to view task logs in real time.
In the task details, you can view the compilation logs and generated RPM packages.
Content in chroot
Building a Software Package on PyPI
The user repository provides the capability of quickly packaging software packages on PyPI. When adding a software package, you can directly add the name of the software package on PyPI.
Building a Software Package on RubyGems
You can build a software package on RubyGems following Project > Builds > New Build
.
Using the User Repository
Go to the project homepage and obtain the repository configuration file of the corresponding version.
Run cd /etc/yum.repos.d/ && curl -OL <your repo url>
to download the corresponding repository configuration. Run dnf in <package name>
to install the software package in the corresponding repository. Each project has an independent GPG key to sign the RPM packages.
Related Resources
- The user repository uses pyporter of the openEuler community to automatically pack packages on PyPI. If you have any questions, please submit a quick issue or issue.
- The user repository uses rubyporter of the openEuler community to automatically pack packages on RubyGems. If you have any questions, please submit a quick issue or issue.