Drakulix / fireplace

Modular wayland window manager written in rust
MIT License
603 stars 14 forks source link

Add an IPC mechanism #41

Open Drakulix opened 7 years ago

Drakulix commented 7 years ago

IPC clients should able to connect via a local socket of some sort. Confirmation about access should be granted by the user via UI.

TODO:

Protocol will be JSON based.

TODO:

kerscher commented 7 years ago

Perhaps you could consider using something like D-Bus, with Rust bindings?

Most (all?) of the plumbing is then taken care for you, and for things like notifications, menus and status bars there's already a big ecosystem.

AFAIK it also works on FreeBSD, if that's a concern.

Timidger commented 7 years ago

D-Bus is what Way Cooler uses, and I'd recommend using it in fireplace as well. There are certain tradeoffs that you have to make, but in general I think that a Wayland compositor is a good use case for D-Bus.

The only issue I ran into is that the Rust library is a little over engineered / unrustic.

Drakulix commented 7 years ago

This is absolutely a planned feature, but not until the rewrite to support smithay has happened.

Also yes there is a big ecosystem, but I also will try to provide fireplace with it's own ecosystem, while still being compatible to whats out there. Most existing tools are still build for X11 and I want to build a dock, bar, notification daemon, etc with full on wayland support for modern compositors without any legacy code.

Also once that happens @Timidger I am also very interested in supporting WayCooler with my tools. Even if we still want to build our own compositors and both of us have a different vision, I think the ecosystem can greatly benefit from having just more options.

Timidger commented 7 years ago

@Drakulix sounds good to me. Anything I build I want to be compatible with other compositors as well. Currently that isn't the case, but in the future I hope users can choose whatever applications they want to use for notifications, bars, etc regardless of the compositor used.

voxadam commented 7 years ago

9P is another option.