Getting involved - ArchWiki

Jump to content
From ArchWiki

Related articles

- FAQ
- ArchWiki:Contributing

In evolutionary biology, cooperation describes interactions where an individual pays a small cost to yield a larger benefit to one or more others. If this costly contribution is reciprocated, everyone involved can benefit tremendously. This principle also applies to proactive members of the Arch community wanting to get involved and contribute to their favorite Linux distribution. Their participation benefits not only the community member and their fellow Archers, but all users of free and open source software.

This article describes how both new and experienced Arch users can contribute to the community. Note that this is not an exhaustive list. Before contributing, please get accustomed with the Code of conduct.

## Community

### Post on the forums

One of the easiest ways to get involved is participating in the Arch Linux Forums, which allows getting to know the community and help new users.

### Improve this wiki

ArchWiki is a collaboratively maintained Arch Linux documentation. All users are encouraged to contribute.

### Join the chatroom

You can help other users solve problems on the IRC channel. It is of vital importance however, that you read the channel rules before participating. Further channels are available for specific topics.

### Join the mailing lists

Join the discussion on one or more of the public mailing lists. Make sure to stay on topic as provided in the list description.

### Artwork

Feel free to share wallpapers, splash screens, color palettes, widgets, themes, etc. with the community on the art subforum.

See also Arch Linux Art and Artwork.

## Packages

### Report installed packages

pkgstats provides a systemd timer that sends a list of the packages installed on your system, along with the architecture and the mirrors you use, to the Arch Linux developers in order to help them prioritize their efforts and make the distribution even better. The information is sent anonymously and cannot be used to identify you. You can view the collected data at the Statistics page. More information is available in this forum thread.

### Fix and report bugs

Reporting and fixing bugs for Arch packages on GitLab is one of the possible ways to help the community.

However, ineffective use can be counter-productive. Please read the Bug reporting guidelines and General guidelines#Packaging merge requests.

### Inform about security issues

New vulnerabilities are found all the time. Help the Arch Security Team keep track of new vulnerabilities.

### Help test packages

Packages on the testing repositories need to be tried out and signed off before they are promoted to the main repositories. Help the Arch Testing Team test new packages.

### Request features

Request features for Arch packages on GitLab. Before doing so, read Bug reporting guidelines#Bug or feature?, to make sure it is a valid feature request, and General guidelines#Packaging merge requests.

Request features for AUR packages on the corresponding AUR package pages.

### Create and adopt AUR packages

The Arch User Repository contains community-made package scripts, allowing users to easily install software not part of the official repositories. Popular packages get included into the extra repository.

### Becoming a Package Maintainer

If you want to help maintain the AUR and packages in the extra repository, you can apply to become a Package Maintainer. See Package Maintainers#How do I become a Package Maintainer? for details.

## Events

There are regular events open to the community for bugfixing, cleanup, and other activities.

- AUR Cleanup Day
- Bug Day

## Software projects

The Arch Linux distribution comprises of many components and each of the projects can be contributed to individually.

Discussion around the various projects (unless noted otherwise) takes place on the arch-projects mailing list and in the #archlinux-projects IRC channel.

Project | Description | Languages | Maintainers | Additional links
--- | --- | --- | --- | ---
alpm.rs | Rust bindings for libalpm | Rust | Morganamilo | bugs
arch-boxes | Virtual machine images | Bash | klausenbusk | bugs, IRC #archlinux-releng, arch-releng mailing list
arch-install-scripts | Useful scripts for installing Arch Linux | Bash | Foxboron | bugs
arch-rebuild-order | A CLI tool to determine the rebuild order of provided package(s) | Rust | jelle | bugs
arch-release-promotion | Promotion and synchronization of existing releases of a project in Arch Linux's GitLab instance | Python | dvzrv | bugs
arch-repro-status | CLI tool for querying the reproducibility status of the Arch Linux packages | Rust | orhun | bugs
arch-security-tracker | The security.archlinux.org CVE tracking platform and aids in publishing advisories | Python (Flask) | anthraxx | bugs, IRC #archlinux-security, Advisory mailing list
arch-signoff | Sign off Arch Linux test packages | Python | Jelle | bugs
archinstall | Arch Linux official installer | Python | Torxed | bugs, Discord, documentation
archivetools | A turnkey solution to snapshot Arch Linux packages repositories, ISOs images and boostrap tarballs | Bash |  | bugs
archiso | Scripts and configuration for building live media | bash | dvzrv, nl6720 | bugs, IRC #archlinux-releng, arch-releng mailing list
archlinux-common-style | Arch Linux common CSS styles | SCSS, HTML, JavaScript | anthraxx, jelle | bugs
archlinux-docker | Docker images | Bash | hashworks, sangy | bugs, docker hub, IRC #archlinux-releng, arch-releng mailing list
archlinux-keyring | Arch Linux PGP keyring handling | Python | anthraxx, dvzrv | bugs
archlinux-repro | Tools to rebuild Arch Linux packages | Python | Foxboron, Jelle, Coderobe | bugs
archmanweb | The man.archlinux.org website | Python (Django) | Lahwaacz | bugs
archweb | The archlinux.org website | Python (Django) | jelle | bugs
aurweb | The page and system for aur.archlinux.org | Python, HTML, MySQL | artafinde, lfleischer | bugs, IRC #archlinux-aurweb, aur-dev mailing list
dbscripts | Scripts to release and manage packages into the repositories | Bash | Foxboron | bugs
devtools | Packaging tools for developers and packagers | Bash | Anthraxx, Foxboron, jelle | bugs
gitlab-exporter | GitLab metrics exporter | Rust | Artafinde, orhun | bugs
gluebuddy | A secure helper daemon that watches several aspects of the Arch Linux infrastructure and makes sure that certain conditions are met | Rust | anthraxx, jelle | bugs
infrastructure | Arch Linux infrastructure | Ansible, Bash, Python, Packer, Terraform, Zsh | anthraxx, foutrelis, freswa, grazzolini, heftig, jelle, klausenbusk, svenstaro, artafinde | bugs, IRC #archlinux-devops, arch-devops mailing list
keycloak-archlinux-theme | Keycloak Arch Linux theme | Java | Artafinde | bugs
mkinitcpio | Initrd generator | Ash, Bash | grazzolini, Foxboron, nl6720 | bugs
mkinitcpio-archiso | Mkinitcpio integration for archiso | Ash, Bash | dvzrv, nl6720 | bugs, IRC #archlinux-releng, arch-releng mailing list
namcap | Tool for checking binary packages and source PKGBUILDs for common packaging errors | Python | alerque, dvzrv, FFY00, kgizdov | bugs
netctl | Profile based systemd network management | Bash | jwitteveen | bugs
neoasknot | Contribution landing page for Arch Linux | JavaScript, Svelte | polyzen | bugs, whatcanidofor.archlinux.org
pacman | Package Manager | Bash, C | Allan, agregory | bugs, IRC #archlinux-pacman, pacman-dev mailing list
pacman-contrib | Contribution scripts to pacman | Bash, C, Perl | Demize, Polyzen | bugs, IRC #pacman-contrib, pacman-contrib mailing list
pkgstats-cli | pkgstats client | Go | pierres | bugs, pkgstats.archlinux.de
pkgstats.archlinux.de | Arch Linux package statistics website | JavaScript, PHP, Vue | pierres | bugs, pkgstats.archlinux.de
pyalpm | alpm Python bindings | Python, C | Jelle | bugs
pytest-pacman | Pytest plugin for generating repository sync databases | Python | Jelle | bugs
rebuilderd-website | Website for reproducible.archlinux.org | JavaScript | Jelle | bugs, reproducible-builds.org, Debian wiki, IRC #archlinux-reproducible
releng | Automation of release artifacts (installation medium, PXE boot) | Bash, Python | dvzrv | bugs, IRC #archlinux-releng, arch-releng mailing list
repod | Tooling to maintain binary package repositories for Linux distributions using the pacman package manager | Python | dvzrv | bugs, documentation

## Donate money

You can find out how to help sustaining server costs on the official Arch Linux donate page.

## Unofficial projects

Note: Entries listed here are not part of the Arch Linux project.

Arch's community maintains many projects. Feel free to include yours!

### Groups

Arch-specific groups that you can engage in.

Arch Linux Subreddit
  Place for Reddit users to discuss Arch related issues.

International communities
  Local communities and meet-up places for users.

Arch Women
  Group with the intention of resolving possible hurdles for female Arch users (forum thread).

Telegram group
  Place for Telegram users to discuss Arch related issues.

Matrix room
  Place for Matrix users to discuss Arch related issues.

Discord server
  Place for Discord users to discuss Arch related issues.

### Software

Community-developed software that focuses on Arch Linux.

Community Contributions
  Forum for Arch-related projects.

Arch Linux topic @GitHub
  GitHub repositories for Arch-related projects.

## Becoming an Arch Developer

The main motivation for your work on Arch should be helping the whole community, and not simply trying to become an Arch developer by any means.

Usually, new developers are picked by the existing developers as the workload increases. Sometimes they post a position and you can apply to fill it, but more often, they just invite somebody they know would be good at it and would fit in well with the rest of the team. Having a portfolio of Arch contributions is the best way to make it on the team.

Here is a list of things that you may do in order to gain some "popularity" towards Arch's developers:

- Establish a reputation as being helpful by offering assistance whenever possible.
- Answer questions on the forum, IRC, and mailing lists.
- Join the Package Maintainers to gain packaging experience to show your skills.
- Submit packages to the AUR.
- Join one of the offshoot projects that may be incorporated into Arch mainstream someday, or start your own.
- Work on pacman, makepkg or other project (on GitLab) and submit patches to the bug tracker.
- Traverse the bug tracker and fix existing bugs.
- Find and submit new bugs.
- Fix wiki errors, add new pages, clean up existing pages and make sure the procedures are up-to-date.
- Submit translations.

Category:

- About Arch