diff --git a/README.md b/README.md index 9fe0c03..a71f38f 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # ServNest -ServNest (formerly Niver) is software providing a web interface allowing users to manage 3 independent services: +ServNest (formerly Niver) is software allowing users to manage 3 independent services: * Public suffix registry * Domain name server @@ -8,7 +8,11 @@ ServNest (formerly Niver) is software providing a web interface allowing users t ## Status -I plan to create and maintain a public stable instance of ServNest, but I haven't done so yet. Thus it is not yet tested with real world and long-term usages, and is **alpha software**. +ServNest is alpha software. + +Proper versioning, changelog and upgrade/migration instructions are still missing. + +[https://niver.niv.re/](Niver) is an installation administrated by the main developer. ## Detailed services features @@ -20,6 +24,7 @@ I plan to create and maintain a public stable instance of ServNest, but I haven' * Set Glue records * Display records * Transfer domain to another account +* Partial `CSYNC` and `CDS` support to synchronize from child zone ### Name server (`ns`) @@ -27,6 +32,7 @@ I plan to create and maintain a public stable instance of ServNest, but I haven' * Plain zone file edition * Dedicated forms to set/unset `A`, `AAAA`, `NS`, `TXT`, `CAA`, `SRV`, `MX`, `SRV`, `SSHFP`, `TLSA`, `CNAME`, `DNAME` and `LOC` records * Display records or the full zone file +* Keep records in sync with another domain (`CNAME` alternative for apex domains) ### Static HTTP site hosting (`ht`) @@ -76,26 +82,45 @@ Cronie (or another cron daemon) ## Installation -Manual installation instructions can be found in [DOCS/installation.md](DOCS/installation.md). +Manual installation instructions can be found in [`DOCS/installation.md`](DOCS/installation.md). [servnest-mkosi](https://code.antopie.org/servnest/servnest-mkosi) can automatically build a system image for ServNest and has configuration files and scripts. -## Contribute +## Resources -- Git repository : -- Issue tracker : -- Matrix channel : [#servnest:matrix.antopie.org](matrix:r/servnest:matrix.antopie.org) +[Matrix room](matrix:r/servnest:matrix.antopie.org) (`#servnest:matrix.antopie.org`) +: english/french +: discuss, get help and organise contribution + +[Issue tracker](https://code.antopie.org/servnest/servnest/issues) +: english +: keep track of bugs et wanted features + +[Git repository](https://code.antopie.org/servnest/servnest) +: english +: code, administration documentation ## Direct contact details -See . +Find them on [https://miraty.antopie.org/](my site). ## License ServNest is ethical libre software: you can use, redistribute or modify it under the terms of the CNPL-NAv7+ as found in LICENSE.md or at . -## Similar projects +## Somehow similar projects -- [DNSManager](https://github.com/KaneRoot/dnsmanager) powering [netlib.re](https://netlib.re/) -- [EU.org](https://nic.eu.org/) -- [DNS Witch](https://dns-witch.net.eu.org/) +[DNSManager](https://github.com/KaneRoot/dnsmanager): +: domain registry powering [netlib.re](https://netlib.re/) + +[EU.org](https://nic.eu.org/) +: domain registry + +[DNS Witch](https://dns-witch.net.eu.org/) +: user-friendly domain hosting based on EU.org + +[Codeberg Pages](https://codeberg.page/) +: static website hosting published through Git + +[Njalla](https://njal.la/) +: anonymous domain registrar diff --git a/pg-act/reg/reserved.txt b/pg-act/reg/reserved.txt index 754db36..fb68d79 100644 --- a/pg-act/reg/reserved.txt +++ b/pg-act/reg/reserved.txt @@ -141,7 +141,6 @@ cdn support admin web -dev host portal beta diff --git a/router.php b/router.php index 2052258..fd23782 100644 --- a/router.php +++ b/router.php @@ -11,7 +11,7 @@ define('PAGE_ADDRESS', $pageAddress . ((substr($pageAddress, -1) === '/' OR $pag define('PAGE_LINEAGE', explode('/', PAGE_ADDRESS)); define('SERVICE', dirname(PAGE_ADDRESS)); -function getPageInformations(array $pages, array $pageElements): array { +function getPageInformations(array $pages, array $pageElements): array { // Recursively retrieves page metadata from pages.php if (!isset($pages['index']) OR $pageElements[0] === 'index') return [ 'titles_lineage' => [$pages[$pageElements[0]]['title'] ?? false],