Lost of unowned directories are reported for XFCE packages [1]. If I were familiar with the dependency graph, I would know where to start with suggesting fixes:
=> libxfce4mcs-devel - 4.4.0-2.fc7.i386 (fedora-extras-development-i386) /usr/include/xfce4
=> xfce-mcs-manager - 4.4.0-1.fc7.i386 (fedora-extras-development-i386) /usr/share/xfce4 /usr/share/xfce4/doc
=> xfce-mcs-plugins - 4.4.0-1.fc7.i386 (fedora-extras-development-i386) /usr/share/xfce4 /usr/share/xfce4/doc /usr/lib/xfce4 /usr/lib/xfce4/mcs-plugins /usr/share/xfce-mcs-plugins /usr/share/xfce-mcs-plugins/shortcuts
=> xfce-utils - 4.4.0-1.fc7.i386 (fedora-extras-development-i386) /usr/share/apps /usr/share/apps/switchdesk
=> xfce4-appfinder - 4.4.0-1.fc7.i386 (fedora-extras-development-i386) /usr/share/xfce4 /usr/share/xfce4/doc
=> xfce4-battery-plugin - 0.5.0-1.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
=> xfce4-clipman-plugin - 0.8.0-1.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
=> xfce4-cpugraph-plugin - 0.3.0-4.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
=> xfce4-dict-plugin - 0.2.1-1.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
=> xfce4-diskperf-plugin - 2.1.0-2.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
=> xfce4-eyes-plugin - 4.4.0-1.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
=> xfce4-fsguard-plugin - 0.3.0-4.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
=> xfce4-genmon-plugin - 3.1-1.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
=> xfce4-mailwatch-plugin - 1.0.1-5.fc7.i386 (fedora-extras-development-i386) /usr/share/xfce4/doc /usr/libexec/xfce4
=> xfce4-mixer - 4.4.0-1.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
=> xfce4-mount-plugin - 0.5.1-1.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
=> xfce4-netload-plugin - 0.4.0-4.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
=> xfce4-notes-plugin - 1.4.1-1.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
=> xfce4-panel - 4.4.0-1.fc7.i386 (fedora-extras-development-i386) /usr/share/xfce4/doc /usr/libexec/xfce4 /etc/xdg/xfce4 /etc/xdg/xfce4/panel
=> xfce4-screenshooter-plugin - 1.0.0-4.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
=> xfce4-sensors-plugin - 0.10.0-2.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
=> xfce4-session - 4.4.0-1.fc7.i386 (fedora-extras-development-i386) /etc/xdg/xfce4-session /etc/xdg/autostart /usr/share/xfce4 /usr/share/xfce4/doc /usr/share/xfce4/tips /usr/lib/xfce4 /usr/lib/xfce4/splash /usr/lib/xfce4/splash/engines /usr/lib/xfce4/mcs-plugins
=> xfce4-session-devel - 4.4.0-1.fc7.i386 (fedora-extras-development-i386) /usr/include/xfce4 /usr/include/xfce4/xfce4-session-4.2 /usr/include/xfce4/xfce4-session-4.2/libxfsm
=> xfce4-session-engines - 4.4.0-1.fc7.i386 (fedora-extras-development-i386) /usr/lib/xfce4 /usr/lib/xfce4/splash /usr/lib/xfce4/splash/engines /usr/share/themes /usr/share/themes/Default/balou
=> xfce4-systemload-plugin - 0.4.2-1.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
=> xfce4-timer-plugin - 0.5.1-1.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
=> xfce4-wavelan-plugin - 0.5.4-1.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
=> xfce4-weather-plugin - 0.6.0-1.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
=> xfce4-xfapplet-plugin - 0.1.0-2.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
=> xfce4-xkb-plugin - 0.4.3-1.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
=> xfce4-xmms-plugin - 0.5.1-1.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
=> xfdesktop - 4.4.0-1.fc7.i386 (fedora-extras-development-i386) /etc/xdg/xfce4 /usr/lib/xfce4/modules /usr/share/xfce4-menueditor /usr/libexec/xfce4
=> xfprint - 4.4.0-1.fc7.i386 (fedora-extras-development-i386) /usr/share/xfce4 /usr/share/xfce4/doc /usr/lib/xfce4
=> xfprint-devel - 4.4.0-1.fc7.i386 (fedora-extras-development-i386) /usr/include/xfce4
=> xfwm4 - 4.4.0-1.fc7.i386 (fedora-extras-development-i386) /usr/share/xfce4/doc /usr/lib/xfce4 /usr/lib/xfce4/mcs-plugins
[1] It looks a bit as some of these packages are missing dependencies.
Am Montag, den 26.03.2007, 20:53 +0200 schrieb Michael Schwendt:
Lost of unowned directories are reported for XFCE packages [1]. If I were familiar with the dependency graph, I would know where to start with suggesting fixes:
I think Kevin can give us more insight, this is only what I see on a quick glance.
=> xfce-mcs-plugins - 4.4.0-1.fc7.i386 (fedora-extras-development-i386) /usr/share/xfce4 /usr/share/xfce4/doc /usr/lib/xfce4 /usr/lib/xfce4/mcs-plugins /usr/share/xfce-mcs-plugins /usr/share/xfce-mcs-plugins/shortcuts
The last three should be owned by xfce-mcs-manager I think
=> xfce4-battery-plugin - 0.5.0-1.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
[snipped, same for the all the other panel plugins I'm maintaining]
I think xfce4-panel should own %{_libexecdir}/xfce4, because atm this location is only used for panel plugins.
=> xfce4-mixer - 4.4.0-1.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
xfce4-mixer should depend on xfce4-panel owning %{_libexecdir}/xfce4 since it provides a panel plugin
=> xfce4-session - 4.4.0-1.fc7.i386 (fedora-extras-development-i386) /etc/xdg/xfce4-session /etc/xdg/autostart /usr/share/xfce4 /usr/share/xfce4/doc /usr/share/xfce4/tips /usr/lib/xfce4 /usr/lib/xfce4/splash /usr/lib/xfce4/splash/engines
xfce4-session should own splash and %{_libdir}/xfce4/splash and %{_libdir}/xfce4/splash/engines
/usr/lib/xfce4/mcs-plugins
looks like xfce4-session needs to require xfce-mcs-manager (or whatever package we decide to own this dir)
=> xfce4-session-devel - 4.4.0-1.fc7.i386 (fedora-extras-development-i386) /usr/include/xfce4 /usr/include/xfce4/xfce4-session-4.2 /usr/include/xfce4/xfce4-session-4.2/libxfsm
should own the last two
=> xfce4-session-engines - 4.4.0-1.fc7.i386 (fedora-extras-development-i386) /usr/lib/xfce4 /usr/lib/xfce4/splash /usr/lib/xfce4/splash/engines
these two would be fixed if xfce-session owned splash and splash/engines.
/usr/share/themes /usr/share/themes/Default/balou
Christoph
On Mon, 26 Mar 2007 23:59:47 +0200 christoph.wickert@nurfuerspam.de (Christoph Wickert) wrote:
Am Montag, den 26.03.2007, 20:53 +0200 schrieb Michael Schwendt:
Lost of unowned directories are reported for XFCE packages [1]. If I were familiar with the dependency graph, I would know where to start with suggesting fixes:
I think Kevin can give us more insight, this is only what I see on a quick glance.
Sorry for the delay in looking at this... been busy. ;(
Thanks for checking for Unowned directories. I have tried to fix up the Xfce packages for that as I find them, but as you have found there are more that need fixing. ;(
Side note: Michael: would you be able to post your script that you are using to check these somewhere? Perhaps on the wiki? I think it could be nice to use when reviewing packages as well to make sure unowned dirs are not missed...
=> xfce-mcs-plugins - 4.4.0-1.fc7.i386 (fedora-extras-development-i386) /usr/share/xfce4 /usr/share/xfce4/doc /usr/lib/xfce4 /usr/lib/xfce4/mcs-plugins /usr/share/xfce-mcs-plugins /usr/share/xfce-mcs-plugins/shortcuts
The last three should be owned by xfce-mcs-manager I think
Agreed.
=> xfce4-battery-plugin - 0.5.0-1.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
[snipped, same for the all the other panel plugins I'm maintaining]
I think xfce4-panel should own %{_libexecdir}/xfce4, because atm this location is only used for panel plugins.
Also agreed.
=> xfce4-mixer - 4.4.0-1.fc7.i386 (fedora-extras-development-i386) /usr/libexec/xfce4
xfce4-mixer should depend on xfce4-panel owning %{_libexecdir}/xfce4 since it provides a panel plugin
Right. It's basically just another plugin... although it's in the "core" Xfce packages.
=> xfce4-session - 4.4.0-1.fc7.i386 (fedora-extras-development-i386) /etc/xdg/xfce4-session /etc/xdg/autostart /usr/share/xfce4 /usr/share/xfce4/doc /usr/share/xfce4/tips /usr/lib/xfce4 /usr/lib/xfce4/splash /usr/lib/xfce4/splash/engines
xfce4-session should own splash and %{_libdir}/xfce4/splash and %{_libdir}/xfce4/splash/engines
Yep.
/usr/lib/xfce4/mcs-plugins
looks like xfce4-session needs to require xfce-mcs-manager (or whatever package we decide to own this dir)
mcs-manager I think... yeah.
=> xfce4-session-devel - 4.4.0-1.fc7.i386 (fedora-extras-development-i386) /usr/include/xfce4 /usr/include/xfce4/xfce4-session-4.2 /usr/include/xfce4/xfce4-session-4.2/libxfsm
should own the last two
Agreed.
=> xfce4-session-engines - 4.4.0-1.fc7.i386 (fedora-extras-development-i386) /usr/lib/xfce4 /usr/lib/xfce4/splash /usr/lib/xfce4/splash/engines
these two would be fixed if xfce-session owned splash and splash/engines.
Right.
I will try and go through all this list tonight and see if I can clean all these up. Any additional ideas or issues, let me know.
Thanks again for the report!
kevin
Am Dienstag, den 27.03.2007, 11:12 -0600 schrieb Kevin Fenzi:
On Mon, 26 Mar 2007 23:59:47 +0200 christoph.wickert@nurfuerspam.de (Christoph Wickert) wrote:
Am Montag, den 26.03.2007, 20:53 +0200 schrieb Michael Schwendt:
Lost of unowned directories are reported for XFCE packages [1]. If I were familiar with the dependency graph, I would know where to start with suggesting fixes:
I think Kevin can give us more insight, this is only what I see on a quick glance.
Sorry for the delay in looking at this... been busy. ;(
[snipped]
I will try and go through all this list tonight and see if I can clean all these up. Any additional ideas or issues, let me know.
So where does the dependency of the libs start? If I'm correct it's libxfce4util -> libxfcegui4 -> libxfce4mcs.
In this case I think we could make the first one in this chain own the "basic" dirs like %{_libdir}/xfce4 %{_datadir}/xfce4 and %{_includedir}/xfce4 for the devel package. Or ist there a better way, especially for %{_datadir}?
I still have no idea what to do with %{_datadir}/xfce4/doc. Ideas?
Christoph
On Tue, 27 Mar 2007 20:21:50 +0200 christoph.wickert@nurfuerspam.de (Christoph Wickert) wrote:
Am Dienstag, den 27.03.2007, 11:12 -0600 schrieb Kevin Fenzi:
On Mon, 26 Mar 2007 23:59:47 +0200 christoph.wickert@nurfuerspam.de (Christoph Wickert) wrote:
Am Montag, den 26.03.2007, 20:53 +0200 schrieb Michael Schwendt:
Lost of unowned directories are reported for XFCE packages [1]. If I were familiar with the dependency graph, I would know where to start with suggesting fixes:
I think Kevin can give us more insight, this is only what I see on a quick glance.
Sorry for the delay in looking at this... been busy. ;(
[snipped]
I will try and go through all this list tonight and see if I can clean all these up. Any additional ideas or issues, let me know.
So where does the dependency of the libs start? If I'm correct it's libxfce4util -> libxfcegui4 -> libxfce4mcs.
Yep. Thats exactly right.
In this case I think we could make the first one in this chain own the "basic" dirs like %{_libdir}/xfce4 %{_datadir}/xfce4 and %{_includedir}/xfce4 for the devel package. Or ist there a better way, especially for %{_datadir}?
Not that I can think of off hand.
I still have no idea what to do with %{_datadir}/xfce4/doc. Ideas?
Thats owned by xfdesktop currently. Will have to check, but I think perhaps xfce-mcs-manager should own it, since the packages that need that dir I think already require xfce-mcs-manager, but perhaps it should be the panel? Will have to look.
FYI, the build order/dependencies are:
libxfce4util libxfcegui4 libxfce4mcs xfce-mcs-manager xfce4-panel gtk-xfce-engine exo Thunar Terminal
(all the rest can be in any order as long as the above are done)
xfce4-appfinder xfce4-icon-theme xfce4-mixer xfce4-session xfce-mcs-plugins xfce-utils xfdesktop xfprint xfwm4 xfwm4-themes orage mousepad
Christoph
kevin
ok. I finally dug into this some more...
The following seem pretty clear and clean up a lot of the issues:
libxfce4mcs:
+ %{_libdir}/xfce4/mcs-plugins (all the packages that currently own this dir need the libxfce4mcs-client library that this package provides.)
xfprint: - %{_libdir}/xfce4/mcs-plugins/
xfce4-mixer: - %{_libdir}/xfce4/mcs-plugins/
xfce4-panel:
+ %{_libexecdir}/xfce4/ + %dir %{_sysconfdir}/xdg/xfce4/ + %dir %{_sysconfdir}/xdg/xfce4/panel/ - %{_libdir}/xfce4/mcs-plugins/
xfce-utils:
+ rm -rf %{_datadir}/apps/ - %{_sysconfdir}/xdg/xfce4/ - %{_datadir}/apps/switchdesk/* (switchdesk package has it's own Xfce file, and this one isn't used for anything anymore, it's not even in a place switchdesk looks)
xfdesktop:
+ %{_libdir}/xfce4/modules/ + %{_datadir}/xfce4-menueditor/
xfce4-session: + %dir %{_sysconfdir}/xdg/xfce4-session/ + %dir %{_sysconfdir}/xdg/autostart/ + %dir %{_libdir}/xfce4/splash/ + %dir %{_libdir}/xfce4/splash/engines + %dir %{_datadir}/xfce4/tips/ + Requires: redhat-menus (in order to own %{_sysconfdir}/xdg/
(in xfce4-session-devel subpackage):
+ %{_includedir}/xfce4/xfce4-session-4.2/
(in xfce4-session-engines subpackage):
+ %{_datadir}/themes/Default/balou/
xfce-mcs-plugins:
+ %{_libdir}/xfce4/mcs-plugins/ + %{_datadir}/xfce-mcs-plugins/shortcuts/
Outstanding questions:
%{_sysconfdir}/xdg/autostart/ is owned already by gnome-session. Is it ok for xfce4-session to also own this directory? I would think so.
/usr/share/themes is owned by gtk2, xfce4-session-engines requres xfce4-session, which requires gtk2, so this should be taken care of? Or am I missing something there?
Then we get to:
%{_libdir}/xfce4 - currently owned by xfce4-panel
packages with issues here:
xfce-mcs-plugins xfce4-session xfce4-session-engines xfprint xfwm4
Should those get a Requires: xfce4-panel? I don't think it makes much sense to move that to a lib* package that never puts anything in there. ;(
%{_datadir}/xfce4 - currently owned by xfwm4 and xfce4-icon-theme
packages with issues here:
xfce-mcs-manager xfce-mcs-plugins xfce4-appfinder xfce4-session xfprint
Might make the most sense here to move it to xfce-mcs-manager? It uses the dir and is early enough in the chain that I think everything else will depend on it.
%{_datadir}/xfce4/doc - currently owned by xfdesktop
packages with issues here:
xfce-mcs-manager xfce-mcs-plugins xfce4-appfinder xfce4-panel xfce4-session xfprint xfwm
Move also to xfce-mcs-manager?
%{_includedir}/xfce4 - currently owned by libxfce4util-devel
Ah, I think all these will be fixed by adding to libxfce4mcs-devel, xfce4-session-devel:
Requires: libxfce4util-devel >= %{version} Requires: libxfcegui4-devel >= %{version}
and to xfprint-devel:
Requires: libxfcegui4-devel >= %{version}
I kinda hate to make all these changes in the freeze time, but this does need to be cleaned up. ;(
Perhaps I could build everything in a private repo here and we could re-run the directory ownership script against it to confirm everything was taken care of?
Anyhow, any and all input happily accepted...
kevin