[Fedora-packaging] gnome-shell extension packaging and directory ownership questions

Kalev Lember kalevlember at gmail.com
Wed Aug 19 11:11:42 UTC 2015

On 08/19/2015 12:45 PM, Michael Schwendt wrote:
> Do we want to treat the "gnome-shell-extension-common" package as an
> "artificial filesystem" package to be required by all gnome-shell-extension-*
> packages to get directory ownership right?
>   https://fedoraproject.org/wiki/Packaging:Guidelines#The_directory_is_owned_by_a_package_which_is_not_required_for_your_package_to_function
> [...]
> Inspite of its package name not ending with "-filesystem" (would that
> be a MUST?), the package description suggests that it serves as a
> filesystem package:
>   $ rpm -qi gnome-shell-extension-common|tail -2
>   optional functionality to GNOME Shell. Common files and directories needed by
>   extensions are provided here.
> It's only a single directory, and the "gnome-shell" parent dir is
> pulled in via a dependency:
>   $ rpmls gnome-shell-extension-common|grep ^d
>   drwxr-xr-x  /usr/share/doc/gnome-shell-extension-common
>   drwxr-xr-x  /usr/share/gnome-shell/extensions
>   $ rpm -qR gnome-shell-extension-common|grep -v ^rpm
>   gnome-shell >= 3.17.4
> [...]
> It has been pointed out during review that the package is not '''an
> "official" filesystem-package'''. And packagers happily take existing
> packages as example. A single gnome-shell-extension package by somebody
> from Red Hat owns the directory instead, giving the excuse to do it like
> that, too. All other extension packages add a dependency on that
> "artificial filesystem" package.

gnome-shell-extension-common is an internal subpackage for the
gnome-shell-extensions source package. Please don't make other packages
that come from different source packages depend on it.

-common is only split out because it contains translations shared by all
the extensions that come from the gnome-shell-extensions source package.

I went ahead and added an empty extensions directory (and
search-providers directory) to gnome-shell itself,

That should make it easier for extensions packages - just use
'Requires: gnome-shell' and the directory gets created along with

Hope this helps,

More information about the packaging mailing list