I made a Systemd competitor/aternative https://github.com/andrewbaxter/puteron that uses JSON for everything. The advantage to JSON is you can use a `$schema` key at the top and vscode will do autocompletion, error checking, and (I think) documentation from the jsonschema automatically without needing a custom language server. The power of standards at work!
I was trying to figure out why Systemd decided on their ini-like syntax instead of something like xml or json or whatever. I thought maybe it was some standard that existed at the time, but it does seem to be a custom format unique to systemd...
This is great! There's way too many arcane text file formats (configs, Dockerfiles, workflow definitions etc) without any sort of fast feedback loop on type-safety, documentation etc.
We need more projects like this and if a system is running SystemD, this needs to be enabled and integrated with any LSP-supported editors.
Would be good to add support for custom units based on generates (e.g. Podman[0]).
[0] https://docs.podman.io/en/latest/markdown/podman-systemd.uni...