-
Notifications
You must be signed in to change notification settings - Fork 376
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Consider Linux packages / binaries. #333
Comments
In case you haven't seen our announcement[1], Vcpkg now supports Linux and OSX and so may be worthy of inclusion in this list :) We also confirmed that our |
@sduskis I am moving this out of the current milestones per the meeting on Friday. |
For the record. We are looking for customer feedback here, if anybody has suggestions or opinions on what packaging solutions we should adopt please let us know. |
I've started work on some RPMs for crc32c and google-cloud-cpp. You can download them here: https://copr.fedorainfracloud.org/coprs/remyabel/google-cloud-cpp/ They have built successfully so please feel free to test them out. For tarballs, we can follow a similar approach to Bazel. They use github-release which is a CLI tool for uploading artifacts to the Github API. We may also need to use git-archive-all to solve the issue mentioned in #2246. |
The RPM's are going to be put on hold for now. It fails due to this:
When using |
Doh! That is because the module is |
What do you prefer: keeping the spec in a separate repo or keeping it part of the repo and using something like https://github.com/dgoodwin/tito? The workflow is:
|
I do not think we have made up our minds about how we want to support packaging (that is why this bug says "consider ..."). I think we generally have agreement on this (@devjgm to correct me if this is not the case):
So in that context, I think contributing the files into the repository is fine, but we cannot make the builds depend on them. On |
Generally I agree with everything you said. Package maintainers should be able to create packages independent of upstream cooperation (sans patches or blockers that cannot be resolved downstream). I suggested tito because it (and rpkg) have the strange property that they need to be run from the git sources repository. tito takes it a step further and requires committing a .tito folder and running Traditionally creating an RPM, i.e using |
I probably have more questions on this topic than answers. I basically agree with what @coryan said 4 hours ago, with one comment: the third bullet is a little surprising to me. I mean, we will not be distributing or maintaining binary packages ourselves (agreed). It's fine if other binary package maintainers do this for our project though. Indeed, we'll even do our best to make our repo amenable to being easily packaged in a wide variety of ways for those who do want to make binary packages. However, I was not expecting us to endorse or even accept packaging files for any binary packaging system. I agree that we don't want our builds to depend on any particular binary packaging system, and therefore, I'm not sure if we want our repo to host files that we don't really own/maintain/test. Can all the binary packaging files live in some other repo instead? |
Well, that was my fault. I was enthusiastically exploring various options for packaging and wanted to contribute. This led to the following chain of events:
But all of these issues have been resolved and I agree it's best practice for the files to exist elsewhere (and I actually find it a pet peeve when upstream developers try to do packaging, because it makes downstream maintainer's lives harder.) |
Yep. I'll do that. |
Consider creating binary packages for Linux. We can host them in GCS or bintray. We can have CMake create them, but it might be better to manually create them to spell out the build dependencies and install dependencies.
At least the following should be considered, and if rejected say why:
The text was updated successfully, but these errors were encountered: