|
Bugzilla – Full Text Bug Listing |
| Summary: | control-center2 package is missing dependency for libfam | ||
|---|---|---|---|
| Product: | [openSUSE] SUSE LINUX 10.0 | Reporter: | Michael Scherer <michi> |
| Component: | GNOME | Assignee: | Stanislav Brabec <sbrabec> |
| Status: | RESOLVED FIXED | QA Contact: | E-mail List <qa-bugs> |
| Severity: | Normal | ||
| Priority: | P5 - None | CC: | adrian.schroeter, aj, ast, gnome-bugs, hmuelle, jengelh, mls |
| Version: | Final | ||
| Target Milestone: | --- | ||
| Hardware: | Other | ||
| OS: | All | ||
| Whiteboard: | |||
| Found By: | Other | Services Priority: | |
| Business Priority: | Blocker: | --- | |
| Marketing QA Status: | --- | IT Deployment: | --- |
| Attachments: |
gnome-settings-daemon strace output
rpm -qa | sort |
||
|
Description
Michael Scherer
2005-10-05 06:39:53 UTC
It should not happen. We have a solution described in bug 112846 comment 32. If libfam.so.0 error is from gnome-vfs2 or libgda wrappers, it means, that you have not installed nor fam nor gamin - it should not happen, because both packages require file_alteration, provided only by these two libraries. If libfam.so.0 error is from other package, RPM requires should contain it and onl libfam.so.0 provides it. Please verify, whether fam and/or gamin packages are installed. rpm -qa | grep '\(fam\|gamin\)' Could you provide a strace output? You can start minimal session and start gnome-settings-daemon manually or start different session type than GNOME and then start it manually: strace -f -F -o gsd.log /opt/gnome/lib/control-center-2.0/gnome-settings-daemon Created attachment 51467 [details]
gnome-settings-daemon strace output
Created attachment 51468 [details]
rpm -qa | sort
% [gissr@mannem] ~/ $ rpm -qa | grep '\(fam\|gamin\)' fam-server-2.6.10-130 You can find any other info in the attached files. Note that I use the gnome-settings-daemon with PekWM and didn't install the whole "Gnome-Desktop" group. Did you seen a YaST warning during installation? Did you answer "Ignore"? If yes, please run YaST package manager again and select one of choices (if you have no NFS, select gamin). Nope, everything went fine during installation. And I don't have any unresolved deps at the moment as well. Neither with yast, nor with yum. I see, where is the problem: sbrabec@hammer:~> rpm -q --whatprovides file_alteration fam-server-2.6.10-130 sbrabec@hammer:~> rpm -q --requires fam-server | grep fam We need libfam.so.0, but fam-server does not require fam, which provide libfam.so.0. Work-around: Install gamin, if you have local file system or fam, if you have NFS-mounted home. Possible fix 1: Add "Requires: fam" to fam-server. Preferred fix. Possible fix 2: Add new symbol file_alteration_server. gnome-vfs and libgda will have Requires: file_alteration file_alteration_server gamin will Provides: file_alteration file_alteration_server fam will Provides: file_alteration fam-server will Provides: file_alteration_server Correct but complicated fix. Possible fix 3: Move "Provides: file_alteration" from fam-server to fam. Ugly fix, because fam without fam-server does not provide file_alteration for real. To Adrian Schroeter: Which fix do ayou prefer? To Andreas Jaeger: Is there any way to fix it by YOU? For 10.0 may be simplest possible fix 1 above. But any fix needs to ask user for running YaST2 package manager after installing YOU. I don't know how to fix this via YOU. Harald, any ideas? We need an update containing both packages the one which is changed (new require) and the one which is required afterwards. The number of packages should be limited to the smallest set. The package with the new require will be used a magnet to auto-select the patch and install an uninstalled rpm by a special you-patchfile flag. aj has to create a SWAMP sbrabec should create a normal patchinfo, submit it to the usual directory. sbracec should assign the bug to me afterwards: I will make the needed tricky changes introducing Anja into this magic. Maybe use POST section in patchinfo. POST: If you did not installed GNOME nor KDE selection, please run YaST2 Software Management and Accept to update package dependencies. Package fam is alread present in 10.0 and needs no change. Do I need to re-submit libfam without any change or only mention it in patchinfo? Ok, let's do it. Maintenance-Tracker-2519 the technical right solution would be "Possible fix 2", since it you can run a fam-server without using it on the local system, but remote (like on a nfs home server). I don't think we can do 2) with a YOU update, so lets go for 1) For STABLE fam should be changed so that it can do local file monitoring without the need for fam-server. We should move the provides to the "fam" package if this is implemented. Much cleaner, IMHO. "Possible fix 2" couldn't be done by YOU without having more packages installed as needed/wished. all mentioned packages would be installed by a you update to solve the dependencies if he has had installed at least one of the mentioned packages. "Possible fix 1" is to prefer to not install to many package while "Possible fix 2" is technically more correct. "Possible fix 2" was implemented for STABLE. Some packages will propagate to PLUS. Because fam is not in supplementary program, it will cause hard-requirement of gamin. But I won't fix this minor issue, because it cannot cause any problem. Stanislav, I blocked your packages in STABLE. file_alteration_server is IMHO a bad idea. See #15. > For STABLE fam should be changed so that it can do local file monitoring
without the need for fam-server.
It means complete rewrite of fam. This rewrite (without remote support) is
called gamin.
For local file systems systems:
- KDE uses inotify directly without FAM and needs libfam.so.0 only for ldd linker.
- GNOME wrapper will prefer gamin, if fam server is not running.
The dependency chain of gnome-vfs2 in STABLE will be fulfilled, if gamin is
installed or both fam and fam-server are installed. This is exactly, what the
wrapper technically needs.
no, it does not mean a complete rewrite, only extending libfam. But I do not plan to do this anyway. But it could be done by someone, yes. My point is that "file_alteration" should be provided by fam, not fam-server, as use use fam to do the monitoring. So it really is fam that should require fam-server, not the other way. But this would mean that KDE users will need fam-server, which is bad. So fam should work for local filesystems with no fam-server. Yes, file_alteration was moved from fam-server to fam. KDE does not use fam at all for local file systems. But library has to be installed, because KDE is linked with it. You completely missed my point. Well. Could you explain me again, what do you propose, please. My current submit should provide exactly following: - KDE will requires only fam (but not fam-server, which is only needed for remote notification) - GNOME requires either gamin or both fam and fam-server - not introducing unneeded dependencies - no changes of fam implementation - Virtual fam_alteration means lib\(fam\|gamin-0\).so.0 - Virtual fam_alteration_server is a package, which provides file alteration service. IMHO file_alteration_server is stupid. Require: file_alteration means you want a working file_alteration service. This should be enough. My point is that 'fam' doesn't work without fam-server, so it either should get fixed or an 'Requires: fam-server' should be added. No, file_alteration means only file_alteration library (I can rename this virtual to file_alteration_library to be clean). I cannot require its name directly, because ot can be one of two libraries. file_alteration_server means package, which provides service fam does not work without fam-server, but provides required library, which is enough for KDE. The same splitting is used for other libraries and server programs as well. Argh. Please think a bit. You need a working 'file_alteration' *service* in gnome_vfs2 and libgda. No one needs two different provides for this. The current KDE setup is a kind of a hack, because it can do with a crippled, not working fam. But the setup is broken, it currently makes no sense to use fam if fam-server is not installed. (I think the fam packages are named a bit wrong: fam-server should be fam and fam should be fam-libs.) What I'm proposing for STABLE (until the fam code is changed) is the 10.0 solution: fam-server requires fam, i.e. fam requires fam-libs, makes sense, no? Having fam-server without fam makes sense, if you have desktop-less NFS server, you need only fam-server and not fam (see comment 14). Having fam without fam-server makes sense for KDE on local file system. But if you have installed GNOME, you need both library and server - either gamin or both fam and fam-server. That is why I introduced two virtuals for GNOME. I know all that. I'm saying that 1) two virtuals suck and 2) it doesn't hurt a desktop less NFS server if the very small fam package is also installed. If it is OK for Adrian (see comment 14), you can use "Possible fix 1" from comment 7. In this case simply reject my submits of fam, gamin, libgda and gnome-vfs2 and check-in /work/SRC/old-versions/10.0/all/fam to STABLE. I'll talk to adrian. Thanks. Michael, what did Adrian say? :-) This was already fixed long time ago by an optional patch in YaST Online Update. *** Bug 137394 has been marked as a duplicate of this bug. *** |