I agree with the others here. I'm confused by what you're doing.

You should offer the software in whatever format is best for your users (and compatible with your system). Generally speaking, they will want whatever is easiest to use-- easiest to install, fastest to get working, etc.

So giving them an installer (with an .exe and so forth) is the obvious answer, if you're designing that kind of software.

And generally companies don't distribute source code because they don't want others to reverse engineer it. In fact, I have absolutely no idea why you'd want to give away anything other than the final product to your customers-- what good reason would they have for wanting it?

If it's an issue of compatibility, perhaps with Linux users needing some other format, then I don't see why you'd charge differently-- that seems like a bad idea to me and I've never seen that. Just charge one price for any version of the software.



If, alternatively, you'd like to make it open source, then the situation is different. But your'e talking about "selling it" which is not the same as open source, so I'm not sure. I suppose you could do a mixed business model where you sell access to an otherwise "open source" software project, but I doubt that would be effective. The point of open source is to get many users contributing, and selling access limits how many people would contribute. But that's a logical option, depending on what you're doing.



In the end, it's up to you, but people are not buying code or a format from you. They're buying "software" that "does" things. They want the results, not the technical stuff. My suggestion: pick one format, pick a price, and sell it. If you also need other formats, sell them for the same price (assuming they have the same functions). Another model you could use would be selling subscriptions if you do it online, as traq said. So at most that would be two options: 1) software to buy and own; 2) software to subscribe to. But no different formats would be relevant.