参与贡献 - Arch Linux 中文维基

跳转到内容

# 参与贡献

来自 Arch Linux 中文维基
翻译状态：

- 本文（或部分内容）译自 Getting involved，最近一次同步于 2025-01-05，若英文版本有所更改，则您可以帮助同步与翻译更改的内容。
- 您可以在 ArchWiki 的对应页面找到本文翻译的原始修订历史。
- 本文可能与英文原文存在出入。

相关文章

- 常见问题
- ArchWiki:Contributing

在进化生物学中，合作是指个体付出一个小成本，可以为其他同胞带来更大的收益，而其他个体也一样提供回报，这样每个参与者都会获得非常大的收益。Arch 社区也是如此，很多成员希望为自己喜爱的 GNU/Linux 发行版做出贡献。大家的参与，不仅有利于 Archer 同胞，还能造福自由软件和开源软件的全体爱好者。

本文简单介绍了 Archer 为 Arch 社团做贡献的若干途径。开始贡献前请先熟悉一下行为准则。

## 社区

### 论坛发帖

参与我们的一个最简单的方法，就是逛 Arch Linux 官方论坛。您可以尽情发表您的高见、帮助菜鸟或结交新朋友。

### 完善维基

ArchWiki 是一个社区文档工程。内容源自社区，服务社区。贡献者奉献他们的时间和精力，在社区中共享知识和技能。我们鼓励全体用户做贡献。

### 加入聊天室

可以在 Arch 的 IRC 频道中帮助新人解决问题。进入前请先阅读讨论规则。有许多频道专门用来讨论不同的问题。

### 加入邮件列表

加入感兴趣的邮件列表。注意讨论的内容要遵守列表描述。

### 艺术

共享屏保、启动屏幕、调色盘、主题等，可以加入艺术子论坛以及中文论坛的美工与截图版块。

参阅 Arch Linux Art 和 ASCII 艺术。

## 软件包

### 报告安装的软件

pkgstats 使用 systemd 定时器定期将系统中安装的软件上报服务器，同时还能提供系统架构和使用镜像的信息。开发者可以通过数据统计，安排自己工作的优先级。信息是匿名发送，不会暴露用户隐私。可以通过统计页面查看信息。详情请阅读这个论坛帖子。

### 报告和修正 bug

您还可以通过到 Arch Linux Bugtracker 汇报有关 Arch 软件包 bug 来帮忙。

但若汇报的问题无意义时，反而会浪费大家的时间。如有意参与其中，请先阅读漏洞报告准则和 General guidelines#Packaging merge requests。

### 安全问题

新的漏洞不停出现，帮助 Arch 安全小组追踪新的漏洞。

### 帮助测试软件包

测试仓库中的软件包需要进行测试后才会进入主仓库。请帮助 Arch 测试组测试新软件包。

### 提出需求

在 bug 系统中提出软件包需求，提交前请先阅读漏洞报告准则#Bug 或者 Feature？，以确保功能需求是合理的，此外还需阅读 General guidelines#Packaging merge requests 。

在 AUR 软件包页面的相关页面提出 AUR 软件包需求。

### 创建或维护 AUR 软件包

Arch 用户软件仓库是一个大众主导的软件仓库，包含了大量用户提交的 PKGBUILD。与官方软件库二进制包的形式不同，AUR 中的软件包将以 PKGBUILD 的形式供用户使用，并全由用户自行编译。用户可通过 AUR 分享软件，其中一些热门软件会选入官方的 Extra 软件仓库。

### 成为 Trusted User

像帮助维护 AUR 和 extra 软件仓库中的软件包，可以申请成为软件包维护者。 详情参阅软件包维护者#我如何成为软件包维护者。

## 活动

有一些社区组织的活动可以参见：

- Bug Day
- AUR Cleanup Day

## 软件项目

Arch Linux 发行版包含了很多组件，可以单独参与到某个项目。

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

项目 | 描述 | 语言 | 维护者 | 其他链接
--- | --- | --- | --- | ---
alpm | Project that works on specifications, Rust libraries and tools for Arch Linux Package Management | Rust | dvzrv, orhun | bugs, documentation
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
bugbuddy | Helper daemon that watches the incoming bug reports for Arch Linux and makes sure that the right people are assigned to them | Rust | anthraxx | bugs
buildbtw | A service for assisting Arch Linux staff with building new versions of packages | Rust | anthraxx, sven, raffomania | bugs, IRC #archlinux-buildbtw
dbscripts | Scripts to release and manage packages into the repositories | Bash | Foxboron | bugs
devtools | Packaging tools for developers and packagers | Bash | Anthraxx, Foxboron, jelle, gromit | 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, heftig, jelle, klausenbusk, svenstaro, artafinde, gromit | bugs, IRC #archlinux-devops, arch-devops mailing list
keycloak-archlinux-theme | Keycloak Arch Linux theme | Java | Artafinde | bugs
mkinitcpio | Initrd generator | Ash, Bash | 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
signstar | A secure enclave signing solution and tooling around it | Rust | dvzrv | bugs, documentation, IRC #archlinux-signstar

DeveloperWiki:Projects 包含了项目组成员、交流取到和所用编程语言。项目代码托管在 gitlab.archlinux.org.

### 捐款

Arch Linux 的生命力源于开发者和社区成员的无私奉献。我们的工作是无偿的，没有维持服务器运营的私人基金，因此也需要您的资金支持。

## 非官方项目

注意：下列所有项目都是社区支持的，即非官方。

Arch 拥有一个充满活力的用户社区。如果您的项目想参与到社区中，请在对应的英文页面加入：项目地址、项目开始时间和一两句项目简介。

Arch Linux 中文社区
  中文用户社区相关信息

Arch Linux Subreddit
  Reddit 中讨论 Arch 的地方。

Arch Women
  为 Arch 女性用户提供的团体（论坛帖子）

Telegram 群组
  Arch 相关问题的 Telegram 群组。

Matrix 聊天室
  Arch 相关问题的 Matrix 聊天室。

Community Contributions
  Arch 相关项目的论坛.

Arch Linux topic @GitHub
  Arch 相关项目的 GitHub 仓库.

## 怎样才能成为 Arch 开发者?

首先，牢记您所做的一切，都应以帮助大众为出发点。其次，牢记您是社区大众的一分子，帮助别人亦是帮助自己。

通常，新开发者是根据工作内容的增加由已有开发者选出。有时他们会提供一个职位，您可以申请并获得职位。但更多时候，开发者会邀请能力足够，适合开发团队需要的程序员加入。积累 Arch 贡献是成为团队一员的最好方法。

这里是一个列表，没有顺序之分。包含了可以为社区做贡献的方式:

- 通过及时提供帮助获得声誉
- 在论坛、IRC、和邮件列表回答问题
- 加入软件包维护者，获得软件打包经验，提升技能
- 将软件包提交到 AUR
- 加入以后可能成为 Arch 主流应用的程序开发或者自己建立一个项目
- 修改 pacman、makepkg 或GitLab 上的其它 Arch 项目，并通过 bug 管理系统提交补丁
- 浏览 bug 管理系统，修正问题
- 找到并提交新 Bug
- 修正维基错误、添加页面、清理页面并保证步骤符合最新系统
- 提交翻译

分类：​

- 关于 Arch

参与贡献
添加话题