LinuxCommandLibrary

aurpublish

Upload packages to the Arch User Repository

TLDR

Verify PKGBUILD integrity, generate .SRCINFO, create a commit message template, and publish the package to the AUR

$ aurpublish [package_name]
copy

Add githooks to the current repository
$ aurpublish setup
copy

Display help
$ aurpublish [[-h|--help]]
copy

SYNOPSIS

aurpublish [-h] [-d --dry-run] [-u --update] [-f] PKGDIR | PKGNAME

PARAMETERS

-h, --help
    Display help and exit

-d, --dry-run
    Simulate publish without pushing to AUR

-u, --update
    Update existing package instead of creating new

-f, --force
    Skip PKGBUILD validation and force push

-c, --changelog FILE
    Specify custom changelog file

--ssh-key KEY
    Use alternative SSH key for AUR git

DESCRIPTION

aurpublish is a utility designed for Arch Linux users and AUR maintainers to simplify publishing and updating packages in the Arch User Repository (AUR).

It automates key tasks such as validating PKGBUILD files, handling git operations for package repositories, authenticating via SSH to the AUR git server, and pushing changes. Users provide a local PKGBUILD directory or package name, and the tool manages the upload process, including creating new packages or updating existing ones.

Key features include dry-run mode for testing, automatic PKGBUILD linting with tools like namcap, changelog updates, and support for maintainer scripts. It's particularly useful for developers maintaining multiple AUR packages, reducing manual git and SSH steps.

Installation is via AUR itself (e.g., aurpublish-git), requiring git, ssh, and makepkg. It assumes ~/.ssh/aur.pub is set up for AUR access. While not officially maintained by Arch, it's community-driven and integrates well with AUR helpers like yay or paru.

Usage streamlines the workflow: clone AUR repo, edit PKGBUILD, run aurpublish, and it handles the rest. Caveat: requires AUR maintainer account and SSH key approval.

CAVEATS

Requires AUR git SSH access with approved key (~/.ssh/aur.pub).
Does not handle upstream VCS packages automatically.
Not suitable for production without testing dry-run.
Community tool; check AUR page for latest issues.

SETUP

Generate SSH key: ssh-keygen -t ed25519 -f ~/.ssh/aur, then submit pubkey at aur.archlinux.org.
Add Host aur.archlinux.org IdentityFile=~/.ssh/aur to ~/.ssh/config.

EXAMPLES

aurpublish mypackage # Publish new package
aurpublish -u ~/mypkg # Update existing

HISTORY

Originated as aurpublish-git in AUR around 2020 by community developer ilyaigpetrov.
Focuses on streamlining manual AUR workflows post-asp popularity.
Active development with updates for AUR policy changes; latest versions support PKGBUILD 2.0 syntax.

SEE ALSO

asp(1), makepkg(8), git(1), namcap(8)

Copied to clipboard