[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [RFR] debian/control description for dico package



أحمد المحمودي wrote:
>   I'm working on a new package called "dico", and I would like to ask if 
>   someone can please review the control file package description. The 
>   control file is attached with this email.

Sure.  Revised version and patch attached.

> Package: dicod
[...]
> Description: RFC 2229 compliant modular dictionary server
>  Dico is an implementation of DICT server (RFC 2229). It is fully modular: the
>  daemon itself (dicod) provides only the server functionality, but it knows
>  nothing about database formats. Actual searches are performed by functions
>  supplied in loadable modules. A single module can serve one or more databases.

That first line's a bit odd (should it be "of a DICT server"?) but
the main reason I'd like to modify it is because this boilerplate is
used with non-server packages too.  (Less significantly, the "but"
in the second line seems backwards.)  I'd suggest:

   GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
   It is fully modular: the daemon itself (dicod) provides only the server
   functionality, and knows nothing about database formats. Actual searches
   are performed by functions supplied in loadable modules. A single module
   can serve one or more databases.

Apart from anything else, calling it "GNU Dico" makes it clear you
mean the upstream software project rather than the Debian binary
package of the same name. 

>  This package contains the dicod server.
> 
> Package: dico
[...]
> Description: RFC 2229 compliant dictionary client
>  Dico is an implementation of DICT server (RFC 2229). It is fully modular: the
>  daemon itself (dicod) provides only the server functionality, but it knows
>  nothing about database formats. Actual searches are performed by functions
>  supplied in loadable modules. A single module can serve one or more databases.
>  .
>  This package contains the dico console client.

This is the one that most needs the word "server" taken out of the
first line; the name of the upstream software project isn't
necessarily familiar to the people browsing through the descriptions
of Debian binary packages.
 
> Package: libdico0
[...]
>  This package contains the shared library.
> 
> Package: dico-dev
> Section: libdevel

(Wouldn't this usually be called libdico-dev?)

[...]
>  This package contains the header files, static libraries, symbolic links that
>  developers using dico will need.

Insert "and".  Also, developers can "use dico" by looking things up!

   This package contains the header files, static libraries, and symbolic
   links needed for development.
 
> Package: dico-doc
[...]
>  This package contains the complete documentation for dico.

Say "for GNU Dico" (the whole thing, not the single package).

> 
> Package: dico-module-outline
[...]
>  This module adds support for databases in Emacs outline format. This module is
>  designed mostly as an example and for testing purposes.

Repeated "This module".  For consistency:

   This package contains the module that handles databases in Emacs outline
   format. This module is designed mostly as an example and for testing
   purposes.
 
> Package: dico-module-dictorg
[...]
> Description: RFC 2229 compliant modular dictionary server (dict.org databse support)
                                                                           ^
That's getting a bit long, especially if I correct the typo!
Perhaps you should shorten all the modules to something like:

  Description: RFC 2229 compliant modular dictionary server (dict.org module)

>  This package contains the module which handles databases in dict.org format.
> 
> Package: dico-module-guile
[...]
>  This package contains an abstract layer for interfacing with database modules
>  written in Guile.
> 
> Package: dico-module-python
[...]
>  This package contains an abstract layer for interfacing with database modules
>  written in Python.

(If it's abstract I'd probably prefer to say the package _provides_
it rather than _contains_ it...)
 
> Package: dico-module-mediawiki
[...]
>  This package contains the module that allows to use Wiktionary or Wikipedia as
>  a dictionary database.

"Allow" requires a direct object - disallowed.  Make it like the
others: "that handles the use of Wiktionary or Wikipedia as a
dictionary database". 

> Package: python-wit
[...]
> Description: wiki translator
>  Wit is a wiki translator, a package that supplies Python classes for
>  translating Wiki Markup into another kind of markup. Currently it translates
>  into:
>   * HTML
>   * Plain Text

The synopsis made me expect an app that would pass Wikipedia through
Babelfish or something; instead apparently it's a library that might
help a Python developer write something to transliterate between
slightly different ways of encoding webpage layouts.  I think?

Wikipedia's "wiki markup" page redirects to the term "wikitext", so
use that in the synopsis.

Also, don't bother with bulletpoints for a two-item list.

  Description: wikitext translation library
   This package provides Wit, a Python library for converting wiki markup
   into another kind of markup. Currently it supports HTML and plain text.
 
> Package: dicoclient-python
[...]
> Description: python Dico client module and shell

No need to repeat the name of the programming language - it's in the
packagename anyway, never mind the debtags.  But why not:

  Description: RFC 2229 compliant dictionary client module and shell

[...]
>  The package contains GNU Dico client module written in Python and Simple GNU
>  Dico-Python Shell.

Excessive Capitalisation, among other problems.  Try something like:

   This package contains a client module written in Python, and provides a
   simple interactive Dico shell.

(Wait, a "client module"?  But Dico modules are things the server
loads?  There's something I don't understand here.)
 
> Package: dicoweb
[...]
> Description: RFC 2229 compliant modular dictionary server (web interface)
[...]
>  The package contains a web interface for database searches.

"This package provides"
-- 
JBR	with qualifications in linguistics, experience as a Debian
	sysadmin, and probably no clue about this particular package
Source: dico
Section: text
Priority: optional
Maintainer: أحمد المحمودي (Ahmed El-Mahmoudy) <aelmahmoudy@users.sourceforge.net>
Build-Depends: debhelper (>= 7), autotools-dev, guile-1.8-dev, python-dev, 
 libgsasl7-dev, zlib1g-dev, libltdl7-dev, python-support (>= 0.5.3), 
 python-all-dev (>= 2.3.5-11), m4
Standards-Version: 3.8.1
Homepage: http://puszcza.gnu.org.ua/software/dico/

Package: dicod
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}, libdico0 (= ${binary:Version}), m4
Pre-Depends: adduser
Recommends: dico-module-dictorg
Suggests: dico-doc
Provides: dict-server
Conflicts: dictd
Replaces: dictd
Description: RFC 2229 compliant modular dictionary server
 GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
 It is fully modular: the daemon itself (dicod) provides only the server
 functionality, and knows nothing about database formats. Actual searches
 are performed by functions supplied in loadable modules. A single module
 can serve one or more databases.
 .
 This package contains the dicod server.

Package: dico
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}, libdico0 (= ${binary:Version})
Suggests: dico-doc
Provides: dict-client
Description: RFC 2229 compliant dictionary client
 GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
 It is fully modular: the daemon itself (dicod) provides only the server
 functionality, and knows nothing about database formats. Actual searches
 are performed by functions supplied in loadable modules. A single module
 can serve one or more databases.
 .
 This package contains the dico console client.

Package: libdico0
Section: libs
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: RFC 2229 compliant modular dictionary server (shared library)
 GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
 It is fully modular: the daemon itself (dicod) provides only the server
 functionality, and knows nothing about database formats. Actual searches
 are performed by functions supplied in loadable modules. A single module
 can serve one or more databases.
 .
 This package contains the shared library.

Package: dico-dev
Section: libdevel
Architecture: any
Depends: libdico0 (= ${binary:Version})
Suggests: dico-doc
Description: RFC 2229 compliant modular dictionary server (development files)
 GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
 It is fully modular: the daemon itself (dicod) provides only the server
 functionality, and knows nothing about database formats. Actual searches
 are performed by functions supplied in loadable modules. A single module
 can serve one or more databases.
 .
 This package contains the header files, static libraries, and symbolic links
 needed for development.

Package: dico-doc
Section: doc
Architecture: all
Description: RFC 2229 compliant modular dictionary server (documentation)
 GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
 It is fully modular: the daemon itself (dicod) provides only the server
 functionality, and knows nothing about database formats. Actual searches
 are performed by functions supplied in loadable modules. A single module
 can serve one or more databases.
 .
 This package contains the complete documentation for GNU Dico.

Package: dico-module-outline
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}, dicod
Description: RFC 2229 compliant modular dictionary server (Emacs module)
 GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
 It is fully modular: the daemon itself (dicod) provides only the server
 functionality, and knows nothing about database formats. Actual searches
 are performed by functions supplied in loadable modules. A single module
 can serve one or more databases.
 .
 This package contains the module that handles databases in Emacs outline
 format. This module is designed mostly as an example and for testing
 purposes.

Package: dico-module-dictorg
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}, dicod
Suggests: dict-gcide | dictd-dictionary, dict-wn, dict-jargon, dict-foldoc
Description: RFC 2229 compliant modular dictionary server (dict.org module)
 GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
 It is fully modular: the daemon itself (dicod) provides only the server
 functionality, and knows nothing about database formats. Actual searches
 are performed by functions supplied in loadable modules. A single module
 can serve one or more databases.
 .
 This package contains the module that handles databases in dict.org format.

Package: dico-module-guile
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}, dicod
Description: RFC 2229 compliant modular dictionary server (Guile module)
 GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
 It is fully modular: the daemon itself (dicod) provides only the server
 functionality, and knows nothing about database formats. Actual searches
 are performed by functions supplied in loadable modules. A single module
 can serve one or more databases.
 .
 This package provides an abstract layer for interfacing with database modules
 written in Guile.

Package: dico-module-python
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}, dicod
Description: RFC 2229 compliant modular dictionary server (Python module)
 GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
 It is fully modular: the daemon itself (dicod) provides only the server
 functionality, and knows nothing about database formats. Actual searches
 are performed by functions supplied in loadable modules. A single module
 can serve one or more databases.
 .
 This package provides an abstract layer for interfacing with database modules
 written in Python.

Package: dico-module-mediawiki
Architecture: all
Depends: dico-module-python, python-wit, python-simplejson, python-xml
Description: RFC 2229 compliant modular dictionary server (mediawiki module)
 GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
 It is fully modular: the daemon itself (dicod) provides only the server
 functionality, and knows nothing about database formats. Actual searches
 are performed by functions supplied in loadable modules. A single module
 can serve one or more databases.
 .
 This package contains the module that handles the use of Wiktionary or
 Wikipedia as a dictionary database.

Package: python-wit
Section: python
XB-Python-Version: ${python:Versions}
Architecture: all
Depends: ${python:Depends}
Provides: ${python:Provides}
Description: wikitext translation library
 This package provides Wit, a Python library for converting wiki markup
 into another kind of markup. Currently it supports HTML and plain text.

Package: dicoclient-python
XB-Python-Version: ${python:Versions}
Architecture: all
Depends: ${python:Depends}
Provides: ${python:Provides}
Description: RFC 2229 compliant dictionary client module and shell
 GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
 It is fully modular: the daemon itself (dicod) provides only the server
 functionality, and knows nothing about database formats. Actual searches
 are performed by functions supplied in loadable modules. A single module
 can serve one or more databases.
 .
 This package contains a client module written in Python, and provides a
 simple interactive Dico shell.

Package: dicoweb
Architecture: all
Depends: dicoclient-python, python-django, python-memcache, python-wit, libapache2-mod-python | libapache2-mod-wsgi
Description: RFC 2229 compliant modular dictionary server (web interface)
 GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
 It is fully modular: the daemon itself (dicod) provides only the server
 functionality, and knows nothing about database formats. Actual searches
 are performed by functions supplied in loadable modules. A single module
 can serve one or more databases.
 .
 This package provides a web interface for database searches.
--- control.old	2009-05-28 15:09:51.000000000 +0100
+++ control	2009-05-28 15:30:21.000000000 +0100
@@ -18,10 +18,11 @@
 Conflicts: dictd
 Replaces: dictd
 Description: RFC 2229 compliant modular dictionary server
- Dico is an implementation of DICT server (RFC 2229). It is fully modular: the
- daemon itself (dicod) provides only the server functionality, but it knows
- nothing about database formats. Actual searches are performed by functions
- supplied in loadable modules. A single module can serve one or more databases.
+ GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
+ It is fully modular: the daemon itself (dicod) provides only the server
+ functionality, and knows nothing about database formats. Actual searches
+ are performed by functions supplied in loadable modules. A single module
+ can serve one or more databases.
  .
  This package contains the dicod server.
 
@@ -31,10 +32,11 @@
 Suggests: dico-doc
 Provides: dict-client
 Description: RFC 2229 compliant dictionary client
- Dico is an implementation of DICT server (RFC 2229). It is fully modular: the
- daemon itself (dicod) provides only the server functionality, but it knows
- nothing about database formats. Actual searches are performed by functions
- supplied in loadable modules. A single module can serve one or more databases.
+ GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
+ It is fully modular: the daemon itself (dicod) provides only the server
+ functionality, and knows nothing about database formats. Actual searches
+ are performed by functions supplied in loadable modules. A single module
+ can serve one or more databases.
  .
  This package contains the dico console client.
 
@@ -43,10 +45,11 @@
 Architecture: any
 Depends: ${shlibs:Depends}, ${misc:Depends}
 Description: RFC 2229 compliant modular dictionary server (shared library)
- Dico is an implementation of DICT server (RFC 2229). It is fully modular: the
- daemon itself (dicod) provides only the server functionality, but it knows
- nothing about database formats. Actual searches are performed by functions
- supplied in loadable modules. A single module can serve one or more databases.
+ GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
+ It is fully modular: the daemon itself (dicod) provides only the server
+ functionality, and knows nothing about database formats. Actual searches
+ are performed by functions supplied in loadable modules. A single module
+ can serve one or more databases.
  .
  This package contains the shared library.
 
@@ -56,84 +59,92 @@
 Depends: libdico0 (= ${binary:Version})
 Suggests: dico-doc
 Description: RFC 2229 compliant modular dictionary server (development files)
- Dico is an implementation of DICT server (RFC 2229). It is fully modular: the
- daemon itself (dicod) provides only the server functionality, but it knows
- nothing about database formats. Actual searches are performed by functions
- supplied in loadable modules. A single module can serve one or more databases.
+ GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
+ It is fully modular: the daemon itself (dicod) provides only the server
+ functionality, and knows nothing about database formats. Actual searches
+ are performed by functions supplied in loadable modules. A single module
+ can serve one or more databases.
  .
- This package contains the header files, static libraries, symbolic links that
- developers using dico will need.
+ This package contains the header files, static libraries, and symbolic links
+ needed for development.
 
 Package: dico-doc
 Section: doc
 Architecture: all
 Description: RFC 2229 compliant modular dictionary server (documentation)
- Dico is an implementation of DICT server (RFC 2229). It is fully modular: the
- daemon itself (dicod) provides only the server functionality, but it knows
- nothing about database formats. Actual searches are performed by functions
- supplied in loadable modules. A single module can serve one or more databases.
+ GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
+ It is fully modular: the daemon itself (dicod) provides only the server
+ functionality, and knows nothing about database formats. Actual searches
+ are performed by functions supplied in loadable modules. A single module
+ can serve one or more databases.
  .
- This package contains the complete documentation for dico.
+ This package contains the complete documentation for GNU Dico.
 
 Package: dico-module-outline
 Architecture: any
 Depends: ${shlibs:Depends}, ${misc:Depends}, dicod
-Description: RFC 2229 compliant modular dictionary server (Emacs outline support)
- Dico is an implementation of DICT server (RFC 2229). It is fully modular: the
- daemon itself (dicod) provides only the server functionality, but it knows
- nothing about database formats. Actual searches are performed by functions
- supplied in loadable modules. A single module can serve one or more databases.
- .
- This module adds support for databases in Emacs outline format. This module is
- designed mostly as an example and for testing purposes.
+Description: RFC 2229 compliant modular dictionary server (Emacs module)
+ GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
+ It is fully modular: the daemon itself (dicod) provides only the server
+ functionality, and knows nothing about database formats. Actual searches
+ are performed by functions supplied in loadable modules. A single module
+ can serve one or more databases.
+ .
+ This package contains the module that handles databases in Emacs outline
+ format. This module is designed mostly as an example and for testing
+ purposes.
 
 Package: dico-module-dictorg
 Architecture: any
 Depends: ${shlibs:Depends}, ${misc:Depends}, dicod
 Suggests: dict-gcide | dictd-dictionary, dict-wn, dict-jargon, dict-foldoc
-Description: RFC 2229 compliant modular dictionary server (dict.org databse support)
- Dico is an implementation of DICT server (RFC 2229). It is fully modular: the
- daemon itself (dicod) provides only the server functionality, but it knows
- nothing about database formats. Actual searches are performed by functions
- supplied in loadable modules. A single module can serve one or more databases.
+Description: RFC 2229 compliant modular dictionary server (dict.org module)
+ GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
+ It is fully modular: the daemon itself (dicod) provides only the server
+ functionality, and knows nothing about database formats. Actual searches
+ are performed by functions supplied in loadable modules. A single module
+ can serve one or more databases.
  .
- This package contains the module which handles databases in dict.org format.
+ This package contains the module that handles databases in dict.org format.
 
 Package: dico-module-guile
 Architecture: any
 Depends: ${shlibs:Depends}, ${misc:Depends}, dicod
-Description: RFC 2229 compliant modular dictionary server (Guile support)
- Dico is an implementation of DICT server (RFC 2229). It is fully modular: the
- daemon itself (dicod) provides only the server functionality, but it knows
- nothing about database formats. Actual searches are performed by functions
- supplied in loadable modules. A single module can serve one or more databases.
+Description: RFC 2229 compliant modular dictionary server (Guile module)
+ GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
+ It is fully modular: the daemon itself (dicod) provides only the server
+ functionality, and knows nothing about database formats. Actual searches
+ are performed by functions supplied in loadable modules. A single module
+ can serve one or more databases.
  .
- This package contains an abstract layer for interfacing with database modules
+ This package provides an abstract layer for interfacing with database modules
  written in Guile.
 
 Package: dico-module-python
 Architecture: any
 Depends: ${shlibs:Depends}, ${misc:Depends}, dicod
-Description: RFC 2229 compliant modular dictionary server (Python support)
- Dico is an implementation of DICT server (RFC 2229). It is fully modular: the
- daemon itself (dicod) provides only the server functionality, but it knows
- nothing about database formats. Actual searches are performed by functions
- supplied in loadable modules. A single module can serve one or more databases.
+Description: RFC 2229 compliant modular dictionary server (Python module)
+ GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
+ It is fully modular: the daemon itself (dicod) provides only the server
+ functionality, and knows nothing about database formats. Actual searches
+ are performed by functions supplied in loadable modules. A single module
+ can serve one or more databases.
  .
- This package contains an abstract layer for interfacing with database modules
+ This package provides an abstract layer for interfacing with database modules
  written in Python.
 
 Package: dico-module-mediawiki
 Architecture: all
 Depends: dico-module-python, python-wit, python-simplejson, python-xml
-Description: RFC 2229 compliant modular dictionary server (Wiki support)
- Dico is an implementation of DICT server (RFC 2229). It is fully modular: the
- daemon itself (dicod) provides only the server functionality, but it knows
- nothing about database formats. Actual searches are performed by functions
- supplied in loadable modules. A single module can serve one or more databases.
+Description: RFC 2229 compliant modular dictionary server (mediawiki module)
+ GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
+ It is fully modular: the daemon itself (dicod) provides only the server
+ functionality, and knows nothing about database formats. Actual searches
+ are performed by functions supplied in loadable modules. A single module
+ can serve one or more databases.
  .
- This package contains the module that allows to use Wiktionary or Wikipedia as
- a dictionary database.
+ This package contains the module that handles the use of Wiktionary or
+ Wikipedia as a dictionary database.
 
 Package: python-wit
 Section: python
@@ -141,34 +152,33 @@
 Architecture: all
 Depends: ${python:Depends}
 Provides: ${python:Provides}
-Description: wiki translator
- Wit is a wiki translator, a package that supplies Python classes for
- translating Wiki Markup into another kind of markup. Currently it translates
- into:
-  * HTML
-  * Plain Text
+Description: wikitext translation library
+ This package provides Wit, a Python library for converting wiki markup
+ into another kind of markup. Currently it supports HTML and plain text.
 
 Package: dicoclient-python
 XB-Python-Version: ${python:Versions}
 Architecture: all
 Depends: ${python:Depends}
 Provides: ${python:Provides}
-Description: python Dico client module and shell
- Dico is an implementation of DICT server (RFC 2229). It is fully modular: the
- daemon itself (dicod) provides only the server functionality, but it knows
- nothing about database formats. Actual searches are performed by functions
- supplied in loadable modules. A single module can serve one or more databases.
+Description: RFC 2229 compliant dictionary client module and shell
+ GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
+ It is fully modular: the daemon itself (dicod) provides only the server
+ functionality, and knows nothing about database formats. Actual searches
+ are performed by functions supplied in loadable modules. A single module
+ can serve one or more databases.
  .
- The package contains GNU Dico client module written in Python and Simple GNU
- Dico-Python Shell.
+ This package contains a client module written in Python, and provides a
+ simple interactive Dico shell.
 
 Package: dicoweb
 Architecture: all
 Depends: dicoclient-python, python-django, python-memcache, python-wit, libapache2-mod-python | libapache2-mod-wsgi
 Description: RFC 2229 compliant modular dictionary server (web interface)
- Dico is an implementation of DICT server (RFC 2229). It is fully modular: the
- daemon itself (dicod) provides only the server functionality, but it knows
- nothing about database formats. Actual searches are performed by functions
- supplied in loadable modules. A single module can serve one or more databases.
+ GNU Dico is an implementation of the DICT protocol as defined in RFC 2229.
+ It is fully modular: the daemon itself (dicod) provides only the server
+ functionality, and knows nothing about database formats. Actual searches
+ are performed by functions supplied in loadable modules. A single module
+ can serve one or more databases.
  .
- The package contains a web interface for database searches.
+ This package provides a web interface for database searches.

Reply to: