add xdg open func