Environment variables with control characters vanished.
Issue: After update to Fedora31 GNOME 3.34.1, (only) environment variables containing control sequences such as the following vanished:
From ~/.bash_profile:
export LESS='-R -P%lb\:?B%pb\%.'$'\x1b''[27;31;1m %F '$'\x1b''[0m'
export LESS_TERMCAP_mb=$(tput bold; tput setaf 6) # blink: cyan
Digging through the process hierarchy and GNOME code found that in gsm_util_export_activation_environment@gnome-session/gnome-session/gsm-util.c, variables with values containing control characters are deliberately not part of "UpdateActivationEnvironment" sent to systemd --user.
value_regex = g_regex_new ("^([[:blank:]]|[^[:cntrl:]])*$", G_REGEX_OPTIMIZE, 0, error);
Resolution: While variable values with control characters is a legitimate use case, I guess there should've been a strong enough reason to exclude the above regex. In which case kindly document the same perhaps in gnome-session man page, so that users will not be surprised, and instead workaround. Regards, Narendran Gopalakrishnan.