# Beginners Guide to Package Maintaining

## Objectives

In this class, Students will:

1. Learn what a source package consists of and how they are installed and uninstalled on a Linux system.

2. Learn what an Arch Linux Package is, and how pacman and makepkg use them to install software.

3. Get a short introduction to bash and the specific variables and functions used in an Arch Linux PKGBUILD

4. Learn how to write their own PKGBUILD files by looking at the files in a source archive, checking the md5 sum, and using a PKGBUILD template. This would include ruby, cvs, git and other version controlled sources.

5. Learn how to upload packages to the AUR and how to find orphan packages and adopt them.

## Prerequisites

Before taking this class, students should have knowledge of

1. Basic commands used on a Linux System

2. Be familiar with the Linux directory hierarchy see Arch packaging standards#Directories

3. How to unarchive files

4. How to use a text editor

5. Have some knowledge of file/directory permissions

## Materials

1. An up-to-date Arch Linux Installation

2. An internet connection

## Complete Resources List

List all the resources used in the lessons

PKGBUILD Templates

## Suggested Reading

PKGBUILD

Arch packaging standards

The Arch Build System (ABS)

GNU Make

## See Also

DeveloperWiki#Packaging_Guidelines

Categories:

- Classroom
- Package development