Bugzilla – Bug 389765
kdesu fails with tabs in the command
Last modified: 2015-02-18 21:33:39 UTC
After the installation of pre-Beta3, the updater asks if user wants to add the sources to keep the system up to date. However, it tries to run 'yast2 piwo' but fails silently and asks immediately the same question.
the two michaels and me debugged this in length this afternoon and there seem to be 2 problems: if you use "keep password" the daemon is started and then immediately connected. If the daemon is too slow, then this will fail. The other problem is that yast2 can not open X connection if run without terminal. And the third problem: the updater applet does not check the return value
how to reproduce #1: killall kdesud /usr/bin/kdesu -c "/usr/bin/xterm +132" < /dev/null check [ ] keep password enter root passwd echo $? I raise this to blocker because we need registration to work
Actually when you use KDE3 and this applet (that is KDE4 based) there is another problem. The whole kdesu thingy becomes confused about which sockets it wants to use. $ killall kdesud $ /usr/bin/kdesu -c "xterm" kdeinit4: preparing to launch /usr/lib/kde4/libexec/kdesud (... entering password ..., nothing happens) kdesud is now running, and we have: $ ls -l /tmp/ksocket-matz/kdesud* srw------- 1 matz nogroup 0 2008-05-14 15:40 /tmp/ksocket-matz/kdesud_:0 So, kdesud created a socket named kdesud_:0, all fine, including the $DISPLAY. stracing kdesu shows that it actually wants to access a different socket: (I strace the shell where I start kdesu): $ /usr/bin/kdesu -c "xterm" kdeinit4: preparing to launch /usr/lib/kde4/libexec/kdesud kdesud(9220) create_socket: kdesud is already running (... password dialog comes up, entering password, ... nothing happens) The strace of kdesu shows this: 9218 access("/tmp/ksocket-matz/kdesud_:", R_OK|W_OK) = -1 ENOENT ... 9218 access("/tmp/ksocket-matz/kdesud_:", R_OK|W_OK) = -1 ENOENT It's also interesting to see that kdeinit4 also didn't notice that kdesud already was running, so it started it again, and the second kdesud did notice it. I assume that's because of the same error. So, this is another error in connection with kdesu: kdesud and kdesu accessing different socket names. At least in a KDE3 setup.
I've tested with KDE4, where it does not work either.
*** Bug 390862 has been marked as a duplicate of this bug. ***
After running yast2 piwo as root and registering, adding repos the following message is given from the suse updater. The metadata cache needs to be built for the 'Main Repository (NON-OSS)' repository. You can run 'zypper refresh' as root to do this. The metadata cache needs to be built for the 'Main Repository (OSS)' repository. You can run 'zypper refresh' as root to do this. Error building the cache database: Can't provide /media.1/media : Can't create /media.1 Error building the cache database: Can't provide /media.1/media : Can't create /media.1 Repository 'Updates for 11.0' is invalid. Can't provide /repodata/repomd.xml.asc : Can't create /repodata Please check if the URIs defined for this repository are pointing to a valid repository. Problem loading data from 'Updates for 11.0' Resolvables from 'Updates for 11.0' not loaded because of error. Using YaST online update or zypper works perfectly.
Coolo: I've fixed the problem described in comment #3 (your porting bug, BTW :) ), but the description in comment #2 does not match. Can you check whether you still have those problems (kdelibs4 with fix already submitted and in buildservice)?
*** Bug 392207 has been marked as a duplicate of this bug. ***
*** Bug 392770 has been marked as a duplicate of this bug. ***
No, I have a much severe problem now: kdesu(9932)/kdesu (kdelibs) KDESu::KDEsuClient::command: [ /usr/src/packages/BUILD/kdelibs-4.0.4/kdesu/client.cpp : 211 ] no reply from daemon
I made a lame mistake in the fix, already fixed. The correct kdelibs4 package has "Tue May 20 17:26:40 CEST 2008 - llunak@suse.cz - fix last patch (bnc#389765)". The one works perfectly fine here. I don't quite understand how any of the bugs here could cause "no reply from daemon" though. If it's still broken for you, does it depend on whether $DISPLAY has screen number included (i.e. ":0" vs ":0.0")?
no idea, it worked perfectly on another try
Marking as fixed then.
*** Bug 393267 has been marked as a duplicate of this bug. ***
Yes, I can now launch Yast2 normally after unchecking the box to remember the password. Why did I check that box to begin with? Thanks.
*** Bug 394182 has been marked as a duplicate of this bug. ***
*** Bug 394214 has been marked as a duplicate of this bug. ***
Hello, I am using opensuse 10.3 with KDE4 latest updates and still getting the problem as per comment # 10 whenever I run opensuse-updater-kde as normal user. Everything goes smooth only if I run updater-kde as root. Regards.
Tested latest RC1 build, attached screenshot
Created attachment 218367 [details] screenshot with error message
Note, happens not when running yast2 piwo, but when calling kdesu --noignorebutton with the zypper refresh command.
Works for me. What are the exact steps to reproduce with a fresh user?
And, while you're at it, 'ps ux' before and after and strace of the kdesu command might be useful too.
duncan just passed by and said: - install - "kdesu yast2 piwo" works fine - at the end of piwo, applet wants to call kdesu zypper install ... -> screenshot bug every time I will try to reproduce as soon as my DVD is ready.
Created attachment 218616 [details] strace log Look for this line: 32268 execve("/usr/bin/kdesu", ["kdesu"..., "--noignorebutton"..., "-d"..., "-c"..., "( zypper -x --non-interactive in -l -t patch --name \"kmps-11\" \"kmps-11\" )\t> /tmp/opensuseupdater.mtqFy0trUQ/opensuseupdater_out 2> /tmp/opensuseupdater.mtqFy0trUQ/opensuseupdater_err "...], [/* 79 vars */]) = 0
That's not all info I asked for, but, just as a I guess, if you try without the \t in the command, it will work, right?
Duncan, can you please try that? Thomas is on vacation afaik
ok, it's indeed fixing the issue. Duncan will submit a new updater with spaces
ok, tab is gone
Created attachment 218755 [details] remember password unchecked screenshot
Sorry to communicate this just now, but by simply unchecking "remember password" on the opensuse-updater-kde input password window, the updater runs perfectly.
Hi, the issue as described in bug 394182 is still present in RC1. This definately should be fixed before the release, since it cannot be fixed with an update. Also, unchecking "keep password" does not fix the problem. Updates are still not performed, the only thing that changes isthat (unlike when having the box checked) opensuseupdater does not show that updates are available anymore. I"m using KDE 3.5 on a freshly installed 11.0 RC1. All the best, Henning
then you have a different problem
Hi, possible, but the description of my problem is exactly the same as in 394182, which has been marked as a duplicate of this bug here. Where do you suggest I make a report concerning my issue? I have not done reporting on openSuSe before (only on Mozilla and KDE), so I'm not aware of the proper procedure here. Henning
Hi, further update: when I log into KDE as root, the updater works. So it does seem to be a problem with the kdesu part. See you, Henning
Hi again, you were correct, this is a different problem. Whether or not updating succeeds or not does not depend on whether I'm logged in as root or not, but whether I install only patches (then it works) or also upgrades (then it fails). I'm going to fille a seperate bug on this. Sorry for the confusion, Henning
*** Bug 388632 has been marked as a duplicate of this bug. ***
*** Bug 405288 has been marked as a duplicate of this bug. ***
I have KDE 4.1 installed and this problem seems to persist. Just tried to install the new ktorrent upgrade suggested by openSUSE updater but it doesn't work. I click on "select packages", then "install", but nothing happens: the updater checks for new available updates instead of installing the new selected upgrades.
OK, I was able to upgrade ktorrent, ktorrent-lang now with the package manager. It seems the reason why it didn't work from the system tray was that ktorrent, ktorrent-lang have mutual dependencies and the system tray updater couldn't see through that.
I have the same issue with kdesu/KDE 4.1.1 on both 10.3 and 11.0. Th exact error message is "kdesu(29191)/kdesu (kdelibs) KDEsu::KDEsuClient::command: [/usr/src/packages/BUILD/kdelibs-4.1.1/kdesu/client.cpp:196] no reply from daemon". This seems to occur on my systems only when running kdesu for the updater applet. I can start YaST with no problems. The problem occurs for patches if I have the "keep password" checkbox checked and for updates regardless of the state of the "keep password" checkbox.
Any progress on this? I see it on a fresh 11.0 install. Unchecking the "keep password" checkbox works around, but most users won't think to try that (I didn't until I googled and found this bugzilla entry). With 7 duplicates and 10 votes, shouldn't this be documented on http://en.opensuse.org/Bugs:Most_Annoying_Bugs_11.0 ?
Hope the answer is 'yes', because I added it to that wiki page :-)
This appears to work fine for me on 11.0 test system, and in newer versions kdesu handles tabs in the command just fine. Can somebody still confirm and what are the exact steps to reproduce?
I have not noticed it with 11.1 or SLED 11, although this does not necessarily mean that the problem has gone, since I switched from KDE to GNOME a few weeks ago.
This is working in 11.1. See comment #2 to decide for yourself. Closing this as FIXED.