This change adds [LeftHook](https://lefthook.dev/) as a GitHub hook management tool alongside [MegaLinter](https://megalinter.io/) to lint all relevant files within the repository.
For users that don't end up installing LeftHook for pre-commit hooks, megalinter picks up the necessary formatting changes and reports them.
* feat: add lefthook, megalinter and update editorconfig
* fix: lint commit ordering
* refactor: adjust megalinter reporters
* refactor: adjust description for cache domains
* refactor: single - for passing options
* refactor: add repo-specific fmt in megalinter pre-commands too
#149 introduced a minor regression which included duplicates for the Unbound generation script.
While this does not have a technical impact it may cause confusion for users, this PR will ignore duplicate entries.
This change leverages #130 and also applies this to the dnsmasq script.
As it currently stands both generation scripts (unbound and dnsmasq) have a condition where a domain will be skipped if it fuzzy matches a domain already parsed that is higher in the CDN domain list.
For example the latter of the below two samples would never be added.
8793ce1531/steam.txt (L20)8793ce1531/steam.txt (L29)
I've also taken the liberty to sort the output of said scripts for readability and troubleshooting purposes.
Closes#130.