taskman.run_in_background() by itself still doesn’t show a progress dialog. I suspect the issue is that the media sync task is blocking some other task that calls .with_progress(). This can be confirmed by installing a deck then switching the current deck while media sync is in progress. You should notice that a progress dialog is shown. This is because Anki calls set_current_deck() as a CollectionOp so it has to wait until media syncing is done to actually change the deck!