On Sat, Sep 17, 2011 at 10:50 AM, Canek Peláez Valdés <[email protected]> wrote: > On Sat, Sep 17, 2011 at 2:45 AM, Joost Roeleveld <[email protected]> wrote: [[snippage]] >> I still think Gnome (or any other desktop environment) should not care about >> which init-system is being used. > > And they will not. They will only use some capabilities that a system > provides, and use it if available. It's the exact same thing as udev. >
[[snippage]] > a) dbus is not part of the GUI, b) like it or not, it's the > standardized IPC mechanism in Linux. If it's available, let's use it. This is exactly the same attitude of convenience that led to udev being abused, and then to the very decisions by udev's maintainer that started off the firestorm on this list over the last couple weeks. The system is *bloating* at an incredible rate. > >> There are already well-tested and working mechanisms for communication where >> needed. > > I would like for you to be more specific about them. Sockets, be they UNIX domain sockets, IPv4 or IPv6. * Very common, very stable, very standard interface. * IPv4 sockets exist on every major operating system. * The sockets API has a common, portable C-level API going back to the 1980s, thanks to BSD 4.2. * IP sockets support multicast, both host-local and as part of networking. * Protocols implemented on top of IP make up the largest continual IPC environment in existence...the Internet itself. * IP sockets may have ACLs applied by kernel firewall rules. * UNIX domain sockets get the full benefit of filesystem ACLs. Shared memory: * Exists in various forms. Pipes: * Exist in named and anonymous forms. * If you use the command-line much, you might use them so much you've taken them for granted. * Some platforms support opening named pipes on remote systems. (I know Windows can do this. I don't know about Linux.) * 'nc' makes for an incredibly simple adapter to work with IP sockets. Not sure what others there are, but those have existed longer than I've been alive, and been standard since the early 1990s. Progress is adding new functionality, not reimplementing existing functionality as new APIs on top of the existing functionality. That's little better than busywork for people who could be building something actually new. -- :wq

