docs: Update build-repository documentation

Change-Id: I4566c6e93dca4701eda19ba512e20b0f224956e7
This commit is contained in:
Alexander von Gluck IV 2021-04-15 15:05:53 -05:00
parent d827b3cc06
commit 37bebb702a
1 changed files with 18 additions and 13 deletions

View File

@ -1,5 +1,4 @@
HaikuPorts repository files
==========================
# HaikuPorts build-packages repository
The `build/jam/repositories/HaikuPorts` directory contains
RemotePackageRepository files which detail packages and
@ -9,8 +8,7 @@ repositories leveraged during Haiku's build process.
> are determined by the sha256sum of the repository
> file.
Updating
-------
## Updating
Each RemotePackageRepository jam file in this directory
is processed by src/tools/hardlink_packages.py on the
@ -23,21 +21,28 @@ HaikuPorts package server.
build repositories (https://eu.hpkg.haiku-os.org/haikuports/master/build-packages/)
5) The modified RemotePackageRepository file is copied back to the developers system and checked in to git.
Process
-------
## Container Process
Here is the fastest way to update this as of today.
Improvements are needed. Replace (ARCH) with architecture, (USER) with your non-root user.
1) (as root) wget https://git.haiku-os.org/haiku/plain/build/jam/repositories/HaikuPorts/(ARCH) -O /var/lib/docker/volumes/buildmaster_data_master_(ARCH)/_data/
## Prepare the build-packages repository
as root on limerick.ams3.haiku-os.org...
1) wget https://git.haiku-os.org/haiku/plain/build/jam/repositories/HaikuPorts/(ARCH) -O /var/lib/docker/volumes/ci_data_master_(ARCH)/_data/(ARCH)
2) Enter the buildmaster container:
docker exec -it $(docker ps | grep buildmaster_buildmaster_master_(ARCH) | awk '{ print $1 }') /bin/bash -l
3) apt install vim python3
docker exec -it $(docker ps | grep ci_buildmaster_master_(ARCH) | awk '{ print $1 }') /bin/bash -l
3) apt update; apt install -y vim python3
4) edit the repository define, add the needed packages, _devel packages, and add base package to source section.
5) ln -s /var/buildmaster/package_tools/package_repo /usr/bin/package_repo
6) export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/var/buildmaster/package_tools
7) ./package_tools/hardlink_packages.py (ARCH) ./(ARCH) /var/packages/repository/master/(ARCH)/current/packages/ /var/packages/build-packages/master/
8) exit; cp /var/lib/docker/volumes/buildmaster_data_master_(ARCH)/_data/(ARCH) /home/(USER)/(ARCH); chown (USER) /home/(USER)/(ARCH);
9) scp -P2222 (USER)@walter.haikuos.org:./(ARCH) .
10) commit the updated repostory define *without modifying it*
8) exit; cp /var/lib/docker/volumes/ci_data_master_(ARCH)/_data/(ARCH) /home/(USER)/(ARCH); chown (USER) /home/(USER)/(ARCH);
## Pull the repostory file and commit it
From your local system...
1) scp -P2222 (USER)@limerick.ams3.haiku-os.org:./(ARCH) ./(ARCH)
2) commit the updated repostory define *without modifying it* in any way