-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make D-Bus work for Linuxulator apps (using the FreeBSD-side session bus) #2
Comments
On the FreeBSD side, D-Bus is running.
What else might be needed so that Linux applciations can use the D-Bus from the FreeBSD side? |
Could it be that the socket
|
Do we need something like https://github.com/flatpak/xdg-dbus-proxy?
|
Or maybe it is because we are running as root inside the chroot. Whereas D-Bus on FreeBSD runs as one particular user. |
Or maybe we need to do on the Linux side:
and on the FreeBSD side allow D-Bus connections over TCP:
Edit as described at https://stackoverflow.com/a/13275973
Then restart the D-Bus daemon:
But still, on the Linux side in the chroot:
On the FreeBSD side - should this be working?
|
Creating
|
Assuming it’s the same problem I’ve seen last time and that I remember it correctly, it’s about the way FreeBSD dbus daemon is trying to authenticate Linux client - the client assumes it’s authenticated via creds over Unix domain socket, whereas FreeBSD server assumes something else. The way I’d approach it first is to see if we can make native FreeBSD dbus authenticate the same way it’s done on Linux, I believe we have the kernel support now. |
Other things to check
Note to self:
|
The problem has nothing to do with Linuxulator or chroot. I can reproduce this with root trying to connect to user's bus.
I think it just checks the uid/gid of the client |
https://dbus.freedesktop.org/doc/dbus-daemon.1.html says
So, maybe we need to throw in
? Possibly this is also the key to allowing root to talk to a user's D-Bus session bus? |
I think you found it. You need a custom configuration for you session bus. Take a look at system bus config, and copy rules from it into your config |
The following allows applications running on the same machine as root to access the user's session bus. Maybe the same can be used to make it work for Linux applications using the Linuxulator. Essentially, in
Note the use of Log out of the session, log in again, and applications running as root can e.g., use the global menu now. Maybe something along those lines can be used for the Linuxulator as well. |
Make D-Bus work so that Linux applications can use, e.g., the Global Menu.
This means that if the Linux side wants to talk to D-Bus, it should be talking to the D-Bus on the FreeBSD side.
cc @trasz
Reference:
AppImage/AppImageKit#98 (comment)
The text was updated successfully, but these errors were encountered: