i've bought a gas gun that is cheap to buy & keep, that is nonlethal & legal (RMG-19 Kolter).
It's main down side is very short effective range (0,5 - 2 meters), so i've looked for better solutions.
Solution is pepper-gas-ball throwers, some of them legal and effective at a range of about 15 meters (about 50 feet).
They are far more expensive, however - and i think the ammunition & compressed CO2 containers have to be replaced quite often. This adds significiantly to the cost.
i think i'll buy one someday, but for now can't afford that.
Example of such a gun is: Mission Less Lethal TPR.