If you want to do karaoke in linux, or using only free software, you’ve got two options, PyKaraoke and VLC.
For running a karaoke night, PyKaraoke is better. But you probably have VLC already, and it’s available for Mac.
PyKaraoke
PyKaraoke is a super simple karaoke client written in Python. There’s an installer for Windows but on Mac you have to build it yourself, which isn’t worth trying. On linux just install it however you install stuff; it’s packaged for ubuntu.
The interface is aggressively simple, with the perfect two-pane interface. PyKaraoke will look inside zip files, making it more convenient to maintain than Winamp (see “Best free karaoke software”). It doesn’t feel as fast and indestructible as Winamp, and I’m sure it has more bugs. But it does everything I need, and the developers are nice and responsive if you have a problem. Thanks to its simplicity, I’d use it over KaraFun any day.
Also, PyKaraoke plays .kar files, so if you’re planning on using those, it’s a better bet than Winamp, where .kar playback uses something other than the CDG plugin.

VLC
VLC is the fuck-all-yall-ima-play-anything media player made by French university students. Through the magic of open source software, some pleading on the VLC forum piqued a programmer’s interest and they added it to the latest release. VLC has an okay system for managing playlists and libraries, but it doesn’t look inside zip files. VLC doesn’t play .kar files (MIDI files with timed karaoke text) but it plays every video format under the sun.

I wouldn’t use this to run a karaoke night. But it’s available for Mac, Windows, any flavor of Linux, and you probably use it already anyway! (If not, you should!)
I have frequented your posts before. The more I take in, the more I keep coming back!