What | Removed | Added |
---|---|---|
Status | RESOLVED | REOPENED |
Assignee | werner@suse.com | screening-team-bugs@suse.de |
Resolution | WORKSFORME | --- |
Summary | Bash exported function are renamed internally then are ignored by Systemd - Kde desktop | KDE plasma workspace ignores special environment variables (Was: Bash exported function are renamed internally then are ignored by Systemd - Kde desktop) |
CC | alarrosa@suse.com, christophe@krop.fr, fabian@ritter-vogt.de, lbeltrame@kde.org, werner@suse.com |
(In reply to Jean-Claude Dole from comment #8) > That does not work on a fresh install of leap 15.5 nor leap 15.6 > Apr 11 18:57:40 localhost.localdomain startplasma-x11[1537]: > org.kde.plasma.libkworkspace: Skipping syncing of environment variable > "BASH_FUNC_stop_or_continue%%" as name contains unsupported characters > > Remark : None of my functions have a %% in their name. Yep ... this what bash does to detect exported function names and this is nonnegotiable as a security feature. And this is what export -f <function> does, it prefixes any exported function with BASH_FUNC_ and also suffixes it with `%%' ... see https://unix.stackexchange.com/questions/609739/bash-exported-function-not-visible-but-variables-are > Same kind error for environment variables : > > Apr 11 18:57:40 localhost.localdomain startplasma-x11[1537]: > org.kde.plasma.libkworkspace: Skipping syncing of environment variable > "MY_LIGHT_CYAN" as value contains unsupported characters > > MY_LIGHT_CYAN is defined like this > MY_LIGHT_CYAN=$'\e[1;36m' > or defined like this > MY_LIGHT_CYAN=$'\e[1;36m' That is an other building yard, means not bash. As I'm using systemd but not KDE not GNOME as desktop the subject of this bug seems to be misleading one. This is not a bug of systemd nor of bash. But it could be that this is a security feature to protect against malicious escape sequences in variables names as well as variable values.