[Hackage] #688: adopt XDG basedir spec (was: no indication that configuration file location is configurable)

Hackage cvs-ghc at haskell.org
Mon May 17 06:25:22 EDT 2010

#688: adopt XDG basedir spec
  Reporter:  guest               |        Owner:         
      Type:  enhancement         |       Status:  new    
  Priority:  low                 |    Milestone:         
 Component:  cabal-install tool  |      Version:
  Severity:  normal              |     Keywords:         
Difficulty:  hard (< 1 day)      |   Ghcversion:  6.10.4 
  Platform:  Linux               |  
Changes (by guest):

  * priority:  normal => low
  * difficulty:  easy (<4 hours) => hard (< 1 day)
  * version: =>
  * severity:  minor => normal


 Sorry for neglecting to answer right away, I forgot about this bug for a
 few days because I didn't bother to jump through the hoops to be able to
 receive change notification.

 If by standard you mean ''de facto'' just everyone's been doing it like
 that, then I agree. And since indeed everyone's been doing that, I end up
 with hundreds of dotdirs in my home directory. This sucks because their
 content is essentially unstructured. The problem is that I want to treat
 files differently according to their purpose; and there are '''not just
 application files'''. There are also configuration files, they are put
 under version control. There are cache files, they are excluded from
 backup and indexing.

 You know that a software package in Linux is not just dumped into a single
 directory somewhere, but the files are sorted into directories which each
 have a certain meaning. [http://www.pathname.com/fhs/ FHS] governs the
 semantics for the system layout, [http://standards.freedesktop.org
 /basedir-spec/basedir-spec-latest.html FDO's XDG base directory
 specification] governs this for a user's directory. These are real
 standards, and they enable all sorts of interoperability that would not be
 possible with unstructured directory contents.

 Whether you want to adopt the spec in order to sort files into their
 appropriate XDG location by default is up to you. Thanks to your hint
 about {{{--config-file}}} I was able to move away the last file and delete
 {{{.cabal}}} for good, so certainly a compliant layout is already possible
 (through careful configuration, as I said before) if a user wants it.

Ticket URL: <http://hackage.haskell.org/trac/hackage/ticket/688#comment:2>
Hackage <http://haskell.org/cabal/>
Hackage: Cabal and related projects

More information about the cabal-devel mailing list