[darcs-users] Mac OS X installation barriers /was Re: ANNOUNCE: darcs 2.5.2

Ash Moran ash.moran at patchspace.co.uk
Tue Sep 6 16:14:42 UTC 2011


On 5 Sep 2011, at 12:53, John Chu wrote:

>> (I can only conclude that not many other people on OS X use darcs?)
> 
> Or we're all building it from source. The easiest way is probably to install Haskell Platform first, then let cabal build it for you.
> (That said, either OS X comes with git and subversion preinstalled, or they are installed when you install XCode. By default, XCode 4 creates a git repository when you create a new project. I wouldn't be surprised if most of the OS X folk who version control their work use git.)

Hi John

Thanks for that. Most OS X developers I know (that is, people using OS X, not necessarily developing for it) do indeed use Git. The rest of this reply is not aimed at you personally.

My feeling is that this is a barrier to darcs adoption, at least among people I know.

Background: Probably 80% of developers I know own a Mac, even those doing .Net development. Maybe 15% use Ubuntu, and 5% Windows. I'm going to get a slightly biased sample though as I know primarily Ruby and PHP developers, fewer .Net developers. The Mac developers are all using either Homebrew or MacPorts.

If one of these people needs to install git, they can either do `brew install git` or `sudo port install git-core` and be done with it. If they try the same with darcs, they'll find `brew install` doesn't have a formula for darcs, and `sudo port install darcs` will give them one that's out of date. So whenever I collaborate with someone, I have to ask them to download the latest binary from the darcs.net site and install it manually. Because this is outside of a package management system, it won't be updated, so I have to ask them to update it when I notice a new version. This is not very scalable.

I just tried the cabal route myself. `brew install cabal-install` gave me cabal, although it took 12.7 minutes to install. After `cabal update` I could do `cabal install darcs`, and 15 minutes or so later I had darcs. Except, I couldn't run it, because it hadn't been installed in my path. So a couple of `find /somewhere -name darcs` commands later, I figured out to add "~/.cabal/bin" to my zsh path. I can't see anyone else I know trying this approach though (installing an unknown package manager for one tool has the cart and horse the wrong way round).

Now, I really don't want everyone to think I'm whinging because I had to go out of my way to get the latest version of darcs. But I'm putting my cynical hat on and asking: how likely am I to try darcs if I'm one of the 80% of developers I know on a Mac? My answer, unfortunately, is not at all. It doesn't appear worth the effort to experiment with it. The impression I get is that it's not maintained on my platform. If I dig further and learn what cabal is, and that I have to get the latest version via that, I am likely to come to the conclusion that it's only intended for Haskell developers.

What this means is that when I tell someone I use darcs, and they ask what it is and why (and why I don't "just use git"), I can't say "it's cool because it does X, Y and Z really well, just give it a go!". Because I know most will just give up before they get over the installation barrier*.

It may be that the current intention is to not market darcs beyond the Haskell community. I know Eric has been very conservative about pushing darcs before it's been absolutely proven, so as not to taint people's impression of it. In this case, you can disregard all the above!

Anyway, I now have a cabal-installed darcs 2.5.2, which I'm pleased about. Thanks for pointing me in this direction, John - I'll get future updates this way. As for the non-cabal experience, I'll leave it to the darcs team to decide if it's currently an issue or not, as that's all relative to the current darcs marketing strategy.

Cheers
Ash

* This has happened to me. I pay a price for using darcs: I have a tiny project which is primarily of use to Rails developers[1]. A friend told me "There's a change I wanted in that. I would have written a patch if it was on GitHub". He can be quite a stubborn guy though.

[1] https://patch-tag.com/r/ashmoran/database_resetter/snapshot/current/content/pretty

-- 
http://www.patchspace.co.uk/
http://www.linkedin.com/in/ashmoran



More information about the darcs-users mailing list