Project:ARM

From Gentoo Wiki
Jump to:navigation Jump to:search
ARM Development
Description The ARM Development Project is devoted to keeping Gentoo in good shape on the ARM architecture.
Project email arm@gentoo.org
Packages p.g.o/arm@gentoo.org



IRC channel #gentoo-arm (webchat)
Bugs Related bugs
Lead(s)
No lead election date set
Member(s)
Subproject(s)
(and inherited member(s))
(none)
Parent Project Gentoo
Project listing

The Gentoo/ARM Project works to keep Gentoo the most up to date and fastest ARM distribution available. We are responsible for the maintenance of all ARM specific metadata and the testing of all other non ARM specific meta-data on the ARM architecture to ensure portability. Portability implies reusable metadata.

Bugs are tracked and resolved from the Gentoo bug tracker and correspondence is maintained on the various ARM related mailinglists. (#gentoo-arm (webchat) and those belonging to the sub-projects).

Key facts

  • ARM is 32-bit.
  • ARM is little-endian.
  • <= ARMv5te lacks proper hardware atomics, see bug #721344.

Gentoo at the moment does not have any 32bit ARM development hardware. Most development and testing is done in containers on a 80 core Neoverse arm64 machine that supports 32bit mode; stages are built quasi-natively on that machine itself.

Goals

The goal of the Gentoo ARM development project is to guarantee that the ARM packages build using Gentoo metadata are up to date. By continuously enhancing the metadata, we provide the ARM user with the Gentoo community feeling, performance, freedom and up-to-dateness. The meta-distribution notion allows for a user to to be as bleeding edge as he/she wants:

Gentoo is unique because of its interpretation of the Meta-Distribution notion: all architectures share the same 'generic' metadata (information about how to build packages - how to build a distribution). The ARM developers are responsible for building and testing packages using this meta-data. The meta-data gets marked 'tested' or 'stable' afterwards, depending on the building and testing experience. Our users can use (but don't have to use) this information to build a system that suits their needs.

Stabilization policy

Note
Users do not have to test themselves with FEATURES=test, although it's nice if they do. Please file a bug if a package works for you in stable and your system is stable. We want to mark it as such in Gentoo!

The Gentoo ARM development project supports various flavors of the 32-bit ARM architecture (to be precise: armv4/armv5/armv6/armv7) but the workload to test all packages on these platforms is excessive. So, successfully testing on armv7 is adequate.

Team members or developers must run FEATURES=test for all packages and ensure each package passes the test phase. This is not required just to simply file a bug and request keywording or stabilisation though - it is the responsibility of the arch teams to test, not the person requesting.

Keywording

Tip
We want both stable arm and keywording ~arm requests. File them!

See Project:ARM64#Keywording.

How to participate

Can you make computers do amazing things? Are you excited about exploring areas of computing never explored before? We are continuously looking for volunteers willing to spend some of their free time on this project. In return for your work, you get the respect of the ARM community.

If you are interested in helping, but don't have a niche that you are interested in filling, you can always look through bugs.gentoo.org. There are many many bugs waiting to be found and fixed and many enhancements looking to find someone to code them. Figure out a fix, implement it, test it, and then keep trying to make the patch smaller. Post it for review on bugs.gentoo.org, and keep working on it. If it seems ignored, make a new comment in the bug and/or mention it in #gentoo-arm (webchat).

Finally, feel free to add yourself with your IRC handle to our ARM hardware list on the wiki. It's always nice to know what gadgets are out there!