~admicos/moonlander

ref: HEAD moonlander/CONTRIBUTING.md -rw-r--r-- 2.2 KiB
97b368faEcmel Berk Canlier plaintext: Add download button to context menu 4 hours ago

#Contributing to Moonlander

#Where to do my changes

If you are planning on changing

  • the Gemini protocol implementation, see the gemini subfolder.
  • the TLS trust-on-first-use implementation, see the tofu subfolder.
  • the Gemtext file parser implementation, see the gemtext subfolder.
  • the Gemtext renderer widget, see the relm-gemtextview subfolder.
  • the default configuration, it's in moonlander/data/default.toml.
  • the "about:xyz" pages, they're in moonlander/data/about.
  • the rest of the GUI, it's in the moonlander/src/ui subfolder.
  • anything else, it's probably in the moonlander subfolder somewhere.

#How to commit my changes

For commit messages, have the first line complete the phrase "This commit will ...", and keep it shorter than 50 characters.

If you have enough space left, prepend the rough name of the thing you are working on (gemini:, ui:, config:, etc.) to the commit message, so it's easier to understand what it changes at a glance.

If you wish to expand on why your change exists, (and please do so,) leave one blank line, and explain for as long as you want, though please try to keep your lines shorter than 72 characters each.

#How to send my changes

Preferably, I'd recommend you use git send-email to send your contributions as patches to ~admicos/moonlander@lists.sr.ht

However, if you are not comfortable with the e-mail workflow, I don't mind and will also accept the following options:

  • Link to a repo and a branch or commit ID I can merge from
  • Link to a patch file hosted somewhere (though at that point why not use git send-email?)

Please use the above e-mail to send those to me, so we can have a single, public place for all Moonlander contributions, no matter how they are sent.

#Tips

#Forcing default configuration

Set the environment variable FORCE_DEFAULT_CONFIG=1 while running Moonlander to force the use of the built-in config file. This will not prevent TOFU or bookmarks from updating.

#GTK Inspector

Set the environment variable GTK_DEBUG=interactive while running Moonlander to get a GTK "inspector" window that might be useful for debugging the UI.