The Alternative Architecture SIG
0.1. Goal
To extend the CentOS Linux usability base beyond the architectures supported already in the code base, and beyond what is being done in the Core SIG.
Board Member helping: JimPerrin & KaranbirSingh
0.2. Current Status
This SIG is now producing CentOS Linux 7 install images and full trees for ppc64, ppc64le, i386, armhfp (arm v7 32-bit), aarch64 (arm v8 64-bit).
0.3. Abstract
This SIG would be a setup and managed up from community members who want to come and help port CentOS Linux to architectures and platforms not supported by the Core SIG itself.
Note: this is not called secondary arch group, since the word secondary indicates some level of inferiority - and I would rather we use release tagging (test, devel, alpha, beta, etc) rather than silo a group into always being only 'secondary'.
The group would have the ability to import content as needed, adapt content as needed, deliver in media that is suitable and needed for the platform they are targeting. Allowing for a lot more flexibility w.r.t features specific to their audience, and may or may not map to upstream tree's.
For vendor driven ecosystems where they own the entire platform and implementation of the platform (eg. as seen in the ARMv7 and v8 space), I encourage vendors to get involved with the effort - however do so without making it a role driven position. For the continuity of the effort, its far more productive for vendors to encourage individual level participation from their organisations into the CentOS AltArch effort.
We will retain the requirement that all 'CentOS' branded content must be hosted, built and delivered from infra operated by the CentOS Infra team, signed with a CentOS key (run by the Core SIG), must be freely redistributeable.
Working process
All AltArch SIG's should aim to use the noarch generated from the x86_64 builds as much as possible
All members of the AltArch group should have git.c.o commit access
git.centos.org:
- Create arch specific tags in the SIG as needed. eg:
- altarch-aarch64
- altarch-power8
- altarch-i686
These arch branches will/can be used to host spec file and source changes as needed specific to that arch. If a change is needed for multiple arch's, we just need to then carry it in all those branches (but we can socialise the changeset to the other arch's that might benefit from this change). The baseline assumption is that the core protected branch then only corresponds to the x86_64 distro for CentOS Linux 7, and for i686 + x86_64 on CentOS Linux 5 and 6.
In situations where there is a need for multi branches (eg. for aarch64 for vendor specific content ?) we would need to workout a naming process. the current model does not scale well for that (since git and koji targets are meant to line up, with only peer inheritance). This is a challenge we are trying to work through for the VIRT, Storage and Cloud SIGs as well - so a solution might not be too far (if there really is a need for this level of granularity in the AltArch SIG).
Koji can grow targets as needed. These targets should map to the git branch names as much as possible, and as hardware is available to contribute into a central pool. Each koji target per branch should have atleast a -devel, -testing and -released targets. Users in the AltArch group should be able to pull from their own branch, the protected git branches, and other arch branches.
SIG 'product' will be release as : * to buildlogs and cbs.centos.org/repos/ as a testing / devel set of repos and installs as needed * to mirror.centos.org as 'stable' but under a different SIG path. Note: as and when the CentOS CDN comes up, the actual final destination will be controlled by popularity of a specific rpm, and the mirror.centos.org target for stable might not be an issue anymore.
For people who want to work on pre-release platforms, we can come up with a working process that helps them stage and release early onplatform availability.
0.4. Active Arch Groups
ARM32 build as armv7 (and others), buildsystem details at https://wiki.centos.org/SpecialInterestGroup/AltArch/armhfp
ARM64 built as aarch64 : details at https://wiki.centos.org/SpecialInterestGroup/AltArch/AArch64
32-bit x86 as i386 : details at https://wiki.centos.org/SpecialInterestGroup/AltArch/i386
- POWER9
POWER8 Little Endian as ppc64le : details at https://wiki.centos.org/SpecialInterestGroup/AltArch/ppc64le
POWER7 Big Endian as ppc64 : details at https://wiki.centos.org/SpecialInterestGroup/AltArch/ppc64
0.5. Contributing and Getting involved
All requests to join this effort should be made to the centos-devel list (http://lists.centos.org/) - and clearly indicate what architectures you are interested in working on, what hardware that might require and what resources will be used (also if you need any) for this effort.
0.6. Members
Current Members of this SIG include:
JimPerrin (AArch64)
FabianArrotin (Arm32, armhfp)
JohnnyHughes (i686, aarch64)
KaranbirSingh (powerpc / power8)
- jpoc (James O'Connor) (ppc64, ppc, ppc64le)
PabloGreco (armhfp)