Skip to content

dadevel/archpkgs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

archpkgs

Red teaming and pentesting tools packaged for Arch Linux.

Remarks:

  • packages are installed under /opt/archpkgs
  • Python packages are isolated in their own virtual environments
  • packages are rebuild weekly

Setup

Run the following command to add the repo.

curl -sSfL https://github.com/dadevel/archpkgs/raw/main/setup.sh | sudo bash

List all packages provided by the repo.

sudo pacman -Sl archpkgs

Note: Breaking changes that require manual interaction are marked in the commit history with an !.

Development

  1. Clone the repo.

    git clone --depth 1 https://github.com/dadevel/archpkgs.git
    cd ./archpkgs
  2. Create a new directory named like the package.

    mkdir ./example
  3. Place a PKGBUILD in the newly created directory that describes how the package is built.

    vim ./example/PKGBUILD
  4. Update the build container.

    podman pull ghcr.io/dadevel/archpkgs-builder:latest
  5. Build the package.

    podman run -it --rm --userns keep-id --group-add wheel -v ./example:/build -w /build --entrypoint /bin/env ghcr.io/dadevel/archpkgs-builder:latest makepkg --syncdeps --clean --needed --noconfirm
  6. Install the package and verify everything is on order.

    sudo pacman -U ./example/example-1234.5678900-1-any.pkg.tar.zst
  7. Run ./generate-workflow.py to update the CI pipeline.

  8. Open a pull request.

Tips

If building Rust fails with a strange linker error, use CFLAGS="${CFLAGS/-flto=auto/}" cargo build ....