|
|
@@ -1,29 +1,8 @@ |
|
|
|
|
|
|
|
VCV Rack is [open-source](https://opensource.org/osd) but not [open-contribution](https://opensource.guide/how-to-contribute/). |
|
|
|
VCV is unable to accept free code contributions to Rack for the following reasons. |
|
|
|
- **Quality.** |
|
|
|
Most contributions to open-source projects typically only contain code, but writing code is just a small percentage of the effort required to maintain a large software project. |
|
|
|
Additional tasks for fully supporting a feature include |
|
|
|
- debating the best design before any code is written |
|
|
|
- considering all use cases and corner cases of the implementation |
|
|
|
- generalizability to allow other features to be built on top if needed |
|
|
|
- backward compatibility with Rack's plugin [API/ABI](https://vcvrack.com/manual/Version) and user patches. |
|
|
|
- testing across all supported operating systems and hardware |
|
|
|
- dedication to support the feature for >4 years |
|
|
|
- **Time.** |
|
|
|
In the past, free code contributions have cost far more time to review, iterate, fix, and test than writing the implementation from scratch. |
|
|
|
There have been exceptions to this, but they are rare. |
|
|
|
- **Legal.** |
|
|
|
A proprietary fork of VCV Rack is planned (see [*Rack for DAWs*](https://vcvrack.com/manual/FAQ.html#is-vcv-rack-available-as-a-vst-au-aax-plugin-for-daws)), so VCV must own all GPL-licensed code that is included in Rack. |
|
|
|
To accept a contribution, all authors of the contribution need to either |
|
|
|
- declare the patch under the [CC0](https://creativecommons.org/publicdomain/zero/1.0/) license. |
|
|
|
- complete a copyright reassignment form. |
|
|
|
- perform the work under a paid agreement. |
|
|
|
VCV Rack is [open-source](https://opensource.org/osd) and [free software](https://www.gnu.org/philosophy/free-sw.en.html) but not open-contribution. |
|
|
|
VCV is unable to accept outside code contributions to Rack itself. |
|
|
|
|
|
|
|
Except in exceptional circumstances, contributions are only accepted as paid work under detailed guidelines. |
|
|
|
|
|
|
|
However there are several areas you may volunteer to benefit the Rack project. |
|
|
|
- Create proper [bug reports and feature requests](https://vcvrack.com/manual/Issues). |
|
|
|
However there are several ways you can be involved in the Rack project. |
|
|
|
- Answer questions in the [VCV communities](https://vcvrack.com/manual/Communities). |
|
|
|
- Develop and maintain your own [Rack plugins](https://vcvrack.com/manual/PluginDevelopmentTutorial). |
|
|
|
- Contribute to Rack's open-source dependencies, such as [GLFW](https://www.glfw.org/), [nanovg](https://github.com/memononen/nanovg), [RtAudio](https://www.music.mcgill.ca/~gary/rtaudio/), and [RtMidi](https://www.music.mcgill.ca/~gary/rtmidi/). |
|
|
|
- [Develop your own Rack plugin](https://vcvrack.com/manual/PluginDevelopmentTutorial), or help maintain an existing plugin. |
|
|
|
- Apply for a [job at VCV](https://vcvrack.com/jobs). |