I've just tried out Nix and it is indeed an awesome application. It looks as though it is also lighter than my application on resources:
e.g.
TotalMix Volume Control: 28.5 MB memory used, 21 threads
Nix: 6.3 MB memory used, 4 threads
There are some features that Nix is missing compared to TotalMix Volume Control v0.5.0, and it would be interesting if the author would consider adding them.
Specifically:
Fading out of the widget when it's about to dissappear
Ability to set the volume increment that is to be used; I think it's cool that it goes by db while my app goes by %, although a 1db increment feels too fine for my taste, I built my app to match the behaviour of the regular volume keys which go up and down by 2%, and 1% with Shift
Separate ability to fine adjunt the volume control and set the increment for that
Ability to set the max volume that would be sent to the device
The rest of the things missing are more aesthetic things, such as scaling, ability to set all colours and similar, but all of those are more minor points.
It is a steal at $5 and I commend the author, wish I had the skill he has to build something so performant!
Obviously Nix has many features my app lacks, like ability to control multiple outputs which I think is awesome!
I should say that the Rust frameworks I was using were getting nowhere near that level. As much as everyone loves Rust, once you factor in the lack of maturity of GUI frameworks, it is nowhere near as stable nor mature as C++ in that area.
At some point in the near future, I will see if there's anything I can do to make my app more efficient, although I suspect it may be tricky given that I am using C# and WPF.
Cheers
Fotis