I would like to fit a linear model (lm) where the residuals variance is clearly dependent on the explanatory variable.

The way I know to do this is by using glm with the Gamma family to model the variance, and then put its inverse into the weights in the lm function (example: http://nitro.biosci.arizona.edu/r/chapter31.pdf)

I was wondering: 
* Is this the only technique?  
* What other approaches are relevant?
* What R packages/functions relevant to this type of modelling? (other then glm, lm)

Thanks