6 years minimum! Ideally it should be 7 years to accommodate long software development cycles. Anybody asking for less is asking for a failure ...
I'd rather an overstayed welcome than a lower amount of quality releases and because of the fact that backwards compatibility isn't so common I'd value longer software support ...