Зачем мне нужен dbus?

17

Я недавно удалил dbus из моей системы (вместе с consolekit и polkit). Я не заметил никаких изменений (я запускал его как системный демон и для каждого пользователя из .xinitrc). Тем не менее, многие люди утверждают, что просто нужен dbus, большинство приложений Linux используют его и т. Д. И т. Д. Мой вопрос: зачем мне это? Я не думаю, что я понимаю, что именно он делает. Я знаю, что это «система шин сообщений», процессы связываются через нее и т. Д. А? Я до сих пор не знаю, что я получу от его использования. Может ли кто-нибудь объяснить мне это, желательно с примерами «из реальной жизни»?

eregus
источник
3
Не волнуйтесь, вам даже не понадобится устанавливать / удалять dbus в ближайшем будущем. Теперь это часть ядра: kroah.com/log/blog/2014/01/15/kdbus-details
егорич,

Ответы:

10

Как конечный пользователь, вы этого не делаете. D-Bus не делает ничего такого, чего нельзя было бы сделать по-другому.

Преимущества D-Bus в первую очередь представляют интерес для разработчиков. Он объединяет несколько хитрых функциональных возможностей (объектно-ориентированный и безопасный для типов обмен сообщениями, активация демона, уведомление о событии, независимость от транспорта) в рамках одного средства, которое работает одинаково независимо от того, какой язык программирования или оконный инструментарий используется.

Игнасио Васкес-Абрамс
источник
2
Но разве какое-то приложение не сможет работать, если dbus нет?
lalala
Некоторые, конечно. Но возможно сделать это необязательным требованием.
Игнасио Васкес-Абрамс
Уведомления в системном трее на DE создаются путем отправки сообщений DBUS. По крайней мере, у меня была одна установка, которая использовала DBUS на удивительной по этой причине.
Spidey
@Spidey: Да, но нет никаких причин, по которым они не могли использовать доменные сокеты для этого. Так уж вышло, что D-Bus - лучший выбор.
Игнасио Васкес-Абрамс
Конечно, DBUS - это просто еще один протокол IPC. Но это один из примеров, которые ФП просила в первую очередь.
Spidey