Commit graph

541 commits

Author SHA1 Message Date
Profpatsch
e219c13328 feat(Profpatsch): add netstring helper function & python lib
Simple helper function to generate a netstring that is a list of
key-value pairs, to serialize a nix dict. Also adds a python lib to
read the serialized form into a dict again.

Change-Id: I306c0cfd51640c0658d32c8d3a4f3d332ba448f0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2315
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
2021-01-03 16:12:33 +00:00
Profpatsch
baab2ce359 fix(Profpatsch/writers): ignore the most annoying flake errors
Change-Id: I3b8f51ff0dcdd842811e2fd9876cd4925c64f135
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2314
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
2021-01-03 16:12:33 +00:00
Profpatsch
b046c77493 feat(Profpatsch/writers): add yants types to python3 writer
Uses the new restrict type to make sure flake errors start with an E.

Change-Id: I30369ade28e1ef612c91a368de2d5b128e6cf2a9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2313
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
2021-01-03 16:12:33 +00:00
Profpatsch
6b21b108ba feat(users/Profpatsch): add writers.python3
This is a reexport of nixpkgs.writers.writePython3, but the libraries
are passed the package set, like with other writers.

Change-Id: Ia5a2ed1b6b329700836a8575d2bde768bf64fb31
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2311
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
2021-01-03 16:12:33 +00:00
Profpatsch
533e365c12 feat(users/Profpatsch): add python3Lib writer
Smol writer to create a python lib directly from a nix string.
The resulting library can be consumed by the writePython3 writer.

Change-Id: Id3d793564d230b38a08f65140bda4287285e1a72
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2310
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2021-01-03 16:12:33 +00:00
Profpatsch
361aa2aac2 feat(emacs-tree-sitter-move): shell and json test files
Change-Id: Idadb58a935abdbfa99327ba79de8b33d38b8c722
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2264
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
2021-01-01 22:40:38 +00:00
Profpatsch
5a6f781c3e fix(emacs-tree-sitter-move): get named parents & check for nils
If there was no parent, the while loop would try to get the parent of
a `nil`, which crashes and burns.

We now also ignore any non-named parents; this might be unnecessary,
if tree-sitter parent nodes are always named, but I don’t know that at
the moment and it’s not documented very well, so better safe than
sorry.

Change-Id: Ia72ee9241b885ab312f8ecf7a8fbfece7eea8f1b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2263
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
2021-01-01 22:40:38 +00:00
Profpatsch
fdb47be7d7 feat(emacs-tree-sitter-move): load more than one tree sitter grammar
Change-Id: I43b8ddb180c056f1b8c650ccc915ec41bae83960
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2262
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
2021-01-01 22:40:38 +00:00
Profpatsch
3279786cd2 feat(emacs-tree-sitter-move): add a simple down movement as well
Always goes to the first child for now.

Change-Id: I1d00b2f2013ba7e5f88622d1de3c99500e5f1a7a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2261
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
2021-01-01 22:40:38 +00:00
Profpatsch
e07e88d81d feat(emacs-tree-sitter-move): left and up movements, skip unnamed
We skip intermediate nodes that do not have any siblings, because they
are irrelevant to navigation and just add extra keypresses without any
highlight changes. This might not be the best choice, we’ll see.

Change-Id: I75fbf79aa7915172e426442a076d57cfbebf5421
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2260
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
2021-01-01 22:40:38 +00:00
Profpatsch
9da760fba4 feat(emacs-tree-sitter-move): Add tree-sitter-move-reset
Resets the cursor to the named node under the cursor.
`-right` does not do it anymore, so it’s possible to navigate on
higher levels of the tree instead of always resetting to a leaf.

Change-Id: Id330854c72ea24da0cc8611f30f5617e0f127c1b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2259
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
2021-01-01 22:39:28 +00:00
Profpatsch
806c281b34 feat(users/Profpatsch): moving around via the tree-sitter parse tree
Has a little setup to get the cursor position and map it onto a tree
sitter node. The current node is saved in a cursor variable, and a
highlight overlay marks the range of the current node in the buffer.

Change-Id: I0af56115f928732e993fbefe978a246ca7c757ee
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2258
Reviewed-by: lukegb <lukegb@tvl.fyi>
Reviewed-by: tazjin <mail@tazj.in>
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
2021-01-01 19:03:30 +00:00
Vincent Ambo
1686355d2e refactor(tazjin/rlox): Hold shared environment ptr in interpreter
Change-Id: Ia4c4ef330be431a344d42bc00d3a518825fb9399
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2305
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-12-31 19:10:39 +00:00
Vincent Ambo
b55caf0338 feat(tazjin/rlox): Implement block scope in interpreter
This is currently a bit hacky because of the environment
wrapping/unwrapping, will refactor this to just keep a single Rc
around instead.

Change-Id: Iad1cbbe35112d0329248d4655a09260fc60644c8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2304
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-12-31 19:10:39 +00:00
Vincent Ambo
8915cd6fba feat(tazjin/rlox): Implement block parsing
Change-Id: I1b7235ed71fa36120984a36f22cd564f59581352
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2303
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-31 15:33:08 +00:00
Vincent Ambo
3c979acdf3 refactor(tazjin/rlox): Unify parser::Statement & parser::Declaration
Change-Id: I6f21b246eb9d3bf760edb3220ce6be5de5b05b08
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2302
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-31 15:33:08 +00:00
Vincent Ambo
26ed836e1d feat(tazjin/rlox): Add support for scoped environments
Adds scoped environments using a sophisticated structure known as an
SRPT, which stands for "shitty parent pointer tree".

Change-Id: I62f66aabe6eb32ea01c4cabcca5b03cfefcc28ee
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2301
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-31 15:33:08 +00:00
Vincent Ambo
48a54625ce refactor(tazjin/rlox): Separate assignment and definition
So that:

> var a = 15;
> b = 12;
Error in program: Error { line: 0, kind: UndefinedVariable("b") }
> a = 12; print a;
Number(12.0)

Change-Id: I687e95ccc2d3084e39a71bd452656ae981c95191
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2300
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-31 14:32:03 +00:00
Vincent Ambo
cc958e6730 feat(tazjin/rlox): Implement mutable variable assignment
Change-Id: I56db10a5ac26958ae27a8d4c8fa7b8f8285bc7e1
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2299
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-31 14:32:03 +00:00
Vincent Ambo
8ab66f1689 refactor(tazjin/rlox): Retain interpreter state in REPL
Change-Id: Id60760e241ad0e45871b48e499f58e9831d57316
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2298
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-12-31 11:19:42 +00:00
Vincent Ambo
78355d3c0b feat(tazjin/rlox): Add global variable support in interpreter
Change-Id: I4134cf78dc3934a517ad0c848ae1d3729abaf882
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2297
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-12-31 11:19:42 +00:00
Vincent Ambo
0f9a7b3f86 feat(tazjin/rlox): Parse variable assignment & access
Change-Id: I9894d76716d739e85a4757d9e658f884228e7f52
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2290
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-22 20:18:01 +00:00
Vincent Ambo
5010b79718 fix(tazjin/emacs): Don't override CARGO_INCREMENTAL
Change-Id: Ib25c45795cb8aea87fc7e22343af6710a6339d32
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2289
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-22 10:13:28 +00:00
Vincent Ambo
a104afa6ea refactor(tazjin/rlox): Introduce declarations in parser
Change-Id: I873fdd53319ec36da18926d9477e809a69dbace7
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2288
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-22 10:13:28 +00:00
Vincent Ambo
75ae25daa9 feat(tazjin/rlox): Add support for statements
First part of
https://craftinginterpreters.com/statements-and-state.html

Supports print statements, as well as evaluation for the sake of
it (i.e. future side-effects).

Change-Id: Ic6653b568f98d6cfe3f297615b7113c0ba1d9a70
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2287
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-22 10:13:28 +00:00
Vincent Ambo
5d2d80795d fix(tazjin/emacs): Bind notmuch shortcuts via EXWM
Change-Id: I082ee9f75f9e0ef486bc240b4aeda3dec8e79019
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2284
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-20 16:30:54 +00:00
Vincent Ambo
8ad3e84e40 chore(tazjin/emacs): Remove #'fefes-blog
It's not worth reading anymore, he's getting old.

Change-Id: Ia9bac99169949c3f057c0e9c526cbc99e925af76
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2283
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-20 16:25:54 +00:00
Vincent Ambo
5ebe28cca2 feat(tazjin/rlox): Add runtime type error handling
Change-Id: I0d52bc9ff5be6421cb4131265ed28ce1ea7d8ff3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2282
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-20 16:25:54 +00:00
Vincent Ambo
bc6775c318 feat(tazjin/rlox): Implement tree-walk interpreter of exprs
This is only a subset of the Lox spec so far. It implements the
language up to the runtime error chapter on
https://craftinginterpreters.com/evaluating-expressions.html

Change-Id: I295dbf4b6544420d6fe80b6aaba661fb21acdea6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2281
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-20 16:25:54 +00:00
Griffin Smith
fea146deb5 fix(gs/yeren): Increase fd soft limit to 65535
I'm building a database! I have to open all the files!

Change-Id: Ie77ad6fafe837c0ddba6b5d56cdc06d787807d4e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2257
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-12-15 23:59:22 +00:00
Vincent Ambo
a9014203b6 chore(3p/lieer): Upgrade to lieer 1.3
* rebases the send scope patch
* removes the API key override patch, lieer now has a configuration
  option for this

Change-Id: I198e8b61855f6cdb2b1439a1c8f2d9d69261c1b5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2242
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-12-14 19:41:30 +00:00
Griffin Smith
6197e4bc81 fix(gs/system): Prefer cache.nixos over whitby
cache.nixos.org is way faster

Change-Id: If6f9a448b5a5ad7dab6d01e19c447e113a8d933a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2256
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-12-14 18:18:19 +00:00
Griffin Smith
e9e7ecfd59 feat(gs/emacs): Bring back org-clubhouse
Change-Id: Id89bd99740b7761c092a923912b07917b56f4d55
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2255
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-12-14 18:18:19 +00:00
Griffin Smith
a2c03cc78b feat(gs/yeren): Re-enable rc6 and psr
These didn't appear to be the source of the flickering after all.

Change-Id: Id3cce3e7905d0af21dc6ec4dc3a11828451378fe
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2254
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-12-14 18:18:19 +00:00
Griffin Smith
d6f11af7eb feat(gs/emacs): Update for latest doom changes
Change-Id: I771ada41a64961da9969d0ce805943698d2c9a31
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2253
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-12-14 18:18:19 +00:00
Griffin Smith
4e263520d6 feat(gs/yeren): Install a bunch of packages
Change-Id: Ie70a91f0efa2560a3ad088648f72e8a30451cbfe
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2252
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-12-14 18:18:19 +00:00
Griffin Smith
436855d9b8 refactor(gs/system): Use tokei instead of loc
Change-Id: Id14865dd329df476fb209f586200928beea3e6e0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2251
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-12-14 18:18:19 +00:00
Griffin Smith
c038ce07ee feat(gs/system): Setup sccache for rust
Change-Id: Id102a25013d6a99f3db4f082a9feee87eadcd523
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2250
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-12-14 18:18:19 +00:00
Griffin Smith
4256c2aea9 fix(gs/yeren): Split audio interface sources
Split the 6 channels of input I have from my audio interface into 2
separate channels for inputs 1 and 2, so that I can have only the one
microphone feed into video chat apps.

The way this is done right now is less than ideal as it doesn't support
any sort of hotplugging - at some point, I should figure out the
appropriate udev invocations to make that work.

Change-Id: I53dc363173fa8db591b0e9cb08258d90835c1109
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2249
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-12-14 18:18:19 +00:00
Griffin Smith
2123c1f570 feat(gs/emacs): Move all rust-specific stuff to rust.el
Change-Id: I50fa50745dfc60c6487108f50d57f1fde97ad920
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2248
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-12-14 18:18:19 +00:00
Griffin Smith
ddf58ee319 fix(gs/emacs): general.el bindings take an arg now
Change-Id: Ie9e808a4447e5de1cfe4cb53ca047bbafe544512
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2247
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-12-14 18:18:19 +00:00
Griffin Smith
02585bb198 feat(gs/emacs): Use rg over git grep
Change-Id: I8704a333918b0f907563ec91d500c5a9638c502a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2246
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-12-14 18:18:19 +00:00
Griffin Smith
bc5392e909 feat(gs/system): Bring back scratch buffer bindings
More bindings that existed in the default i3 config but I had never
explicitly specified.

Change-Id: I57de0d3221afac299da9a09224564571037f67fa
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2245
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-12-14 18:18:19 +00:00
Griffin Smith
bcea9cd0b3 feat(gs/system): Init roswell
An ec2 node I'm using as a remote dev box

Change-Id: I7d81371ecdc11d6c1b5bc06d1b4f55de534d25ad
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2244
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-12-14 18:18:19 +00:00
Griffin Smith
3f9bd60d85 feat(gs/emacs): Setup rust
Change-Id: I98e2badbaec523e509a2d311a13d8d2d81f4cda8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2222
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-12-14 18:18:19 +00:00
Griffin Smith
23f1bac044 fix(gs/emacs): Undefine SPC / earlier
Change-Id: I405403a39f31041e9c50cdbea7ec55efeff8722c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2221
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-12-14 18:18:19 +00:00
Griffin Smith
43355f1f92 feat(gs/system): Add some rust aliases
These take precedence over cabal old-style aliases, since those aren't
used anymore

Change-Id: Iad1593bffb35d8f7b9c7df16c7c2da09a6ebb906
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2220
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-12-14 18:18:19 +00:00
Griffin Smith
cdedcc6238 feat(gs/system): Setup fingerprint scanner
This is kinda nifty

Change-Id: I1b9a6762a5349974f539d2c4938a2b3dcdf488ad
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2219
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-12-14 18:18:19 +00:00
Vincent Ambo
ea936e0a78 feat(tazjin/aoc2020): Add solution for day 8, part 2
Change-Id: I03f46faf9b5b1b578b1131ecd08746f1adc3e87f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2243
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-10 13:20:57 +00:00
Vincent Ambo
2485006197 refactor(tazjin/emacs): Always use completing-read instead of ivy
This is a step towards making the completing-read framework more
easily interchangeable (I'm eyeing selectrum).

Change-Id: I7a066e212a5384136defbba8f11ef9ed57abf22e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2240
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-09 14:09:23 +00:00
Vincent Ambo
93f0ab5af8 feat(tazjin/aoc2020): Add solution for day 8, part 1
I'm too tired for part 2.

Change-Id: Ic7058344806466276e3792e9ff9bbf660a18f672
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2239
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-08 23:13:55 +00:00
Vincent Ambo
3061b3228f feat(tazjin/aoc2020): Add (somewhat delayed...) solution for day 7
Solve time is like 36 hours, that must be a record!

Change-Id: I3713f033d83e6179a5d5fa7513952ee3864a6164
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2238
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-08 22:33:07 +00:00
Vincent Ambo
42405bfa24 feat(tazjin/rlox): Synchronise parser state after errors
This lets the parser collect multiple errors instead of returning
after the first one, with some optimistic synchronisation after
encountering something that looks wonky.

Change-Id: Ie9d0ce8de9dcc7a3d1e7aa2abe15f74cab0ab96b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2236
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-06 17:34:57 +00:00
Vincent Ambo
1835b2be99 feat(tazjin/rlox): Wire up parser to the REPL
Change-Id: I940448c63ce105d53a0f281b6320ffb01378f207
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2235
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-06 14:58:39 +00:00
Vincent Ambo
4812fc2ee6 feat(tazjin/rlox): Implement parsing of parenthesised expressions
Change-Id: I0e6bd71fd787b719104ef93fc52df4090dc415b9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2234
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-06 14:30:59 +00:00
Vincent Ambo
28002fcea5 refactor(tazjin/rlox): Add error plumbing in parser functions
Change-Id: I7ae3d721f76d8d69043f5ed077abbc70a18cbd92
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2233
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-06 14:30:59 +00:00
Vincent Ambo
5fcff11eae feat(tazjin/rlox): Implement parsing up to unary expressions
... with the exception of parenthesised expressions, because error
threading is not implemented yet.

Change-Id: I8d455d85e647548d5b71cbfd3d078f4970dab7fb
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2232
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-06 14:30:59 +00:00
Vincent Ambo
a8371b01df refactor(tazjin/aoc2020): Build all solutions in CI
This changes the structure of the output, too, where all AoC solutions
now end up in a big folder with `bin/day$n` executables.

Change-Id: I77928f4129489d06779b50059835925652688c9c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2231
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-06 13:02:31 +00:00
Vincent Ambo
54f143b8f7 feat(tazjin/aoc2020): Add solution for day 6
Change-Id: I107cc23bb77c618067af6cc47ced3c87464f4cba
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2230
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-06 11:59:22 +00:00
Vincent Ambo
7067f3a797 feat(tazjin): Check in higher-quality version of avatar
... found this in the same place as hanebuschtag.txt

Change-Id: Iff5f4867b6c1d7685edae8a190489f3efb4890bc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2229
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-06 00:48:52 +00:00
Vincent Ambo
efd48011fc feat(tazjin): Check in hanebuschtag.txt
This old, legendary file should never be lost.

Change-Id: I2ae1607da24d684199c4136a880f56528d45a6e8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2228
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-06 00:48:52 +00:00
Vincent Ambo
6d411c53ee feat(tazjin/aoc2020): Add solution for day 5
Change-Id: I771335f351be3418dbb589c429411748564f07f5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2227
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-05 13:32:17 +00:00
Vincent Ambo
d4f6b67644 feat(tazjin/aoc2020): Add solution for day 4
Change-Id: I0b3c6a251bb0997b77bdd83593c65efcf471625c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2226
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-04 11:37:52 +00:00
Vincent Ambo
a9980bb631 feat(tazjin/aoc2020): Add solution for day 3
Change-Id: I84147731e1508032510a52cda28be74bbbb17c61
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2225
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-04 11:37:52 +00:00
Vincent Ambo
ea683b1ce8 feat(tazjin/aoc2020): Add solution for day 2
Change-Id: Id149ff13d1e903a578cdcdc3a8d0045cfefaecfa
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2224
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-02 10:05:28 +00:00
Kane York
50b32531ee feat(u/riking/aoc/day01): add day01 solution
Tests with the puzzle's sample inputs are included.

Change-Id: I32cd59b9e3894bde3d67ebdc3a977961b17bdb49
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2223
Reviewed-by: kanepyork <rikingcoding@gmail.com>
Tested-by: BuildkiteCI
2020-12-02 07:20:07 +00:00
Griffin Smith
8ae4854de8 fix(gs/system): Explicitly add all default i3 keybindings
Something I changed - perhaps removing lib.mkOptionDefault - caused
the *default* i3 keybindings (things like switching workspaces and
toggling the split layout which I had not added myself) not to get
added. This adds them back.

Change-Id: I301a346eabb4f7fc4499b60a4c26956fb1e08b0d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2218
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-12-01 17:17:13 +00:00
Griffin Smith
902bf5bdd9 feat(gs/yeren): Swap caps+escape on built-in keyboard
This actually appears to be working this time!

Change-Id: I3e10eb7e1621a050e024b8b53313f13d44a999ae
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2217
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-12-01 17:17:13 +00:00
Griffin Smith
6ecd36f425 fix(gs/yeren): Attempt to work around some of the text flickering issues
This is a whole pile of things suggested by the internet to fix the
weird text flickering issues I've been seeing. upon first look it seems
like one of the kernel params (or all of them, or some combination of
them) fixed the issue.

Change-Id: Idc98902b46d4cba3bab367f6e22fb9ad10b26a26
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2216
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-12-01 17:17:13 +00:00
Griffin Smith
0e4d60cb9a feat(gs/system): Add me to the docker group
Running docker is silly if I can't access it

Change-Id: I476915dacd44fac1ce4c533a84849fa6175d8107
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2215
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-12-01 17:17:13 +00:00
Griffin Smith
0c24c62281 feat(gs/system): Update xrandr layout for yeren
At some point I should just convert this into an option that gets set
per-machine...but whatever.

Change-Id: I745fc5126469e887f8657e990d14a7e8b5085330
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2214
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-12-01 17:17:13 +00:00
Vincent Ambo
6aa6151146 feat(tazjin/aoc2020): Add solution for day 1
Change-Id: I9c5e7f69cac1940ddeb7932d4450e2bd3764e1f5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2213
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-12-01 12:55:59 +00:00
Vincent Ambo
87f1e15baa chore(writeElispBin): Move from //overrides to //nix
... some legacy cleanup ...

Change-Id: I9e73451256f842e75ddbf1382badaf06c775c755
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2212
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-12-01 12:55:59 +00:00
Vincent Ambo
6c08bcc84d chore(tazjin/aoc2019): Move out of //fun
Change-Id: I9d065b672f4245b81444737dd900c8864447bc4d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2211
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-12-01 12:55:59 +00:00
Luke Granger-Brown
7d7c15c9a6 chore(lukegb): add keys.clouvider-lon01-nix
Change-Id: Iad46d9e2df5b508229367e0420dc155c9bec37b0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2210
Reviewed-by: lukegb <lukegb@tvl.fyi>
Tested-by: BuildkiteCI
2020-11-30 23:18:39 +00:00
Vincent Ambo
9cb98713d3 fix(tazjin/emacs): Don't use use-package for dottime.el
It doesn't work.

Change-Id: I06e95a43ca09f12c5763760e616b1b90c84dd265
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2209
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-11-30 16:46:51 +00:00
Vincent Ambo
349583d5a9 feat(tazjin/rlox): Bootstrap recursive-descent parser for Lox
... mostly some AST boilerplate and a first top-level rule, plus
boilerplate similar to that set up in the Scanner.

Change-Id: I605d1de23c47a3b3702ab4f62cd3371bc3988c7d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2194
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-11-30 16:42:17 +00:00
Griffin Smith
754edb4616 fix(gs/home): Run lorri on all linux systems
Accidentally removed this everywhere when I disabled it for Darwin

Change-Id: Ia3480f1fbc6431a27da8c1de03bf0a66808f46b9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2208
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-11-30 00:04:05 +00:00
Griffin Smith
1caac9b637 feat(gs/home): Add rust development tools
rustup and rust-analyzer for now, but this will likely also have shell
aliases and the like

Change-Id: I7838e537a72600410205e018a0c86be1493a9ffe
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2207
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-11-30 00:04:05 +00:00
Griffin Smith
a8a9e88d68 feat(gs/system): Write mugwump symlink to /tmp
To avoid it clogging up git status in the depot

Change-Id: I102126dedb427d632679ee091aced6971495b8cc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2206
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-11-30 00:04:05 +00:00
Griffin Smith
d4fb573cf7 feat(gs/system): Init yeren
My new work laptop, a dell XPS 13.

Change-Id: Ieab06622c9b280182025edfa63adf649e5fc70d8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2205
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
Reviewed-by: lukegb <lukegb@tvl.fyi>
2020-11-30 00:03:50 +00:00
Griffin Smith
904cd3e6c0 fix(gs/emacs) unmap global SPC / key
I want to use this as a prefix key instead

Change-Id: Idc865eb2edd1cbeff0b8a849232d98272c21ca8d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2204
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-11-29 22:45:03 +00:00
Kane York
844c84a38a chore(3p): upgrade llvm to version 11
Additionally, anchor clang-tools to match the current llvmPackages version.

Change-Id: I27a199cadb55907c3e2deabfd1d14a5b50fc541b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2166
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
Reviewed-by: glittershark <grfn@gws.fyi>
2020-11-29 03:02:14 +00:00
Vincent Ambo
36cf7bef24 refactor(tazjin/rlox): Thread through scanner errors
... and show them to users, very crudely.

Change-Id: If4491b14db1124313f6ab7e5fbfdce9fea501d11
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2193
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-11-28 17:26:58 +00:00
Vincent Ambo
af793325c0 feat(tazjin/rlox): Scan identifiers and keywords
Change-Id: Ifec627605c23c25f199d47eaa91e441ed9590208
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2192
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-11-28 16:55:25 +00:00
Vincent Ambo
97505eb1e1 feat(tazjin/rlox): Implement number scanning
Change-Id: Ide0126d1c2274d56903092816ff9cd531c03f513
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2191
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-11-28 16:55:25 +00:00
Vincent Ambo
47aa92b87d feat(tazjin/rlox): Implement string scanning
Note that Lox does not support escapes, and I don't care about that.

Change-Id: Ie848cbc1164c4b005b15e29aad8fe723aaa68d1b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2190
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-11-28 16:33:32 +00:00
Vincent Ambo
800d2ccde8 fix(tazjin/rlox): Clear previous line in REPL mode
Change-Id: I8acc5b0d07b2c656f9bba76a6ddac6b9088ea563
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2189
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-11-28 16:33:32 +00:00
Vincent Ambo
4277d3e6b4 feat(tazjin/rlox): Handle whitespace in scanner
Change-Id: Iead3efa6aa797af5c5b57c67226205bf7e39e647
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2188
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-11-28 16:33:32 +00:00
Vincent Ambo
9f61579dde feat(tazjin/rlox): Scan single-line comments
Change-Id: I2efafdb1374ac2863a1f8d8a9310123a7dec0900
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2187
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-11-28 16:33:32 +00:00
multi
83e586a6f2 fix(users/multi/home): fix tmux keybindings for tmux 3.1
The "swap-window" command swaps two windows, the 'source' and
'destination' window, exchanging the indices they occupy in the window
list. In at least tmux 2.8 (which is what's in Debian Stable), if the
window under focus is the source window, then focus follows that window
(i.e. the focus changes to the current window's new index atomically
with it being moved to that index).

In more recent tmux versions, this is not the case, and the focus
remains on the old index, so that the replacement window comes under
focus. The former behaviour is still possible, but must be explicitly
requested.

Change-Id: Ieff606dfc2624b869d3bb6e1344dd4d0c6301857
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2169
Reviewed-by: multi <depot@in-addr.xyz>
Tested-by: BuildkiteCI
2020-11-27 19:23:31 +00:00
Vincent Ambo
46c6906aaa chore(tazjin/rlox): Wire scanner to interpreter to reduce warnings
... they're just noisy at the moment. This isn't complete because it
doesn't thread through scanner errors.

Change-Id: I0f75d2b20fa3f57be1af5d1d8aa8059856855825
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2162
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-11-27 17:29:04 +00:00
Vincent Ambo
3f6b88bce2 feat(tazjin/rlox): Implement multi-character scanning
Change-Id: Ic5a246a7f5834477aeb97824fa30ba74a8422bc1
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2161
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-11-27 17:29:04 +00:00
Vincent Ambo
6363efbebf refactor(tazjin/rlox): Use &[char] instead of &str in scanner
This makes it easier to work with the Unicode issue. The original
string representation can be discarded.

Change-Id: I740be4cb9654679ea7950f3899c5c709b1e7a739
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2160
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-11-27 17:29:04 +00:00
Vincent Ambo
de44fdf92a feat(tazjin/covid): Add jq script for wrangling CDC data
Change-Id: Ia23f528d28126d6a2d0dd2d7327ec686c7e90df4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2158
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-11-27 02:24:42 +00:00
Kane York
f2f3c4228d feat(users/riking/fish): add nix-env to shell
Change-Id: Ic889506b8d4506093b4080d67e93cf9877916850
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2153
Reviewed-by: kanepyork <rikingcoding@gmail.com>
Tested-by: BuildkiteCI
2020-11-26 23:43:17 +00:00
Griffin Smith
3328c23f35 feat(gs/system): Enable docker on dev machines
This was locked away in the urbint-specific module, but I use it
elsewhere.

Change-Id: Ifced2196dc22a9dbed74a18d4e1fed9488eb0e26
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2152
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-11-26 19:28:47 +00:00
Griffin Smith
c7cb806ad9 fix(gs/system): lorri as a home-manager svc doesn't work on Darwin
Change-Id: Ieaf14d955157c759f12d70ddfd518789281dab1a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2150
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-11-26 01:49:47 +00:00
Griffin Smith
8eb7c6a515 chore(glittershark): Remove everything Urbint related
bye urbint!

Change-Id: I87ded275e6e5298e4e29c38775bae47a8fc07bac
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2149
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-11-26 01:49:25 +00:00
Griffin Smith
29ea6b9408 feat(glittershark): Get everything working on Darwin
Update everything in home-manager to properly work on darwin (including
adding dobharchu as a top-level attribute from
//users/glittershark/home) and also fix font faces and sizes in emacs
config

Change-Id: Ica889dd212876030d5c2a916a71d8b614e6964f1
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2147
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-11-25 15:06:26 +00:00
multi
c56f402383 feat(users/multi/home): add readline configuration and nix-shell handling to bashrc.
This adds my standard inputrc to my home-manager configuration, via the
latter's readline module, and adds nix-shell detection to my bash prompt
string.

Additionally, nix-shell is wrapped in a shell function, so that entering
a nix-shell environment automatically runs bash as a subprocess where
appropriate, as the default environment spawned by nix-shell is not to
my liking.

Change-Id: Id5b1b9415a185ad9920f268c66de32d6ccc0b452
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2146
Reviewed-by: multi <depot@in-addr.xyz>
Tested-by: BuildkiteCI
2020-11-23 18:41:29 +00:00
Griffin Smith
f49c86139f fix(gs/home): Don't override alacritty version
This was only done to get an upgraded version, which is no longer
necessary with the nixpkgs bump but was also causing incompatibilities
with opengl

Change-Id: Ic398b4ac6caf24a1d40b7a4917b5053fba12d97a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2145
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-11-23 16:12:09 +00:00
Vincent Ambo
3d1b116f7f feat(tazjin/rlox): Implement single-character scanning
... still not that interesting, but at this point slightly divergent
from the book:

The book embraces mutability for interpreter state, initially for
tracking whether an error condition has occured.

I avoid this by instead defining an error type and collecting the
error values, to be handled later on.

Notes: So far nothing special, but this is just the beginning of the
book. I like the style it is written in and it has pointed to some
interesting resources, such as a 1965 paper titled "The Next 700
Languages".

Change-Id: I030b38438fec9eb55372bf547af225138908230a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2144
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-11-23 01:15:57 +00:00
Vincent Ambo
9d2b001c4c feat(tazjin/rlox): Add basic program structure
... as well as a Nix derivation, because why not.

Change-Id: Iaf2591ab72676fe0732c3f807b3aa0cff13fb4ef
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2143
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-11-23 01:15:57 +00:00
Vincent Ambo
0618ff11cc feat(tazjin/rlox): Bootstrap program
This is going to be the first of two interpreters from "Crafting
Interpreters".

Change-Id: I354ddd2357444648d0245f35d92176dd176525d8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2142
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-11-23 01:15:57 +00:00
Vincent Ambo
312d76acba feat(tazjin/emacs): Enable midnight.el
Change-Id: I22bedd80c6e99ccefefa7840ec37496360937842
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2137
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-11-22 23:26:57 +00:00
Griffin Smith
64ef09c475 feat(whitby): Move wigglydonke.rs to whitby
Mugwump is too unstable for such an important internet service

Change-Id: Ic714200ce5ce51f366777f538b4a6f443f010960
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2124
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-11-22 22:55:49 +00:00
multi
96eac23250 fix(users/multi/home): re-add overridden htop package to home-manager configuration.
I previously removed my local package set from my HM config while the
latter was being made readTree compatible. Now that both the HM config
and the local package set can be built with readTree, I can re-enable
the locally-overridden htop package.

Change-Id: I77e20248c010bc7027e0b0a3164ec48d6ec29f31
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2132
Tested-by: BuildkiteCI
Reviewed-by: multi <depot@in-addr.xyz>
2020-11-22 20:29:47 +00:00
multi
a5ee01a827 refactor(user/multi/pkgs): make my local package set readTree-compatible.
This adds readTree configuration for accessing my local package set,
and also adds these packages to the CI configuration.

Change-Id: Icd2d16e85859343902e73a466f3c6ba8d781537f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2131
Tested-by: BuildkiteCI
Reviewed-by: multi <depot@in-addr.xyz>
2020-11-22 20:29:47 +00:00
multi
ba9fb4e112 fix(users/multi/home): use local depot checkout.
This reverts 1478317d149539d74fa4bad8414658fb7119ea07.

Using depot.depotPath in my home-manager configuration results in my
NIX_PATH and home-manager config file path being pointed at a copy of
the depot in the nix store, which makes building from my local depot
checkout a bit cumbersome.

Change-Id: Ib687d3e8147cb32df071d3c19a5300294ea62c0c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2130
Tested-by: BuildkiteCI
Reviewed-by: multi <depot@in-addr.xyz>
2020-11-22 20:29:47 +00:00
multi
7ff2142f19 refactor(users/multi): migrate whitby home-manager config to readTree-compatible version.
Add a new home-manager-compatible configuration file which loads the
common config attrset used by the readTree machinery into a structure
which the home-manager command line tool understands.

Garbage-collect the old home-manager configuration file used on whitby,
and update the HOME_MANAGER_CONFIG path to point at the new shim config.

Instead of having a per-environment HM configuration (not that I have
more than one environment), there's now a single configuration which
evaluates to an attrset of configurations, which can be loaded and built
using "home-manager build -A $attr".

Change-Id: Id8b35dc89aabffedf1a4dadfa0d3d4b914e4e2e7
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2129
Tested-by: BuildkiteCI
Reviewed-by: multi <depot@in-addr.xyz>
2020-11-22 20:29:47 +00:00
multi
69244064da refactor(users/multi): make my user directory CI-compatible.
My home-manager config is not currently readTree compatible, which means
that it's not built by CI. This constructs a house of cards around
home-manager to make this buildable in CI.

Change-Id: I80480f24ff47347f46d708edbbf34d59fa76adac
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2123
Tested-by: BuildkiteCI
Reviewed-by: multi <depot@in-addr.xyz>
2020-11-22 19:48:15 +00:00
multi
9d6d945f52 refactor(users/multi/whitby): use the depot's own source location attribute.
The depot knows where it is, not because it knows where it isn't, but
because it does an "import ./." at the top level and then makes this
path value available in the attrset passed to the rest of the tree.

My home-manager config on whitby previously involved manual
specification of the depot checkout location on whitby, however this
isn't necessary when the depot can already magically tell us where it
is.

Change-Id: I68577c8ef2cda6ba5bc46cf8f4821aac021c8066
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2122
Tested-by: BuildkiteCI
Reviewed-by: multi <depot@in-addr.xyz>
2020-11-22 19:48:15 +00:00
multi
7dcd518c35 fix(users/multi/whitby): fix home-manager configuration on whitby.
"let pkgs = import <nixpkgs> {}; in pkgs.home-manager.src" evaluates to
the source derivation for home-manager, however home-manager's configuration
machinery expects to be passed the store path of this derivation instead of the
derivation object itself.

Change-Id: I6b0ba3efaff9d080900349529576443192b058e9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2121
Reviewed-by: multi <depot@in-addr.xyz>
Tested-by: BuildkiteCI
2020-11-21 23:42:34 +00:00
Vincent Ambo
5a00e58904 chore(3p): Bump nixpkgs to nixos-unstable from 2020-11-21
Included fixes for random breakage:

* 3p/awscli: pick from the stable channel; it is broken on unstable
* 3p/googletest: bumped version & removed patches that nixpkgs applies
* 3p/lisp/cffi: bumped library version for SBCL compat
* 3p/nix: fix libsystemd attribute
* 3p/nix: reformatted (clang-format handling of ternaries changed)
* glittershark/home: Use home-manager from nixkpgs
* glittershark/kernel: bumped linux-ck patch hash
* glittershark/kernel: removed "patch patch"
* multi/whitby: Use home-manager from nixpkgs
* tazjin/frog: drop Sourcetrail (it doesn't build currently)

Note that in addition to these changes, some previous CLs updated the
versions of git and cgit which was necessary for this channel bump,
but which could not be done in the same commit due to the nature of
the subtree merges.

Change-Id: If2563e8a68e2750c4b913a976ff7b93b42e8b7f3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2110
Tested-by: BuildkiteCI
Reviewed-by: multi <depot@in-addr.xyz>
Reviewed-by: glittershark <grfn@gws.fyi>
2020-11-21 23:18:27 +00:00
Vincent Ambo
e908882610 fix(glittershark/kernel): Ensure kernel changes cachebust linux-ck
Previously changed kernel versions would not cachebust the patch
download, because it would still be using the same SHA hash.

Forcing a different store path (by adding the version to the name)
also forces a redownload of the patch (and in turn cause the hash to
mismatch), avoiding this as a silent cause of failures in channel
updates.

Change-Id: I81a136ee2401126795cf042b0aadf2a1e7a707b4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2114
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-11-21 23:18:27 +00:00
Vincent Ambo
cce0ad1bcd chore(tazjin/emacs): Minor cleanup of unused modes and config
Change-Id: I38c6a32339bf7606b733a938b4e55df2506a13a7
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2107
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-11-21 13:27:20 +00:00
multi
4331bc8da7 chore(users/multi): Update htop derivation for new upstream.
- htop has moved upstreams, which has been producing new releases, so
  update the derivation to pull from the new repository on GitHub.

- All of the patches I have locally have been merged upstream, so drop
  them from the depot.

- Pull from a reasonably recent git commit instead of from a numbered
  release, as the ZFS ARC stats and CPU meter columnation patches
  haven't made it into a release yet.

Change-Id: I66ad4c035df07709abf4f75a9d4e1486920091d0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2105
Reviewed-by: multi <depot@in-addr.xyz>
Tested-by: BuildkiteCI
2020-11-18 00:29:58 +00:00
Griffin Smith
b1f2c2f48e feat(glittershark): Add resume + deploy it to gws.fyi
Change-Id: If9cf64c97621313af86074752d0959506059888a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2079
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-11-16 16:10:43 +00:00
Griffin Smith
bdc5d0cfa0 feat(gs/emacs): Add some config for vterm
for some reason installing it directly via nix doesn't work atm, so I
have this hack here

Change-Id: I45093633c35e756988078eb136c6e7bc3c532eea
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2078
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-11-16 16:10:43 +00:00
Griffin Smith
b8c50979dd feat(gs/emacs): Disable truncate-lines in org mode
Change-Id: Ie1a539d894ae6223196f9e5b912317a00716ba72
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2067
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-11-04 15:29:34 +00:00
Vincent Ambo
ac5ba13dce fix(tazjin/emacs): Do not assume '.txt' files are Markdown
Change-Id: I5cab039938e415facf81492e7e3775672ee45db9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2068
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-11-04 11:34:06 +00:00
Griffin Smith
ed9909527c refactor(gs/system): Prefer dobharchu over cerberus
This machine is significantly faster. Also, drop nixbuild, since the
transfer speed is too slow to make it worth it.

Change-Id: Ic14ef96e03a81dc429e4b4fec961c891dbb4b2b9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2066
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-27 21:47:12 +00:00
Griffin Smith
98ed3c56db feat(gs/home): Add ssh host alias for cerberus
My old macbook, which I still use sometimes

Change-Id: I3ad080083b67b6cfab4cd31a4dce0a80a7227bd5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2065
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-27 20:55:24 +00:00
Griffin Smith
a14f44b4fd feat(gs/emacs): Add bindings for smerge-keep-{lower,upper}
Change-Id: I83a251b551e0d6c9ca6994b8f9111ffee33653fc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2064
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-27 20:55:24 +00:00
Griffin Smith
aa0b4e430c feat(gs/emacs): Include repo in PR links
When posting a link to a PR created during an org headline, include the
name of the repository the PR was opened to in the link text.

Change-Id: I6c564aee3b098d3c6f96c7d7d609aa2638bc98e1
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2063
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-27 20:55:24 +00:00
Griffin Smith
254ddc45f8 fix(gs/mugwump): Add missing scheme to grafana datasource
Change-Id: I954fcca422f2e1325c2455cb1c4d77d53673901f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2061
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-23 15:23:52 +00:00
Griffin Smith
92a371499b feat(gs/mugwump): Only run nix GC monthly
Change-Id: I3b81fe5a76c26e42fb6d2937ce980e12964d70b9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2060
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-23 15:23:52 +00:00
Griffin Smith
5e5a582134 refactor(gs/mugwump): Only one buildkite builder
There's just not enough juice in this machine to run more than one.

Change-Id: I6e6afc86337ca023e718023e4789fc29b6d8e175
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2059
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-23 15:23:52 +00:00
Griffin Smith
f9125971c2 feat(gs/system): Only enable remote builders on chupacabra
Don't enable whitby+nixbuild as remote builders on every machine (eg not
mugwump), only chupacabra

Change-Id: I8aa8f20d76da4ec0d8caa64ef04697b7e76cbc03
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2058
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-23 15:23:52 +00:00
Griffin Smith
f13e88ab07 feat(gs/home): Add script to rebuild mugwump
Eventually this should be generalized, but for now this is good enough +
nice to have

Change-Id: Icca815b651cfb6f8f0cd2d6a1f64e56c63d2fef5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2057
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-23 15:23:52 +00:00
Griffin Smith
af86d08ba8 feat(gs/emacs): Enable lua
Change-Id: Iff1eed338323a49de504a02f870e17eeedde57d3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2056
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-23 15:23:52 +00:00
Griffin Smith
df77855beb feat(gs/system): Setup for yubikey
Install some packages and enable the necessary services + udev stuff to
make yubikeys usable

Change-Id: I8aee8a8b06895880c8195f02fb57b1216a5fdffc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2049
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-13 03:35:02 +00:00
Griffin Smith
963088aff6 feat(gs/system): Install htop on all systems
In this case mostly so I can have it on mugwump

Change-Id: Ifa24caf607b30c1d034f4a9e7044ece88fcee38e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2048
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-13 03:35:02 +00:00
Griffin Smith
703407b2d4 feat(gs/chupacabra): Use mugwump as a binary cache
Since buildkite is running on there, it'll be nice to be able to
download things. Obviously if this laptop ever becomes a laptop again
this'll have to go away (or just become the external domain)

Change-Id: I5fc49c061dbf79f8d523244bcf822e8d96fa6d42
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2047
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-13 03:35:02 +00:00
Griffin Smith
3d610828a3 feat(gs/chupacabra): Include desktop module
I accidentally dropped this when reconfiguring things around to get
mugwump working, and when I rebuilt my x session turned off!

Change-Id: I252c90b6f4d796fef1f8183739fcc8dbfdd0fbf4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2046
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-13 03:35:02 +00:00
Griffin Smith
c83b7e7da3 fix(gs/mugwump): Make nginx scraper play well with SSL
Having SSL on all the vhosts in nginx breaks the prometheus scraper with
the default config, since because it's targeting a different domain the
cert validation fails. It's pointing at localhost, so it's fine to just
have it not validate.

Change-Id: I1cbddc73335d4fa060115c253d69e27059a3113f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2045
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-13 03:35:02 +00:00
Griffin Smith
8cb7118f7d feat(gs/mugwump): Add some buildkite agents
Add a couple of buildkite agents, based off of the config we're using
for whitby (thanks!) for building my own projects that are closed
source.

Change-Id: I2c73538595002fdf4116f534dc9a5806f17e0558
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2044
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-13 03:35:02 +00:00
Griffin Smith
199738955c feat(wigglydonke.rs): Make image the width of the page
The default size is a little bit large

Change-Id: I9f7096cdf9f9ba8433e6ead6124bdc04fc88877b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2043
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-13 03:35:02 +00:00
Griffin Smith
bb6e1b8c07 feat(wigglydonke.rs): Add image
The one I had downloaded before was empty, accidentally

Change-Id: I37c2ce8c556aa3f728ee675ccf14ace8416dcca4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2042
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-13 03:35:02 +00:00
Griffin Smith
28df5a585b feat(gs/mugwump): wigglydonke.rs
Kids Love Wiggly Donkers!

Change-Id: I1d37ecc88dd81d91e05fb597155bb91b93f1bccb
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2041
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-12 18:50:58 +00:00
Griffin Smith
db66e1d010 feat(gs/mugwump): Enable prometheus-fail2ban-exporter
Change-Id: I200f206b609675632ad6103c84cc37b629ef9708
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2025
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-12 18:50:58 +00:00
Griffin Smith
ca4d698cb0 feat(gs/mugwump): Add prometheus+grafana
Add config for prometheus+grafana to mugwump, served at metrics.gws.fyi
with an Acme SSL cert.

Change-Id: Icc22b5079a24edbc4469233e938f926d92f63eb3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2024
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-05 14:48:58 +00:00
Griffin Smith
bc8bac74d7 feat(gs/system): Install dnsutils
Change-Id: I577b42abe76c7be3434e7ca4f34bcf84a4a6e6bc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2023
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-05 14:48:58 +00:00
Griffin Smith
3a4b4568bb feat(gs/home): Install gh
Change-Id: I13d918565b9a46b3e5e11936e5b7787e9ecce719
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2022
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-05 14:48:58 +00:00
Griffin Smith
ccce934454 feat(gs/home): Alias ec=emacsclient
Change-Id: Ia6633731dbd26c842830f548f909a37a129a7477
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2021
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-05 14:48:58 +00:00
Griffin Smith
6a65d73731 feat(gs/home): Add ssh host alias for home
Change-Id: Ie3a6ce172eccba3040210c581313981cdd79e2eb
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2020
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-05 14:48:58 +00:00
Vincent Ambo
7a62272d20 feat(tazjin/camden): Install flatcam tooling
This was previously set up manually in a nix-shell.

Invocation works like this:

  screen fswebcam --title 'tazflat' --font 'JetBrains Mono' \
                  --timestamp "%Y-%m-%d %H·%M+01" -l 60 -r 1280x720 \
                  -d /dev/video0 --jpeg 95 /var/www/blobs/flat.jpg \
                  --exec 'cp /var/www/blobs/flat.jpg /var/www/blobs/flat/at_$(date +%s).jpg'

Change-Id: I5ecf8fdf67240faf885fd12f428e368e2bc64dc8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2018
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-10-04 16:06:25 +00:00
Vincent Ambo
2670f84f5f fix(tazjin/camden): Backport 19.09 ACME module
The new one is causing breakage for me, but I have no time to debug
this, so I'm backporting the old one.

AFAICT the simp_le included in this channel should be new enough to
have ACMEv2 compat, we'll see if it works.

Change-Id: Ib8b869a5af8a0418a66017a0cf3b9336df5f2d05
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2017
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
Reviewed-by: lukegb <lukegb@tvl.fyi>
2020-10-04 15:51:59 +00:00
Griffin Smith
3fc1143a04 feat(gs/system): Init mugwump
Init the config for mugwump, a NUC that I bought from ncl and which I'm
going to use as a simple home server and ssh bastion box. Since this is
the first time I've set up a server using my nixos config, this also
moves a bunch of desktop (xserver, audio, etc.) related config out of
modules/common.nix and into a new modules/desktop.nix.

Coming soon: nixos-rebuild switch --target, but in the depot!

Change-Id: I67bd5ba6e3c26f80f77058af186fd41cc245d5d2
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2016
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-09-30 03:49:15 +00:00