XBPS-SUCKLESS(7) Miscellaneous Information Manual XBPS-SUCKLESS(7)

xbps-sucklessmanaging suckless software with xbps-src

This guide assumes a working xbps-src installation. If it is not available, please follow the quick start guide

The first time you build a suckless package, you will need to download and extract the package:

$ ./xbps-src extract <package>
Then, create a ‘files’ directory in the same directory as the package template:
$ mkdir srcpkgs/<package>/files
And move the default config to that directory
$ cp masterdir/builddir/<package>-<version>/config.def.h srcpkgs/<package>/files/config.h
Edit ‘config.h’ as needed.

First, make sure the patch you are trying to apply is compatible with your version, which can be obtained from the package’s template. If it is, simply move the patch to ‘srcpkgs/<package>/patches’ (create the directory if it is not present).

Build and install the package as usual:

$ ./xbps-src pkg <package>
$ xi <package>
Note that ‘xi’ is part of xtools(1). If it is not available, the following command may be used instead:
xbps-install -R hostdir/binpkgs <package>

Update your local ‘void-packages’ repository with ‘git pull --rebase’, then use xbps-checkvers(1) to check if there's a newer version:

$ xbps-checkvers -D <path-to-local-repo> -I -m <package>
If a newer version is available, start from the CONFIGURING step, skipping the creation of a ‘files’ directory.
May 17, 2023 Void Linux