Frequently Asked Questions about base-files
===========================================

* Questions about "profile.d":

Q. Why does Debian not have a "profile.d" directory, like other distributions?

A. Because no Debian package needs it. Debian policy says: "A program
must not depend on environment variables to get reasonable defaults".
This policy has been very successful so far. If the default install
had a profile.d, people might think it's ok to use it for a Debian
package, when in fact policy does not support such thing.

Q. Ok, but I still think it would still be a nice thing to have, would
not make sense to have a profile.d by default, even if no Debian
package uses it?

A. No. As explained before, there is the risk of assuming that it's
"officially supported". If you need a profile.d directory, you may
still create one in your machine and modify your /etc/profile
accordingly to enable it. Since this is a configuration file,
its contents will be preserved in upgrades.

Q. Ok, but if I do that I will have to merge my changes every time
the /etc/profile provided by base-files changes.

A. That should not be a big problem. The default /etc/profile provided
by base-files is quite minimal on purpose, and it is not expected to
change drastically from one Debian release to the next one.


* Questions about /etc/issue and /etc/debian_version:

Q. I upgraded my system to the testing distribution and now my /etc/issue
says "squeeze/sid". Should it not read "squeeze" or "testing"?

Q. I upgraded my system to the unstable distribution and now my /etc/issue
says "squeeze/sid". Should it not read "sid" or "unstable"?

A. You obviously do not understand how the testing distribution works.
Packages uploaded for unstable reach testing after ten days, provided
they are built for every released architecture, have no RC-bugs and
their dependencies may be met in testing. You should consider the
testing and unstable distributions as two sides of the same coin.
Since the base-files package in testing was initially uploaded for
unstable, the only sensible /etc/issue to have is one that is both
valid for testing and unstable, hence "squeeze/sid" (or whatever is
appropriate).

Q. Why "squeeze/sid" and not "testing/unstable" as usual?

A. The codename is a little bit more informative, as the meaning of
"testing" changes over time.

Q. Ok, but how do I know which distribution I'm running?

A. If you are running testing or unstable, then /etc/debian_version is
not a reliable way to know that anymore. Looking at the contents of
your /etc/apt/sources.list file is probably a much better way.


* Other questions:

Q. Why isn't license "foo" included in common-licenses?

A. I delegate such decisions to the policy group. If you want to
propose a new license you should make a policy proposal to modify the
paragraph in policy saying "Packages distributed under the UCB BSD
license, Artistic license, GNU GPL and GNU LGPL should refer to the
files in /usr/share/common-licenses". The way of doing this is
explained in the debian-policy package. As usual, you should always
take a look at already reported bugs against debian-policy before
submitting a new one.

Q. I upgraded from woody to sarge. Should my system be FHS-compliant now?

A. Achieving FHS compliance by upgrading would be tricky and prone to
error in certain cases, so it is not a goal of base-files, nor it is
planned to be. By default, some "mandatory" directories (like /opt,
/srv or /media) are only created in the first install (performed by
debootstrap), to keep the code as simple as possible, follow the
principle of least surprise on upgrades, and also to give people the
freedom to remove those directories without them being created again
when base-files is upgraded. Therefore, if you are running any sort of
compliance tests, you should do it on newly installed systems only.


Santiago Vila <sanvila@debian.org>
