For starters, it is not very hard because there tends to be a lot of documentation out there on the subject. Here for instance is a rock-solid, step-by-step recipe for setup on a Debian Linux machine. Figure it out once, keep good notes, and you are good for a lifetime.
feel sadly vindicated for never having accepted my Android phone as a secure computing device. This post written by a Tor developer, provides a long list of problems, some of which are really not easy to patch, some of which are just egregious, for example: