How to collaborate on other users’ packages
If a certain existing package does not work for you, or you need to store pre-compiled binaries for a platform not provided by the original package creator, you might still be able to do so:
Collaborate from source repository
If the original package creator has the package recipe in a repository, this would be the simplest approach. Just clone the package recipe
in your machine, change something if you want, and then export the package recipe under your own user name. Point your project’s
[requires]
to the new package name, and use it as usual:
$ git clone <repository>
$ cd <repository>
//make changes if desired
$ conan export . <youruser/yourchannel>
You can just directly run:
$ conan create . demo/testing
Once you have generated the desired binaries, you can store your pre-compiled binaries in your bintray repository or in your own Conan server:
$ conan upload Package/0.1@myuser/stable -r=myremote --all
Finally, if you made useful changes, you might want to create a pull request to the original repository of the package creator.
Copy a package
If you don’t need to modify the original package creator recipe, it is fine to just copy the package in your local storage. You can copy the recipes and existing binary packages. This could be enough for caching existing binary packages from the original remote into your own remote, under your own username:
$ conan copy Poco/1.7.8p3@pocoproject/stable myuser/testing
$ conan upload Poco/1.7.8p3@myuser/testing -r=myremote --all