summaryrefslogtreecommitdiffstats
path: root/2022/talks/dbus.md
diff options
context:
space:
mode:
authorSacha Chua <sacha@sachachua.com>2022-12-10 16:48:09 -0500
committerSacha Chua <sacha@sachachua.com>2022-12-10 16:48:09 -0500
commit3a8a34d7a50f679f0d3715c339cd5652e2deb7ce (patch)
tree66ed7db24c17af1a72f286246c936bec1b15bd8c /2022/talks/dbus.md
parent9f0801ef2f6ace5ca7a74f465f4479624de72a9d (diff)
downloademacsconf-wiki-3a8a34d7a50f679f0d3715c339cd5652e2deb7ce.tar.xz
emacsconf-wiki-3a8a34d7a50f679f0d3715c339cd5652e2deb7ce.zip
remove backslashes
Diffstat (limited to '2022/talks/dbus.md')
-rw-r--r--2022/talks/dbus.md78
1 files changed, 39 insertions, 39 deletions
diff --git a/2022/talks/dbus.md b/2022/talks/dbus.md
index 5d944ad8..1c383c82 100644
--- a/2022/talks/dbus.md
+++ b/2022/talks/dbus.md
@@ -24,35 +24,35 @@ Emacs Operating System.
- <https://codeberg.org/emacs-weirdware/discomfort>
-- re: \"pushing mindshare\"..  Yes, you were very successful on that!
+- re: "pushing mindshare"..  Yes, you were very successful on that!
## Questions and answers
-- Q: This is such a great overview of dbus.  I hadn\'t been paying
+- Q: This is such a great overview of dbus.  I hadn't been paying
attention to this space because it seemed to be in flux (10-15 years
age).  How long has dbus been around and what was in place before
that?
- A: D-Bus dates to 2002, but really saw stabilization and
- adoption in the 2010s.  There wasn\'t really anything prior to
- D-Bus, you\'d do some of the things it does by shelling out and
+ adoption in the 2010s.  There wasn't really anything prior to
+ D-Bus, you'd do some of the things it does by shelling out and
driving command-line programs --- not a great approach.
- Q: Forgive me if this question is silly: Why is everything dBus
- prefixed with \"org.\"?
+ prefixed with "org."?
- A: D-Bus services generally use reverse-FQDN notation, similar
to Java packages, and most stuff using it is not-for-profit
- software, so \`org.\` is a very common prefix for those.
+ software, so `org.` is a very common prefix for those.
- Q: In your investigations, do most OS/DE/WM interop well over d-bus?
Which one(s) have proven more challenging, if any?
- - A: Since D-Bus is pretty uniform, DE/WM considerations aren\'t a
- large concern.  D-Bus isn\'t widely used on non-Linux systems,
+ - A: Since D-Bus is pretty uniform, DE/WM considerations aren't a
+ large concern.  D-Bus isn't widely used on non-Linux systems,
so OS differences have little to no impact.
-- Q: Re: using EXWM as a Desktop Environment \-- Does EXWM provide a
+- Q: Re: using EXWM as a Desktop Environment -- Does EXWM provide a
session manager (daemon)?
- A: No, but it looks like it can work with external X11 session
managers.
- Q:There is a lot of critisism against d-bus out there, why do you
think that might be?
- - A: Because it\'s not very good.  It uses XML, which isn\'t hip,
+ - A: Because it's not very good.  It uses XML, which isn't hip,
and I think a lot of people have a knee-jerk negative reaction
to.
- Q: Which system services come to mind when thinking about
@@ -61,51 +61,51 @@ Emacs Operating System.
connecting to networks, pairing Bluetooth devices.  The kind of
stuff you find in the upper-right of the dock/menubar in a
traditional DE.
-- Q: \"If you want to do the kinds of things that dBus does, you\'re
- limited\": What is something dBus does that you couldn\'t do before?
+- Q: "If you want to do the kinds of things that dBus does, you're
+ limited": What is something dBus does that you couldn't do before?
What is a really cool use of dBus in a modern DE (KDE/Gnome etc)?
- A: D-Bus is fundamentally about making it *easier* to do things,
and using that increased ease of use to broaden the number of
- places that kind of thing gets done.  So there\'s some prior art
+ places that kind of thing gets done.  So there's some prior art
for doing some of these things, but none of them is as easy as
- doing it via D-Bus.  As far as specific features: I\'ve been
- using computers a very long time, and it\'s still magic to me
+ doing it via D-Bus.  As far as specific features: I've been
+ using computers a very long time, and it's still magic to me
that you can just plug hardware in and immediately use it
without having to do anything --- D-Bus is foundational to that
kind of interactivity when it comes to things like storage,
network, and Bluetooth-connected devices.
- Q:  When it comes to managing devices, how are dBus and UDev
related?
- - A: They\'re orthogonal.  I believe UDisks2 (which is the D-Bus
+ - A: They're orthogonal.  I believe UDisks2 (which is the D-Bus
service for managing disks) talks to UDev2, but this is abstract
& not a detail you have to care about as a client of UDisks2.
-- Q: As an average GNU/Linux user, I\'ve used signals and methods
+- Q: As an average GNU/Linux user, I've used signals and methods
before but not properties. You gave an example involving properties,
but it kind of flew by. Can you explain briefly what clients and
services can do with properties?
- A: Properties are metadata associated with an object
- interface\[.   They can expose r/o information about the object
+ interface[.   They can expose r/o information about the object
(the name of the host; the UUID of a disk device; the hardware
address of a network device), and you can modify certain
properties about the object or service by writing to them.  For
- example, \`org.freedesktop.NetworkManager.Device\` has an
- \`AutoConnect\` property, which you can use to enable/disable
+ example, `org.freedesktop.NetworkManager.Device` has an
+ `AutoConnect` property, which you can use to enable/disable
automatic connection.
- Q: what is the name of the dbus GUI you showed?  defeat? dfeet?
- - A: \"d-feet\" 
+ - A: "d-feet" 
- Q:  Naive Q (me not knowing much about dBus): Is there such a thing
as a dBus reflection browser (maybe Emacs based) that lets you
discover all the behavior different dBus app participants provide?
Thinking something like what macOS Automator does? (actually, wait,
- think you\'re showing it)
+ think you're showing it)
- A: d-feet is the one I showed:
<https://wiki.gnome.org/Apps/DFeet>
- - I\'d very much like something similar, but built into Emacs.
+ - I'd very much like something similar, but built into Emacs.
- Q:dbus seems great for extensibility. But then Emacs has no such
mechanism. And is fantastically more extensibile. Why do you think
this is so?         
- A: I think these are different kinds of extensibility.  Emacs is
- much more malleable than anything D-Bus offers.  You can\'t
+ much more malleable than anything D-Bus offers.  You can't
change how existing D-Bus services work in the same way as you
can with Emacs customizations, variables, advice, or just going
and hacking on the code live; you can only add new features by
@@ -113,47 +113,47 @@ Emacs Operating System.
- Q:  Do you have other cool dbus ideas?
- A: I greatly want to see:
- A D-Bus browser.
- - discomfort expanded and made better looking, so there isn\'t
- a single storage-related task I can\'t do with it and dired.
- - A NetworkManager interface, so I don\'t have to use
+ - discomfort expanded and made better looking, so there isn't
+ a single storage-related task I can't do with it and dired.
+ - A NetworkManager interface, so I don't have to use
nmtui/nmcli.
- A Bluez (bluetooth) interface, so I never have to see
bluetoothctl again.
- Q: Are there Busses besides System and Session? Is there anything
more to a Bus besides a way to group ~~services~~ objects?
- - A: There\'s always at least a System bus; theres one Session bus
+ - A: There's always at least a System bus; theres one Session bus
per logged-in session (so potentially zero).  You can create and
connect to as many busses as you want, and they get identified
by the socket they listen on, which can be a local UNIX socket
- or a TCP socket.  This isn\'t a common usecase, most things use
+ or a TCP socket.  This isn't a common usecase, most things use
system and session.
-- Q: It looks like dBus is mostly useful for Emacs to do IPC \-- IIUC,
+- Q: It looks like dBus is mostly useful for Emacs to do IPC -- IIUC,
this is how synctex works when working with LaTeX docs. How does it
compare with other ways of doing IPC, for example, communicating
over a socket with MPD?
- A: D-Bus provides a uniform framework for building these
- services.  MPD\'s socket interface only works with MPD, and if
+ services.  MPD's socket interface only works with MPD, and if
you want to connect to one, you have to write code that speaks
- the protocol before you can do high-level things like \"play\"
- or \"pause.\"  D-Bus provides the underlying communication layer
+ the protocol before you can do high-level things like "play"
+ or "pause."  D-Bus provides the underlying communication layer
as well as the model for the API, so you get all that stuff for
- free.  If a music player has a D-Bus interface, and you\'re
+ free.  If a music player has a D-Bus interface, and you're
using a language with D-Bus bindings, you can go from zero to
- \"support playing and pausing\" in one line of code.
+ "support playing and pausing" in one line of code.
- Q: ~~What mainstream/popular d-bus alternatives have you seen out
- there, if any, maybe beyond pipes, udev, and such? -\> somewhat
+ there, if any, maybe beyond pipes, udev, and such? -> somewhat
redundant with the above~~
- - A: There aren\'t any alternatives on Linux that I\'m aware of. 
+ - A: There aren't any alternatives on Linux that I'm aware of. 
Other operating systems have different ways of doing things
similar to what D-Bus does (such as OSA/AppleScript on macOS).
- Q: I see a python dbus tutorial, does it make sense to have an emacs
version?
<https://dbus.freedesktop.org/doc/dbus-python/tutorial.html> 
- - A: That\'s a really good idea!
+ - A: That's a really good idea!
- Q: How if at all do the various web browsers interop (well) via
d-bus?
- A: It could be better.  Firefox (and forks) have a simple
- interface that lets you open a URL, but nothing else.  I\'m not
+ interface that lets you open a URL, but nothing else.  I'm not
sure about other browsers, since LibreWolf is what I use.  If
you use d-feet to examine the session bus, you can see!
- Q: