I've tried to fix this. It's out of date with both Factorio and the supporting stdlib and flib. I've never modded Factorio and my lua exposure is incredibly small. The main issue I'm having is that flib's 2.0 support basically forces you do to do a major update with backwards breaking changes.
The stdlib changes are simple, you can just update from the out of date stdlib, to kry_stdlib, a temporary 2.0 version of stdlib that Kryzeth made to unblock themselves.
The Factorio changes aren't too bad (fix a couple recipes, how you read/access prototypes, sprites, etc)...
But the flib changes are all in with how it renders and is interacted with.
I can get it to render - but none of the UI interactions work.
Here's what I've done/the mess I've left it in, but I've given up. It's going to be easier to rewrite without flib and just use Factorio's GUI api.
https://github.com/JasonLandbridge/CircuitHUD-V2/compare/master...mGuv:CircuitHUD-V2:master
Anyone braver than me, feel free to continue hacking at it. My current problem is, all UI interactions don't work due to the way the event is handled, turned in to an action and then decided on what to act upon. Right now, all my actions come back nil so every interaction does nothing.
Hardest part is the changes between flib.gui-beta and what they actually released in flib.gui.
I'm sure it's easy enough but I don't have the time/knowledge to do this quickly. I'd rather learn the Factorio API in a rewrite than continue, sorry.