fn capture_loop( display: &str, index: usize, expect_name: Option<String>, gbm_path: Option<PathBuf>, from_main: Receiver<ToHost>, wake_rd: OwnedFd, frames: FrameSink, ) -> Result<(), String>