as long as you don’t try to pass it any flags, that is. M$ defined ls etc. as straight aliases to the equivalent PowerShell commands that have their own flag system, so if you ls -l it will puke
The time I spent “distro hopping” back in high school was because I didn’t have the balls to commit to a single distro. Even then the only time I actually switched was when I made a config change that blew up in my face so badly I needed to reinstall anyway.
If you’ve found a setup you’re happy with, by all means, stick with it. You’re not missing out on much by not voluntarily erasing your boot drive and installing an entirely new OS every week or so for no reason other than it looked cool.
(If you’re about to suggest dual booting multiple Linux distros, no. Just stop. I tried that once. You would not believe how many issues are caused by sharing a ~/.config between two systems with slightly different versions of the same software.)
They’re Unix sockets, dude, they’re file paths in /run
Data marshalling
Still have to do that with dbus, also that’s the same thing as message formatting
Pubsub
Again, sockets. One application binds and many can connect (how often do you really need more than one application to respond to a method call? That’s a valid reason to use dbus in lieu of sockets, but how often do you need it?)
Method calling, marshalling of arguments and responses
They’re called “unix doors”, and that’s the third time you’ve said marshalling. As for that, language agnostic data marshalling is kind of a solved problem. I’m personally a fan of msgpack but JSON works too if you want to maximize compatibility. Or XML if you really want to piss off the people who interact with your API.
Broadcast and 1:1 messaging
Sockets and doors can only do 1:1, and that’s true enough, but it occurs to me that 99% of use cases don’t need that and thus don’t need dbus. dbus can still be used for those cases, but less load on dbus daemon = less load on system. Also you said that already with pubsub.
As for that blob at the bottom, again, who said anything about there not being a language agnostic library? It’d be a lot of work to make one, sure, but that doesn’t mean it’s impossible. Besides, most of the work has been done for you in the form of language agnostic marshalling libraries which as you said are like 50% of the problem. The rest is just syscalls and minor protocol standardization (how to reference FDs passed through the door in the msgpack data etc.)
And what I’ve just described isn’t a reimplementation of dbus without any of the good parts, it’s a reimplementation of dbus on top of the kernel instead of on top of a daemon that doesn’t need to be there.
People who wear cat ear headphones and thigh high socks are actually respectable. When OP says “hoodie” they mean “script kiddie who feels like a badass for changing the color of his terminal”.
Note the lack of use of gender neutral pronouns. I do not believe that any woman or enby, trans or otherwise, would stoop so low.