Make the source available to the purchaser, not necessarily public I think, right?
If you are careful with who you distribute the binary to, you could in theory keep the source sort of "secret", though I don't think it's a good general approach to GPL software.