fixed SET_DISTRO macro and detect_distro