better uname check