[[!comment format=mdwn
 username="joey"
 subject="""comment 1"""
 date="2015-02-28T15:01:24Z"
 content="""
Unusual as it is for propellor's configuration git repo to include the full
source code to propellor, I like this approach. It lets users change any
existing property that is not generic enough, or makes assumptions they
don't like, or needs porting to their OS of choice.

But still, propellor is
[on hackage](http://hackage.haskell.org/package/propellor), as
a library. It can be used that way if you want to.

I don't think that any of propellor's code cares how it's distributed,
except for src/wrapper.hs (which cabal will install as
~/.cabal/bin/propellor), which sets up the ~/.propellor/ repository. You
can bypass using that wrapper if you like, and cabal install propellor and
create your own ~/.propellor/ repository containing only your own
config.hs, and build and use propellor that way.

Where that approach becomes a problem is that propellor --spin currently
relies on propellor's Makefile being in the repository, when bootstrapping
propellor on a remote host. So you'll need to include a copy of that in
your repo for --spin to work. I'd like to get rid of the need for the
Makefile. (Only the build and deps targets are used by --spin.)
"""]]
