[[!comment format=mdwn username="joey" subject="""comment 1""" date="2014-12-26T19:26:00Z" content=""" I think that the root assumptions are in basically 3 places: * Many Properties assume they're run as root, and will fail if they're not. Probably not a problem in practice for most of them. It might be nice to make a few, such as `User.hasSomePassword` work when run as a normal user. * Propellor's self-deployment involves running apt-get to instal ghc, etc. This could be modified to check if it's not root and do a local user of ghc if necessary. * `localdir = "/usr/local" and this is used in various places by eg, `--spin`. It is, however, entirely possible to run "./propellor" in some other directory, which causes it to run in that directory and ensure the properties of localhost. `--spin` could certianly be taught to run in a user mode where it uses "~/.propellor/" instead of `localdir`. I think that's all! I don't plan to try to add this feature myself, but will be happy to support anyone who wants to work on it. """]]