pcp
[Top] [All Lists]

"config" file in RPM packages

To: pcp@xxxxxxxxxxx
Subject: "config" file in RPM packages
From: Mark Goodwin <goodwinos@xxxxxxxxx>
Date: Fri, 23 Oct 2009 16:16:23 +1100
User-agent: Thunderbird 2.0.0.21 (X11/20090320)

Just seeking some feedback on RPM config files in the PCP RPM packages.

The pcp-2.9.3 package (and the 3.x package build from pcp.spec.in
by Makepkgs) mark the following as "config" files :

$ rpm -qlvcp pcp-2.9.3-1.x86_64.rpm | awk '{print $NF}'
/var/lib/pcp/config/pmafm/pcp
/var/lib/pcp/config/pmcd/pmcd.conf
/var/lib/pcp/config/pmcd/pmcd.options
/var/lib/pcp/config/pmcd/rc.local
/var/lib/pcp/config/pmchart/Apache
/var/lib/pcp/config/pmchart/Cisco
/var/lib/pcp/config/pmchart/Sample
/var/lib/pcp/config/pmchart/Sendmail
/var/lib/pcp/config/pmchart/Web.Alarms
/var/lib/pcp/config/pmchart/Web.Allservers
/var/lib/pcp/config/pmchart/Web.Perserver.Bytes
/var/lib/pcp/config/pmchart/Web.Perserver.Requests
/var/lib/pcp/config/pmchart/Web.Requests
/var/lib/pcp/config/pmchart/Web.Volume
/var/lib/pcp/config/pmchart/shping.CPUTime
/var/lib/pcp/config/pmchart/shping.RealTime
/var/lib/pcp/config/pmie/cisco/in_util
/var/lib/pcp/config/pmie/cisco/out_util
/var/lib/pcp/config/pmie/config.default
/var/lib/pcp/config/pmie/control
/var/lib/pcp/config/pmie/crontab
/var/lib/pcp/config/pmie/stomp
/var/lib/pcp/config/pmieconf/shping/response
/var/lib/pcp/config/pmieconf/shping/status
/var/lib/pcp/config/pmlogger/Makefile
/var/lib/pcp/config/pmlogger/config.base
/var/lib/pcp/config/pmlogger/config.default
/var/lib/pcp/config/pmlogger/config.pcp
/var/lib/pcp/config/pmlogger/config.pmclient
/var/lib/pcp/config/pmlogger/config.pmstat
/var/lib/pcp/config/pmlogger/config.sar
/var/lib/pcp/config/pmlogger/control
/var/lib/pcp/config/pmlogger/crontab
/var/lib/pcp/config/pmproxy/pmproxy.options

The current RPM packages built using the pcp_fedora spec
has a shorter list of just the stuff you're actually likely
to edit :

$ rpm -qlvcp /home/mgoodwin/rpmbuild/RPMS/x86_64/pcp-3.0.1-2.fc10.x86_64.rpm /home/mgoodwin/rpmbuild/RPMS/x86_64/pcp-libs-3.0.1-2.fc10.x86_64.rpm /home/mgoodwin/rpmbuild/RPMS/x86_64/pcp-libs-devel-3.0.1-2.fc10.x86_64.rpm | awk '{print $NF}'

/etc/bash_completion.d/pcp
/etc/pcp.env
/var/lib/pcp/config/pmcd/pmcd.conf
/var/lib/pcp/config/pmcd/pmcd.options
/var/lib/pcp/config/pmcd/rc.local
/var/lib/pcp/config/pmie/config.default
/var/lib/pcp/config/pmie/control
/var/lib/pcp/config/pmie/crontab
/var/lib/pcp/config/pmlogger/config.default
/var/lib/pcp/config/pmlogger/control
/var/lib/pcp/config/pmlogger/crontab
/var/lib/pcp/config/pmproxy/pmproxy.options
/etc/pcp.conf


Apart from /etc/pcp.conf, these are all "config(noreplace)",
meaning they'll be preserved in an RPM upgrade, if edited.
If an incoming file is different to the old (unedited) version,
it'll be installed as filename.rpmnew. The exception is
/etc/pcp.conf, which is marked as "config"; if it has been
edited, then during an upgrade the edited version will be
renamed to pcp.conf.rpmsave.

Any comments on this? I don't like the discrepancy and would
prefer both packaging formats have the same set of config files
and seems to me the shorter list is more manageable and sane.

I also don't like having two RPM specs (and presumably,
there will be yet another one for OpenSuSE et al).

But feel free to shoot me down :)

Cheers
-- Mark

<Prev in Thread] Current Thread [Next in Thread>