/etc/profile.d/libglib2.csh broken in latest glib2
by wirelessmc from LinuxQuestions.org on (#5P6QK)
The latest glib2 upgrade causes an Ambiguous output redirect error when attempting to login with csh/tcsh. This took quite a bit of digging to find this. In below /etc/profile.d/libglib2.csh script the offending line I am pretty sure is the redirect for locale charmap >2
For now I have reverted to the old libglib2.csh script but this should be fixed to adhere to csh/tcsh standards.
Code:#!/bin/csh
#
# Description: This script sets the environment variables G_FILENAME_ENCODING
# and G_BROKEN_FILENAMES for the glib-2.0 library.
#
# G_FILENAME_ENCODING
# This environment variable can be set to a comma-separated list of
# character set names. GLib assumes that filenames are encoded in the
# first character set from that list rather than in UTF-8. The special
# token "@locale" can be used to specify the character set for the
# current locale.
#
# G_BROKEN_FILENAMES
# If this environment variable is set, GLib assumes that filenames are
# in the locale encoding rather than in UTF-8.
# Determine if the locale is UTF-8:
locale charmap 2> /dev/null | grep -q UTF-8
if ($status == 0) then
setenv G_FILENAME_ENCODING "@locale"
endif
# It doesn't hurt to export this since G_FILENAME_ENCODING takes priority
# over G_BROKEN_FILENAMES:
setenv G_BROKEN_FILENAMES 1
For now I have reverted to the old libglib2.csh script but this should be fixed to adhere to csh/tcsh standards.
Code:#!/bin/csh
#
# Description: This script sets the environment variables G_FILENAME_ENCODING
# and G_BROKEN_FILENAMES for the glib-2.0 library.
#
# G_FILENAME_ENCODING
# This environment variable can be set to a comma-separated list of
# character set names. GLib assumes that filenames are encoded in the
# first character set from that list rather than in UTF-8. The special
# token "@locale" can be used to specify the character set for the
# current locale.
#
# G_BROKEN_FILENAMES
# If this environment variable is set, GLib assumes that filenames are
# in the locale encoding rather than in UTF-8.
# Determine if the locale is UTF-8:
locale charmap 2> /dev/null | grep -q UTF-8
if ($status == 0) then
setenv G_FILENAME_ENCODING "@locale"
endif
# It doesn't hurt to export this since G_FILENAME_ENCODING takes priority
# over G_BROKEN_FILENAMES:
setenv G_BROKEN_FILENAMES 1