Q: The user name Debian-$PACKAGE is too long: it misalignes ls 
   output and is truncated by ps and atop. And it's ugly!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Answer:
The user name Debian-$PACKAGE was chosen in late 2003 when we, the
maintainers of the Debian exim4 package found it necessary to create
an account for exim to run under during package installation. To avoid
accidentylly zapping a locally used account, we intended to use a
name from a name space with low potential for name conflicts.

About the same time, Fabio Massimo Di Nitto started the same
discussion on debian devel (thread starting with
http://lists.debian.org/debian-devel/2003/11/msg02231.html).

In this thread, many things were said:

  - This should be decided by the LSB.
    - However, to my knowledge, that step has not yet happened.
  - It needs to be in policy.
    - However, policy has not been amended, and there is no bug filed
      against policy.
  - Purging a package should remove the account as well.
    - Special care needs to be taken to avoid removing an account that
      doesn't belong to us.
  - numeric UID shouldn't be re-used.

For the namespaces, we have the following suggestions:

  - Prepend/Append "Debian" or "debian"
  - Prepend/Append a capital letter (http://cr.yp.to/unixaccount.html)
  - Prepend/Append an underscore

Unfortunately, the way to get a LSB solution will take way too long.
Additionally, the LSB likes to have pre-existing use as example before
they change the standard.

So, it was our job to decide which account name to use. Andreas
Metzler and me chose Debian-$PACKAGE, while Peter Palfrader started using
debian-$PACKAGE. So we currently have Debian-exim, Debian-console-log,
debian-tor, debian-mixminion and debian-sks.

Again, the goal was to create accounts that don't conflict with other,
or with manually created accounts, and to get pre-existing use before
trying to change the LSB and even Debian policy.

Migrating from one account name to another is extremely painful and
error-pronce since one needs to meddle with the local account
database and has to optionally chown files. Additionally, it is
necessary to change every script that accesses the account. To put it
short: It's something you want to avoid.

This is also the reason why the account names used by these packages
will not likely change before a namespace is dedicated and allocated
either in the LSB or in Debian policy. The maintainers reserve the
right of hurling this FAQ in the direction of everybody filing bugs
about the "ugly" account names, and to close the bugs in the process.

We would appreciate, however, if people would aid in getting the
standardization process under way as soon as possible. This needs to
be in policy, the sooner the better.

                                                       Marc Haber, 2004-05-11

