Open adamretter opened 6 years ago
Hi @adamretter!
There is no facility for this in the client at the moment.
To browse the official packages, you can take a look at buckaroo.pm. There is a search box at the top.
Unofficial packages (that is packages on GitHub, BitBucket and GitLab) are not currently indexed. The only way to find them is to look for a buckaroo.json
file in the repo. Here is an example.
If you can't find a particular package that you are looking for, please create an issue on the wishlist and we'll endeavour to port it for you 😊
@njlr Hi there, I was initially interested as I make some contributions to RocksDB and I wondered about packaging that. Unfortunately if I understand correctly, then we would also have to adopt the Buck build system to be able to use Buckaroo. I don't think that is something we are likely to do.
Yes, all Buckaroo packages build with Buck. This is to give us a reliable way to glue libraries together (Buck generates linker flags etc.)
It is possible to use binaries that have been built by Buck in a non-Buck project, since they are predictably placed in the buck-out/gen/...
folder. If you consider it worth it or not would be up to your team and your use-case.
It is also possible to go the other way, and call other build systems from Buck. You lose many of the benefits of Buck by doing this, but it can be a "good enough" solution. In this case, Buck acts as a "gluing layer" between binary files output by different build systems.
We wrote a brief article about the benefits of Buck, and there is a good talk from the Buck team too. The main reason that we use Buck is that it makes builds self-contained and reproducible. With CMake, it is very difficult to guarantee these things, which can result in "well it works on machine" type errors.
Regarding RocksDB, that is a Facebook project, which I understand already uses Buck internally, they simply haven't open-source the BUCK
files yet. If you choose to port RocksDB I imagine that would be a good starting point.
How can I list all available packages, so I can:
a) determine if a package I want is available? b) see what package types are available. i.e. if I want a lib for http, there may be more than one option available via buckaroo.
Perhaps a
buckaroo list
command that takes wildcards and/or abuckaroo search
command might help?