> [...] text-based config! (Especially since one could then put it under version control.)
At least for the VCS part:
The config is saved in ~/.config/uhk-agent in a json file (don't know if the file name there changes though) and there are Export and Import options in the UHK Agent available.
do not get me wrong, I'm very happy to read about open source design and code, it's a must for me, something we should demand by law to guarantee common freedom.
I simply criticize the resulting product since it does not fit IMVHO any IT professional use case, it may fit well writer's use case, from journalist to bloggers etc, but not people who really want a keyboard-driven comfort UI and so a good keyboard to interact.
Also for me offer things like AppImage, Docker, Snaps, Flatpack is a MINUS, not a plus. As said before a (small) flash memory, easily accessible as USB storage, easily usable with a simple hardware switch/key combination that trigger "apply actual config" or "use previous and reset" is FAR simpler, far less error prone, far comfortable, far easier, far effective and even safe due to a very reduced attack surface. Today we have the REALLY bad habit to follow big-corporation made trend, but those trend are instrumental and useful for them, not for us.
A stupid, on-the-fly example: a simple flesh memory exported ad USB storage, Fat32. A directory named fw_update with a README inside "put new fw in my pwd, hit this key combination and new fw is applied. If id does not work previous one will be restored and here you'll find logs to debug". Another dir named docs with plain text or pdf documentation, a subdir ex_configs and a top level dir. configs in which we simply type with a small DSL our config.
Eventually on their website a webui to do the very same things with a GUI, eventually a local app to do the same, but as wrapper to this barebone, simple interface. Cross platform by it's nature and friendly to any "professional" user and also didactic for dummies. The local apps can be a simple static binary for most common OS (GNU/Linux, FreeBSD, OpenBSD, Windows, OSX at least), a VERY simple one, with a super-simple web-ui served by a super-simple http server, can be easily done with few SLoC in python or go for instance.
Also I see they offer additional keycaps, very good. But they are the same of the built-in one. You sell a keyboard of this kind without a vast selection of all-the-icons style keycaps and optional custom printed for extra fee? Of course, nearly all vendor do the very same. And it's really a shame IMO, it's clearly depict they do not know their customers or they are not really "keyboards OEMs".
No optional backlit version? If there are cheaper Chinese keyboards for around 10 euros with it and no on a high end devices? Even as paid extra option?
For a high end device an optional secondary USB cable to the computer and a couple of USB (perhaps USB3) port on the keyboard?
For a high end device aiming at IT pro, not gamers, an optional extension with a card reader pcsc compatible?
The world is complex, trying to satisfy anyone it's hard, one size does not fit all, so from a keyboard OEM, not a cheap one, I expect a sort of "modular platform" that can be tuned both for IT pro, gamers and even hard-core typist outside IT world. There are plenty of "high end" keyboard that are substantially the same, trying to being different for the sole reason of business competition not technical reasons.
At least for the VCS part: The config is saved in ~/.config/uhk-agent in a json file (don't know if the file name there changes though) and there are Export and Import options in the UHK Agent available.
The source for UHK Agent is available at https://github.com/UltimateHackingKeyboard/agent so at some point someone could make some CLI utility to load a pure text config...
That said, the UHK Agent is available as an AppImage and it works astonishingly well for me, even on a non-mainstream Distro (Void Linux).