Krolyxon
Commit 824b2cb

Branches

Refs →

nsxivetcCONTRIBUTING.md

112 lines · 4.9 KB

Project Scope

Note: Since we aim to be a drop-in replacement for sxiv, we intend to keep all sxiv's behaviors/features even in cases where removing them would make the code-base simpler.

Also note that (n)sxiv uses imlib2 for loading images. Thus any request or patches for adding support for new image formats should go into imlib2's repo instead.

Contribution Guideline

When contributing, make sure:

If your contribution is not suitable for general use, it will not be included in nsxiv. For changes that are very much up to preference, such as changing values in config.h, please do not open a pull request unless you have an objective explanation.

See the open issues to find something to work on. You can also filter the issues via label:

Code Style

nsxiv mostly follows the suckless code-style, with a few exceptions. If your editor supports .editorconfig then you'll already be off to a good start without needing much manual intervention. Additionally we provide a clang-format configuration for reference, which you may use via git-clang-format to format the changes you've made (please do not run it globally on the entire code-base since clang-format gets a decent amount of edge cases wrong).

Development workflow for maintainers

If we notice you contributing and/or showing interest in issues/pull requests, we may invite you to join the nsxiv org as a member. Being a member simply means you will be able to approve, disapprove and merge pull requests.

Our workflow regarding pull requests is the following:

For releases, the process is the following:

Mirroring to GitHub:

Assuming origin is the name of the codeberg remote and github is the name of the github remote; run the following commands to mirror the codeberg repo to github:

$ git fetch --prune origin
$ git push --prune github '+refs/remotes/origin/*:refs/heads/*' '+refs/tags/*:refs/tags/*'

The first command updates the local repo and the second command pushes everything on origin without pushing any of the local branches.


For mundane development related talks which don't warrant their own issue, use the general discussion thread.