Default prefix for Cabal on Windows
brianlsmith at gmail.com
Thu Jun 16 04:30:10 EDT 2005
* The "Program Files" folder usually has at least one space in its path,
which could cause a lot of problems for Unix-centric software. For this
reason alone, I always install anything that isn't Windows-specific into
"c:\software" instead of "C:\Program Files." If the default prefix is going
to be "Program Files" then there should be a note in the Cabal documentation
that the application should expect to be installed into a directory with
spaces in the path.
* Even if a program is written in Haskell and is built with Cabal, I imagine
that people who write Windows Haskell software for non-developers will not
expect users to install the software via Cabal. Instead, they will provide
an MSI with a GUI installer. That means that, for the most part, the only
users of Cabal on Windows will be programmers. So, I think that the Cabal
experience on Windows should be optimized for us. In particular, if I run
"runghc Setup.hs install" when I am using MSYS Bash, I want the package to
install into "/usr/local/" just like it would on Unix.
* I don't think it makes sense for executable packages to have "Haskell" in
their prefix unless they are explicitly "for Haskell." For example, Darcs
isn't a Haskell tool; it is a versioning tool that happens to be implemented
in Haskell, so it wouldn't make sense for it to be installed into
"C:\Program Files\Haskell\Darcs-1.0," just like we wouldn't want it
installed into "C:\Prgoram Files\C#\Darcs-1.0" if it was written in C#.
Conversely, library packages are presumable Haskell-specific and so it makes
sense for them to have "Haskell" in their prefix.
Just my 2 cents.
> 2) C:\Haskell\<package-name>-<version>
> where "Haskell" could also be "Packages" I guess.
> -- Daan Leijen
> Brian Smith wrote:
> > On 6/15/05, *Simon Marlow* <simonmar at microsoft.com
> > <mailto:simonmar at microsoft.com >> wrote:
> > On 15 June 2005 05:49, Brian Smith wrote:
> > > The documentation states in Section 3.1 that the default value of
> > > "prefix" is "/usr/local" on Unix. However, it doesn't specify
> > what the
> > > prefix is on Windows. I found that the default value for prefix is:
> > > C:\Program
> > > Files\<package-name>\<compiler-name>-<compiler-version>. For example,
> > > version 1.0 of a package named "Foo" compiled with GHC
> > > 6.5 would have a default prefix of:
> > > C:\Program Files\Foo\ghc-6.5
> > The compiler version is there to avoid conflicts in the case when you
> > have multiple versions of GHC installed and the package is installed for
> > each one. However, I don't think we currently include the compiler &
> > version in the default $(libdir) on Unix, so whatever we do we should do
> > it consistently.
> > Okay, that makes more sense to me. However, I think that executables
> > should go in "C:\Program Files\<package-name>-<package-version>\bin,"
> > not <C:\Program
> > Files\<package-name>\<compiler-name>-<compiler-version>\bin" as they do
> > currently.
> > - Brian
> > ------------------------------------------------------------------------
> > _______________________________________________
> > Libraries mailing list
> > Libraries at haskell.org
> > http://www.haskell.org/mailman/listinfo/libraries
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Libraries