I'm the original developer and maintainer of power-options (a GUI for managing settings related to power saving and performance on linux laptops and desktops). One of the issues I had when releasing it was the absurd difficulty of handling all package managers and all the different quirks in god knows how many different linux distros. For the most part of the program I simply built a GitHub actions workflow that used python scripts to generate PKGBUILDS and commit them with git to the AUR. Since the AUR didn't require any other manual processes it was the only one I could easily automate. The remaining users used shell scripts,
I also tried Open Build Service from OpenSuse and it was so hard to implement with so few documentation that I basically gave up halfway.
Then I decided to build distropack. Now you basically create a package, press enable on all distros, indicate which files your package has and use the specialized GitHub action to simply upload the binaries you already built in the CI and it will build for all major package manager formats.
it's that easy. I just wanted to share this with fellow open source maintainers. afaik it's basically OBS but way easier. one quirk though, just like in OBS your users will have a separate repository for your project only so use carefully I guess.
segfault0x23•51m ago
I also tried Open Build Service from OpenSuse and it was so hard to implement with so few documentation that I basically gave up halfway.
Then I decided to build distropack. Now you basically create a package, press enable on all distros, indicate which files your package has and use the specialized GitHub action to simply upload the binaries you already built in the CI and it will build for all major package manager formats.
Instead of god knows how many instructions in the readme I now just show my users this link: https://distropack.dev/Install/Project/TheAlexDev23/power-op...
it's that easy. I just wanted to share this with fellow open source maintainers. afaik it's basically OBS but way easier. one quirk though, just like in OBS your users will have a separate repository for your project only so use carefully I guess.