1) You understand how to use the Unix shell and everything else that goes into maintaining a Unix machine.
2) You have the time to do it. (This is what has always stopped me, FWIW.)
3) You are willing to spend money on a machine that has sufficient resources to be responsive when you use it but sits idle 99% of the time since you're the only user.
These obstacles are what drive people to SaaS, where they no longer have freedom to install arbitrary software.
1) You understand how to use the Unix shell and everything else that goes into maintaining a Unix machine.
2) You have the time to do it. (This is what has always stopped me, FWIW.)
3) You are willing to spend money on a machine that has sufficient resources to be responsive when you use it but sits idle 99% of the time since you're the only user.
These obstacles are what drive people to SaaS, where they no longer have freedom to install arbitrary software.