— GPL 3, Section 6, alternative (b).
Yes, in GPL 3, a link would be enough, but the link must be already provided with the distributed program, you don’t get to only give the link only to those people who ask for it.
In GPL 2, a link is not OK, you must be prepared to send people the source code as “machine-readable copy”, “on a medium customarily used for software interchange”.
Six months later a teenager from a country you didn't know existed sends you an email - and the teenager would like source code please. They are legally entitled to that source code because of Bill's offer.
The written offer rule is deliberately the worst case. You should never choose GPL "written offer" with the expectation that this is reducing your work load or whatever, if you want least work just ship the source code with your program and fulfil the purpose of the GPL up front.
GPL software can be used for any purpose, you just have to pass along the rights you were provided if you redistribute it.