pub async fn listen(&mut self, socket_file: PathBuf) -> Result<()> {
        self.socket_file = socket_file;
        let listener = self.build_listener().await?;
        self.listener = Some(listener);
        Ok(())
    }
Bind to Unix socket and listen.
# Errors

Will error if `build_listener()` cannot be unwrapped or awaited.
As in `build_listener()`, this is likely a filesystem issue,
such as incorrect permissions or a non-existant file.
leftwm-core/src/utils/state_socket.rs