[Bug 406102] New: KDE4 startkde script changes $PATH more than necessary
https://bugzilla.novell.com/show_bug.cgi?id=406102 Summary: KDE4 startkde script changes $PATH more than necessary Product: openSUSE 11.0 Version: Final Platform: PC OS/Version: Linux Status: NEW Severity: Normal Priority: P5 - None Component: KDE4 Workspace AssignedTo: kde-maintainers@suse.de ReportedBy: bjoern@cs.tu-berlin.de QAContact: qa@suse.de Found By: Beta-Customer The KDE4 start script /usr/bin/startkde modifies the PATH variable. This is necessary because KDE4 should be preferred over equal named KDE3 packages. This part works fine, e.g.: $ type -a konqueror konqueror is /usr/bin/konqueror konqueror is /usr/bin/X11/konqueror konqueror is /opt/kde3/bin/konqueror The problem is, that the /usr/bin becomes the first element in $PATH. So programs in /usr/bin (not necessary KDE programs) hide equal named programs in other $PATH elements, especially in /usr/local/bin. This is bad, because /usr/local/bin is meant for local installations which should "replace" distribution programs. For instance I personally install the latest pidgin binary in /usr/local/bin. Normally (outside the KDE4) desktop this is preferred over the distribution binary /usr/bin/pidgin: # echo $PATH /usr/sbin:/sbin:/home/bv/bin/Linux:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/X11R6/bin:/usr/games:/opt/kde3/bin:/usr/lib/mit/bin:/usr/lib/mit/sbin:/usr/NX/bin:/opt/gnome/bin:/usr/lib/qt3/bin # type -a pidgin pidgin is /usr/local/bin/pidgin pidgin is /usr/bin/pidgin pidgin is /usr/bin/X11/pidgin Within KDE4 the order changed and /usr/bin is preferred: # echo $PATH /usr/bin:/usr/sbin:/sbin:/home/bv/bin:/usr/local/bin:/bin:/usr/bin/X11:/usr/X11R6/bin:/usr/games:/opt/kde3/bin:/usr/lib/mit/bin:/usr/lib/mit/sbin:/usr/NX/bin:/opt/gnome/bin:/usr/lib/qt3/bin # type -a pidgin pidgin is /usr/bin/pidgin pidgin is /usr/local/bin/pidgin pidgin is /usr/bin/X11/pidgin The PATH is changed in /usr/bin/startkde near line 28. My suggestion is: - at first the script searches for /opt/kde3/bin - if /opt/kde3/bin is found, replace /opt/kde/bin with /usr/bin:/opt/kde3/bin - if /opt/kde3/bin is not found, do nothing (/usr/bin should be always in $PATH) - this all could be easily done with "sed" Quick Workarounds for users: - set PATH to and hardcoded good PATH in /usr/bin/startkde (under the $PATH block near line 28) - uninstall distribution program which hide /usr/local/bin programs (this is not always possible for instance because of dependencies) Setup: I detected the problem under openSUSE 10.3 with KDE4 from KDE:KDE4:STABLE:Desktop.repo. But the same start script also exists in KDE:KDE4:STABLE:Desktop.repo for openSUSE 11. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=406102
User wstephenson@novell.com added comment
https://bugzilla.novell.com/show_bug.cgi?id=406102#c1
Will Stephenson
https://bugzilla.novell.com/show_bug.cgi?id=406102
User bjoern@cs.tu-berlin.de added comment
https://bugzilla.novell.com/show_bug.cgi?id=406102#c2
Björn Voigt
https://bugzilla.novell.com/show_bug.cgi?id=406102
User bjoern@cs.tu-berlin.de added comment
https://bugzilla.novell.com/show_bug.cgi?id=406102#c3
--- Comment #3 from Björn Voigt
https://bugzilla.novell.com/show_bug.cgi?id=406102
User dmueller@novell.com added comment
https://bugzilla.novell.com/show_bug.cgi?id=406102#c4
Dirk Mueller
https://bugzilla.novell.com/show_bug.cgi?id=406102
Dirk Mueller
https://bugzilla.novell.com/show_bug.cgi?id=406102
User llunak@novell.com added comment
https://bugzilla.novell.com/show_bug.cgi?id=406102#c5
Lubos Lunak
participants (1)
-
bugzilla_noreply@novell.com