Re: policy violation and bug reports.
>>"Joey" == Joey Hess <firstname.lastname@example.org> writes:
Joey> Manoj Srivastava wrote:
Any configuration files created or used by your package should reside
in `/etc'. If there are several you should consider creating a
subdirectory named after your package.
It is almost certain that any file in `/etc' that is in your package's
filesystem archive should be listed in dpkg's `conffiles' control area
file. (See the *Debian Packaging Manual*).
Joey> This is speaking of "configuration files", not "conffiles". I
Joey> would define these two terms as:
I think in Debian's case conffile means: a configuration file
that may be modified by the user.
Joey> configuration file: any file which is used by a program for
Joey> configuration purposes
Joey> conffile: any file which may be changed, by the user, or by a
Joey> program, and which needs to maintain state across package
If a conffile is not a configuration file in some cases,
please point me to the file. I contend that a conffile is merely a
user modifiable configuration file; I think you are nitpicking at
subtle semantics here.
I think not. We can ask for a policy clarification here, but
as I recall the policy discussion, the intent was never to subvert
the section 3.3.7 by naming a configuration fine as a conf file and
bypassing the whole section.
Joey> Note this this use of "configuration files" is identical to that
Joey> used by the fsstnd:
Joey> 3.4 /etc : Machine-local system configuration
Joey> /etc contains configuration files and directories, which are
Joey> local to the current system.
The point being?
Joey> Notice that this means that /etc/resolv.conf is a configuration
Joey> file, although it is not currently a conffile.
So? conffiles are obviously a subset of all possible
configutration files. This is a configuration file that is created by
and manipulated by the postinst, and therefore does not exist in the
package itself, and hence does not need to be a conf file.
Joey> Also, this means that /var/lib/games/* are conffiles, though
Joey> they aren't configuration files. I believe it's useful to
Joey> maintain this distinction.
This I disagree with.
>> For the vast number of high scores files: Do *NOT* make the score
>> files conf files, instead, in the postinst, touch the score
>> highfile and set the correct permissions, and delete the file while
>> purging in the postrm. OK?
Joey> This doesn't work for many games which use binary formatted
Joey> files as high score files, and require the file to exist and
Joey> have a valid format before the game will run. This also doesn't
Joey> address a way to cleanly handle the case where a games's high
Joey> score file format changes. If it's a conffile, then dpkg will
Joey> prompt you to replace the old conffile with the new file in the
Joey> new format. If it is not a conffile, you have to manually handle
Joey> this in the postinst.
So what? what are postinst files for? Which games need a
binary high scores file? why can't they put the scores file in /etc
and make a pointer to it? Maintainer laziness is no excuse to not
enforce policy. Ask for a /etc/games if required, but I think that
the games that expect an existent score file are few, and they can be
handled with a symbolic link.
>> Put these somewhere in /etc/default/root.bashrc and so on, and copy
>> them to /root in the postinst, unless the files are already
>> present. If files present, put a notice on the screen. These should
>> not be conffiles
Joey> Oh yes, let's re-implement dpkg's conffiles handling so we can
Joey> strictly interpret policy to say conffiles only go in /etc!
Joey> That's absurd. We have a fine handling of conffiles already
Joey> built into dpkg, why on earth should packages be forced to
Joey> reimplement it?
Look further in section 3.3.7, my proposal is merely a
modification of the dor file and /etc/skel proposal.
Joey> Some sites may have many megabytes of data in here. Some of this
Joey> data may change constantly, without the admin having anything to
Joey> do with it. (Think secondary name servers.) It clearly belongs
Joey> in /var, quoting the FSSTND:
I have been talking to the bind maintainer, and we have
managed (surprise!) to come up with a solution that does not violate
policy. Thisk: if named constantly writes over these files, why do
you think they are still conffiles?
Joey> /var is there for a reason. You're strictly interpreting policy
Joey> to mean that a whole load of files which the authors of the
Joey> FSSTND intended to go in /var, be moved to /etc. The result will
Joey> only be a huge, bloated /etc, with many files in it the admin
Joey> will *never* modify, including binary files the admin *cannot*
Joey> easily modify.
Oh, I do not think so. just moving user modifiable
configuration files shall not significantly increase the size of
/etc. Just look at the sizes of the violators; and compare them to
the size of /etc. I have looked at the numbvers. have you?
Joey> -- see shy jo, annoyed at the trend towards a strict
Joey> interpretation of policy
annoyed at lazyness of developers which demands a relaxation of policy.
If we cannot learn from our mistakes, we just rename them;
"Success". Jon Loux
Manoj Srivastava <email@example.com> <http://www.datasync.com/%7Esrivasta/>
Key C7261095 fingerprint = CB D9 F4 12 68 07 E4 05 CC 2D 27 12 1D F5 E8 6E
TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
Trouble? e-mail to firstname.lastname@example.org .