First Try to refactor for ubuntu