FS#60004 - pkexec terminator dbus BadAddress Error

Attached to Project: Arch Linux
Opened by Kevin Vincent (kevin77v) - Monday, 10 September 2018, 05:04 GMT
Last edited by Doug Newgard (Scimmia) - Friday, 14 September 2018, 23:30 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To No-one
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description: Attempting to run terminator as another user via pkexec renders the following error and terminator fails to load:

ConfigBase::load: Unable to open /root/.config/terminator/config ([Errno 2] No such file or directory: 'root/.config/terminator/config')
Traceback (most recent call last):
File "/usr/bin/terminator", line 107, in <module>
ipc.new_window_cmdline(optionslist)
File "/usr/lib/python2.7/site-packages/terminatorlib/ipc.py", line 190, in _exec
bus = dbus.SessionBus()
File "/usr/lib/python2.7/site-packages/dbus/_dbus.py", line 211, in __new__
mainloop=mainloop)
File "/usr/lib/python2.7/site-packages/dbus/_dbus.py", line 100, in __new__
bus = BusConnection.__new__(subclass, bus_type, mainloop=mainloop)
File "/usr/lib/python2.7/site-packages/dbus/bus.py", line 122, in __new__
bus = cls._new_for_bus(address_or_type, mainloop=mainloop)
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.BadAddress: Server address of type unix was missing argument path or abstract

Additional info:
* package version(s)
terminator 1.91-6
python-dbus 1.2.8-2
* config and/or log files etc.

Steps to reproduce:
Run: pkexec terminator
OR pkexec --user username terminator

Terminator runs fine as the current user but fails as above when running as another user.
This task depends upon

Closed by  Doug Newgard (Scimmia)
Friday, 14 September 2018, 23:30 GMT
Reason for closing:  Not a bug
Additional comments about closing:  Don't launch dbus outside of the systemd user session
Comment by Kevin Vincent (kevin77v) - Monday, 10 September 2018, 19:22 GMT
Disabling dbus in the users' terminator config file (~/.config/termnator/config) in the [Global] section via the directive dbus = False for the user makes it work.
Comment by Kevin Vincent (kevin77v) - Monday, 10 September 2018, 19:53 GMT
Downgrading to dbus 1.12.10-1 resolved this for me.
Comment by loqs (loqs) - Monday, 10 September 2018, 20:16 GMT Comment by Kevin Vincent (kevin77v) - Monday, 10 September 2018, 21:06 GMT
Unfortunately, I am unable to implement that change on my system. Perhaps others can test that. Refer to this task also: https://bugs.archlinux.org/task/60003, which seems to be the same issue.
In my system, I like to run various programs as different users. I'm in over my head in terms of this level of understanding of the packages, so maybe I'm not correct, but it seems this update makes some applications run as different user unable to use dbus. Not sure if there's a way to configure it to make it work again if this is the desired functionality in the update.
Comment by Kevin Vincent (kevin77v) - Tuesday, 11 September 2018, 00:17 GMT
For those who encounter this situation, you can use 'dbus-launch' to get it to work
For example,
pkexec --user username dbus-launch xterm
worked for me.

Loading...