Copyrighted code publishing on crates.io

Thank you everyone for replies!

To elaborate the intention of such maybe a little unusual way of distribution, and the usage of crates.io for this purpose. The crate I'm going to publish is a Library and a Standalone application. The end-user who obtained appropriate license can either use it as a standalone app independently from the Rust ecosystem(maybe even not in the Rust project), or he/she can link it to his own Rust code as a library, customize through the crate's public API and use this way too.

The standalone app build distros are probably going to be distributed somewhere else outside of crates.io, and it is going to be one of the ways to obtaining the license. The package together with the license is going to include an option to contribute to the sources(such that the user can fix or implement something they need) or to use it as a library. As such the source code is going to be published on Github as well, so the source code is going to be public. It is practically just more handy to provide a way for the users to use standard features of public Github repos to make pull requests, and to download the crate from crates.io rather than linking to git repo.

So basically this is proprietary software, but is more opened for public view than usual.

Dual licensing approach(aka GPL + proprietary paid license) suggested by @kornel is a common practice for such cases, but I don't like it by several reasons. One of them is that my work is not a Free Software by design, it was not developed by a public community per se, and is not going to be maintained this way too. While I respect this approach in general, and I have a personal long history of contribution to OSS, this is just not the case for this particular work. Nevertheless contrary to proprietary software usually practicing by companies, I want to keep my work as open as possible and as such I want to publish it on Github and on crates.io too. Another reason is that if I license it under (A)GPL I leave an option for the users to simply bypass the commercial licence and use the end product(a standalone app) for free. Moreover it would explicitly state this opportunity in the (A)GPL license.

As @Michael-F-Bryan and @ZiCog noted this way of distribution I proposed makes it very easy for the users to violate my non-free license anyway, and it will be very hard to track such violations. But however I want to be as open as possible, and that's the price I'm ready to afford. This approach is based on trust and peoples fair decent behavior rather than using practical legal procedures to protect copyrights. I live in a very distant place, and it is very unlikely I will be capable to run any legal actions outside of the place where a live. So the proposed approach is tied to people good nature, not the formal laws, but I still think it would be reasonable to explicitly state the rules of use of my work rather than just licencing it under any FSF license that effectively closes most possibilities of commercial use.

3 Likes

It sounds like you understand the situation, which I think is the important part.

Expectations aside, the considerations raised also apply to free software licenses, though the scope of permissions vary. Not all free licenses are compatible with each other either, and many pairs are only "one way" compatible.

This topic was automatically closed 90 days after the last reply. We invite you to open a new topic if you have further questions or comments.