System Architecture: Intel
RedHat Release: RHL 5.1 (Manhattan)
FAQ Category: Application Notes
Modification Date: Oct 11, 1998
On systems with a non-english locale-setting, ater upgrading rpm to Version > 2.5.2, Netscape won't start anymore, giving an error message like "An error occurred running and (kein)/lib/netscape/netscape-communicator." (Example from a system with german locale-Setting).
When you start netscape by typing "netscape", "netscape-communicator", or "netscape-navigator" from the shell, a shellscript in /usr/bin/netscape is called, that - amoung other things - uses a call to rpm to determine, where netscape was installed. This call relies on the reply "(none)" from rpm for the case, that no special install-prefix was used (which should be the default for most installations). The new and improved rpm however returns a translated string instead of "(none)", the german locale for example returns "(kein)". There are actually gazillions of possible solutions, including downgrading to rpm-2.5.2 (Don't! rpm-2.5.3 contains security-relevant fixes!). Here is a better solution: Open the file /usr/bin/netscape in an editor (don't worry, it's only a shell-script) and go to line 25. You will find a paragraph like this: I="`rpm -q $which --qf '%{INSTALLPREFIX}\n'`" if [ "$I" = "(none)" ]; then I=/usr fi Right before that paragraph, insert the following two lines: LANG_SAVE=$LANG LANG="POSIX" and right after the paragraph, append these two lines: LANG=$LANG_SAVE unset LANG_SAVE This disables your language-setting for the duration of the test and restores it afterwards, a solution which clearly is superiour to just translating the "(none)". I submitted a bug report to Red Hat and expect this problem to be solved in the next rpm-release of netscape, which should be 4.07.
http://www.redhat.com/support/docs/rhl/rh51-errata-general.html#rpm http://www.redhat.com/support/docs/rhl/intel/rh51-errata-intel.html#Netscape