Commit graph

3 commits

Author SHA1 Message Date
Vincent Ambo
e5f7fe430d refactor(tazjin/gio-list-apps): refactor into dynamic Emacs module
Instead of producing a binary that gets called by Emacs, with
input/output serialisation, use a dynamic Emacs module that lets Emacs
more-or-less directly call the relevant GTK functions.

I'm doing this mostly as an experiment. Might be interesting to end up
with a dynamic module that I can dump some experimental code into that
improves my workflows.

To do this, I've exposed the emacs binary used by my Emacs
configuration in an additional `passthru` field. This ensures that the
module is linked against the right version of Emacs.

Change-Id: I1426994fe3455ed1b2a685c5a09705e29fa40950
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9163
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
2023-08-29 14:07:11 +00:00
Vincent Ambo
c6224c9ef5 feat(tazjin/emacs): implement run-xdg-app using gio-list-apps tool
Change-Id: I43111dfc7091c416035be563ca7fc17265667b33
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9158
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2023-08-26 23:30:21 +00:00
Vincent Ambo
b5979f26e8 feat(tazjin/gio-list-apps): CLI to list xdg apps using Gio library
This does nothing other than dump out the list of XDG apps to stdout
in JSON format. There are no options or anything.

This can be used for selection in app launchers (e.g. dmenu, something
based on completing-read in emacs, rofi, etc.).

I wrote this because I don't want to deal with having to do this in
Elisp. It's also unclear what logic actually hides behind under the
hood here, so why not just use the official library.

Change-Id: I16fed2c92760cadecc02c59a4e537a1fa247aff9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9157
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-08-26 23:30:21 +00:00