Contributing to OpenDefocus
Contributing to OpenDefocus is greatly appreciated and welcome! To start, I’d recommend to look at the open issues. Or create one yourself and start on that if you have some suggestions for improvements.
Once done, please create a PR to the main branch and we can discuss (and hopefully) merge it.
Development
Tools Required
- Rust
- Protoc (protobuf-compiler on Linux/protobuf on macOS/protoc on Windows)
- Codeberg account
If you want to do some Nuke stuff
Linux
- Zig for C++ builds with glibc 2.17
- cargo-zigbuild same but for Rust
macOS
- Command line tools for C++ builds
Windows
- MSVC build tools 2022 for C++ builds
- lessmsi for extraction of Nuke installer
If you can’t figure it out, feel free to create an issue!
Getting Started
-
Fork the repository to your Codeberg account.
git clone ssh://git@codeberg.org/YOUR_USERNAME/opendefocus.git cd opendefocus/ -
Create a branch with a descriptive name.
- It is recommended to give your branch a meaningful name, relevant to the feature or fix you are working on.
- Good examples:
docs-plugin-installationfeature-new-nonuniform-artifactfix-panic-during-this-operation
- Good examples:
- It is recommended to give your branch a meaningful name, relevant to the feature or fix you are working on.
-
Commit using the conventional commits specifications
-
Run the development environment. Everything is handled through the xtask.
- To build for Nuke for example with Zig on Linuz, use
cargo xtask --compile --nuke-versions 15.0 --target-platform linux --use-zig --output-to-package - If you can’t figure it out, take a look at release_nuke.yaml how builds are done.
- To build for Nuke for example with Zig on Linuz, use
-
Create your contribution and test the changes.
- If you want to open the changes in Nuke, set the
NUKE_PATHto the package directory in this cloned local repository.
- If you want to open the changes in Nuke, set the
Most of all
Thank you!! For taking the time to read this and to contribute your time into this project.