import sys, os maildir_path = "/usr/lib/python3.12/site-packages/offlineimap/folder/Maildir.py" with open(maildir_path, "r") as f: maildir = f.read() maildir = maildir.replace( "fd.write(msg.as_bytes(policy=output_policy))", "try:\n fd.write(msg.as_bytes(policy=output_policy))\n except UnicodeEncodeError:\n fd.write(msg.as_string(policy=output_policy).encode('utf-8'))" ) with open(maildir_path, "w") as f: f.write(maildir) imap_path = "/usr/lib/python3.12/site-packages/offlineimap/folder/IMAP.py" with open(imap_path, "r") as f: imap_py = f.read() imap_patch = """ def get_msg_bytes(msg, policy): try: return msg.as_bytes(policy=policy) except UnicodeEncodeError: return msg.as_string(policy=policy).encode('utf-8') """ imap_py = imap_patch + imap_py.replace("msg.as_bytes(policy=output_policy)", "get_msg_bytes(msg, output_policy)") with open(imap_path, "w") as f: f.write(imap_py)