Commit graph

1422 commits

Author SHA1 Message Date
William Carroll
d052ab21fd fix(wpcarro/emacs): Debug bookmark-open
also add missing dependency on project.el

Change-Id: I4648f07eb31888c9c4bd6c094543b8d8ee05225a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5287
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-02-14 21:54:37 +00:00
William Carroll
5d09aa53dd feat(wpcarro/emacs): Support bookmark for /depot/users/wpcarro
Saving keystrokes every day. Right?

Change-Id: I8a2fd42c9139f87181ac203e1573be3823e18b56
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5283
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
2022-02-14 20:23:23 +00:00
William Carroll
a8e76b24e8 refactor(wpcarro/emacs): Simplify bookmark.el
- narrow lib's scope and update documentation
- remove unnecessary dependencies

Change-Id: I5931a5a6e571466b3334dc02e88c9c283754d263
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5282
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-02-14 20:12:22 +00:00
William Carroll
a9effe690c fix(wpcarro/emacs): Add missing constants dependency
Thankfully CI caught this bug by evaluating my Emacs init script; however, this
could've been caught even earlier if each of my Elisp modules were packaged with
Nix and be individually evaluated.

That change will come soon enough...

Change-Id: I987bab22a388c43183f79ace41ed97be83578ba6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5285
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-02-14 20:12:21 +00:00
William Carroll
b7c6e83acb feat(wpcarro/todo-lists): Add CTA's curriculum as a CSV
TODO:
- import this into SQL
- support ST-like query syntax to simplify SELECT statements
- add server and web app to query the table
- deploy web app
- add URLs to table
- extend web app to track how often users hit these techniques in rolls

Change-Id: Icecfbbc5e457a1dddad7b37fc1c0752d6e4b62e1
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5284
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-02-14 20:06:20 +00:00
Vincent Ambo
cae274808f fix(tazjin/emacs): suppress emacs warnings in warnings buffer
Change-Id: I78e431da01dc900344044f1571e35565f8361f3a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5281
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2022-02-14 17:43:03 +00:00
Profpatsch
ed68ba6751 feat(users/Profpatsch/netencode): ignore earlier record entries
It turns out that the netencode spec requiring to ignore *later*
entries meant that every parser has to do an extra check for each
element, instead of just overriding the key in the hash map.

This leads to a situation where the simple implementation is the wrong
one, which would lead to very subtle problems in parsers (see also the
infamous “json duplicate record entry” problem which has been used for
various exploits in the past).

To be fair, exploits are still possible, but at least a `Map.fromList`
will be the right implementation (provided it folds from the left) now
instead of the wrong one.

Examples of the trivial implementation being now right:

Python:

    > dict([("foo", 1), ("foo", 2)])
    {'foo': 2}

Rust:

    > println!("{:?}", HashMap::from([
      ("foo", 1),
      ("foo", 2)
    ]));
    {"foo": 2}

Haskell:

    > Data.Map.fromList [ ("foo", 1), ("foo", 2) ]
    fromList [("foo",2)]

Change-Id: Ife9593956f4718e5e720f4f348c227e4f3a71e2d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5108
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
Reviewed-by: sterni <sternenseemann@systemli.org>
Autosubmit: Profpatsch <mail@profpatsch.de>
2022-02-14 14:12:19 +00:00
William Carroll
8df073a1e0 feat(wpcarro/emacs): support avy
Trying out this workflow for awhile to see if I save some keystrokes.

Change-Id: I28532be04b1de971559c8df5a3717facbdfc4f00
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5278
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-02-13 19:09:39 +00:00
sterni
de62043a74 refactor(rust-crates-advisory): move report generation into script
This script is somewhat usable by humans (it even has a help screen!)
and can be reused in //users/sterni/nixpkgs-crate-holes. We are using
bash since that allows us to exit with the actual exit code of
cargo-audit - something that's not possible in execline.

Change-Id: I3331ae8222a20e23b8e30dc920ab48af78f0247c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5228
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
2022-02-13 18:42:44 +00:00
William Carroll
c351aa5af4 feat(wpcarro/emacs): define window-manager-workspace-move
Wrapper around `exwm-workspace-move` but uses `completing-read` and understands
my named-workspace structs.

Change-Id: Ibe565b3afaeec5c4a7f2b6d2d0c9c21bc8006962
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5275
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-02-13 06:47:10 +00:00
William Carroll
f988fb6925 feat(wpcarro/ssh): Add public SSH key for SVL 🔑
What he said ^

Change-Id: Ie6f73958a98d3edd9edb91a7738ca233c42810c8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5159
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-02-12 20:55:56 +00:00
William Carroll
4bb144542c chore(wpcarro/docs): wpcarro.dev -> billandhiscomputer.com
Stale documentation...

Change-Id: I1761b865fa8b62b64acff8664d265997201ebb8f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5181
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-02-12 20:52:59 +00:00
William Carroll
8fb1ff3f25 feat(wpcarro/diogenes): Support rebuild-diogenes
- deploy-diogenes: terraform updates + NixOS rebuilds
- rebuild-diogenes: NixOS rebuilds

Change-Id: Ibd6db7115d9919fa44ee9d318f88e1bf29e2bdce
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5160
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-02-12 20:47:57 +00:00
William Carroll
4f89dd3fdf feat(wpcarro/org): remember to expense home internet
...because free just tastes better

Change-Id: I7ca24be7e5e339844f8bfbbb6fc0e7a6efceb02b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5270
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
2022-02-10 23:02:25 +00:00
William Carroll
3e650a4f36 feat(wpcarro/playbooks): add go/hallpass reminder
gotta get paid

Change-Id: If942281b3e8a20e883c96f8332170c0f73f2ddac
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5268
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
2022-02-08 23:29:46 +00:00
William Carroll
7b1423dc63 fix(wpcarro/playbooks): update first-of-the-month.org
TL;DR:
- remove stale entries
- add entry for buying TSLA for 401k
- (partially) normalize habits.org by referencing ./first-of-the-month.org

Background:

Earlier today I automated as much of my investments as I can...

- crypto account auto-buys crypto 2x/mo
- Fidelity doesn't support auto-purchases of individual stocks, so I opened a
  Robinhood account to auto-purchase stock 2x/mo

The only remaining thing that AFAIK I *cannot* automate is auto-stock-purchases
for TD Ameritrade (my SDBO 401k account). I don't think I can transfer this to
Robinhood because Vanguard controls which brokerages they're compatible
with. This should still be a big time-saver.

As such, it's time to rely on playbooks for this, so I'm dusting-off the
first-of-the-month.org playbook.

Change-Id: I545f8de20a0a30cac597400c4114b4549671a91d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5267
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
2022-02-08 23:16:45 +00:00
William Carroll
333b049d38 fix(wpcarro/josh): remove unnecessary ::README
josh adds all of the contents from the directory that hosts the `workspace.josh`
file.

Change-Id: I7564454df88886f72d02a9be88640c42cee60fc5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5266
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-02-08 20:25:24 +00:00
William Carroll
64a4aad73b fix(wpcarro/emacs): change magit's buffer display function 🎉
Reuse the same buffer from which magit was invoked.

Change-Id: I20f661c8414cd6482d9374f9412186c66b736b94
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5265
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-02-08 20:19:23 +00:00
William Carroll
fdd9b09d4f feat(wpcarro/emacs): update README
I'm testing my josh+github workflow.

Change-Id: Ib5435debcecd94192eb27afe022bda433cba397f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5264
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
2022-02-08 20:13:22 +00:00
William Carroll
06da3ba749 feat(wpcarro/josh): create workspace.josh for emacs stuffs
🚨 This is just a test 🚨

I'm experimenting with exporting some of my work from depot to Github using
josh.

I tried testing this locally, but it was a bit of a pain because I need to run:
1. git server locally
2. josh server as a proxy

Step 2 is easy, but I'm not sure how quickly I can setup a git server, and I
decided that just committing this work might be faster.

Next up (pseudocode):

```
$ git clone https://code.tvl.fyi/depot.git:workspace=users/wpcarro/emacs.git ~/github/emacs
$ cd ~/github/emacs
$ git remote add github git@github.com:wpcarro/emacs
$ git push github
$ # ...something like that
```

Note to self: figure out how to easily setup a git server locally, so that I can
test these changes more easily without spamming depot with test commits.

Change-Id: I0f198e00c60e06941b69f35ef389b936cf3ff659
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5263
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
2022-02-08 19:41:18 +00:00
William Carroll
2e10f59ba5 feat(wpcarro/nix): install rink
Instead of using a python interpreter for quick calculations, try using `rink`.

Change-Id: I95271a394a183e5e7645873f781ed0051c86988a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5262
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-02-08 19:17:15 +00:00
Vincent Ambo
333c12d72d fix(tazjin/emacs): Correctly pass through additional attributes
We really need target list diffing, would have caught this earlier.

Change-Id: Ifc064400b3115c6e2242d0b503cde4216b2ee787
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5257
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2022-02-08 18:06:06 +00:00
Vincent Ambo
aab994e0dc fix(tazjin/emacs): Enable telega check in CI again
Change-Id: Ia7b6921c1272dd6fe7ea81bd103ffa17bba1a922
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5255
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
2022-02-08 18:06:05 +00:00
Griffin Smith
a81b1dc6ef feat(grfn/home): Add function for git show -s --pretty=reference
Change-Id: If639ac3515e92e7535f4c433948b3ec72424c035
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5261
Reviewed-by: grfn <grfn@gws.fyi>
Autosubmit: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2022-02-08 16:59:56 +00:00
Vincent Ambo
3d8ee62087 style(rust): Format all Rust code with rustfmt
Change-Id: Iab7e00cc26a4f9727d3ab98691ef379921a33052
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5240
Tested-by: BuildkiteCI
Reviewed-by: kanepyork <rikingcoding@gmail.com>
Reviewed-by: Profpatsch <mail@profpatsch.de>
Reviewed-by: grfn <grfn@gws.fyi>
Reviewed-by: tazjin <tazjin@tvl.su>
2022-02-08 12:06:39 +00:00
Vincent Ambo
3318982f81 chore: move some meta.targets definitions to meta.ci.targets
Change-Id: Icdec1dec89158fb596c5185ac7105892081947f5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5252
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
Autosubmit: tazjin <tazjin@tvl.su>
2022-02-08 12:06:10 +00:00
William Carroll
01ec92fc6b fix(wpcarro/fish): prefer absolute path for prompt.fish
Also move prompt.fish out of configs, which is a deprecated location.

Change-Id: I95360bc24b0b147a611881ed53e70bf1f9e5deea
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5256
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
2022-02-08 05:22:33 +00:00
Vincent Ambo
2ffea01c03 chore(wpcarro): move meta.targets definitions to meta.ci.targets
Change-Id: If45c9c939c607d02c1c636f9b54962aa527eed0e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5254
Tested-by: BuildkiteCI
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: wpcarro <wpcarro@gmail.com>
2022-02-08 00:19:55 +00:00
Vincent Ambo
4c976c863f chore(grfn): move meta.targets definitions to meta.ci.targets
Change-Id: I1b77319a7218157818b4e48fadb98d00790b7f67
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5253
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2022-02-07 23:27:49 +00:00
Vincent Ambo
f82f459e2c fix(tazjin/emacs): allow jumping to front of workspace history
Classic off-by-one error.

Change-Id: I53e143d900f1d3751ad16b3b33532f32e2c6b411
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5245
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2022-02-07 19:12:16 +00:00
Vincent Ambo
d522e75554 feat(tazjin/emacs): emulate i3's "jump back-and-forth" feature
this feature makes it so that if you jump to a workspace by index, and
then ask to jump that same index again, you end up where you started.

this is useful for quickly jumping to something to look at it, and
then back.

Change-Id: I12f5bba88c0d5b3ae5956d2b6a606f49146551f7
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5244
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2022-02-07 19:08:01 +00:00
Vincent Ambo
e00dd88b66 feat(tazjin/emacs): implement MRU navigation for exwm workspaces
this makes it possible to move forwards/backwards in workspace history
in the order in which I used them, while tracking the offset (e.g. it
is possible to go 3 steps back, do something, then move 2 steps
forward again).

this should make it possible to learn ad-hoc relative layouts for
whatever task i'm working on and reduce the number of times where i
frantically flip through all workspaces and try to figure out where
anything is.

note that this key binding is not very ergonomic, but i've remapped it
on my kinesis to the prior/next buttons. i never use those. using
<prior>/<next> directly doesn't work because too many modes override
them.

Change-Id: I257723b9e14a68b53be68539dd752db3445546e7
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5243
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2022-02-07 19:08:01 +00:00
Vincent Ambo
0d0b43ed88 fix(users/tazjin): rustfmt code with non-default settings
rustfmt only sometimes detects path-based nested config
files (probably some kind of race?), so my users folder uses a
separate formatting check for rustfmt to avoid flaky CI. Enough flakes
around already ...

Change-Id: Ifd862f9974f071b3a256643dd8e56c019116156a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5242
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2022-02-07 16:58:59 +00:00
sterni
a2ecd53f58 chore: clean up some obsolete TODOs
* //3p/nix: probably not worth investing time into this anymore

* //users/sterni/emacs: The emoji problem disappeared by itself with a
  newer emacs version, however a different one remains…

* //web/panettone: If we ever want to change the behavior, we should
  just decide the behavior statically instead of using conditions and
  restarts, as we only call it in one place, so making different
  decisions depending on call sites is not really a use case we have.

Change-Id: Iff9d439ce356db41ce34d690fb7b6a01822022fa
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5223
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: sterni <sternenseemann@systemli.org>
2022-02-04 15:55:19 +00:00
sterni
66055161fb feat(tools/rust-crates-advisory): omit GHFM checklist in buildkite
Buildkite doesn't understand GitHub Flavored Markdown and having a read
only checklist in there is probably not much use.

Change-Id: I41538487087e8c817b1a5e653f077bb0fbe6eb47
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5201
Reviewed-by: sterni <sternenseemann@systemli.org>
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
2022-02-04 11:22:43 +00:00
sterni
5d06425655 chore: move format-audit-result.jq out of //users/sterni
In the spirit of the readTree filter we should also not include files in
user directories from the outside.

Change-Id: I1abe36a721048900d2758b5986063b68b8d1af93
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5200
Reviewed-by: sterni <sternenseemann@systemli.org>
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
2022-02-04 11:20:41 +00:00
Vincent Ambo
cf5f9d5ead chore(tazjin/tverskoy): Remove some unused software
Change-Id: I1b6766a2c92a6ef8c93dfdbd7913923752de2513
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5222
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2022-02-03 23:13:13 +00:00
Vincent Ambo
8099c11a12 fix(tazjin/tverskoy): Downgrade strongswan to 5.9.4
Comments contain all the relevant info.

Change-Id: I6d4a715889b562dc79148314092f698ceefcac88
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5221
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2022-02-03 23:08:38 +00:00
Vincent Ambo
7fcede0c5b fix(tazjin/tverskoy): Keep only one copy of Emacs
Change-Id: I88994777f4191efe4a4f297780bf9477638b87d2
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5204
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2022-02-03 16:28:46 +00:00
Vincent Ambo
af0c761553 chore(tazjin/tverskoy): Remove Spotify and Steam
They're big and I don't use them.

Change-Id: I87978c93ecf6cb5b5dd9935da61b0671522b06fa
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5203
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2022-02-03 16:28:46 +00:00
sterni
5bc73de59d feat: move mblog header handling into mime4cl
Accessing the headers of a MIME message feels like something mime4cl
should handle. We implemented this ad hoc in mblog before in order to
not need to worry about doing it in a sensible way. Now we introduce a
decent-ish interface for getting a header from a MIME message,
mime-message-header-values:

* It returns a list because MIME message headers may appear multiple
  times.

* It decodes RFC2047 only upon request, as you may want to be stricter
  about parsing certain fields.

* It checks header name equality case insensitively.

The code for decoding the RFC2047 string is retained and still uses
babel for doing the actual decoding.

Change-Id: I58bbbe4b46dbded04160b481a28a40d14775673d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5150
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2022-02-02 20:47:45 +00:00
sterni
81c47da91c refactor(sterni/mblog/note): don't escape streams char by char
Depending on the stream backing this, read-sequence should be more
efficient.

Change-Id: I5d0461f76f4b132ac6e6c3a2e503f0173d5f4114
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5194
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2022-02-02 20:47:45 +00:00
sterni
98e4cd032f feat(users/sterni/mblog): implement mblog executable
This change finally sort of puts the parts together: We take a maildir,
render all its note messages as standalone HTML, extract the attachments
alongside and finally generate a global index page linking all notes.

The new executable and mnote-html are both contained in the same image
and we dispatch the right functionality based on argv[0].

Change-Id: I5a5bdbfaca79199f92e73ea4a2f070fa900d2bc4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5113
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2022-02-02 20:47:45 +00:00
sterni
6cd1f6f183 refactor(sterni/mblog/note): only get escape-char-minimal from WHO
This is the only thing we need from that package and it avoids having
to solve the annoying conflict between closure-html and who.

Change-Id: Iacfb8d4948d1987e767ffc456b8e141b468ef6d9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5111
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2022-02-02 20:47:45 +00:00
sterni
5789814dec fix(users/sterni/mblog): handle RFC2047 in subjects
Non ASCII Subjects will use RFC2047 to encode their content. Using
mime4cl's parse-RFC2047-text we obtain a list of ASCII strings and byte
vectors tagged with their encoding. Using babel we can then decode the
byte sequence, assuming the encoding is named the same in babel and
RFC2047 (which it is for UTF-8 at least…).

Change-Id: I2840672409452bd194fb1635721e338364d9b484
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5078
Reviewed-by: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
2022-02-02 20:47:45 +00:00
sterni
56ec3b1803 refactor(sterni/mblog): add (sub)class for apple note messages
* Upon creation of an apple-note object we can check if certain fields
  we are interested in are present and of the right type etc.

  These currently are:

  - UUID (for links later)
  - Subject (title)
  - Time
  - Text part with supported MIME type

  These are then put into their own shortcut fields in the apple-note
  subclass which allows for easier access and forces us to make sure
  they are present.

* Split out everything note related into its own package. Using the new
  type, we can expose an interface which sort of makes sense.

Change-Id: Ic9d67518354e61a3cc8388bb0e566fce661e90d0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5072
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2022-02-02 20:47:45 +00:00
William Carroll
d0e30ed23a feat(wpcarro/emacs): Define KBD to copy result of elisp evaluation
I've wanted this for awhile...

Change-Id: Ic010fee6a7adc0aa793e4ca2179b90f4463d1eec
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5197
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-02-02 20:19:22 +00:00
sterni
41faf1cf91 feat(users/sterni/emacs): setup org-clock
Change-Id: Ic3d1b8a38c5f552f7bd6b155e87e8b437ebe11b4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5190
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2022-02-02 18:21:34 +00:00
Griffin Smith
cd2262c874 style(grfn/home): Format i3.nix using nixpkgs-fmt
This wasn't caught when introduced due to b/173

Change-Id: Ifa2a05464c0fd40c16c2ac14ca28d64ca9076f9b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5183
Reviewed-by: grfn <grfn@gws.fyi>
Autosubmit: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2022-02-02 03:34:50 +00:00
Griffin Smith
a0ce1f6a9a chore(grfn/home): Rename deprecated options
Change-Id: Ic209f46858d9834298d151d7c6b884f6d6f23dbe
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5158
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
2022-02-01 16:57:36 +00:00