fn get_devices( primary: bool, seat: Seat, socket_name: Option<OsString>, ) -> Result<(EventQueue<State>, State, Vec<Device>), Error>