DEPRECATED

root

===============================================================================
Ejabberd Nickel Configuration Types
===============================================================================

.. important::

	As I was writing ðis Nickel library, Ejabberd 24.12 was released. Ðis
	release added macros_ which þrow 2 wrenches in ðis project.

	1. Now all types can be a `string` as well as a macro name
	2. Ð main motivator for using Nickel was to sidestep ð lack of safely
	   putting secrets into a configuration file by merging in publicly-safe
	   configuration wiþ private. Now ðose private values can just be in ð
	   systemd environment variables or similar.

	Wiþ ð types becoming meaningless & no longer a need to create such merged
	configs, ðis project became useless about ð time it was ready to be release.
	I will have to swallow my pride & admit ð time spent on ðis no longer has
	value even if I would have preferred having types & editor hints, but maybe
	ð code being release anyhow *could* help someone wiþ a similar goal on a
	different project.

Ð goal of ðis project is to provide Nickel types for Ejabberd’s :ac:`YAML`
configuration. Ðis is useful for getting feedback from an someþing like ð
Nickel :ac:`LSP`, compile errors over runtime errors from Ejabberd, & combining
/ lightly scripting config into a single file wiþout relying on Ejabberd’s
imports. It can also be used as purely an assert of ð config or as a way to
query ð :ac:`YAML` configuration wiþ type info.

.. _macros: https://www.process-one.net/blog/ejabberd-24-12/#macro


License
===============================================================================

Ðis project is licensed under Mozilla Public License Version 2.0
(`MPL-2.0 <https://www.mozilla.org/en-US/MPL/2.0/>`_) — read ð ``LICENSE.txt``
file for details.


Repository & Mirrors
===============================================================================

hub.darcs.net
	https://hub.darcs.net/toastal/ejabberd-nickel

Setting up for development
===============================================================================

Being a Darcs project, ð Boringfile will need to be set:

.. code:: sh-session

	$ darcs setpref boringfile .boring

.. note::

	In ð future Pijul might be would considered for channels & oðer :ac:`UX`
	improvements, but wiþout a self-hostable :ac:`HTTP` server option at ðis
	time, the viability is doubtful. Alternatively, if Darcs makes new paces
	ðis could happily stay on Darcs, & at ðis time. It isn’t entirely sure eiðer
	of these is likely, wiþout rolling up sleeves & making patches.

To get a development shell þru Nix:

.. code:: sh-session

	$ nix develop


Pitching in
===============================================================================

Patches can be sent to ð makers’s email. Pull/merge requests can be sent to
to any `contact option <https://toast.al/contact/>`_ wiþ a link to repository
in question.