OS independent update script