diff --git a/README.md b/README.md index a5d1738ad57de09c18d273b7fd6a7d1c47739943..ef4b805856c5c72aa1db631c44ee240ff6ac91a8 100644 --- a/README.md +++ b/README.md @@ -24,19 +24,29 @@ aarch32-rootfs-builder 通过一组工具和补丁实现 openEuler rootfs 相关 │   └── 0001-add-arm32-support.patch ├── tools │ ├── auto_build_pkgs.sh +│ ├── auto_make_rootfs.sh │ └── rpmmacros_openeuler -└── src - └── base-files +├── src +│ └── base-files +├── documents +│ └── mock_env_build.md +└── assets + └── aarch32-roadmap.png ``` -- conf/aarch32_support_list.yaml +- [conf/aarch32_support_list.yaml](conf/aarch32_support_list.yaml) - 维护当前支持的 rpm 列表 - patches/*/\* - 存放 rpm 包的 aarch32 支持补丁 - tools/* - - auto_build_pkgs.sh 自动化编译工具 - - rpmmacros_openeuler 编译所需的 macros 文件 + - [auto_build_pkgs.sh](tools/auto_build_pkgs.sh) 自动化编译工具 + - [auto_make_rootfs.sh](tools/auto_make_rootfs.sh) 自动化创建arm32 rootfs工具 + - [rpmmacros_openeuler](tools/rpmmacros_openeuler) 编译所需的 macros 文件 - src/*/\* - 存放openEuler暂未支持的软件包(TODO:后期会推入openEuler主仓) +- documents/* + - [mock_env_build.md](documents/mock_env_build.md) mock编译环境构建指南 +- assets/* + - [aarch32-roadmap.png](assets/aarch32-roadmap.png) 路标图片 #### 路标 ![aarch32-roadmap](./assets/aarch32-roadmap.png) diff --git a/documents/mock_env_build.md b/documents/mock_env_build.md new file mode 100644 index 0000000000000000000000000000000000000000..75c21f76e4e78fb3d3b787e2f9ce03332108b694 --- /dev/null +++ b/documents/mock_env_build.md @@ -0,0 +1,85 @@ +# mock编译环境构建指南 + +## 编译环境os信息 +编译环境使用的是feodra29 x86_64 +``` +# cat /etc/fedora-release +Fedora release 29 (Twenty Nine) +# uname -r +4.18.16-300.fc29.x86_64 +``` + +## mock安装 +确保fedora源配置正确 +yum源参考: +``` +[fedora] +name=Fedora $releasever - $basearch +failovermethod=priority +metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch +enabled=1 +metadata_expire=7d +repo_gpgcheck=0 +type=rpm +gpgcheck=1 +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch +skip_if_unavailable=False + +[fedora-modular] +name=Fedora Modular $releasever - $basearch +failovermethod=priority +metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-modular-$releasever&arch=$basearch +enabled=1 +repo_gpgcheck=0 +type=rpm +gpgcheck=1 +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch +skip_if_unavailable=False + +[updates] +name=Fedora $releasever - $basearch - Updates +failovermethod=priority +metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-f$releasever&arch=$basearch +enabled=1 +repo_gpgcheck=0 +type=rpm +gpgcheck=1 +metadata_expire=6h +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch +skip_if_unavailable=False + +[updates-modular] +name=Fedora Modular $releasever - $basearch - Updates +failovermethod=priority +metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-modular-f$releasever&arch=$basearch +enabled=1 +repo_gpgcheck=0 +type=rpm +gpgcheck=1 +metadata_expire=6h +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch +skip_if_unavailable=False + +[updates-source] +name=Fedora $releasever - Updates Source +failovermethod=priority +metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-source-f$releasever&arch=$basearch +enabled=1 +repo_gpgcheck=0 +type=rpm +gpgcheck=1 +metadata_expire=6h +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch +skip_if_unavailable=False +``` +mock使用update源中的版本 +``` +# yum install -y qemu-user-static mock +``` + +## aarch32 rootfs初始化 +``` +# mock -r fedora-29-armhfp init +``` +初始化构建出的fedora 29 aarch32位的rootfs在这里: +/var/lib/mock/fedora-29-armv7hl/root