(In reply to Dr. Werner Fink from comment #6) > Exporting functions is a bash special feature* and not supported by any > other shell or program like systemd and as all exported variables this > belongs to > /etc/profile, /etc/profile.local, and /etc/profile.d/*.sh > > Can we please stop misusing ~/.bashrc, /etc/bash.bashrc, and > /etc/bash.bashrc.local for environment? Those are for interacive invocation > only. > As the the profile is sourced at login via e.g. (/usr)/etc/X11/xdm/Xsession > in the exec_login() function to have the environmnet only once for the full > login session. > > * > werner@boole:~> xyz() { true; } > werner@boole:~> export -f xyz > werner@boole:~> printenv | grep xyz > printenv | grep -A1 xyz > BASH_FUNC_xyz%%=() { true > } > > only bash knows about `export -f' and `BASH_FUNC_*%%=()' but not systemd Following your comment I sourced my files definitions in : /etc/profile.d/*.sh --> that does not work /etc/profile.local/*.sh --> that does not work In each case same error : 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 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