logo       

Re: [GHC] #723: The package database should be a directory of files instead: msg#00077

lang.haskell.glasgow.bugs

Subject: Re: [GHC] #723: The package database should be a directory of files instead of a single file

#723: The package database should be a directory of files instead of a single
file
-------------------------------+--------------------------------------------
Reporter: simonmar | Owner:
Type: task | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 6.4.1
Severity: normal | Resolution:
Keywords: | Os: Unknown
Difficulty: Moderate (1 day) | Architecture: Unknown
-------------------------------+--------------------------------------------
Comment (by simonmar):

Comments from Duncan Coutts:

One downside to using a dir approach is that it makes it harder to
optimise the format of these files (since they do take a little while to
parse).

One could use a binary format for the installed files, but it still
means opening several small files. That's probably the sweet-spot for
performance/effort. It might be possible to keep the package.conf files
in the nice cabal text formal and then build a cache. However it's not
obvious where such a cache would go. It could go in the users ~/.ghc
directory but that will not work well for the root user. For example on
gentoo and debian updating such a cache would cause a sandbox violation
during a build.

So for example we could use ghc-pkg to install into a given package db
dir and it could write the binary format file:

ghc-pkg register foo.pkg -f buildtmp/package.conf.d/ --force

On a related note, we sadly have to use --force in this instance since
we're installing into a temp dir so the directories do not exist yet in
the real root file system. We could avoid {{{--force}}} with {{{--pkg-
root=
${DESTDIR}}}} or something, but it'd need more complexity in ghc-pkg.

--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/723>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler_______________________________________________
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@xxxxxxxxxxx
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise