The offical documents that will give you additional information:
https://github.com/void-linux/void-packages/blob/master/Manual.md
https://github.com/void-linux/void-packages?tab=readme-ov-file
https://xbps-src-tutorials.github.io/package-update-tutorial.html
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md
Prepare your environemt:
- Fork the repository in https://github.com/void-linux/void-packages
- Clone your forked repo and in the cloned directory run the bootstrap command:
./xbps-src binary-bootstrap
- If you are making a new package create a directory for it in the srcpkg directory
- Create your template file copied from a sample or a different package or just start editing the exisiting file
- When you do the first commit make sure to follow the commiting convention
- In the template file make sure that every line doesn't exceed 80 chars unless there is a good reason
- when the file is ready check it with the xlint tool located in xtools (e.g.
xling ./srcpkg/pkgname/template
). - Test the package is compiling on your machine by running
./src-pkg pkg pkgname
- Test the package is compiling for other libC by running
./xbps-src -A <ARCH> pkg <PKG_NAME>
- Test the package is compiling for other platforms by running
./xbps-src -a <ARCH> pkg <PKG_NAME>
- Adujst the arch part as needed. It should be ommited if it compiles for everything.
- When everything is done create a PR and answer the questions in the template
- After a PR/MR process your package will go into the void pipe line
Succeccful Packaging :)