Bug description
When trying to span a tigervnc session from systemctl it appears that the "exec" function is not sending a complete environment to the session. The HOME variable is not being set for normal users, root seems to work.
root@lmdetest:~# journalctl -fu tigervncserver@:2.service
Jan 24 00:22:58 lmdetest vncserver[9417]: Tigervncserver starting:
Jan 24 00:22:58 lmdetest tigervncsession[9430]: pam_unix(tigervnc:session): session opened for user rgranger(uid=1000) by (uid=0)
Jan 24 00:22:58 lmdetest systemd[1]: Started tigervncserver@:2.service - Remote desktop service (VNC).
Jan 24 00:22:59 lmdetest tigervncsession[9430]: tigervncsession: tigervncserver exited with status=255
Jan 24 00:22:59 lmdetest tigervncsession[9430]: pam_unix(tigervnc:session): session closed for user rgranger
Jan 24 00:22:59 lmdetest vncserver[9545]: vncserver: The HOME environment variable must be set.Jan 24 00:22:59 lmdetest vncserver[9545]: Tigervncserver starting:
Jan 24 00:22:59 lmdetest systemd[1]: tigervncserver@:2.service: Control process exited, code=exited, status=1/FAILURE
Jan 24 00:22:59 lmdetest systemd[1]: tigervncserver@:2.service: Failed with result 'exit-code'.
Steps to reproduce
run as root:
This works
eval /usr/sbin/tigervncsession root :3
This does not
eval /usr/sbin/tigervncsession rgranger :2
Funny, I remember something similar back in the 80s with "su" or "sudo" it was stripping too much of the environment when shelling out. Probably not the same...
But if anyone is pulling their hair out trying to figure out what is stopping Tigervnc from working for normal users on Debian 12... this may be a clue.
Rob