I have run my own email server, and have worked in the commercial web hosting sector.
Honestly, I wouldn't run your own email except as a side project.
It's certainly possible and all the tools are available and easy enough to use, but email in general is a rough combo of super old, and a "big target".
The super old part means that a lot of things that we might consider standard for a modern federated system just aren't there for email. Security is profoundly lacking, and if something gets dropped because of an update, or your computer crashed, there's no guarantee that the system will find a way to get it to you, and the sender might not even know it didn't get to you.
Security wise, you basically have to set everything up correctly all at once, or some system somewhere between you and the recipient will just throw the messages away, and they may or may not tell you.
They do this because all the tools are old, crufty and there's a lot of good exploits that misconfiguration leaves open that automated tools can use to send spam.
Be sure to keep your computer fully patched, and install a malware scanner, even on Linux.
Ultimately, I wouldn't bother running one because the ratio of reward to work is just off for me. I would recommend setting something up for an afternoon though, just so you can see how the pieces work, and get to send yourself an email and know what steps it took.
Is there a cat? -> yes! -> you did it right! ☺️