
On 15 October 2012 20:51, Magnus Therning
On Mon, Oct 15, 2012 at 05:16:24PM +0100, Mateusz Loskot wrote: [...]
As Haskell newbie and new born Hakyll users, I've found recent replies [1] by Ian Ross interesting:
"I'm also using Arch Linux on x86_64. I would strongly recommend *not* using the Arch packages for most Haskell things. I use hsenv instead."
I haven't switched myself and I still use the packages, but I started to wonder if Ian's got the point indeed.
[1] https://groups.google.com/d/topic/hakyll/9G1qXBA4raU/discussion
As so often it all depends on what your goal is. hsenv compares itself to Python's virtualenv[1]. I've personally written quite a bit of Python code, and used many tools and programs written in Python, without *ever* feeling a need to use virtualenv. The same is, so far at least, true regarding Haskell and hsenv. In neither language have I ever had the need to have more than a single environment around.
Same here, I've written plenty of Python code and never used virualenv. But, I didn't target multi-user environments like Web with those programs.
On the other hand I've often had a need to install libraries on my system. In those cases I personally prefer using the package manager to make libraries available to all users on my system, i.e. I don't use distutils and cabal to install things on my system, just as I don't download tar-balls and run 'sudo make install' (instead I wrap that up in a PKGBUILD and install the resulting package).
Yes, I have impression that's the right way. Especially for, let's say, single end-user cases.
On the other hand I completely understand why virtualenv/hsenv are useful in some cases. By creating a virtual environment they disconnect you from the whims of upstream (Arch & ArchHaskell), letting you create the exact environment you need and run 'pacman -Syu' without having to worry (too much) about breaking that service your livelihood depends on.
For example, if on servers, for Web development, I imagine virtualenv or generally *env approach is necessary, especially in production. Thanks for useful comments. Best regards, -- Mateusz Loskot, http://mateusz.loskot.net