Switching my domain over to my new mailserver was no big deal, but getting all of my old mail imported from ProtonMail was kind of an ordeal.
The only way to export mail in bulk from PM is to use their "Bridge" app, which creates a localhost IMAP server. That doesn't exist for linux, so I had to install it in a Windows VM. Then when I was connected via Thunderbird, I exported all of my mail in .eml format. However, the filenames of the eml files were prefixed with a YYYMMDD timestamp, but postfix writes them out with a UNIX epoch timestamp, so all my new mail was being displayed AFTER all the old mail. I had to write a script to parse the 'Date' header out of each eml file, convert it to UNIX time, then add that as a prefix to the filename. What a PITA. Hopefully I only have to do it once.