Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save RandallFlagg/357accd117b6e17454ffbd317db1cfd9 to your computer and use it in GitHub Desktop.
Save RandallFlagg/357accd117b6e17454ffbd317db1cfd9 to your computer and use it in GitHub Desktop.
How to submit your first XBPS package to void packages

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:

  1. Fork the repository in https://github.com/void-linux/void-packages
  2. Clone your forked repo and in the cloned directory run the bootstrap command: ./xbps-src binary-bootstrap
  3. If you are making a new package create a directory for it in the srcpkg directory
  4. Create your template file copied from a sample or a different package or just start editing the exisiting file
  5. When you do the first commit make sure to follow the commiting convention
  6. In the template file make sure that every line doesn't exceed 80 chars unless there is a good reason
  7. when the file is ready check it with the xlint tool located in xtools (e.g. xling ./srcpkg/pkgname/template).
  8. Test the package is compiling on your machine by running ./src-pkg pkg pkgname
  9. Test the package is compiling for other libC by running ./xbps-src -A <ARCH> pkg <PKG_NAME>
  10. Test the package is compiling for other platforms by running ./xbps-src -a <ARCH> pkg <PKG_NAME>
  11. Adujst the arch part as needed. It should be ommited if it compiles for everything.
  12. When everything is done create a PR and answer the questions in the template
  13. After a PR/MR process your package will go into the void pipe line

Succeccful Packaging :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment