[ 
https://issues.apache.org/jira/browse/COUCHDB-1012?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13086658#comment-13086658
 ] 

Paul Joseph Davis commented on COUCHDB-1012:
--------------------------------------------

@Randall,

You make a good point about switching configurations away from the install time 
defaults. I'm not entirely certain that I care too much though. If someone is 
at the level that they're swapping their lib or db directories then they can 
hang out in the corner. As to remove the db directory to force developers to do 
something funny I don't see it. I mean, creating a database at install time? 
Not even we do that. 

@Noah,

Look at the list of variables you have. Do we even actually install anything in 
any of these directories? Maybe the doc directory gets some stuff. But 
seriously, dvi, pdf, and ps directories?

  --sbindir system admin executables [EPREFIX/sbin] 
  --libexecdir program executables [EPREFIX/libexec] 
  --sharedstatedir modifiable architecture-independent data [PREFIX/com] 
  --infodir info documentation [DATAROOTDIR/info] 
  --localedir locale-dependent data [DATAROOTDIR/locale] 
  --docdir documentation root [DATAROOTDIR/doc/apache-couchdb] 
  --htmldir html documentation [DOCDIR] 
  --dvidir dvi documentation [DOCDIR] 
  --pdfdir pdf documentation [DOCDIR] 
  --psdir ps documentation [DOCDIR]

And then in the CouchDB section:

  --localconfdir configuration data [SYSCONFDIR/$package_identifier] 
  --localdatadir runtime data [DATADIR/$package_identifier] 
  --localdocdir documentation data [DATADIR/doc/$package_identifier] 
  --locallibdir library data [LIBDIR/$package_identifier] 
  --localstatelibdir database data [LOCALSTATEDIR/lib/$package_identifier] 
  --localstatelogdir log data [LOCALSTATEDIR/log/$package_identifier] 
  --localstaterundir daemon data [LOCALSTATEDIR/run/$package_identifier] 


What in the world does "local" mean here? Do you seriously expect users that 
aren't autotools experts to have any clue what this stuff means? Consider this 
as compared to:

  --config-dir   configuration directory
  --db-dir       database directory
  --static-dir   static asset directory
  --doc-dir      documentation directory
  --erl-libs-dir Erlang library directory
  --log-dir      log directory
  --pid-file     daemon PID file
  --uri-file     daemon sockets file

Its almost pointless to even include a description line for these variable 
names. And why aren't the CouchDB specific directories first? How often do you 
expect someone to want to know about the DVI or PDF directory before the db, 
log, or erl-libs directory?

I'm not saying we have to get rid of the dvi and ps directories. Its quite 
possible they'll get used at some point but the user friendly alias options 
should be first. Otherwise you force every user to learn and remember what 
locallibdir is compared to localdatadir compared to localstaterundir.

What happened to the old Noah that loved and cared about our users? The Noah 
that would treat our users like a small furry rabbit to cuddle. Furry rabbits 
like this little guy:

http://28.media.tumblr.com/tumblr_lq2sexkiya1qzp2x4o1_500.jpg



> Utility to help plugin developers manage paths
> ----------------------------------------------
>
>                 Key: COUCHDB-1012
>                 URL: https://issues.apache.org/jira/browse/COUCHDB-1012
>             Project: CouchDB
>          Issue Type: New Feature
>          Components: Build System
>            Reporter: Randall Leeds
>            Assignee: Noah Slater
>             Fix For: 1.2
>
>         Attachments: 
> 0001-add-couch-config-file-used-to-ease-the-build-of-plug.patch, 
> 0001-add-couch-config-file-used-to-ease-the-build-of-plug.patch, 
> 0001-support-pkg-config-for-plugins-COUCHDB-1012.patch
>
>
> Developers may want to write plugins (like GeoCouch) for CouchDB. Many hooks 
> in the configuration system allow loading arbitrary Erlang modules to handle 
> various internal tasks, but currently there is no straightforward and 
> portable way for developers of these plugins to discover the location of the 
> CouchDB library files.
> Two options that have been proposed are to use pkg-config or install a 
> separate script that could be invoked (e.g. as couch-config --erl-libs) to 
> discover important CouchDB installation paths.
> As far as I know the loudest argument against pkg-config is lack of support 
> for Windows.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to