I neglected when I commented the other day to address something in the original question: Can I use another oil - peanut, olive, coconut, tung?
Of those, the only one that polymerizes, making it a permanent, as opposed to temporary, waterproofing, is tung. I've not compared the cure
times, but what I got in a quick search seems to indicate that raw tung might well be slower than linseed. There's a polymerized variety which
cures quicker, but that likely would have the same downsides as "boiled" linseed oil.
Mineral oil (e.g. baby) comes from petroleum (the "mineral"). I wouldn't think, again because it doesn't polymerize, that it would be a good
long-term waterproofer.
I haven't yet used it, but a commercial product that seems very useful, and relatively cheap, is Nikwax Cotton Proof. I was told by them that
for my 20 oz/yd (yes, too heavy, lol) canvas, to use the same application rate as lighter material. So 1 L diluted and sprayed can easily treat
my 450 sf... 50 ml will treat 30 sf (3 m^2), so a liter is good for 600 sf. At $42/L, + $10 shipping (free shipping over $50), a bargain in my book.
A key to success, regardless of the treatment, is ensuring your canvas is clean. Mine is new; as a precaution of any processing residues, I plan
to wash with very dilute dish soap. With Nikwax, or other water-based treatment, you want the canvas damp, definitely not bone dry. On the
contrary, with the oil/solvent (e.g. classic wax/linseed oil/mineral spirits) type, the drier the better.