The best way to do it is from seawater as high salinity makes the transfer process easier and more efficient, if you then use solar to produce the electrical charge needed to separate the hydrogen from the oxygen then is becomes sustainable, the amount of energy produced from the hydrogen fuel cell is more than could be produced by having solar on the car. You can use aluminium in sea water as well as it reacts with the sea water to produce hydrogen and aluminium hydroxide, the hydrogen can be collected, there is plenty of scrap aluminium around from all the Indian frames that keep breaking. There are other ways of extracting hydrogen as well including direct water splitting. Interestingly it is more efficient to use an ICE to produce electricity than to drive a car directly so a short term solution is a hybrid drive which some car makers are starting to use, electric motors are about 80%efficient as opposed to ICE only which is about 30% on energy transfer.