Correct… essentially you must provide your source code and the GPL with the product; that includes changes you’ve made to the your original source code which is made into the product that you are redistributing.
Here’s a couple of links that should help:
http://www.gnu.org/licenses/gpl-faq.html#DoesTheGPLAllowMoney
http://www.gnu.org/philosophy/selling.html
Free software doesn’t mean free as in price, but free as in freedom, “a user is free to run the program, change the program, and redistribute the program with or without changes.”
What you are selling is the redistribution of the product and support. If they in turn give away the software + source code, they can, or they can charge as much as they like as well.
Here’s a nice story about selling open source software:
http://www.advogato.org/article/745.html
One of the comments sums it up nicely as well:
The way I like to approach this is as follows:
Client sez, Gee, this here software is free for the download, ain’t it?
Yeah, I sez.
Well, how come I gotta pay all this moolah to git it installed and configured? client sez.
Sez I, Well, okay. Here’s the RPM file set. Go right on ahead and expand that archive. Then you can install that puppy yer own bad sef. Once you git it all configured and working you let me know and I’ll come on out to do the hard part, eh?
This usually puts any objection to charging for installation and configuration to rest. The whole Open Source community is built on this very scenario. If you have the manpower to do it yourself then go right on and do it. If you can’t do it yourself then expect to pay me to do it for you.
Hope this helps.