Commit graph

280 commits

Author SHA1 Message Date
Griffin Smith
f32cc0ecb1 fix(gs/system): Add mime handler for telegramdesktop
Telegram adds this itself, which means the file is different from what
home-manager knows about, which means running home-manager switch
breaks unless this is here.

Change-Id: Iad507bf63365a630b7eef349228b633f5b83d78b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3251
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-07-16 13:44:23 +00:00
Griffin Smith
2c6b00330f refactor(gs/emacs): Drop flow config
Change-Id: Ide0f3c4de34e6d9cb90038094407f1aa99ccf96f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3250
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-07-16 13:44:23 +00:00
Griffin Smith
af7d26f08d fix(gs/emacs): Shift around loading of org config
I don't know why this is causing issues, I really don't. But I get
agenda items without having to reload this file now.

Change-Id: I38fd4f7942430a07231cadbc0320e1ba786616e6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3249
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-07-16 13:44:23 +00:00
Griffin Smith
b5339a7e51 fix(gs/emacs): Pass --read-envelope-from to sendmail
Change-Id: I8e4c0171336cad3ed817956b07b371aba706ab9f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3248
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-07-16 13:44:23 +00:00
Griffin Smith
e00a7263fb feat(gs/emacs): Don't display info-level flycheck errors
These end up being things like "hey, you used a proc macro" which isn't
useful to me, and clogs up the rest of my error navigation.

Change-Id: I9ccfddcce9683184f2479ae1aa30a8414f7e7c51
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3242
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-07-06 18:32:08 +00:00
Griffin Smith
ad8d38c64c fix(xanthous): Fix display of square/cubic units
Previously this'd display `5 m m³`, because it'd show the underlying
value then add the unit suffix on at the end

Change-Id: Idd240ddfebc212460f9fb529eff72732a5dafe2a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3241
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-07-06 18:32:08 +00:00
Griffin Smith
e62f578687 fix(gs/emacs): Fix headlines-from-assigned-to-me
If org-tracker-headlines-from-search is called non-interactively, it
only *returns* the org headlines as a string, rather than inputting them
at point.

Change-Id: Ia43d516f35a11383b206a57f345a6aeedfe86831
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3230
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-23 21:52:08 +00:00
Griffin Smith
7437a18188 fix(xanthous): Only use alphabetic chars for menu items
Previously, we were using `smallestNotIn` for selecting new characters
for menu items with duplicate chatacters - this uses the 'Bounded'
instance for the type, which for Char meant the first character we would
always select was \NUL - making it look like the menu item had no
character, and making it impossible to actually select the menu item.
This introduces an AlphaChar newtype, which is a wrapper around Char
whose Bounded and Enum instances only use alphabetic characters (a-ZA-Z)
and uses that for menu characters instead.

Change-Id: If34ed9e9ce84f2bcb1cb87432cc6273f40b69f72
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3229
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-23 21:52:08 +00:00
Griffin Smith
76258fbfa1 feat(xanthous): Describe *where* the item is in the inventory
When describing items in the inventory, both in detail and when
producing menus from those items, describe not just the item itself but
also *where* in the inventory the item is (either in the backpack, or
wielded in either or both of the hands). This uses a new
InventoryPosition datatype, and a method to get a list of items in the
inventory associated with their inventory position. When *removing*
items from the inventory (to wield, drop, or eat them), we want to make
sure we remove from the right position, so this also introduces
a `removeItemAtPosition` method to make that happen correctly.

Finally, some of the tests for this stuff was getting really slow - I
narrowed this down to runaway arbitrary generation for message
Templates, so I've tweaked the Arbitrary instance for that type to
generate smaller values.

Change-Id: I24e9948adae24b0ca9bf13955602108ca9079dcc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3228
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-23 21:52:08 +00:00
Griffin Smith
f0c167d361 feat(xanthous): Add a command to describe an item in the inventory
Add a new DescribeInventory command, bound to I, to prompt for an item
in the inventory (anywhere in the inventory, including wielded) and
display a (new) panel describing it in detail. This description includes
the description, the long description, and the item's physical
properties (volume, density, and weight).

Change-Id: Idc1a05ab16b4514728d42aa6b520f93bea807c07
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3227
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-23 21:52:08 +00:00
Griffin Smith
d8bd8e7eea feat(xanthous) Generate random volume+density for items
Generate random volumes and densities for items based on the ranges for
those two quantities in the raw when building instances of items.

Since this is the first time creating an item is impure, this also lifts
entity generation into a (random) monadic context

Change-Id: I2de4880e8144f7ff9e1304eb32806ed1d7affa18
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3226
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-23 21:52:08 +00:00
Griffin Smith
8b97683f6e feat(xanthous): Track the volume and density of item types
Allow the itemType raw to have density and volume fields, both of which
represent *intervals* of both density and volume (because both can
hypothetically vary a bit). The idea here is that when we're making
an *instance* of one of these items, we pick a random value in the
range.

Lots of stuff in this commit is datatype and typeclass instances to
support things like intervals being fields on datatypes that get
serialized to saved games - including a manual definition of Ord for
Item since Ord isn't well-defined for intervals

Change-Id: Ia088f2f75cdce9d00560297e5c269e3310b85bc3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3225
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-23 21:52:08 +00:00
Griffin Smith
638b355aa6 fix(gws.fyi): Remove reference to freenode
I'm not on freenode anymore

Change-Id: I72891f8db468cd318a069e4f409150717c6b9360
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3223
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-19 00:03:17 +00:00
Griffin Smith
f00dd30cad feat(xanthous): Fistfighting builds knuckle calluses
2000 ticks after the character damages their fists by hitting something,
the character now develops calluses on their fists (scaled by *how*
damaged they've become) that reduce the chance of them receiving
additional damage from hitting things - up to a max of 5, which
prevents *all* damage from fistfighting.

This is all tracked in a new "Knuckles" struct in a new "Body" struct on
the character datatype, which manages stepping itself forward as part of
the Brain impl on the character.

Change-Id: Ica269f16fb340fb25900d2c77fbad32f10c00be2
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3222
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-18 21:17:53 +00:00
Griffin Smith
4d2402a64e feat(xanthous): Add an auto-rest command
Add a command that automatically rests (essentially just stepping the
game forwards) until the character's hitpoints are back to full.

Currently due to the time it takes for the character to heal this takes
a bit too long - my thought there is to make the per-step delay for
autocommands different depending on the specific autocommand.

Change-Id: I40378c29d3d9d19e9787af1f015bde65fd08868c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3221
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-18 17:51:43 +00:00
Griffin Smith
fb5bec8d95 feat(xanthous): Add configurable natural attacks
Allow configuring the natural attacks (eg, part of their body rather
than an item) of a creature. Each attack has a description and a damage
associated with it.

Change-Id: I69698a8ac4ee2da91e4c88e419593627519522a5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3220
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-18 17:51:43 +00:00
Griffin Smith
88b0d0eecc feat(gs/emacs): Bind g R to lsp-find-references in haskell-mode
Change-Id: I49330e11a4cf402a4d06e7b657d3216eec9e5867
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3219
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-18 17:51:43 +00:00
Griffin Smith
6f9d01b507 feat(xanthous): Add an ooze creature type
This required making sayVerb optional, as oozes don't say anything

Change-Id: I2c7f425ca26d92beef1097eda49d84f00c84c482
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3218
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-18 17:51:43 +00:00
Griffin Smith
72d9e11a8f feat(xanthous): Install qpdf in the shell
This gets us the zlib-flate command line utility, which is useful for
decompressing our zlib-compressed save files and poking around in the
JSON

Change-Id: Ia0d8259d261c4313322d68cc8409ba13f9fb570c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3217
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-18 17:51:43 +00:00
Griffin Smith
f795ca68ae feat(gs/home): Install gron
this is pretty useful

Change-Id: If79af3f8f3bd1d1e810f4af6eebfc618eb4c603b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3216
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-18 17:51:43 +00:00
Griffin Smith
2938675f38 fix(xanthous): Wipe memoized vision when the game updates
If the game steps forward, entities could be moving around, so we need
to wipe the memoized character vision.

Change-Id: If6ea6a8c4bed7aefef90a0a2ab17eff0af9b9bbe
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3215
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-18 17:51:43 +00:00
Griffin Smith
91c71b3808 feat(gs/emacs): Add command to pull down all assigned JIRA tickets
as org-mode headlines, using org-tracker-headlines-from-assigned-to-me

Change-Id: Ie2ce8ec768702a71fb74c36024a3974c2d675571
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3214
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-16 14:51:23 +00:00
Griffin Smith
6b0e70501f fix(gs/emacs): Fix typo in org-tracker-state-alist
Change-Id: I219cb09a05dd4ac4d4196dde1dea10838d330b71
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3213
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-16 14:51:23 +00:00
Griffin Smith
99d3a24ac9 feat(gs/home): Install a bunch of new latex packages
I'm typesetting a type system! `semantic` is the big winner here, but
also `mathpartir` is nice

Change-Id: I27ee91d30e0fe680377ce48f7539553fd0707684
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3212
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-16 14:51:23 +00:00
Vincent Ambo
1a4465d7d3 chore(3p/nixpkgs): Bump unstable channel to 2021-06-14
Included fixes:

* 3p/apereo-cas: Don't use stdenv.lib
* grfn/system: Bump Linux to 5.12 (5.11 is gone)

Change-Id: Ie32d476e659ba482418d4035333c2797a7dbd106
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3211
Reviewed-by: sterni <sternenseemann@systemli.org>
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-14 21:47:57 +00:00
Griffin Smith
417d1c8a49 feat(gs/yeren): Install subsurface
Change-Id: I7ed8709e93f8b7863264d6772def316b48f3892b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3210
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-14 13:04:26 +00:00
Griffin Smith
e154ade9ac feat(gs/emacs): Add haskell test-group snippet
For tasty testGroups

Change-Id: I855ceed68e575eec48f236608015f8d40416e332
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3209
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-14 13:04:26 +00:00
Griffin Smith
b2637edc23 feat(gs/emacs): Revamp haskell test-mode snippet
This is how I'm writing test files for xanthous now, and I'm not writing
any other haskell code, so let's update the snippet

Change-Id: Ia513490ee1cfc87b3d58ee1a8e94244f2e862963
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3208
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-14 13:04:26 +00:00
Griffin Smith
bf79617bd8 feat(xanthous): Gormlaks yell in gormlak when they see the character
Add a new "greetedCharacter" field to the creature hippocampus type,
which tracks whether or not that creature has greeted the character
yet. In the gormlak AI, when the gormlak sees the character and starts
running towards them, if that field is set to False send a message that
says that the gormlak yells a single randomly-generated gormlak word at
the character, then set the field to true

The gormlak yells "gukblom"!

Change-Id: I17a388393693a322c2e09390884ed718911b2fc4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3207
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-14 13:04:26 +00:00
Griffin Smith
30d83d7c82 feat(xanthous): Add a method to get the name for a type of entity
I didn't end up using this directly for the thing I was doing, but it
still seems generally useful enough that I'm keeping it around for now

Change-Id: I05c8902d75845f2230ec2373a9677d61cfaafafd
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3206
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-14 13:04:26 +00:00
Griffin Smith
26d7dadded feat(xanthous): Store language on creatures
Add a new "language" field to the CreatureType raw type, which
references the *name* of the language that creature speaks (this is so
that different creatures can speak the same language without having to
duplicate the language definition in the raws). At some point this
should change to not hardcode the sets of languages and instead define
them in data files like we do for creatures, but this is fine as a
start.

Change-Id: I6708570175e23472cb37e0061a329e54e8eac9c0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3205
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-14 13:04:26 +00:00
Griffin Smith
5b0649d2a8 feat(xanthous): BangPattern all fields in Raws
This is generally just good practice for foundational data-types like
these

Change-Id: I88c5b6b73dad6665cf25837b8d6a9e0ea66f2b0b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3204
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-14 13:04:26 +00:00
Griffin Smith
efbb135cfc feat(xanthous): Extend speech generation to arbitrary words
Wrap up the Phonotactics type into a Language type including both the
phonotactics and a distribution of the number of syllables per word, so
we can generate arbitrary words in addition to just arbitrary syllables

Change-Id: I8a37ce9c0eec019c9b84d21b0f2b3b9f5fd319eb
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3203
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-14 13:04:26 +00:00
Griffin Smith
2cfe4069bb feat(xanthous): Add a generator for random english syllables
Add a new "speech" generator module, with the beginnings of the vague
definition of the phonotactics of the language (there's one in here for
English based on the wikipedia article for English phonology, but it's
less than ideal as it has generated words like "sprurlkt") and the
ability to generate random syllables of a language by picking an onset,
nucleus, and coda from the list for that language (within a range of the
number of allowed of each syllable part). This will be used down the
road to automatically generate utterances from various
non-english-speaking creatures (so the accuracy is less important, just
that it "feels real").

Change-Id: I7b81375ec595239c05c5c800cbde1a2a900e38ac
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3202
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-13 01:24:47 +00:00
Griffin Smith
006e5231e5 refactor(xanthous): Generators -> Generators.Level
I'm going to start adding generators for things like text soon, so it
makes sense to specifically sequester level generators as their own
thing

Change-Id: I175025375204fab7d75eba67dd06dab9bd2939d3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3201
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-13 01:24:47 +00:00
Griffin Smith
c19e3dae5f feat(xanthous): Memoize characterVisiblePositions
Memoize the return value of characterVisiblePositions to a new,
semi-abstracted "memo" field on the GameState, recalcuclated if the
character position ever changes. I'm 90% sure that the perf issues we
were encountering were actually caused by characterVisiblePositions
getting called once for *every tile* on draw, but this slightly larger
change also makes the game perform relatively-usably again.

Since this is only recalculated if the character position changes, if we
ever get non-transparent entities moving around without the characters
influence (maybe something building or knocking down walls?) we'll have
an issue there where the vision won't be updated as a result of those
changes if they happen while the character is taking a non-moving action
- but we can cross that bridge when we come to it.

Change-Id: I3fc745ddf0014d6f164f735ad7e5080da779b92a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3185
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-12 18:57:52 +00:00
Griffin Smith
80d501d553 fix(grfn/xanthous): Update shell for new depot structure
Since 473604f567 (CL/2910), depot hasn't
been directly exposing `pkgs` as an attribute, instead exposing it via
third_party.nixpkgs - the xanthous shell.nix isn't checked in CI, so it
was missed as part of that refactor - this updates it to be in line with
that

Change-Id: I12b081c16d53c6798f51ec6660ffa6d345870580
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3176
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
2021-06-12 15:54:28 +00:00
Griffin Smith
702594ca64 refactor(ops): Break out prometheus-fail2ban-exporter module
Break out the configuration for the prometheus fail2ban exporter, which
is a simple python script that exports stats from fail2ban as a
prometheus-scrapable textfile, from Mugwump into a reusable nixos module
in //ops/nixos/modules.

Change-Id: I5451c9c5de6c7bc4431150ae596a9c758bf1b693
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3136
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2021-06-12 15:51:49 +00:00
Griffin Smith
8587bb5f67 feat(gs/emacs): Install telega
Change-Id: If677f26fda16fc5511455e877b6fa87f061d522f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3183
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-08 15:38:51 +00:00
Griffin Smith
a1ffa43684 fix(gs/emacs): Drop dap-mode
This does not appear to be working

Change-Id: I195e44f799981343a7b9dc60b25eb068d5d42530
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3182
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-08 15:38:51 +00:00
Vincent Ambo
b4ae6893e4 chore(3p/nixpkgs): Bump channels to 2021-06-05
Includes the following depot changes & fixes:

* stable moves to NixOS 21.05
* stable isn't used anymore (but we'll keep the mechanism)
* haskell overlay's `random` override is removed (YAY!)
* grfn/iso: Switch to regular kernel rather than
  latest kernel, as latest kernel is currently marked as broken due to zfs
* grfn/home: Use julia_16-bin temporarily
  julia 1.5 (current julia-stable, source built release in nixpkgs)
  doesn't pass its own test suite. Julia 1.6 doesn't have a source built
  package in nixpkgs yet, so julia_16-bin appears to be the only working
  julia derivation currently.
* tazjin/tverskoy: Use zfs unstable, as stable zfs doesn't work with the
  latest kernel

Co-Authored-By: Griffin Smith <grfn@gws.fyi>
Co-Authored-By: sterni <sternenseemann@systemli.org>
Change-Id: I6f2e3d9f75077e4755de6bde9104d44b584cbe4c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3174
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
Reviewed-by: tazjin <mail@tazj.in>
Reviewed-by: grfn <grfn@gws.fyi>
2021-06-05 16:54:18 +00:00
Griffin Smith
4e90a38875 feat(gs/emacs): Make buffer-switch command cover all buffers
I don't really like the perspective-specific stuff after all.

Change-Id: I214e481a29ed5734de232d6cbd8fabbc6368359d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3181
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-05 15:25:20 +00:00
Griffin Smith
263958e4d3 feat(gs/emacs): Switch to org-tracker
Work is now using JIRA instead of Clubhouse, so I've started writing
org-tracker[0] as a pluggable-backend version of org-clubhouse (I'll
probably add github issue support as well!). This switches my personal
config to use that instead of org-clubhouse, including the
checkout-branch-with-ticket-id stuff I had locally.

[0]: https://github.com/glittershark/org-tracker

Change-Id: I3cf72d6640b155c92ca9ddd1d9d9b5167367951a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3180
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-05 15:25:20 +00:00
Griffin Smith
42c3da7881 refactor(gs/emacs): Don't install mu4e
I use notmuch instead

Change-Id: Ibb7c901beb8caf22d0f22b2de20b41a71c92c358
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3179
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-05 15:25:20 +00:00
Griffin Smith
a73d529a94 refactor(gs/emacs): Move all org-config into org-config.el
For some reason some org config was still living in the global config.el

Change-Id: I2145a054ace97b91877a4397a52fd18a5c273434
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3178
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-05 15:25:20 +00:00
Griffin Smith
e38e826862 feat(gs/emacs): Update irc-connect command for new servers
No longer connecting to freenode - but I *am* now connecting to both
hackint and libera, so add a prompt to the command to decide which one I
connect to

Change-Id: Iae315ddab753cf9c365cbee7abd94213af656d4c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3177
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-05 15:25:20 +00:00
Griffin Smith
bf9857beff feat(gws.fyi): Use awscli2 to deploy
Use awscli2 rather than awscli to deploy - less because I actually need
any specific functionality from the new version, and more because I
already use awscli2 on my systems and it's nice to always use the same
version of stuff

Change-Id: Id0e5b63dde1857c2e417ac2eeb2f769ebcc0f956
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3175
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-02 20:43:31 +00:00
Griffin Smith
f329553763 feat(gs/home): Update discord to 0.0.15
Change-Id: I17b979217360545c52073b67c5ba878e8891a650
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3168
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-06-01 16:23:55 +00:00
Griffin Smith
7b230060a2 revert(grfn/yeren): "Set timezone to Africa/Cairo"
This reverts commit e1c45be3f5. I'm back
in NY now T.T

Change-Id: Iaae2bf778195b9a99ac1a46068703a58e6b69053
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3166
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-05-31 12:56:47 +00:00
Vincent Ambo
65be8f20e0 chore(nixpkgs): Bump channels to 2021-05-25
* users/grfn/system/home/yeren: remove obsolete awscli2 overrides

* ops: make new isSystemUser || isNormalUser assertion happy

* users/grfn/system/system/mugwump: make buildkite agents system users

* users/tazjin/nixos/camden: set isSystemUser = true for git

* users/tazjin/emacs: Remove missing & broken packages

* third_party/openldap: remove, as the argon2 module is now enabled upstream

* third_party/gerrit_plugins: Pinned new unstable hashes

* third_party/nix, third_party/grpc: Disabled CI as these are broken

* third_party/overlays/emacs: Bumped version to stay in sync with channel

* third_party/buzz: Update LIBCLANG_PATH to reference libclang.lib,
  since libclang's default output no longer contains libclang.so

* users/grfn/system/home: Install julia-stable instead of julia (which
  aliases to julia-lts), as the latter depends on an insecure version of
  libgit

Change-Id: Iff33b0ecb0ef07a82d1de35e23c40d2f4bf0f8ed
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3001
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
Reviewed-by: grfn <grfn@gws.fyi>
2021-05-25 17:09:28 +00:00
Griffin Smith
fb36bc321b feat(gs/home): Add script to graphviz the clipboard
Add a script (to PATH, so I can launch it from rofi) to take whatever's
in the clipboard, pass it through `dot -Tpng`, and then open the result
with feh.

Change-Id: I1842fca3585a33d902da20dfa6101d1c6d2f2062
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3160
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-05-25 11:19:41 +00:00
Vincent Ambo
3c7d4c74be chore(3p/overlays): Remove LLVM11 bump from overlay
* This was mostly for //third_party/nix and its dependencies which now
  have been set to use llvmPackages_11 manually.

* For //users/grfn/achilles we also manually select the newer LLVM version.

* //tools/cheddar doesn't seem to need llvm anymore.

* //third_party/buzz also compiles with clang 7.1.0

* replace clang-tools everywhere with new attribute clang-tools_11

For the future we may want to have something similar again, but it may
not be necessary to invest too much time into it: nixpkgs is set to
upgrade their default llvmPackages to LLVM 11 as well at some point in
the near future.

Co-Authored-By: sterni <sternenseemann@systemli.org>
Change-Id: Id83868dbc476a6c776b59518b856c933f30ea79d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3135
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
Reviewed-by: sterni <sternenseemann@systemli.org>
Reviewed-by: grfn <grfn@gws.fyi>
2021-05-24 18:15:05 +00:00
Vincent Ambo
224c9ca0bb chore: Replace remaining mentions of ##tvl[-dev] with #tvl
... and fix the capitalisation of hackint

Change-Id: I800aef75152d2dc77a33876888e36530143e9d3e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3148
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
Reviewed-by: sterni <sternenseemann@systemli.org>
2021-05-23 19:46:46 +00:00
Vincent Ambo
780bb86eff chore: Replace Freenode mentions with HackInt
This doesn't replace all of them in the repo, but at least the ones
that are relevant to our move.

Change-Id: I842e7594b4c16af30d880272417874f6b29afd22
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3134
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
Reviewed-by: grfn <grfn@gws.fyi>
2021-05-22 21:37:13 +00:00
Vincent Ambo
8dfc7a9f9d feat(grfn/modules/laptop): Enable TLP service
This service performes automatic power tuning and has effectively
replaced powertop's tuning functionality in modern systems.

Change-Id: I63c6999beed64d96c77b8b9287ed0d5fa6ddd9fa
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3121
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
2021-05-13 12:24:08 +00:00
Vincent Ambo
3033de5792 fix(yeren): Force enable ASPM in kernel parameters
This might help with the issue of devices being stuck in a slow
power-saving mode after hibernation. Dell enables this on laptops
shipping with Linux by default according to some forum posts.

Change-Id: I3d7fdb5c2ed5e24289a6c20f21d027e11b7826e5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3120
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
2021-05-13 12:24:08 +00:00
Griffin Smith
2a97eda3b3 feat(gs/emacs): Update async test snippet for tokio 1.x
Change-Id: I897f3efae7920dee678f6ca03d743b12212b766c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3109
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-05-12 10:33:37 +00:00
Griffin Smith
f790e72763 fix(gs/emacs): Correct next/prev error bindings
next-error and prev-error are weirdly broken in ways I don't entirely
understand, but I only really use flycheck so I can just use the
flycheck ones instead

Change-Id: Icdb25950f6fdcca163c68db30366af0f6fa28d7d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3108
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-05-12 10:33:37 +00:00
Vincent Ambo
259cbfd0b2 chore(owothia): move to //fun/owothia
Owothia graduates, or something.

Mostly I don't want infrastructure to depend on stuff in //users.

Does anyone know where owothia is running anyways?

Change-Id: I198c7ac935736c7aee3ba4fbda1453b82aa10283
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3103
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
2021-05-11 21:34:51 +00:00
Griffin Smith
216c3f73b9 feat(grfn/yeren): Install tdesktop
Change-Id: I951224d0cfd6d8c1d0eda752134bf9b9375c7cdb
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3053
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-04-28 21:41:44 +00:00
Griffin Smith
10e0b1185c feat(grfn/yeren): Install+configure ntfy
automatic notifications when long-running commands are done! that's
cool.

Change-Id: Ic9451c0c349661c3df8ba1058748a59159bc4b3f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3044
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-04-28 21:41:44 +00:00
Vincent Ambo
32793298b7 chore(3p/emacs): Remove obsolete third-party packages
We don't need these in the depot anymore as the Emacs overlay now
provides newer versions of them, or because they are not used anymore.

Change-Id: I393e1580b66450d0bb128213bc79668172dadacc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3005
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
2021-04-20 11:47:41 +00:00
Vincent Ambo
c21dee2b5b refactor(grfn/emacs): Use TVL Emacs packages from fixpoint
Change-Id: I01d8993cc900ba34eb780524e040762c884c9815
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3009
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
2021-04-20 10:49:59 +00:00
Vincent Ambo
b75dd136cb refactor(grfn): Stop importing nixpkgs a bunch of times
Once is enough!

<grfn> https://tazj.in/blobs/touch-garbage.jpg

Change-Id: I68f66669e82d35a71752638450fa4b820e137172
Signed-Off-By: Florian Klink <flokli@flokli.de>
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3048
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
2021-04-20 10:43:19 +00:00
Griffin Smith
502eb38ac4 feat(grfn/home): Bind brightness keys with brightnessctl
thanks, flokli!

Change-Id: I3256bc66984939dde1bb397c3c5007a8296670ab
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3030
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-04-18 15:29:43 +00:00
Griffin Smith
48098f83c1 feat(grfn/achilles): Implement tuples, and tuple patterns
Implement tuple expressions, types, and patterns, all the way through
the parser down to the typechecker. In LLVM, these are implemented as
anonymous structs, using an `extract` instruction when they're pattern
matched on to get out the individual fields.

Currently the only limitation here is patterns aren't supported in
function argument position, but you can still do something like

    fn xy = let (x, y) = xy in x + y

Change-Id: I357f17e9d4052e741eda8605b6662822f331efde
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3027
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-04-17 06:33:17 +00:00
Griffin Smith
e1c45be3f5 feat(grfn/yeren): Set timezone to Africa/Cairo
\o/

Change-Id: Ia456e044c48eee095408efc9f6b802b4337ea09f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3026
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-04-17 06:33:17 +00:00
Griffin Smith
bb69d129d3 chore(grfn/achilles): Load shell.nix from depot
Rather than pinning a nixpkgs in here, just import the relative path to
the depot to load nixpkgs.

Change-Id: I452727d45e4f44ecc99b86d17e88a413c1911c59
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3025
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-04-17 06:33:17 +00:00
Griffin Smith
07c9c72347 feat(grfn/emacs): Configure notmuch popup window rules
I want notmuch to open in a full window, not as a bottom-of-the-screen
popup.

Change-Id: If539ff315fabae94d5a849c526c4322f9bdf8c61
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3024
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-04-16 14:56:08 +00:00
Griffin Smith
b090584af8 feat(grfn/home): Save GDB history across invocations
Change-Id: Icb02d64b036c07f3ab5f41f3b2c714ec164c2b05
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3023
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-04-16 14:56:08 +00:00
Griffin Smith
46aa62449f feat(grfn/yeren): Install rr
This... mostly works! I had to install it from the latest master branch
to get it functioning on my CPU, hopefully once they release a new
version I can remove the override.

Change-Id: I863d2e822b149838c58aa1c1e7dc73a127a0aeb8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3022
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-04-16 14:56:08 +00:00
Griffin Smith
773f23e163 feat(grfn/home): Install evcxr
It's a REPL! for Rust!

Change-Id: I920f976790bd974bb3a41e56b94b9e11bbb8e59b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3021
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-04-16 14:56:08 +00:00
sterni
2f4ea13ca2 refactor(users/grfn): build all haskell packages without ifd
Since we need to override random to 1.2.0 globally for xanthous
(otherwise propagation causes two versions of random to be propagated
for xanthous) evaluating haskell related stuff using import from
derivation can be very expensive since utilities like hpack and
cabal2nix need to be built for that. This means that for every channel
bump we potentially need to do a world rebuild of haskellPackages first.

To solve this we check in the cabal2nix-generated nix expressions for
owothia and xanthous.

Change-Id: I8fff70b4b6c303d1920f8bcac53520a09999b206
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2921
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
Reviewed-by: tazjin <mail@tazj.in>
2021-04-13 10:34:24 +00:00
Griffin Smith
0faba1a268 refactor(gws.fyi): Remove cloudfront invalidation step
I'm not using cloudfront for gws.fyi anymore, so this invalidation step
on deploy is pointless

Change-Id: I153848666dc70acfc456b5dcf276bab2410c4716
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2946
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-04-12 15:29:43 +00:00
Griffin Smith
6e1dba8339 feat(gs/home): Install amber
Change-Id: I26a397dd0d9f288fe43db8178e2f22089771ebc0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2945
Reviewed-by: grfn <grfn@gws.fyi>
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2021-04-12 15:29:43 +00:00
Vincent Ambo
42ea1c159a chore(grfn): Fix remaining references to glittershark
Change-Id: I60a60635dfef5c73f758fa6808992aeea3137301
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2944
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-04-12 15:22:48 +00:00
Griffin Smith
09a465d0a3 fix(grfn/home): Correct delta config for syntax-theme
this got renamed apparently

Change-Id: Ic616469eafc4b56eaaccc3df24988b0af73d90e2
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2943
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-04-12 15:17:25 +00:00
Griffin Smith
d339cc687d feat(grfn/home): Script to rebuild home-manager
Looks kinda like rebuild-mugwump, only for home

yes, yes, this could gc halfway through, that's so unlikely that I don't
care

Change-Id: Iab3fdac15796e9f8158a9778b897bc3fe88e536e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2942
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-04-12 15:17:25 +00:00
Griffin Smith
e358087611 feat(grfn/home): Install cargo-flamegraph
Change-Id: I5102abfe8c0d486e22d8dc1c744bf542753cc870
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2941
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-04-12 15:17:25 +00:00
Griffin Smith
6266c5d32f refactor(users/glittershark): Rename to grfn
Rename my //users directory and all places that refer to glittershark to
grfn, including nix references and documentation.

This may require some extra attention inside of gerrit's database after
it lands to allow me to actually push things.

Change-Id: I4728b7ec2c60024392c1c1fa6e0d4a59b3e266fa
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2933
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
Reviewed-by: lukegb <lukegb@tvl.fyi>
Reviewed-by: glittershark <grfn@gws.fyi>
2021-04-12 14:45:51 +00:00