Commit graph

15238 commits

Author SHA1 Message Date
Griffin Smith
6f2094c146 feat(gs): Bind a push-to-talk key
Bind a key, which I've located at the top-left of my right keyboard, to
a momentary push-to-talk by muting and unmuting my pulseaudio source
using xbindkeys. I had been putting this off for a while because i3
doesn't support binding different commands to keyup than to keydown
events, but the xbindkeys support appears to have solved that reasonably
well, plus it's got Scheme in it so that's cool.

If there's demand for it I'll gladly expose this as a reusable,
configurable home-manager module outside my users dir in the depot.

Change-Id: Ie591c93037dbdac364d5d8a718d99edb70780789
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1975
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-09-12 19:20:43 +00:00
Griffin Smith
65967bbbb1 refactor(tvix): Convert refLength to constexpr
This is constant, so let's make it a constexpr.

Change-Id: I6a9eb9f740979740f730ebe142d2cbf23dbcfd70
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1961
Tested-by: BuildkiteCI
Reviewed-by: kanepyork <rikingcoding@gmail.com>
2020-09-10 17:03:45 +00:00
Griffin Smith
5dcf64c128 fix(tvix): Make working flag thread_local
Since the daemon is running in threads now rather than forking a process
per connection (thanks to grpc) this static flag to prevent accidentally
initializing a new worker during a build is getting stepped on by
multiple threads. This converts it to thread-local, and also adds an
actual message to the check so that if it hits in the future we know
what's going on.

Fixes: b/58
Change-Id: I07a2f1582e56709c104f79935e5405fa24888f59
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1940
Tested-by: BuildkiteCI
Reviewed-by: kanepyork <rikingcoding@gmail.com>
Reviewed-by: V <v@anomalous.eu>
2020-09-10 17:03:45 +00:00
Griffin Smith
0d1f6d0592 feat(gs/emacs): Add command to rename branch after Clubhouse ticket
Similar to the b C command to create a *new* branch named after a
clubhouse ticket, add a new b M command to *rename* a branch after the
currently clocked-in clubhouse ticket.

Change-Id: I750106f5d417517fd8114536d9dc0905380d616a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1970
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-09-09 16:09:43 +00:00
Griffin Smith
1c98437079 feat(gs/home): Add chupacabra home-manager to CI targets
Also move fcitx to system, since it's a nixos thing not a home-manager
thing.

Change-Id: I3e047494a478520e939d48fc72cc91a2d797bf74
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1969
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-09-09 16:09:43 +00:00
glittershark
90451fdc0e revert(gs/home): "Install clj-kondo and babashka"
This reverts commit 6489f08099.

Reason for revert: build of graalvm fails :'(

Change-Id: I0fcd173988ab900c837d0040117c3120e29469a1
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1942
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-09-09 16:06:49 +00:00
Griffin Smith
59ca0de092 feat(gs/keyboard): Add layout to ci targets
Change-Id: Ieab80a7bf962305631759b1c42a01c4bffdd84a0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1968
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-09-09 14:47:37 +00:00
Griffin Smith
6489f08099 feat(gs/home): Install clj-kondo and babashka
These depend on graalvm which is gonna be a big ol build

Change-Id: I3b67e22677390921e408b9fea12191718b27cd7f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1967
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-09-09 14:47:37 +00:00
Griffin Smith
41b2653e32 feat(gs/system): Install fcitx+cloudpinyin
汉语时间!

Change-Id: Ic52c2d393ee55c1d251416a66c15f4b6d6722bfa
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1966
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-09-09 14:47:37 +00:00
Griffin Smith
b2eb4c81f7 feat(gs/zshrc): Change cursor shape based on mode
Use a block cursor in normal mode, and a beam cursor in insert mode.

Change-Id: I1cf5eebeaadf41cd006b324de62eb7f6804e149a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1965
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-09-09 14:25:38 +00:00
William Carroll
bae3ff4378 Delete .profile
I'm managing this in a separate, work-specific repository.
2020-09-09 14:32:47 +01:00
Vincent Ambo
b8b2a499e1 feat(tazjin/emacs): Rename Quassel EXWM windows
This gives Quassel buffers sensible titles containing the name of the
network the buffer is currently displaying.

Ideally it would show me the name of the Quassel Core connection, but
this isn't exported from Quassel into the X window title.

The regex captures both the channel and the network, but only the
network is currently used for display - I may revisit that at some
point.

Change-Id: Ife4c06919d9e9c0114ff298e1443b2b27ce2f146
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1964
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-09-09 10:56:52 +00:00
Griffin Smith
7a242c04d8 feat(gs/keyboard): Don't overlap backspace in FPS layer
Change-Id: Ia69ef054b60a43fa64517b5853d1076f7e6bdddc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1963
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-09-08 13:59:33 +00:00
William Carroll
12bd12434d Define KBD gu to browse-url-at-point
This is handy!
2020-09-08 13:12:47 +01:00
William Carroll
34af54eb04 Prefer .ssh/config instead of Tramp's defaults
Instruct Tramp to use my SSH settings in .ssh/config.
2020-09-08 13:12:17 +01:00
Griffin Smith
6c5020afaf feat(gs/home): Install multimc
Change-Id: Ib0fcf1fd51749d3878e66b350ecb8e81daa47aab
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1962
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-09-08 00:27:53 +00:00
William Carroll
74f1359924 Install additional KBDs for bookmark.el
Generate KBDs to call `find-file` on the bookmark.
2020-09-07 23:37:58 +01:00
William Carroll
c7af26b2af Drop glinux attribute from Emacs derivation
My google-briefcase has subsumed this responsibility.
2020-09-07 23:29:20 +01:00
William Carroll
60fd538a10 Remove Emacs config for Google languages
My custom language settings conflict with Google-Emacs's language settings, and
I'm not interested in finding a more harmonious solution. For now, I'm dropping
my settings altogether in favor of Google-Emacs's settings.
2020-09-07 23:28:20 +01:00
William Carroll
11015d6374 Depend on fzf
Add fzf to PATH.
2020-09-07 23:23:08 +01:00
William Carroll
a599e7a1c7 Define KBDs for quickly visiting BRIEFCASE magit-status
I'd rather be able to jump straight here instead of visiting a file or directory
first.
2020-09-07 23:22:30 +01:00
William Carroll
1ece8c083b Drop support for Nix home-manager
On my work machines, I'm finding home-manager to be more bothersome than
helpful. I'm preferring a simpler workflow for the time being.
2020-09-07 23:01:59 +01:00
William Carroll
11c46b9ad5 Add nix to Emacs's packages
The code in `wpc-nix.el` relies on `nix-env` being available on $PATH.
2020-09-07 19:51:08 +01:00
William Carroll
2edcaca6b4 Expose path to GOOGLE_BRIEFCASE as env var
After ~1-2 hours of debugging, I realized that locally I was reading from .envrc
but when Emacs initializes, it is not reading from .envrc. I don't know how to
ideally handle this, so for now I'm including GOOGLE_BRIEFCASE as an environment
variable and moving on with my life.
2020-09-07 19:49:44 +01:00
William Carroll
88a683e408 Display all byte-compile-warnings
I've reconsidered; setting this to just '(cl-functions) is not what I want.
2020-09-07 19:48:50 +01:00
William Carroll
62a7478bd2 defgroup for timestring.el
Trying to be more idiomatic.
2020-09-07 19:48:27 +01:00
William Carroll
8022b7a811 Increase the default size of my workstation font
Consider moving some of this logic into my work-specific configuration.
2020-09-07 19:47:54 +01:00
William Carroll
b01ce5059d Debug defensive call to (server-start)
I was previously relying on the variable `server-process` being set, but this
only resulted in false-negatives and broken initializations. This should make my
Emacs initialization more stable.
2020-09-07 16:30:54 +01:00
William Carroll
2afc753651 Add direnv to Emacs dependencies
direnv.el needs direnv available on $PATH.
2020-09-07 16:20:41 +01:00
William Carroll
3a87f3485f Conditionally load-theme
When the `window-system` is set, use `solarized-light`. When it's not,
use `wombat`.
2020-09-07 16:14:42 +01:00
William Carroll
bdd9d963be Conditionally start Emacs server
Only attempt to start the Emacs server if there isn't already one
running.
2020-09-07 16:14:42 +01:00
William Carroll
0f2a13a32a Vertically align search results conditionally
Only when `window-system` is set.
2020-09-07 16:14:42 +01:00
William Carroll
3dc10f167b Install keybindings for bookmark.el
I would like to restore these KBDs.
2020-09-07 16:14:42 +01:00
William Carroll
a366f352e6 Suppress cl deprecation warnings during initialization
See the URL I linked to for more information.
2020-09-07 15:47:47 +01:00
William Carroll
cc1a91078a Drop support for building emacs.glinux
I'm defining a fork of this function in my work configuration, so I longer want
this here.
2020-09-07 15:47:17 +01:00
William Carroll
12b5a10b05 Debug project-find-file for briefcase
As the name suggests, `f-parent-of?` only returns true when A is a *parent* of
B. What I want instead if `f-ancestor-of?`.
2020-09-07 15:41:54 +01:00
William Carroll
9773bc32ee Expose withEmacsPath on emacs attribute
I need this for Nix code that exists outside of this repository.
2020-09-07 10:52:54 +01:00
Griffin Smith
2ca20da43f chore(tvix): dontStrip tvix build
This is mostly to help in tracing through the core dumps for b/58, but
is also generally a good idea while we're still in hardcore
debugging-mode.

Fixes: b/63
Change-Id: Ib816a2a98bf3b8afa6e8b255a74ccb93af6508c5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1937
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-09-06 22:21:12 +00:00
Griffin Smith
8f4d89e429 feat(tvix): Implement EnsurePath RPC handler
Missed this one

Fixes: b/62
Change-Id: I6f3bbcd3e2a7db5786283761b57466da33a497f7
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1936
Reviewed-by: kanepyork <rikingcoding@gmail.com>
Tested-by: BuildkiteCI
2020-09-06 21:41:39 +00:00
Griffin Smith
e2530ceec0 feat(gs/home): Alias lwo = lorri watch --once
Change-Id: Ied475c3b704cf54e41767c47465dd94247c7b953
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1935
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-09-06 21:17:13 +00:00
Griffin Smith
053a98a7d7 revert(tvix): "Disable sandboxing by default until its time comes"
This reverts commit a41c3dedb1.

Reason for revert: I believe its time has come.

Change-Id: I4133dc8a3b57b40b280646d1622ed7a0409c5246
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1941
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
Reviewed-by: kanepyork <rikingcoding@gmail.com>
2020-09-06 21:12:11 +00:00
Griffin Smith
8b7dcfaeba feat(tvix): Write even more build logs to client
Write *all* build logs (essentially everything that wasn't a DLOG), not
just the stdout of the builder, to the client-bound log_sink_ that's
threaded through build.cc. These logs are significantly more useful on
the client, both when debugging tvix itself and (more importantly) when
building things with it.

To make this all work, this commit also refactors the passing-around of
the log sink in build.cc slightly - the main reference is now owned by
the Worker class, which already stores pointers to itself on the Goals
it creates, so those Goals can then load the log sink from the Worker.
This change was originally made to allow for logging to the log_sink
from instance methods of the worker, but actually feels significantly
more natural than storing the sink on the goal anyway.

Change-Id: I461685bc7f5c0a326054940ac5971b568dd43f8e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1925
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-09-06 21:12:11 +00:00
William Carroll
43fc1d93fb Prefer 'vc as the project-find-file type when at briefcase's root
See the explanatory comment that I left in the code.
2020-09-06 18:20:19 +01:00
Vincent Ambo
87bfc53d7b chore(tazjin/keys): Add S10e key
Change-Id: I3efdd49e23bdc357f15ea189b890e25843cc0255
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1933
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-09-06 17:15:14 +00:00
Vincent Ambo
afc07b1b74 chore(whitby): Double the number of build agents again
The main bottleneck of our builds right now is Nix evaluation, which
means that most of the time is spent idling during builds.

Since we're evaluating in parallel, lets give it a few more builders.

I don't want to go all the way to 64 immediately to first see if we
get any adverse effects from highly concurrent builds running
concurrently (if we do we could group them into different "concurrency
groups" in Buildkite).

Change-Id: Ibc3f89fb59cb4ee471b152ff36887ffe2b39f8f8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1932
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-09-06 14:42:40 +00:00
William Carroll
5cf6a0b23d Add defgroup vterm-mgt for vterm-mgt
In the past I used `defconst` in many of my Elisp libraries where I should've
used something like:

```elisp
;; some/path/to/some-lib.el

(defgroup some-lib nil)

(defcustom some-lib-setting nil
  :group 'some-lib)
```

When I encounter code that I should've structured this way, I'm cleaning it up
to prefer this more idiomatic pattern.
2020-09-06 13:49:53 +01:00
Vincent Ambo
7f1c9bc234 fix(tazjin/emacs): Kill vterm buffers if their process exits
This has somehow stopped being a thing in newer vterm versions,
causing the weird behaviour with my term switcher - buffers with the
correct name were sticking around, but no longer in the right mode.

Change-Id: Ie641eb3db91808d7d1016de1e8ef3ad271c8995e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1931
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-09-05 23:38:12 +00:00
Vincent Ambo
11430f4a4b fix(term-switcher.el): Explicitly fail if buffers are missing
Since upgrading to Emacs 27 I have observed a strange behaviour where
this terminal switcher sometimes fails to select a valid buffer, in
which case it falls through to the case that just opens a new buffer
instead.

This is kind of annoying and to aid in debugging this change makes the
creation of new buffers explicit and fails if no matching buffer is
found.

Note that this is likely not a fix for the issue itself, but it will
help debug what is going on.

Change-Id: I906869aba7d25156aaf92c090b169ce02785b85e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1930
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-09-05 11:45:33 +00:00
William Carroll
b89d1f0a1f Call make-process instead of call-process in scrot.el
While attempting to debug why pressing `C-s-s` from an X-window screenshots my
entire screen, I switched from `call-process` to `make-process`, which is
async.

I still haven't debugged the original issue, but I think this is an improvement
regardless.
2020-09-04 21:06:18 +01:00
William Carroll
4763c7ca45 Restore KBDs for changing my font size
When I removed the KBD logic from fonts.el, I should have moved it here, but I
did not.
2020-09-04 21:04:56 +01:00