# Contributing to Arch Linux #### Jelle van der Waa [<jelle@archlinux.org>](mailto:jelle@archlinux.org) --- # Agenda 1. whoami 2. contributing 3. conclusion --- # whoami * TU since 2009? * Developer, DevOps and Security team * Arch Linux website maintainer --- # Contributing sorts * Documentation * Packager * Programmer * Security * Sysadmin * Tester * Translator --- # Documentation * [wiki](https://wiki.archlinux.org/index.php/ArchWiki:Contributing) * [tutorials](https://wiki.archlinux.org/index.php/Classroom) * man pages for tools (devtools, pacman, pacman-contrib,.. more) * libalpm documentation! (preferrably man pages) ??? - Wiki: good example is wireguard! How to set it up and install on Arch! - Tutorials: classroom gave excellent talks related to Arch! - man pages: some of our projects lack proper man pages, see for example pacman-contrib (checkupdates missing!) --- # Packager * Add packages to the [AUR](https://wiki.archlinux.org/index.php/Arch_User_Repository) * Become a [Trusted User](https://wiki.archlinux.org/index.php/Trusted_Users) or Developer ??? * Add new packages to the AUR which can be later adopted in the repos * Maintain packages in the Arch repos --- # Packaging tutorials * various [wiki articles](https://wiki.archlinux.org/index.php/Arch_package_guidelines) * [packaging tutorial classroom](https://wiki.archlinux.org/index.php/Classroom#Previous_classes) * [aur-general mailing list](https://lists.archlinux.org/listinfo/aur-general) * \#archlinux-aur on freenode ??? --- # Programmer * Python - [Archweb](https://github.com/archlinux/archweb) - django website - [Pyalpm](https://github.com/archlinux/pyalpm) - python libalpm binding - [Namcap](https://git.archlinux.org/namcap.git/) - [bugs](https://bugs.archlinux.org/index.php?string=namcap&project=1&search_name=&type%5B%5D=&sev%5B%5D=&pri%5B%5D=&due%5B%5D=&reported%5B%5D=&cat%5B%5D=&status%5B%5D=open&percent%5B%5D=&opened=&dev=&closed=&duedatefrom=&duedateto=&changedfrom=&changedto=&openedfrom=&openedto=&closedfrom=&closedto=&do=index) - pkgbuild & package linter - [Security Tracker](https://github.com/archlinux/arch-security-tracker/) - \#archlinux-security on freenode ??? - Archweb has good first issues tagged on Github. - Pyalpm - mostly maintenance mode! - Namcap - add more sanity checks, fix false positives. ie with split packages - Security Tracker - look at the prio:minor issues! Ask in --- # Programmer (2) * C - [pacman](https://git.archlinux.org/pacman.git/) - [bugs](https://bugs.archlinux.org/index.php?project=3&do=index&switch=1) - \#archlinux-pacman - [FS#58391](https://bugs.archlinux.org/task/58391?project=3) - make more tools translatable * PHP - [Aurweb](https://git.archlinux.org/aurweb.git/) - [bugs](https://bugs.archlinux.org/index.php?project=2&do=index&switch=1) - RTL support. ??? - Bugtracker for Pacman - Bugtracker for Aurweb --- # Programmer (3) Mostly infrastructure related * Bash - [dbscripts](https://git.archlinux.org/dbscripts.git/) - [devtools](https://git.archlinux.org/devtools.git/) - [pacstrap](https://github.com/archlinux/arch-install-scripts) --- # Reproducible Builds * Help fix reproducible build [issues](https://tests.reproducible-builds.org/archlinux/archlinux.html) in upstream * Work on a CI for reproducing our own packages * Join \#archlinux-reproducible --- # Security - Join the [security team](https://wiki.archlinux.org/index.php/Arch_Security_Team) - Audit our infrastructure - Audit our software and packages - \#archlinux-security on freenode --- # Security - hardening service files Harden our provided systemd services (man systemd.exec) - For example [filebeat](https://git.archlinux.org/svntogit/community.git/tree/trunk/filebeat.service?h=packages/beats) - Well hardened [service](https://git.archlinux.org/svntogit/community.git/tree/trunk/grafana.service?h=packages/grafana) --- # Sysadmin - [Infrastructure](https://git.archlinux.org/infrastructure.git/) - [kanboard](https://kanboard.archlinux.org/public/board/7dd7510424e4229247e8e0b90bf43e1553fce86cdf8475b60edc956ed5a8) (Ansible, Terraform) - [Vagrant image(s)](http://github.com/archlinux/arch-boxes) - [Docker image](https://github.com/archlinux/archlinux-docker) - [Hosting a mirror](https://wiki.archlinux.org/index.php/DeveloperWiki:NewMirrors) --- # Support * IRC \#archlinux @ freenode * [Forums](https://bbs.archlinux.org/) * [Reddit](https://www.reddit.com/r/archlinux) --- # Tester * Test packages in [testing] as part of the [testing team](https://wiki.archlinux.org/index.php/Arch_Testing_Team) * Use [arch-signoff](https://github.com/archlinux/arch-signoff) for an easier signoff process --- # Translator - [AUR](https://www.transifex.com/lfleischer/aurweb/) - [Wiki](https://wiki.archlinux.org/index.php/ArchWiki:Translation_Team) - [Pacman](https://www.transifex.com/toofishes/archlinux-pacman/) --- # Questions