Yep, aware of that. I've watched it evolve over many years… from static management → `devfs` → `udev`. `udev` was introduced around 2005 so… initially it used plain `tmpfs`, but then they made `devtmpfs` as a hybrid of `devfs` and `tmpfs`; some default nodes were seeded by the kernel then `udev` did the rest.
`udev` initially started as a helper script that the kernel executed, later they also added a comms channel using netlink sockets.
Small embedded systems often have to cut niceties that make life easier, but they also have the luxury of a more fixed hardware configuration.
NetBSD has, from what I've seen, not made that same journey. I'm not suggesting that the way Linux has done it, is the way NetBSD *should* do it either. `udev` rules are obscure to debug, with a very bespoke domain-specific language describing the configuration file format. Not a fan of this approach … but that doesn't mean there aren't ideas that could be carried across.
An Intel NUC isn't a small embedded system: it is a desktop computer. I'm trying to do the sort of "desktop computer" tasks that I typically do with a "desktop computer".
Sometimes this means I have a few USB serial adaptors plugged in, and I'd rather address them by serial number through a symlink, than have to faff around with `dmesg` to figure out which one is which and manually edit configuration files to adapt to the order they enumerated.