Commit graph

681 commits

Author SHA1 Message Date
Vincent Ambo
b916c2d0b1 fix(tazjin/emacs): always list ttys locally
Change-Id: Ic05378013aa327616a822336881d9a76c8a22d58
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9829
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-10-25 11:29:28 +00:00
Vincent Ambo
e778a33710 chore(3p/sources): bump channels & overlays (2023-10-04)
nixpkgs changed something in how it deals with configuration of the
package set itself when that is externally instantiated (like in
depot)

It seems like we can work around this mostly by just ... deleting some
code, as all instances of this were for allowing unfree code, which
we've already set on the top-level anyways.

* //users/sterni: fix nixpkgs config assertion to point at
  pkgs.config

* //users/wpcarro: disable locate service, which is broken in nixpkgs

Change-Id: Iacf6f1c8fd5b5289e7265e155d74f8269a858ceb
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9541
Reviewed-by: sterni <sternenseemann@systemli.org>
Reviewed-by: wpcarro <wpcarro@gmail.com>
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
2023-10-08 20:56:43 +00:00
Vincent Ambo
63d3d8cc35 fix(tazjin/koptevo): let gonic access /etc/resolv.conf
Without this line, accessing external APIs from Gonic (e.g. scrobbling
to Listenbrainz) does not work (unless a local resolver exists). This
is because in the pure Go DNS implementation used in gonic, only
/etc/resolv.conf can provide resolvers.

Change-Id: I26dd9a845b0a70c4cfb983c68da2b76b7e57dfec
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9502
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-10-01 22:15:34 +00:00
Vincent Ambo
ac94bf46a6 fix(tazjin/koptevo): minor reliability fixes for music setup
* zramSwap: during reindexing, geesefs can be pushed to the boundaries
  of what the new overaggressive OOM killer accepts, and I don't want
  to bother configuring that thing instead.

* umount: geesefs dying unexpectedly leaves broken mounts around,
  clean these up before proceeding

This bakes in the assumption that there's only ever one geesefs
service, but that assumption is baked in anyways.

Change-Id: Id85c2f5bc2312a7246ea20229eb36d2cc1bd82c0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9500
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-10-01 14:26:41 +00:00
Vincent Ambo
c941ccb42b feat(tazjin/koptevo): deploy airsonic at player.tazj.in
Change-Id: I9f0dec6491906319550c97d4cc15b2cdda4a5ebe
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9499
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
2023-10-01 14:26:40 +00:00
Vincent Ambo
c5cb622d02 feat(tazjin/koptevo): run gonic on music.tazj.in
Change-Id: Id281142e59647d9db02f64a352cba768d4d83237
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9497
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-09-30 21:47:37 +00:00
Vincent Ambo
5df59d2c7f feat(tazjin/nixos): add geesefs mount unit for koptevo ...
... this will make sense soon!

Change-Id: I1f8f32d655afdf868fff4bd09e1fea2943fd7558
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9496
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2023-09-30 21:47:37 +00:00
Vincent Ambo
d3a59662ca feat(tazjin/secrets): add geesefs key for my personal bucket
Change-Id: I833b3cc3571d77729b83743f7e37c789337f55a2
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9495
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-09-30 21:47:37 +00:00
Vincent Ambo
e6ee2f135f chore(tazjin/secrets): reencrypt with new key set
Change-Id: Ib2111bf10babf42ad7984c39a25acd84cecd0d76
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9494
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2023-09-30 21:47:37 +00:00
Vincent Ambo
823b33664d feat(tazjin/nixos): helper script for mounting GeeseFS
Can't be bothered to make something more automated for now.

Change-Id: Ie245af90c1a62a5988b97d16f86b6567e1ffafd0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9493
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-09-30 21:47:37 +00:00
Vincent Ambo
de958ccf01 feat(tazjin/emacs): add a key binding for telega-chat-with
Puts this under the prefix command for #'telega itself.

Change-Id: I7dc394840ded3f31bf54848e581a0add36da7f3b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9479
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
2023-09-27 10:57:41 +00:00
Vincent Ambo
6a834fd109 fix(tazjin/emacs): set telega's completing read to standard
Telega tries to use some random completing-read functions, but I just
want it to use the default one, which I've configured the way I want.

Change-Id: I33da24f257e8ac0cae4a7d25ba6c5e4e656fcad5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9478
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
2023-09-27 10:57:40 +00:00
Vincent Ambo
fa0e7ffa61 feat(tazjin/emacs): add more tree-sitter grammars
Change-Id: I8e38445457fe2663572ed9d15cdb1942336247dd
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9477
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-09-27 10:57:40 +00:00
Vincent Ambo
0c3af32d1c chore(users/tazjin): drop 'exa' from my systems
I don't use it, and it's deprecated.

Change-Id: I8e8c505ba309d5228b54f155463af4ed007f5452
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9331
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-09-15 08:32:31 +00:00
Vincent Ambo
cec2baa6ca chore(tazjin/emacs): remove unused or duplicated packages
Some of these I don't use, some of these have been replaced with
tree-sitter, some of these have moved into core.

Change-Id: Id0a8aac4189607a89db861bbc09b95c75c45dc0f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9310
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2023-09-12 16:40:15 +00:00
Vincent Ambo
b479725181 fix(tazjin/emacs): manually hook up tree-sitter grammars
The mechanism in nixpkgs does not work, but doing it myself is not
that difficult.

Change-Id: I91b12e9c1f5d381c9990fd46e02169f5275f88da
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9309
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-09-12 15:09:49 +00:00
Vincent Ambo
4d0ea1a317 feat(tazjin/emacs): enable a bunch of tree-sitter modes
Especially interested in the C++ mode, as I am regularly dealing with
extremely large C++ files where the existing mode is having trouble.

Change-Id: I8c17a35011a23b67043de5de58c4269c636de68b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9308
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-09-12 15:07:46 +00:00
Vincent Ambo
2b1eb01124 feat(tazjin/emacs): add a bunch of tree-sitter grammars
I want to experiment with the new tree-sitter modes in Emacs, maybe
they're good.

Change-Id: I706fc8a889fcfa61d0f11d50ecbc67a2899b5bbf
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9307
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-09-12 15:07:46 +00:00
Vincent Ambo
b8df88843f chore(tazjin/nixos): ensure expect is always installed
Change-Id: I2beff7484e869fcf2771e7e1c9ba5f73d0daea25
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9295
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Autosubmit: tazjin <tazjin@tvl.su>
2023-09-11 08:12:10 +00:00
Florian Klink
afe4dfb61e refactor(tvix): move logo to //tvix:logo
Also expose both formats, then use it from
users/tazjin/presentations/tvix-eval-2023.

Change-Id: Id906e8aff5510a7a4f33336326472e86db18ea32
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9280
Tested-by: BuildkiteCI
Autosubmit: flokli <flokli@flokli.de>
Reviewed-by: tazjin <tazjin@tvl.su>
2023-09-10 13:13:14 +00:00
Vincent Ambo
e7fc15c180 feat(tazjin/blog): publish tvix-eval talk blog post
Change-Id: I374c2658a19db17e53ab392299cf23657e8b75b2
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9278
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-09-08 13:51:26 +00:00
Vincent Ambo
94ebb30b1f docs(tazjin/blog): add NixCon 2023 link to talk notes
Change-Id: I55e2c668a014a87ba15db2a93f14eb0812a83a8e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9274
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-09-07 14:46:58 +00:00
Vincent Ambo
0f4eb908ec chore(tazjin/presentations): last minute changes to tvix-eval talk
Change-Id: I788a17f846b35f5635ed7a9ec0d3249b05653d44
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9273
Tested-by: BuildkiteCI
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
2023-09-07 12:05:30 +00:00
Vincent Ambo
e163656edd chore(3p/sources): bump channels & overlays (2023-09-06)
* //users/tazjin/nixos: disable virtualbox because it doesn't build
  anymore. I don't actually need it.

Change-Id: Ie4640c09406485ed61673919b2c7621d0a809622
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9271
Reviewed-by: flokli <flokli@flokli.de>
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
Autosubmit: tazjin <tazjin@tvl.su>
2023-09-06 13:38:15 +00:00
Mark Shevchenko
428b655845 docs(tazjin/blog): Append link to Vincent's interview
Change-Id: I55840ae2ffce6fa64111716307c0ff2a73652877
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9215
Autosubmit: Mark Shevchenko <markshevchenko@gmail.com>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-09-03 11:02:12 +00:00
Vincent Ambo
eda67bfdbe feat(tazjin/tvix-eval-2023): add link collection blog post & QR code
Makes it possible for people in the audience to get to the link
collection reasonably quickly.

Later on that post can also have the talk itself added. For now it is
unlisted.

Change-Id: If9ae1d88d3c6f22bbd70b2b3cbea0b0d42895a93
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9208
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: Mark Shevchenko <markshevchenko@gmail.com>
Tested-by: BuildkiteCI
2023-09-02 18:49:23 +00:00
Vincent Ambo
685b2eec18 feat(tazjin/tvix-eval-2023): add presenter notes and minor fixes
Change-Id: I1193f83cf1e9633f74b4359272448ccb44971628
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9207
Reviewed-by: Mark Shevchenko <markshevchenko@gmail.com>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-09-02 18:20:54 +00:00
Vincent Ambo
4ef86040dd feat(tazjin/presentations): add (intentionally) broken WASM demo
This demonstrates a Rust stdlib call that just causes runtime panics
on WASM, for explaining the problems with porting Tvixbolt.

Change-Id: Ief974f1bba509fdac4b9bc9f862ee8f4dfc5158e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9206
Tested-by: BuildkiteCI
Reviewed-by: Mark Shevchenko <markshevchenko@gmail.com>
Autosubmit: tazjin <tazjin@tvl.su>
2023-09-02 18:20:54 +00:00
Vincent Ambo
0e01e91174 chore(tazjin/emacs): refine -> inspetor
refine doesn't work anymore, inspector seems to be a more modern
alternative.

it's impressive that they managed to write elisp code that broke.

Change-Id: I672de68abdc3d780f66769043afefd8d37438548
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9209
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-09-02 16:38:59 +00:00
Vincent Ambo
eb0b33db72 feat(tazjin/presentations): bootstrap tvix-eval-2023 presentation
I spent way too much time fighting LaTeX to do roughly what I want
here again, but all the alternatives are even worse.

Change-Id: Ibe12a4ce175ceb73e9d6e276613dcd4827dd76c4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9150
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: Mark Shevchenko <markshevchenko@gmail.com>
Tested-by: BuildkiteCI
2023-09-01 13:50:32 +00:00
Vincent Ambo
e06d38ae54 chore(tazjin/khamovnik): load private Emacs config automatically
Change-Id: I26374733c35c2165363eaae45f56ba1e9facfe99
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9167
Tested-by: BuildkiteCI
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
2023-08-29 15:14:22 +00:00
Vincent Ambo
d4c8840c57 refactor(tazjin/nixos): pick correct Emacs from a NixOS option
This gives me the ability to override the Emacs per-machine easily.

Change-Id: Id480889c108833b0a11c377a9b1e946900c5aba1
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9166
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-08-29 15:14:22 +00:00
Vincent Ambo
804b7fbe73 chore(tazjin/emacs): remove withLocalEmacs
I only wrote this as a hack to make my Emacs config run on gLinux, but
that isn't relevant anymore.

Change-Id: I19c49d500e0ec75bb85644d25a63b0b6c530aa62
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9165
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2023-08-29 15:14:22 +00:00
Vincent Ambo
821feb610e chore(tazjin/emacs): emacs-unstable -> emacs29
Instead of staying up-to-date with Emacs master, I'd like to be a bit
more laid back and stay with stable releases. Now that native
compilation is in this is not a big difference.

I tried to use `-pgtk`, but it broke EXWM.

Change-Id: I0789a1f73d0149bda912987e726de396545abce1
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9164
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2023-08-29 14:07:11 +00:00
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
d6bce3f83d refactor(tazjin/emacs): refactor LRU workspace list to use ring.el
This built-in emacs library actually provides a data structure that
can work as an LRU list through the existing helper function to move
an element to the front of the ring if it already exists.

As a result, the code for workspace history moving becomes a lot less
brittle and complicated than it was before. No more carefully figuring
out when to modify state, just push it in the ring unless it's being
rotated already.

Change-Id: If354e0618fc5a6d7333776468eec077596cfe9df
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9162
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-08-29 08:22:01 +00:00
Vincent Ambo
0a7a9e96ab chore(tazjin/emacs): remove EXWM gnome-terminal window naming case
I haven't used that since ... 2018 or so, time for it to go.

Change-Id: I5e1b729bd553940b98335e3d9c7ca5b134fdf692
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9161
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-08-29 08:22:01 +00:00
Vincent Ambo
690f73074c feat(tazjin/emacs): add occasionally useful advice-remove-all helper
Change-Id: I66981e8bec300dff48d7a549f2d2847c637a4557
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9160
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2023-08-28 19:40:49 +00:00
Vincent Ambo
c9034186df chore(tazjin/emacs): remove now builtin packages
Change-Id: Ib7bf90a1c1fcd9d4475664f4d68a83967df47bfc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9159
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-08-28 19:40:49 +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
Vincent Ambo
184020a6f2 feat(tazjin/emacs): annotate remote files in reliably-switch-buffer
Change-Id: I0fa460f2d455114ca9387ad23d5a72bcb5a5d9ea
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9156
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-08-26 23:30:21 +00:00
Vincent Ambo
e78b79c6cd refactor(tazjin/emacs): ivy,swiper,counsel -> vertico,consult
vertico and consult are more modern versions of interactive narrowing
helpers, as those implemented by ivy and its related packages.

The primary differences (and what I care about here) is that they are
more focused on integration with the core Emacs primitives, rather
than building an ecosystem around them.

For example:

* vertico enhances `completing-read' and friends, but does not attempt
  to provide its own ecosystem of functions to *trigger* completions.

* vertico integrates with the default `completion-style' system,
  meaning that I can continue to use things like prescient without
  extra packages that integrate it with vertico

* consult does not rely on vertico or any other specific completion
  framework (such as counsel/swiper do with ivy), and simply
  implements its functions using completing-read

This reduces the overall amount of code in the dependency closure and
leads to a less special setup.

Functionality is basically equivalent, except for two things which
counsel came with that I will need to substitute:

* counsel-notmuch (actually this was a separate package, but I didn't
  use it much anyways, so just ignoring it for now)
* counsel-linux-app (opening desktop shortcuts, this I will need to make)

As a side note, consult notes "This package is a part of GNU Emacs",
but it doesn't seem to be the case.

Change-Id: Ia046b763bf3d401b505e0f6393cfe1ccd6f41293
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9155
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2023-08-26 23:30:21 +00:00
Vincent Ambo
9afa1dacf8 chore(tazjin/emacs): remove a bunch of unused code
Change-Id: Ife854e83ef97f1e9a26072f2ab2a3b23f5d64840
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9154
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-08-26 13:25:57 +00:00
Vincent Ambo
e9bbc5f2af fix(tazjin/emacs): suppress incredibly ennoying EPA error buffer
When entering an incorrect GPG key password, I don't want my whole
buffer layout ruined. A small error message in the modeline is enough.

Change-Id: I7318d685e74fa4e110a9bff30d0de9f7f18b2be4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9149
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-08-23 20:22:25 +00:00
Vincent Ambo
254f81f5c9 chore(tazjin/emacs): disable some nonsensical ivy options
Especially the recursive minibuffers only cause a mess.

Change-Id: I6f7f790acd6a2f8cc4cec26c9cf97d5e53e77106
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9148
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2023-08-23 20:22:25 +00:00
Vincent Ambo
df4a09864a feat(tazjin/emacs): implement reliably-switch-buffer
Adds a completing-read function (defaulting to ivy for me, but it
doesn't matter) that offers a reliable alternative to standard
buffer-switching implementations.

In particular, this implementation retains a mapping of
buffer names to their buffer *objects*, so that the correct buffer is
selected even if some renaming took place during the selection.

I tried to account for a bunch of the common behaviours I could think
of:

* invisible buffers are ... invisible
* entering a buffer name manually creates that buffer, if there is no
  match
* ... unless that buffer is an invisible buffer, in which case it is
  selected and switched to
* the first element is always `(other-buffer (current-buffer))`,
  because of the ordering of #'buffer-list

Yet, the entire code of my implementation is less than the *setup*
code of ivy-switch-buffers, so it's possible I missed something. Well,
I'll find out ...

Change-Id: I08be0da0863d06c9a930e5efaf916719655db90e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9147
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-08-23 20:22:25 +00:00
Vincent Ambo
fcda068235 feat(nix/sparseTree): add optional name argument
This allows pinning the name of the sparse tree derivation, which
stops the continous rebuilding of tvix-store-proto dependents.

I've opted to let the function take an attribute set instead and
refactored the call sites appropriately.

Change-Id: I3e57785094b1adbfffa24caf9f1c3384844fa200
Reviewed-on: https://cl.tvl.fyi/c/depot/+/8965
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2023-08-08 20:11:56 +00:00
Vincent Ambo
447d959143 feat(tazjin/emacs): use python-mode for Starlark files
Change-Id: I1b86ef7849f0754ba0ff37cb261b38bf9c5aed12
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9016
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2023-08-08 09:44:11 +00:00
Vincent Ambo
9b8eb424eb fix(tazjin/emacs): unbind dangerous telega.el shortcut
The `a` shortcut of telega makes it dangerously easy to accidentally
add users whose username starts with `a` to a group.

This unbinds the shortcut, and leaves the member-adding function to be
called manually and explicitly only.

Change-Id: Iedb6291f16a299fc5d4ef824a1be6eb0a449001f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9015
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-08-08 09:44:11 +00:00