Directories not owned by package

Michael Schwendt ms-nospam-0306 at arcor.de
Thu Jan 15 07:27:50 UTC 2004


On Wed, 14 Jan 2004 20:31:38 -0500, Simon Perreault wrote:

> I am a bit insecure concerning the application of rule 10 at 
> http://www.fedora.us/wiki/QAChecklist, which asks "Does the package install 
> any unowned directories?" I've run the "rpm -ivvh" command and the answer is 
> yes, my package includes unowned directories:
> 
> D: ========== Directories not explictly included in package:
> D:          0 /usr/bin/
> D:          1 /usr/share/applications/
> D:          2 /usr/share/apps/
> D:         13 /usr/share/doc/HTML/en/
> D:         15 /usr/share/icons/hicolor/16x16/apps/
> D:         16 /usr/share/icons/hicolor/32x32/apps/
> D:         17 /usr/share/icons/hicolor/48x48/apps/
> 
> The problem is: what should I now do? I've read the thread, but could not find 
> a definitive answer.

The definite answer is: Based on the double-verbose output of "rpm -ivvh"
alone you cannot conclude whether the package contains any unowned
directories. You would need to check whether any of the package's
dependencies and prerequisites own those directories already. In above
example:

  $ rpm -qf /usr/bin
  filesystem-2.2.1-5

  $ rpm -qf /usr/share/apps
  kdelibs-3.1.4-4
  fedora-logos-1.1.20-1
  redhat-artwork-0.88-1

and the other directories are owned by many other packages already, which
the package to be installed requires.

See:

  $ rpm --redhatprovides /usr/bin /usr/share/applications /usr/share/apps \
  /usr/share/doc/HTML/en /usr/share/icons/hicolor/16x16/apps \
  /usr/share/icons/hicolor/32x32/apps /usr/share/icons/hicolor/48x48/apps

The check on unowned directories is just to avoid that one of the
package's _newly_ created directories is not owned by it itself, because
when admin installs with a restrictive umask, the directory would be
created as inaccessible for ordinary users. And upon erasing the package,
the empty directory would not be deleted.

The check is not to work around package bugs in Core and to own every
directory which a core package should include already. Only some packages
do that to avoid problems, e.g. perl-*, where the mother "perl" package
does not include enough Perl directories and where owning them in a
dependency does not do any harm.

-- 





More information about the fedora-devel-list mailing list