[Pkg-erlang-devel] CouchDB packaging updates

Elliot Murphy elliot at canonical.com
Mon Nov 9 21:54:47 UTC 2009

On 11/09/2009 04:31 PM, Sam Bisbee wrote:
> Well, why have it start at boot if it's unwanted? And can't desktopcouch (or
> whatever) just run the init script if couchdb isn't running, thereby creating
> an on demand service?

The point of splitting out the couchdb-bin package is so that the init
script isn't installed, and couchdb is not started on boot.

>> Is this a style thing, or is there any bad effect from having two binary
>> packages instead of a single monolithic one?
> It can just be a style thing (I prefer one package: ex., why have man pages not
> be in the dev package), but I think we're running into technical reasons too.
>  - Will each individual instance be pulling from the same config file? If yes,
>    then not only is this redundant but it could cause issues: two servers
>    attempting to bind to the same address/port.
>  - This seems like another fork from upstream that we'd have to support for
>    each new release. I'd rather limit the number of forks that we have, unless
>    they make sense for Debian. Even if we personally disagree with something in
>    the upstream, as long as it works in Debian then we should just port it.
>    Otherwise we're really not couchdb, but a completely forked project.

The design of the other applications which use the couchdb binaries is
out of scope for this team/package I think :) Just to go ahead and
answer the question though: desktopcouch dynamically chooses the port at
runtime, and uses a separate config file. There's other details as well
around token exchange and driving replication.

Getting back on topic, there is a genuine desire from people writing
applications which use couchdb (Ubuntu One) to be able to install the
couchdb binaries without getting a systemwide couchdb booted. If there
is a better way to provide this capability in the packaging than
splitting into two binary packages, then I'd love to hear it.

Another approach that was considered was using a flag in a config file
to determine whether or not the systemwide couchdb should be started
when the init script runs. That doesn't totally solve this though, as
then there is a debate over what the default setting should be. Even
with such a setting in the upstream init script and config file, I don't
know how to express a dependency on couchdb to say "Desktopcouch depends
on couchdb but please don't boot the system instance by default unless
someone else requested it".

This isn't in any way a fork from upstream. Upstream doesn't provide the
 debian packaging in the tarball they release (yes, I'm ignoring that
Noah is awesome and maintained the package so far ;), the packaging is
added by debian maintainers. This is purely about splitting the binary
packages so that they are useful in the widest variety of situations.

> p.s. Am being slowed down by svn/ssh issues in the virtual box when connecting
> to alioth. 

Strange! It's been a long time since I worked with svn, I've been having
to type my passphrase for every operation, even log. Otherwise it's been
working fine.

Elliot Murphy | https://launchpad.net/~statik/

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 197 bytes
Desc: OpenPGP digital signature
URL: <http://lists.alioth.debian.org/pipermail/pkg-erlang-devel/attachments/20091109/73486513/attachment.pgp>

More information about the Pkg-erlang-devel mailing list