Commit graph

15150 commits

Author SHA1 Message Date
Vincent Ambo
6b16e5c1ef feat(emacs-pkgs/notable): Begin implementation by adding note-taking
I'm writing a note taking system because I don't like any of the
existing ones.

This adds a note-taking function which prompts the user for note
content and persists it in a user-configurable directory.

Next steps are roughly:

* listing notes
* editing notes
* archiving notes

At which point I would consider this functional. The idea is to keep
adding incremental improvements that fit my workflows after that, and
if it ends up being useful for anyone else - great.

Change-Id: I7ae0eb4015511ebdbaeff92d8d32502726eb57c4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1981
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-09-17 10:51:05 +00:00
Griffin Smith
96dbf4d686 fix(tvix): Convert INVALID_ARGUMENT to InvalidPath
The code that calls queryPathInfoUncached explicitly catches the
InvalidPath exception and translates it into a null result - but the RPC
code was throwing a regular old Error for invalid paths. At some point
we should get rid of all the exception-driven control flow in this whole
thing, but in the meantime this gets us back to functional.

Change-Id: I2a38790ee0c691ab0c8394c7738d7693fa42aa10
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1980
Tested-by: BuildkiteCI
Reviewed-by: kanepyork <rikingcoding@gmail.com>
2020-09-16 20:17:01 +00:00
Kane York
fedbe693b9 refactor(3p/tvix): make Value.primOp a std::shared_ptr
Change-Id: I04cc42ae62d2ff71b07fde8e3710dcc9b4363a05
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1973
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-09-15 21:52:56 +00:00
Kane York
d9c7f32a9c fix(3p/tvix): properly zero the largest member of Value
The static_assert is present to force us to change the constructor when a member grows.

Change-Id: Ifa4f4a03eb7ce13cff109cf26ecf0032045905e9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1972
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-09-15 21:42:54 +00:00
Kane York
2c19bd6662 refactor(3p/tvix): convert NixList usage to shared_ptr
Starting to reclaim memory. Fairly simple mechanical replacement.

Change-Id: I6b4c5c5596729470d1a049eba61e69e8097decf4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1971
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-09-15 21:42:54 +00:00
Griffin Smith
381ce8a666 refactor(tvix): Make static strings constexpr string_views
Make all static std::strings constexpr std::string_views, and replace
concatenation with absl::StrCat where necessary.

Technically all of these are constant, so they really don't need to be
top-level statics - and since I'm trying to get rid of as much global
state as possible in preparation for making the nix daemon properly
multithreaded I figured I'd knock these out while I was at it.

Change-Id: Ibd3ad9ef68f0a0eacb135541b39fdb13dae042e1
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1939
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-09-14 21:38:30 +00:00
Griffin Smith
31b06516f3 fix(panettone): Make pre blocks overflow-x scroll
This prevents wide code blocks from displaying over the container
element.

Fixes: b/53
Change-Id: I44cb5ff4eddf4c01bb706069a68618382b0dc7ba
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1934
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-09-14 21:37:47 +00:00
Griffin Smith
94c7990d57 feat(gs/emacs): Link created PR to clocked in item
After creating a pull request link it to the currently clocked in
org-mode headline if any.

Change-Id: I75d7e70316494e355e11864496fdfc8b9e3009e1
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1979
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-09-14 17:12:56 +00:00
Griffin Smith
eb11cced9d feat(gs/emacs): Use selected text as initial capture content
Change-Id: Ie3be26fe043e096330ad456b83f789365703efd7
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1978
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-09-14 15:39:54 +00:00
Griffin Smith
7a5748cba3 fix(gs/emacs): Always refresh gcal access token
the oauth2 emacs lib *claims* it does this for us, but it demonstrably
doesn't.

Change-Id: I6495ac30799bb3d3fd7406cec5139602c311d22a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1977
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-09-14 15:39:54 +00:00
Vincent Ambo
4a29942b06 fix(tazjin/emacs): Gracefully handle irregular Quassel titles
Some Quassel dialogues (e.g. popups, or clients that aren't connected
yet) don't match the expression and cause errors. This falls back to
the raw title for the window if no match is found.

Change-Id: I67b9cd7f6e2cb8e3e118d7fb7eeb615380be09d6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1976
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-09-14 15:31:13 +00:00
Vincent Ambo
20e88b0dd6 fix(tazjin/emacs): Include -/& in Quassel channel names
Change-Id: Id21de577043fe0fea90ae684a311ac7239714cf8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1974
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-09-12 19:56:06 +00:00
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