Kodi can do IPTV okay, but if you have a large playlist, it can't handle it.
Tivimate, both on Android boxes and emulated on the PC, is the way to go now for the best experience, but it costs some money and the limit is five devices per subscription. Its weak point is VOD, though, so if you must have the VOD, its best to use something like IPTV Smarters or something similar. The live TV function on Smarters is kind of janky, though.
For Linux, there's
Nodecast-TV, which is essentially proxied server. You just load it up in your browser. It's still in its infancy, though, and the developer seems too busy to update it, so it's not quite there yet.