Initial commit still not tested on a fresh linux to check its bugs