Commit graph

1140 commits

Author SHA1 Message Date
Griffin Smith
736ef8ce41 feat(grfn/bbbg): Display + allow editing attendee notes
Change-Id: I75353d64651a19beb44d3726d2645608bac0cde5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4505
Reviewed-by: grfn <grfn@gws.fyi>
Autosubmit: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-12-19 18:42:20 +00:00
Vincent Ambo
562236085b style: format all Go code
The code in //users/wpcarro/tools/monzo_ynab/ynab/client.go was not
valid Go and has been commented out.

Change-Id: Icb4003607f30294dcbf60132eb7722702c7f0d84
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4400
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Reviewed-by: Profpatsch <mail@profpatsch.de>
2021-12-19 18:05:04 +00:00
Griffin Smith
d7bf4f07c9 fix(grfn/emacs): Clean up init.el
Change-Id: I7b4d9f6b4f008ed432f3628c18e41243f9f4a260
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4503
Reviewed-by: grfn <grfn@gws.fyi>
Autosubmit: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-12-19 17:33:12 +00:00
Griffin Smith
1b0ec2a6d6 feat(grfn/bbbg): Add an attendee search form
Change-Id: I6f4d5102c1d3a36cb706a637196a2053739003bb
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4502
Reviewed-by: grfn <grfn@gws.fyi>
Autosubmit: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-12-19 17:33:12 +00:00
Griffin Smith
9af35bd683 feat(grfn/bbbg): Add an attendees list
Add a list of attendees visible only to authenticated users, with stats
about rsvps, events attended, and no-shows.

Change-Id: Ib9a0fe8acf8c616fb725c613494b37121a1ad0e4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4501
Reviewed-by: grfn <grfn@gws.fyi>
Autosubmit: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-12-19 17:24:11 +00:00
Griffin Smith
23397763a7 feat(grfn/bbbg): Require auth for a bunch of stuff
Only authenticated users should be allowed to create events, etc.

Change-Id: I1f560365dbf583cf6cecf4a0798952f323bbd42e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4412
Reviewed-by: grfn <grfn@gws.fyi>
Autosubmit: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-12-19 05:06:46 +00:00
Griffin Smith
732d1b733a feat(grfn/bbbg): Add a Sign Out button
Change-Id: Ia57a31101dc294dba54a4fde7af2b636288bd4cd
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4411
Reviewed-by: grfn <grfn@gws.fyi>
Autosubmit: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-12-19 05:06:46 +00:00
Griffin Smith
c6e0f64f45 fix(grfn/bbbg): Properly handle already-existing user
If a user already exists with the discord ID we just authenticated, just
return it rather than trying to create another user.

Change-Id: I582c4c8c55f6fb399295b3e691b0bc59e77151f4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4410
Reviewed-by: grfn <grfn@gws.fyi>
Autosubmit: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-12-19 05:06:46 +00:00
Griffin Smith
2bc7429641 feat(grfn/bbbg): Allow Organizers to sign in via Discord
Allow users with the Organizers role to sign in via a Discord Oauth2
handshake, creating a user in the users table and adding the ID of that
user to the session.

Change-Id: I39d9e17433e71b07314b9eabb787fb9214289772
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4409
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
Autosubmit: grfn <grfn@gws.fyi>
2021-12-19 04:43:43 +00:00
Vincent Ambo
1205b42ee0 fix(tazjin/emacs): add dwebp to Emacs' $PATH
Change-Id: I20723b7d98a24e3f06810f0a0ede8a05c80156a8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4405
Reviewed-by: tazjin <mail@tazj.in>
Autosubmit: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2021-12-18 20:32:56 +00:00
William Carroll
06a20ba3df fix(ops/diogenes): Ensure diogenes builds
diogenes "passed" CI because the file was named configuration.nix
(vestage from the NixOS default /etc/nixos/configuration). This CL fixes
some issues I encountered after running depot/bin/rebuild-system.

TL;DR:
- rename configuration.nix -> default.nix to trigger CI
- add diogenes to my systems
- add public SSH key

Change-Id: I24197b8936c201267db6f71f00099dce590eac1d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4388
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Reviewed-by: tazjin <mail@tazj.in>
Autosubmit: wpcarro <wpcarro@gmail.com>
2021-12-17 22:12:40 +00:00
Vincent Ambo
e25ef08c45 chore(tazjin/tverskoy): Increase / tmpfs size to 8G
Any less and building 'awscli' is not possible ...

Change-Id: I99105b767f4afa4cf0d072d57b08963bc12ff994
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4391
Reviewed-by: tazjin <mail@tazj.in>
Autosubmit: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2021-12-17 10:35:33 +00:00
William Carroll
47830f9d63 feat(wpcarro/marcus): Prefer light to xbacklight
TL;DR:
- Enable light (let there be light!)
- Refactor screen-brightness.el

TIL: `nixos-options programs.enable.light` outputs docs from the command-line
Change-Id: Ib60a9b3c9b7f6f96fda29fce1a97ca9995822048
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4385
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
2021-12-16 22:07:02 +00:00
William Carroll
9c9a88de87 feat(wpcarro/marcus): Add some TVL goodies
TL;DR:
- enable TVL cache (ty @grfn)
- enable automatic-gc (ty @tazjin)

Change-Id: I2c7def718f10d90c6921461c6135f18358e33198
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4362
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
2021-12-16 22:07:02 +00:00
William Carroll
9c4e34bde6 feat(wpcarro/diogenes): Add diogenes to the depot
Incoming!

Change-Id: I12f9202fea8eb834d40de43109871aef2085416e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4361
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
2021-12-16 22:07:02 +00:00
William Carroll
bfb43161e5 feat(wpcarro/nixos): Define keys.nix
This opens the door for a whole bunch of neat features.

Change-Id: I15066ca9d8fe38921ebc8c4e995bd282162a4577
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4359
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
2021-12-16 22:07:02 +00:00
William Carroll
f0c29e6c32 refactor(wpcarro/nixos): Rename installer -> iso
Right now this is just a sketch for a larger idea of writing a binary called
`create-installer` (see docs).

Change-Id: Ib8e2acfd5d350ccc344329d87983c415f166d02b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4358
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
2021-12-16 22:07:02 +00:00
William Carroll
305d813a2b feat(wpcarro/emacs): Install tvl Elisp
All I know is that this extends my magit configuration for Gerrit support.

Change-Id: I35c9a264ff25ce6e08b7033e0e022d4047021f05
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4357
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
2021-12-16 22:07:02 +00:00
William Carroll
14d5dcbe8f fix(wpcarro/emacs): Don't require evil-magit
It's part of `evil-collection` now :)

Change-Id: Id69db08e538d10e46dc63c979d232aeb1a639f32
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4356
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
2021-12-16 22:07:02 +00:00
William Carroll
dccfdef522 feat(wpcarro/emacs): Prefer doom-peacock theme
Tis the season for a dark theme

Change-Id: I3a0354a3eaa4294e51f14e5af52a12be01e89300
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4355
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
2021-12-16 22:07:02 +00:00
William Carroll
ec76f6264d feat(wpcarro/marcus): Install xsecurelock
TL;DR:
- Install `xsecurelock`
- Support screen-locking for personal (and corporate) devices

Change-Id: Ife2ead109c60b69b817775d8d6524c6aece5f376
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4354
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
2021-12-16 22:07:02 +00:00
William Carroll
854dcbc55e feat(wpcarro/marcus): Disable natural scrolling
Something about the end-result of this doesn't feel quite natural to me.

Change-Id: Idaa7a991893d386110bd75f9288b4c3831a59cae
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4353
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
2021-12-16 22:07:02 +00:00
William Carroll
53e070fa24 chore(wpcarro/marcus): Format hardware.nix
Make some of the auto-generated code look a bit more like human-generated code.

Change-Id: I07f543b66275dc8be9db6d8106ef6045541574d3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4352
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
2021-12-16 22:07:02 +00:00
William Carroll
1ca4c6d2be feat(wpcarro/marcus): Add marcus to the depot
me: marcus, meet depot. depot, meet marcus.
Change-Id: Ic6a25ac85e4c7f6dfea2a42b46a4400f92df70a2
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4351
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
2021-12-16 22:07:02 +00:00
zseri
3e18b034bb feat(ops/users): Add user zseri
Submitted via IRC, instead of the usual Google Groups
due to email issues.

Change-Id: I71a2bdfd10b02370df61bbba4dabc2f45b6c1009
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4384
Tested-by: BuildkiteCI
Autosubmit: sterni <sternenseemann@systemli.org>
Reviewed-by: tazjin <mail@tazj.in>
2021-12-16 19:13:02 +00:00
Griffin Smith
3bf3f95105 fix(grfn/emacs): More robust org-element title extraction
It *appears* that the main trigger for the :title of an org element
being a list instead of a string is if it contains rich text properties
as children, eg links, bold text, etc. This defines a function
that *attempts* to turn all of those into a single string, for use in my
i3status bar for the currently clocked-in task.

Change-Id: Ib655595914e54cd0e01f0fee6d1352c98a9f1436
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4364
Reviewed-by: grfn <grfn@gws.fyi>
Autosubmit: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-12-16 14:52:02 +00:00
Griffin Smith
d85c6a1b56 feat(ops/modules): Provide some modules to all nixoses
For modules that are gated behind a mkEnableOption, it's reasonable to
just provide them to all Depot-built nixos systems without requiring
people to explicitly import them. This defines a special module called
`default-imports.nix` which imports these modules (currently just
tvl-cache.nix and automatic-gc.nix, as I'm being rather conservative
adding things here to avoid breaking anyone's system), then provides
that module as one of the `modules` passed at the top-level
nixos/eval-config invocation.

Change-Id: I3be299ab10ae4c451ef11c514edb3c89318a2278
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4345
Tested-by: BuildkiteCI
Autosubmit: grfn <grfn@gws.fyi>
Reviewed-by: tazjin <mail@tazj.in>
2021-12-16 14:17:35 +00:00
sterni
01f4212ca1 feat(sterni/aoc/2021): day 15 solution
Change-Id: Idca2ae2829a7ee9e856aa7fcdc716c3055051062
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4363
Reviewed-by: sterni <sternenseemann@systemli.org>
Autosubmit: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
2021-12-16 12:43:46 +00:00
sterni
0357dd973b chore(sterni/aoc/2021): add shell for running solutions.bqn
Change-Id: I2e192dec9eb863a1b2386d40d26eeeeb57e1ed28
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4350
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2021-12-16 09:19:01 +00:00
sterni
b5678cbd5f feat(sterni/aoc/2021): day 14 solution
Change-Id: I8b6c0c5d1ced89eadaeea3fb619d37e77a439965
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4349
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2021-12-15 23:58:17 +00:00
sterni
3f8c99f5c3 refactor(sterni/aoc/2021): fold over 2d array instead of nested list
Seems to save some allocations and thus recover some performance
compared to the two separate folds we had before.

Change-Id: Ie3d283103e6a9b8aa702db633d9c988fda1b2903
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4348
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2021-12-15 23:58:17 +00:00
Griffin Smith
0f5cc25697 feat(ops/modules): Add shared module for TVL cache
Add a shared nixos module for configuring whitby as a binary nix cache,
and refactor tverskoy to use this module.

This is enabled via an option to pave the way for including it as an
import in all depot-generated nixos configs at some point in the future.

Change-Id: I6dcc0e8eb48b1ac34457666dceebeedd5da6c526
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4344
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: grfn <grfn@gws.fyi>
2021-12-15 23:36:22 +00:00
Griffin Smith
7ed62b5337 chore(grfn/system): Drop kernel.nix module, -ck patches
Per
http://ck-hack.blogspot.com/2021/08/514-and-future-of-muqss-and-ck-once.html,
linux-ck is no longer being maintained, so there's no point in keeping
this around anymore.

Change-Id: I514505c21e272080653ff81725dcfcadb2eab2b7
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4343
Reviewed-by: grfn <grfn@gws.fyi>
Autosubmit: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-12-15 22:43:20 +00:00
sterni
6b285f008d chore(3p): bump NixOS channels to 2021-12-15
* Switch from (unused) NixOS 21.05 to newly released NixOS 21.11
  channel.

* grfn/machines/yeren: Linux 5.14.x -> 5.15.x

* 3p/gerrit, 3p/gerrit_plugin/oauth: update dependency bundle output
  hashes to what whitby comes up with now.

Change-Id: Id3bfe3d07b9223f77ec628954783a6b0a48f4086
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4310
Tested-by: BuildkiteCI
Autosubmit: sterni <sternenseemann@systemli.org>
Reviewed-by: grfn <grfn@gws.fyi>
Reviewed-by: tazjin <mail@tazj.in>
2021-12-15 17:43:52 +00:00
Vincent Ambo
d292f899f9 fix(users/wpcarro): Delete and/or fix broken targets
(we're doing this over GVC)

Co-Authored-By: William Carroll <wpcarro@gmail.com>
Change-Id: I7a65ee8b99c30366f73b4e5f0e22d9c2af6e2f1e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4336
Autosubmit: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
2021-12-15 17:29:07 +00:00
William Carroll
b6d143e5d2 fix(wpcarro/nix): Remove <briefcase> references
Angle-bracketed references are a Nix anti-pattern, and thankfully this
repository enforces this as a standard.

TL;DR:
- Drop angle-bracketed references
- Change `briefcase` -> `users.wpcarro`
- Fix any resulting regressions
- Fix //users/wpcarro/tools/simple_vim
- Mark //users/wpcarro/boilerplate/typescript and related projects
  as broken
- drop .skip-subtree file, enabling depot CI

Change-Id: I7153cbabafa617bfd6b199370cbec65cb75441f6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4325
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Reviewed-by: tazjin <mail@tazj.in>
Reviewed-by: grfn <grfn@gws.fyi>
Autosubmit: wpcarro <wpcarro@gmail.com>
2021-12-15 15:49:40 +00:00
Vincent Ambo
b0614b5c83 refactor(3p/lisp): Move things from //users/wpcarro/third_party/lisp
* move packages and adapt them for the depot structure instead of
  briefcase
* drop linear-programming package, it didn't build anyways

Note that at least some of these packages (e.g. prove) are deprecated
upstream, but lets sort that out later.

Change-Id: I7f5a5faa29d57f060b21ac8e1706090866a82000
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4330
Autosubmit: tazjin <mail@tazj.in>
Reviewed-by: grfn <grfn@gws.fyi>
Reviewed-by: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
2021-12-14 21:21:53 +00:00
sterni
0220fb319a feat(users/sterni/emacs): provide BQN interpreter via Nix
For this we create a directory containing a nix-inject.el file using
writeTextFile where we can string interpolate as much as we please and
merge that into a single emacs.d directory with the config *.el files
tracked in the normal tree using symlinkJoin.

Change-Id: I0e39591587a54527214783d4380456d2763da091
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4324
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
Autosubmit: sterni <sternenseemann@systemli.org>
2021-12-14 17:07:29 +00:00
sterni
c7ebb34f8f refactor(sterni/aoc/2021): use a fold instead of last scan element
We can use the reverse swap trick to get a forward fold.

Change-Id: I88185e2ff0b41ec1454f414db2d24b1c8173ac2d
2021-12-14 13:41:01 +00:00
Griffin Smith
0286d63df7 feat(grfn/bbbg): Display flash messages
Get flash working via a functioning cookie-store session middleware, and
display flash messages if present at the top of every page.

Change-Id: If5f267dee3f41ef7954ea82667822c596e1b0474
2021-12-13 22:43:05 -05:00
Griffin Smith
e7899e6c0b fix(grfn/bbbg): Handle attended=NULL in typeahead
Change-Id: I000f115298dc8d3c18b5c0a6581e5423aa6892e7
2021-12-13 22:05:41 -05:00
Griffin Smith
8bc2e83246 fix(grfn/bbbg): Left join to attendees
Change-Id: Ic158a2c77e92410f078b67907b2a9537e2cb1392
2021-12-13 21:55:26 -05:00
Griffin Smith
c3cb7b0df8 feat(grfn/bbbg): Init
This will eventually become a signup sheet + no-show tracker for my
local board game meetup group

Change-Id: Id8d1d80d95d1e2fda5041275cff2fecfd6fa43f1
2021-12-13 21:45:09 -05:00
sterni
b5eb90196e refactor(sterni/aoc/2021): determine width/height in the same fold
Change-Id: I39410171402cedc3ee8d9ac972557656ed12de53
2021-12-14 00:56:31 +01:00
sterni
1303f3fc71 feat(sterni/aoc/2021): day 13 solution
Change-Id: I9cfa8a28854cbee7e8e1b457faf9c572353e803f
2021-12-13 23:39:50 +00:00
sterni
7a1a8aa3aa refactor(sterni/aoc/2021): name input data more consistently
Change-Id: Ibcea43d2e51f14d8b1b021050310f88d44d970d3
2021-12-13 23:39:49 +00:00
William Carroll
8f1b1c94d2 feat(users/wpcarro): add OWNERS file
Change-Id: Id6eeee0f97b9a7195664e5c2434e9d545929a042
2021-12-13 23:23:45 +00:00
Vincent Ambo
019f8fd211 subtree(users/wpcarro): docking briefcase at '24f5a642'
git-subtree-dir: users/wpcarro
git-subtree-mainline: 464bbcb15c
git-subtree-split: 24f5a642af
Change-Id: I6105b3762b79126b3488359c95978cadb3efa789
2021-12-14 02:15:47 +03:00
sterni
464bbcb15c feat(sterni/aoc/2021): day 9 solution
Change-Id: I90e7a47d5418abeff1ae7cc5757b6a8b3b0d1086
2021-12-13 22:13:29 +01:00
sterni
343b811bbc feat(sterni/aoc/2021): day 7 solution
Change-Id: I8c8b535defb42f15eafc816ebe953e51b11ea702
2021-12-13 21:58:15 +01:00
sterni
f78a7467f1 feat(sterni/aoc/2021): day 3 solution
Change-Id: Id14281f7b18ddaf6875e5dd8398249a10a9474af
2021-12-13 21:58:15 +01:00
sterni
b3d4305700 refactor(sterni/aoc/2021): allow variable bases ≤ 10 for ReadInt
Change-Id: Ie035134a4b3d478ce836aa00016122e0f49a5a28
2021-12-13 21:58:15 +01:00
sterni
4b38ba2d0a feat(sterni/aoc/2021): day 2 "solution"
Change-Id: Ifbd50274f0b09305991a49e7453ac1f13089e57e
2021-12-13 21:58:15 +01:00
Vincent Ambo
5f0a64273c fix(tazjin/emacs): Fix tdlib version check if max-version is set
This version interpolated in by Nix in the lines above instead of
being loaded from Elisp, as that would require starting telega inside
of that build (which is a bit messy because of async elisp).

Change-Id: I775844acb6928db76516f06188b19c713f765ab8
2021-12-13 19:54:49 +03:00
Vincent Ambo
2d33005597 feat(tazjin/emacs): Check telega/tdlib compatibility in depot CI
This keeps biting me at runtime whenever these are out of sync.

Change-Id: If523974e6ad2754ea19123eda0e5fda0a865f408
2021-12-13 18:53:54 +03:00
Vincent Ambo
0fbd6f0aeb fix(tazjin/emacs): Use telega from MELPA
The stable versions are too old to be compatible with nixpkgs-unstable

Change-Id: I8edb125024460f605ff640cd486779877fa0d256
2021-12-13 18:53:54 +03:00
Vincent Ambo
396e3a0d68 fix(tazjin/russian): Minor Elisp fixes
Change-Id: I759182ccb49d7a72ca8a031c829608c9eee70277
2021-12-13 16:36:19 +03:00
Vincent Ambo
53f8a04b33 feat(tazjin/tverskoy): Ensure ~/screenshots exists
Change-Id: Icae43b17a95c638429351273bb16111097c3e594
2021-12-13 16:24:37 +03:00
Vincent Ambo
5fd3140cf3 fix(tazjin/emacs): Gerrit remote is now 'origin'
Change-Id: I44998510ff4be2fa137ea4c81f888e63ea438a56
2021-12-09 13:24:20 +03:00
Vincent Ambo
623de7920f feat(tazjin/russian): Add words 601-700
Change-Id: I17b1362502952d96b8787ad3c055d66f212fd60b
2021-12-09 08:58:32 +00:00
Griffin Smith
a0fcec54cd feat(grfn/emacs): Tweak rust async_test snippets
Add a stop at the `flavor` argument, since some async tests can use the
default config.

Change-Id: Iffd726b304d0d9dd94938bf23b2688715d1f4e20
2021-12-09 02:08:50 +00:00
Griffin Smith
49d4d12a73 feat(grfn/emacs): Add a prolog use_module snippet
Change-Id: Ib5226a1ad0f084d3755cbfe40bf3556b3fa7fb2b
2021-12-09 02:08:42 +00:00
Griffin Smith
91f33b1a96 feat(grfn/emacs): Add some prolog-mode mappings
Change-Id: If1677024f9a211eee5d42a03413b5058dd797b9a
2021-12-09 02:08:42 +00:00
Vincent Ambo
14bf3f3cd9 feat(tazjin/russian): Add words 551-600
Change-Id: Ie2a670fc2aa24457a9fc7f3f22d5336d97e7789f
2021-12-08 20:37:49 +03:00
Vincent Ambo
b5dcb4e6df feat(tazjin/russian): Add words 501-550
Change-Id: Id9e4b9eb5e330a5331ca0cc2c7af2c4ade4a6ace
2021-12-08 20:23:09 +03:00
Vincent Ambo
a39ab958da feat(tazjin/russian): Add words 451-500
Change-Id: I5e0c8d61be0c0170370298aa4c6ee0a6607f24b7
2021-12-08 20:03:59 +03:00
Vincent Ambo
3f614a4e17 feat(tazjin/russian): Add words 401-450
Change-Id: I1101ebf2252390fc4ae308de43f09f606118615b
2021-12-08 01:19:46 +03:00
Vincent Ambo
214f422572 feat(3p/agenix): Import latest version from GitHub
It's time to automate secrets deployment on hosts like whitby.

Change-Id: If7006124b4b5fec16b4c3570488c11e484f93888
2021-12-07 18:27:54 +00:00
Vincent Ambo
9df5e1da19 feat(tazjin/tverskoy): Configure tlp to keep battery between 40-70%
This is supposedly better for battery health, and since the machine is
usually plugged in while in the office it might be a good idea.

Note for myself: `sudo tlp fullcharge` ~30 min before needing to leave
with a fully charged battery.

Change-Id: I3664264403f56c15e055822190f30c3a90c93ead
2021-12-06 16:18:06 +03:00
Vincent Ambo
9d5483e190 feat(tazjin/emacs): Ensure passively is installed
Change-Id: I58f007ba54fd0b48fdff6e8409463d5d5e105f17
2021-12-06 11:50:55 +00:00
Vincent Ambo
28759b7d66 refactor(tazjin/russian): Use passively.el for Russian learning
Replaces the functionality previously implemented here with the now
generalised implementation in passively.el

Change-Id: Ibe7a1b7d512ddcb700bc330cbdf62811399c6cfe
2021-12-06 11:50:55 +00:00
Vincent Ambo
ba8db7b6da chore(tazjin/emacs): Configure persistence location for passively
Change-Id: I00965fc24ccfddc278e7ab9243661aea282ff385
2021-12-06 02:14:35 +03:00
Griffin Smith
909c1d02a2 fix(gs/emacs): Return empty string if nothing in inbox
otherwise we'd return the string "nil", which with the substring-ing
that was happening would end up as "Inbox: i" in the status bar

Change-Id: I567a6042b592dd9313bfa22d480c22936494a8c1
2021-12-03 12:23:54 -05:00
Griffin Smith
9eec83843e fix(gs/emacs): Fix title of clocked-in task
For the i3 status bar - this API changed to return a list recently,
which is super frustrating

Change-Id: Ib921b6431331c766b67ea5053f2d9f3d86cf54b4
2021-12-03 12:23:54 -05:00
sterni
ca159626dd feat(sterni/emacs): subscribe to the TVL feed
Change-Id: Iac08e992a4c610a6f152c1dc5e681b17298b8834
2021-12-01 18:17:29 +00:00
sterni
9472bb6b04 feat(sterni/aoc/2021): day 1 solution
Change-Id: I0781b2aa3624df9a3158296edcbbbf2ee845102b
2021-12-01 18:17:29 +00:00
Griffin Smith
8de6c07153 refactor(gs/emacs): Switch to doom's built-in fuzzy ivy
This seems to do sorting slightly better.

Change-Id: I0d354a77b45b1a83d4bb5eb0acd024187b06929f
2021-11-29 10:52:47 -05:00
Griffin Smith
ac2fa80f75 feat(gs/home): Add shell alias for graphvizzing
for work

Change-Id: Ib8a8928f8315823a34b653d3e3dff46d10f930e6
2021-11-29 10:52:21 -05:00
Griffin Smith
e1e78f7abc feat(gs/system): Install dev man pages
I wanna be able to man libc stuff

Change-Id: Ie38e6751af24ffcffa912621dc217dcef5c84dda
2021-11-29 10:50:04 -05:00
Vincent Ambo
d143c3735f chore(tazjin/russian): Reduce timer interval to 4 seconds
Change-Id: I85025754695a6173a23c9ea2eb19ddc8e97e4dcd
2021-11-29 17:33:47 +03:00
Vincent Ambo
2789e013af feat(tazjin/russian): Function to look up last word in Wiktionary
For cases where a word raises more questions than are answered by my
existing notes, roots, translations and so on.

Change-Id: Ic9dd79ba4aef6e3c8e7e8e965195b67f7a0c65f3
2021-11-29 17:33:47 +03:00
Vincent Ambo
e4c82c2a34 feat(tazjin/russian): Exclude known words from random display
Adds a set of words that I consider "known" (but that should be in the
most frequent word list anyways). This set can be populated by
invoking `mark-last-russian-word-as-known` after display, and is
automatically persisted.

Right now there's nothing automatically loading it back in, just as
there is nothing loading any of this automatically, that's for the
future.

Change-Id: I51ee4f37114c6b95925e8ad5bdc5dc9b8657bdad
2021-11-29 17:33:47 +03:00
Vincent Ambo
7843363225 feat(tazjin/russian): Remember the last displayed word
This will make it possible to do operations on that word (i.e. marking
it as known, or opening the full definition page).

Change-Id: Ib77f7d2e4e96d6ab754b311a69f72e2b080657ac
2021-11-29 14:24:25 +00:00
Vincent Ambo
f7c87fd774 feat(tazjin/russian): Echo Russian words when Emacs is idle
This should keep up passive exposure to words, but needs a subsequent
function for filtering out things that are definitely known.

Since I'm keeping the frequent word list mostly intact the majority of
words are very basic, but it's those last 15-20% I'm interested
in (not completely imported yet).

Change-Id: I7a5684b8dca1fe5301e8b394be2627550a60e3c6
2021-11-28 17:39:23 +03:00
Vincent Ambo
48290298ad feat(tazjin/russian): Add macro to populate word table
Adds a stupid macro that populates a 'russian-words' hash table in
which merged definitions of words are available.

Change-Id: Ide7825577ba26d63ff564e54601541f39ab5a1a6
2021-11-28 17:14:15 +03:00
Vincent Ambo
465f3d3f14 chore(tazjin/tverskoy): Minor config cleanups
Change-Id: I434c0b8d5e5ce2d077630de2dd71de309b7d076f
2021-11-27 20:56:21 +03:00
Vincent Ambo
67d7bc2fa8 fix(tazjin/tverskoy): Persist Zoxide state between reboots
Change-Id: Ib1e1fe9749e56eefc83016b1946e6fe0b1f72339
2021-11-27 17:53:24 +03:00
Griffin Smith
604319850c feat(gs/xanthous): Creatures drop their items when they die
When a creature is killed, it now drops all the contents of its
inventory on the ground.

Change-Id: Ie95c397308ba2c9861f10e58b99c91c9cc759c56
2021-11-25 17:31:01 +00:00
Griffin Smith
a3d220b631 feat(gs/xanthous): Creatures use their weapons to attack
If a creature has a weapon wielded, then they now use that weapon to
attack the player *instead of* their natural attacks. This uses a new
`creatureAttackMessage` field on the Item raw for the message to use.

Change-Id: I73614f33dbf88dd4c68081f15710fa27b7b21ba2
2021-11-25 17:31:01 +00:00
Griffin Smith
4b11859d04 feat(gs/xanthous): Allow generating creatures with items
Add an `equippedItems` field to the CreatureType raw, which provides a
chance for generating that creature with an item equipped, which goes
into a new `inventory` field on the creature entity itself. Currently
the creature doesn't actually *use* this equipped item, but it's a step.

This commit also adds a broken-dagger equipped 90% of the time to the
"husk" creature.

Change-Id: I6416c0678ba7bc1b002c5ce6119f7dc97dd86437
2021-11-25 17:31:01 +00:00
sterni
750ef6c693 feat(sterni/nix/utf8): check if codepoint valid/encodeable
* Enforce the U+0000 to U+10FFFF range in `count` and throw an error if
  the given codepoint exceeds the range (encoding U+0000 won't work of
  course, but this is Nix's fault…).

* Check if the produced bytes are well formed and output an error if
  not. This indicates that the codepoint can't be encoded as UTF-8, like
  U+D800 which is reserved for UTF-16.

Change-Id: I18336e527484580f28cbfe784d51718ee15c5477
2021-11-25 12:15:35 +01:00
sterni
0e9c770972 refactor(sterni/nix/utf8): let wellFormedByte check first byte
Previously we would check the first byte only when trying to figure out
the predicate for the second byte. If the first byte was invalid, we'd
then throw with a helpful error message. However this made
wellFormedByte a very weird function.

At the expense of doing the same check twice, we now check the first
byte, when it is first passed, and always return a boolean.

Change-Id: I32ab6051c844711849e5b4a115e2511b53682baa
2021-11-25 12:15:35 +01:00
sterni
87a0aaa77d feat(sterni/nix/utf8): implement UTF-8 encoding
This implementation is still a bit rough as it doesn't check if the
produced string is valid UTF-8 which may happen if an invalid Unicode
codepoint is passed.

Change-Id: Ibaa91dafa8937142ef704a175efe967b62e3ee7b
2021-11-25 12:15:35 +01:00
sterni
9370ea5e33 chore(sterni/nix/utf8): remove decodeSafe
This is not really used anywhere and kind of useless. A better
decodeSafe would never return null and instead make use of replacement
characters to represent invalid bytes in the input.

Change-Id: Ib4111529bf0e472dbfa720a5d0b939c2d2511de5
2021-11-25 12:15:35 +01:00
Vincent Ambo
a935570a22 feat(tazjin/tverskoy): Install some more frequently used tools
... rather than nix-shelling them every time.

Change-Id: I9ab6ad67efbd6c16c7fd8cc9938d86d35f8418bc
2021-11-24 10:58:06 +03:00
Vincent Ambo
4f1249e46f refactor(readTree): Move 'drvTargets' into readTree
This function is also generally useful for readTree consumers that
have the concept of subtargets.

Change-Id: Ic7fc03380dec6953fb288763a28e50ab3624d233
2021-11-23 14:42:08 +00:00
sterni
ab92c42f59 feat(sterni/nix/utf8): allow decoding the empty string
Change-Id: I8de9cd28c822ac5befbcd16e118440cd13cd86e9
2021-11-23 14:23:41 +01:00
sterni
8615322bc8 refactor(sterni/nix/utf8): use genericClosure for decoding iteration
builtins.genericClosure is a quite powerful (and undocumented) Nix
primop: It repeatedly applies a function to values it produces and
collects them into a list. Additionally individual results can be
identified via a key attribute.

Since genericClosure only ever creates a single list value internally,
we can eliminate a huge performance bottleneck when building a list in a
recursive algorithm: list concatenation. Because Nix needs to copy the
entire chunk of memory used internally to represent the list, building
big lists one element at a time grinds Nix to a halt.

After rewriting decode using genericClosure decoding the LaTeX source
of my 20 page term paper now takes 2s instead of 14min.

Change-Id: I33847e4e7dd95d7f4d78ac83eb0d74a9867bfe80
2021-11-23 14:22:24 +01:00
Griffin Smith
95ee86225b refactor(gs/xanthous): Break out inventory into a common module
Creatures are going to have an inventory too now in addition to
characters, so all the data types and lenses and stuff that define
inventory need to be broken out into a separate module so the Creature
entity can use them.

Change-Id: I83f1c70d316afaaf2e75901f9dc28f79fd2cd31f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3901
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
2021-11-22 19:12:56 +00:00
Griffin Smith
3a01398672 refactor(gs/xanthous): Define local field lens aliases in AI
This slightly improves how the module reads imo

Change-Id: Ib1efcbbd5392ece6b46461e8075162f03846d421
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3886
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
2021-11-22 19:12:56 +00:00