Bug ID 1178705
Summary midnight commander prevents pulseaudio to load modules in xrdp session
Classification openSUSE
Product openSUSE Distribution
Version Leap 15.2
Hardware Other
OS Other
Status NEW
Severity Minor
Priority P5 - None
Component X11 Applications
Assignee screening-team-bugs@suse.de
Reporter castor-x@ya.ru
QA Contact qa-bugs@suse.de
Found By ---
Blocker ---

Created attachment 843521 [details]
mc.sh version from Fedora

Overview:
Pulseaudio service in userland cannot load modules xrdp-sink and xrdp-source
because PULSE_SCRIPT variable is not being imported into systemd user
environment on xrdp session start.  

`systemctl --user import-environment`
Failed to import environment: Invalid environment assignments

Steps to Reproduce (* - do not needed to check if environment can be imported):
1. Install OpenSUSE Leap 15.2
2. Install `mc`
2(*). Install xrdp and compile pulseaudio modules
3. Login as user
4. Open terminal emulator and compare `printenv` and `systemctl --user
show-environment`
4(*). `pactl list sinks`

Actual Results:
- `printenv` shows a long list of variables (>90)
- `systemctl` shows only a few variables (about 10)
-(*) `pactl` shows a 'null-sink'

Expected Results:
- both outputs would be similar.
-(*) `pactl` shows 'xrdp-sink'

Additional Information:
There is a file /etc/profile.d/mc.sh (link to /usr/share/mc/mc.sh) which cause
user environment to contain a function `mc()`. And this function is multiline
which prevent systemd to import user variables with `systemctl --user
import-environment`.
Years ago there were a couple of reported bugs with multiline variables but as
far as i can understand support of multilineness was added only into inner
varialbes of systemd's units (EnvironmentFile and Environment).
(https://github.com/systemd/systemd/issues/5481 for example)

If I use mc.sh version from (say) Fedora I get expected results, audio
redirects and `mc`  works.


You are receiving this mail because: