While I agree with a lot of this as well, I feel like downstream packaging has a lot of issues.
I'm working on a project (licensed under the GPLv3) and I have decided to be my own maintainer, i.e: building and distributing packaged versions of my project all by myself:
1. my project is young and unknown, I have no choice but to package it myself (I really like AUR by the way);
2. it lets me write and maintain step-by-step documentation;
3. it allows me to enforce a consistent interface for my project across operating systems, I know my project can be used the exact same way on any operating system I have packaged it for;
4. I have had bad experiences with maintainers having no idea what they are doing and completely breaking my software;
5. It allows me to build a full release pipeline including both source and binary releases.
The first point is sort of a big deal, having packages is important to drive adoption, therefore I need to invest my time in that. I'm not gonna wait for some random folks to package it a few years down the road (if that ever happens).
My work is not incompatible with downstream packaging, but I do intend to work closely with (or directly maintain) any downstream package.
I presume you mean lightsd. Nifty stuff. What do you think of Suse's OBS? I believe you're squarely in its target audience.
And hats off to you for going the extra mile for your project! Your PKGBUILD even looks quite good. Would you like some assistance in writing a -git pkgbuild for people who want to try the absolute newest commit?
Thank you! Yes, I was referring to my work on lightsd.
I didn't know about Suse's OBS until this thread, I guess I need to look into it. I have been building my own CI/CD pipeline on top of Buildbot so far. It's a PITA, but leaves a lot of room for creativity, hopefully it will be rewarding down the road.
I don't know about the -git thing for PKGBUILD, what's the syntax/documentation?
SUSE's OBS is in my biased opinion (I work at SUSE), probably one of the better ways of solving this problem for ISVs. You don't need a build infrastructure, you can get feedback from distribution maintainers and submission to the main distribution is surprisingly painless. Actually you can build packages for non-SUSE distributions on OBS as well, so it's even more versatile than just the openSUSE community's distributions.
I'm working on a project (licensed under the GPLv3) and I have decided to be my own maintainer, i.e: building and distributing packaged versions of my project all by myself:
1. my project is young and unknown, I have no choice but to package it myself (I really like AUR by the way);
2. it lets me write and maintain step-by-step documentation;
3. it allows me to enforce a consistent interface for my project across operating systems, I know my project can be used the exact same way on any operating system I have packaged it for;
4. I have had bad experiences with maintainers having no idea what they are doing and completely breaking my software;
5. It allows me to build a full release pipeline including both source and binary releases.
The first point is sort of a big deal, having packages is important to drive adoption, therefore I need to invest my time in that. I'm not gonna wait for some random folks to package it a few years down the road (if that ever happens).
My work is not incompatible with downstream packaging, but I do intend to work closely with (or directly maintain) any downstream package.
I really feel like this is sort of a catch-22.