himalaya/CONTRIBUTING.md

2.1 KiB

Contributing guide

Thank you for investing your time in contributing to Himalaya CLI!

Development

The development environment is managed by Nix. Running nix-shell will spawn a shell with everything you need to get started with the lib: cargo, cargo-watch, rust-bin, rust-analyzer, notmuch

# Start a Nix shell
$ nix-shell

# then build the CLI
$ cargo build

# run the CLI
$ cargo run --feature pgp-gpg -- envelope list

Contributing

Himalaya CLI supports open-source, hence the choice of using SourceHut for managing the project. The only reason why the source code is hosted on GitHub is to build releases for all major platforms (using GitHub Actions). Don't worry, contributing on SourceHut is not a big deal: you just need to send emails! You don't need to create any account. Here a small comparison guide with GitHub:

The equivalent of GitHub Discussions are:

The equivalent of GitHub Issues is the SourceHut bug tracker. You can consult existing bugs here, and you can "open a new issue" by sending an email at ~soywod/pimalaya@todo.sr.ht.

The equivalent of GitHub Pull requests is the SourceHut mailing list. You can "open a new pull request" by sending an email containing a git patch at ~soywod/pimalaya@lists.sr.ht. The simplest way to send a patch is to use git send-email, follow this guide to configure git properly.