Commit graph

68 commits

Author SHA1 Message Date
Griffin Smith
ca03175e31 fix(gs/emacs): Ensure we run hls from the right dir
Xanthous specifically breaks pretty majestically if it's built from
anything but a source dir, due to the TH splices we're doing to embed
messages.yaml files - this does some extra shuffling to make sure we
always cd to the project directory when running haskell-language-server

Change-Id: I6daee712f04b96d5755dcbc3dbad4c7b78a46f61
Reviewed-on: https://cl.tvl.fyi/c/depot/+/905
Reviewed-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-07-03 23:23:03 +00:00
Griffin Smith
6480a81c16 feat(xan): Use haskell-language-server
Use haskell-language-server instead of haskell-ide-engine for Xanthous.

Change-Id: I7ef1433d5cd561e659fc06b3f373a6f29dfa5690
Reviewed-on: https://cl.tvl.fyi/c/depot/+/904
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
Reviewed-by: BuildkiteCI
2020-07-03 23:23:03 +00:00
Griffin Smith
26bb34823d fix(xan): Don't allow looking at invisible things
Extract the conditional we're using to decide whether or not to render a
given entity at a position, and use that when getting the list of
entities to describe as a result of the "Look" command.

Change-Id: I1ec86211c2fcbd984dd52338fb5631667c22c723
Reviewed-on: https://cl.tvl.fyi/c/depot/+/903
Reviewed-by: glittershark <grfn@gws.fyi>
Reviewed-by: BuildkiteCI
Tested-by: BuildkiteCI
2020-07-03 17:47:45 +00:00
Griffin Smith
361ffd42d7 feat(gs/home): Make groc alias autostash
Change-Id: I8ce5ca50d90ed092e92ea7c1c2eaf796e56659d4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/902
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-03 16:42:14 +00:00
Griffin Smith
73f8121f28 feat(gs/home): Some new haskell aliases
for cabal 3 commands that are runnable without new- or old-

Change-Id: Ib00c8654c40c47482e06aec9dd1454dacce42971
Reviewed-on: https://cl.tvl.fyi/c/depot/+/901
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-03 16:40:34 +00:00
Griffin Smith
284eafe0b5 feat(gs/home): alias groc = git rebase origin/canon
Change-Id: I3e5a8d234fdac9f0a2f1d440ed7dea458663ae61
Reviewed-on: https://cl.tvl.fyi/c/depot/+/900
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-03 16:36:08 +00:00
Griffin Smith
d1db50ab64 feat(gs/system): Add whitby to trustedBinaryCaches
This is needed as well to use it as a substituter it seems

Change-Id: I6cefbccef2a61d665209131084bc58d7b56645f9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/899
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-03 16:33:07 +00:00
Griffin Smith
6e7200cf4e refactor(gs/system): Don't use whitby as a remote builder
Right now it looks like the time to copy data between local and whitby
essentially eliminates any benefit to using it as a remote builder.
Which is a shame, but ah well.

Change-Id: I71dc4782992a28b196e262d40acc1bbc0b883529
Reviewed-on: https://cl.tvl.fyi/c/depot/+/898
Reviewed-by: glittershark <grfn@gws.fyi>
Reviewed-by: BuildkiteCI
Tested-by: BuildkiteCI
2020-07-03 16:33:07 +00:00
Griffin Smith
2900768656 feat(gs/system): Add public keys for whitby
Change-Id: I138ccbd7da9849025f1f59dfe948cfb7a5684b6d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/896
Reviewed-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-07-03 15:11:05 +00:00
Griffin Smith
2ec3254f85 feat(gs/emacs): Update hie invocation for depot
Update the invocation of the hie.sh script as part of
+grfn/haskell-mode-setup to be compatible with the new depot-integrated
xanthous.

Change-Id: Ia3ef50fb08464a533efdfed4da66e2be00446ea6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/891
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
Reviewed-by: BuildkiteCI
2020-07-03 14:41:36 +00:00
Griffin Smith
6f808dfe18 refactor(xan): Simplify build infrastructure
Simplify the build infrastructure for creating shells etc. for xanthous,
including relying more heavily on stuff exposed in Depot anyway, using
shellFor in the shell.nix, and using the haskell.nix branch of all-hies
for a significantly simpler build. At some point the all-hies stuff will
likely want to be promoted up to //third_party, but for now it's
experimental enough that I don't want to bother other people with it.

Change-Id: I43830de73830fdc07d48af9b87d7930f59599532
Reviewed-on: https://cl.tvl.fyi/c/depot/+/890
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
Reviewed-by: BuildkiteCI
2020-07-03 14:41:36 +00:00
Griffin Smith
c0922e4906 fix(xan): Remove unused imports
GHC 8.8 is better at detecting unused imports, it seems - all of these
are new warnings that fail under -Werror

Change-Id: I1357094d715483612deb0db4a75b3e4f8f27d2e3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/889
Reviewed-by: glittershark <grfn@gws.fyi>
Reviewed-by: BuildkiteCI
Tested-by: BuildkiteCI
2020-07-03 14:41:36 +00:00
Griffin Smith
beb29128b6 fix(xan): fix compat with new base+ghc
A couple of changes necessary to get things working with both ghc 8.8.3
and the new base:

- Explicitly import fail from Control.Monad.Fail in the prelude, since
  it's there instead of the base prelude now
- GHC no longer allows type family equality constraints in quantified
  constraints - which is a bummer - but is avoidable in the one case
  where it was happening
- Explicitly import a constructor from Data.List.NonEmpty

Change-Id: Ia06fc724ddc2d6a3f9024c047ed55eea40bcf408
Reviewed-on: https://cl.tvl.fyi/c/depot/+/744
Tested-by: BuildkiteCI
Reviewed-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
2020-07-03 14:41:36 +00:00
Griffin Smith
96fa6c465b fix(xanthous): re-add comonad-extras dep
Change-Id: Ie148acf179e3aae304410a588c87ee83e04aafa7
Reviewed-on: https://cl.tvl.fyi/c/depot/+/741
Reviewed-by: BuildkiteCI
Reviewed-by: Kane York <rikingcoding@gmail.com>
Tested-by: BuildkiteCI
2020-07-03 14:41:36 +00:00
Griffin Smith
44dfc50e2a chore(xan): Gitignore data directory
I'm using this dir to store save files that are particularly
interesting, eg bug reproductions etc.

Change-Id: Id6a805d85b3ea2e1171ea3af96303f05c2468070
Reviewed-on: https://cl.tvl.fyi/c/depot/+/893
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-03 03:35:05 +00:00
Griffin Smith
265d40ea52 fix(gs/emacs): Fix jsonnet-mode map invocation
Only want to map in normal mode

Change-Id: I5034af2a4828c61cd46f68451485a8a90cba7085
Reviewed-on: https://cl.tvl.fyi/c/depot/+/892
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-03 03:27:58 +00:00
Griffin Smith
0ef2696564 feat(gs/system): Add whitby as a binary cache
This appears to be working! which is nice.

Change-Id: I06f8d2ff4e9b313073cb76c77a8a9bed0cb52516
Reviewed-on: https://cl.tvl.fyi/c/depot/+/887
Reviewed-by: glittershark <grfn@gws.fyi>
Reviewed-by: BuildkiteCI
Tested-by: BuildkiteCI
2020-07-03 00:07:04 +00:00
Griffin Smith
6cabc4289c feat(gs:system): steal tazjin's rebuilder script
gonna use this instead of nixos-rebuild switch, in part to get away from
global nixpkgs pins.

Change-Id: I46e2951660465790adfdf75e6e3413b5c2dfd7c7
Reviewed-on: https://cl.tvl.fyi/c/depot/+/886
Reviewed-by: glittershark <grfn@gws.fyi>
Reviewed-by: BuildkiteCI
Tested-by: BuildkiteCI
2020-07-03 00:07:04 +00:00
Griffin Smith
5c96703765 feat(ci-builds): add chupacabra
My laptop, so I can recompile linux-ck not on my machine

Change-Id: Ib42e0440628be6a4d03999220ab2c69b19d6e391
Reviewed-on: https://cl.tvl.fyi/c/depot/+/884
Reviewed-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
Tested-by: BuildkiteCI
2020-07-02 23:19:58 +00:00
Griffin Smith
0bd0ca09a3 refactor(gs/chupacabra): Vendor urbint config
If I want to build this on TVL's CI I can't reference ~/code/urb/urbos,
obviously, so I'll just vendor it here which is fine

Change-Id: I40feb4b29fafae1d3bb0119b7cca1613a4582fdc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/885
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
Reviewed-by: BuildkiteCI
2020-07-02 23:19:58 +00:00
Griffin Smith
ae5c5b88e5 feat(gs/system): Configure whitby as a remote builder
This isn't working, but someday it might

Change-Id: Iac20c05b033df3484a7c6908473601bb17c9fcfe
Reviewed-on: https://cl.tvl.fyi/c/depot/+/883
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
Reviewed-by: BuildkiteCI
2020-07-02 23:19:58 +00:00
Griffin Smith
479d5ee8f1 refactor: Inline nixos-hardware stuff
As tazjin pointed out, this is little enough code that pulling it from a
global channel is a little silly, so I've just inlined everything.

Change-Id: I8750f139a3124135a72737c381215a6e812ce0c3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/882
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
Reviewed-by: BuildkiteCI
2020-07-02 23:19:58 +00:00
Griffin Smith
ca25c8d600 refactor(gs/chupacabra): Centralize all config
I previously had some stuff jammed into a hardware-configuration.nix not
committed anywhere, which is silly but also prevented building this
config as a top-level derivation, so this vendors them all in there

Change-Id: Ia76f1d75dcd44aa3e9d86a66c45176afc0946d12
Reviewed-on: https://cl.tvl.fyi/c/depot/+/881
Reviewed-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-07-02 23:19:58 +00:00
Griffin Smith
8db06970e9 chore(users/gs): Add SSH public key
I generated a new one for whitby, so it's called whitby because that's
the only thing I'm going to be using it for.

Change-Id: Ie8ebdb1e58c76e447ee3a3ea0b1b244fe000e3e4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/849
Reviewed-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-07-02 19:31:31 +00:00
Griffin Smith
2ad67392a6 feat(gs/emacs): Set compile-command in nix buffers
When visiting buffers that represent home-manager or nixos modules, set
compile-command to the relevant switch command.

Change-Id: I565e092d1e6b97eb7fee9d88211c0ee6ebb30b53
Reviewed-on: https://cl.tvl.fyi/c/depot/+/846
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-02 18:55:31 +00:00
Griffin Smith
48cb38706b fix(gs/emacs): Sometimes GH returns PRs without an author
I don't know why-- but I don't want it breaking this command.

Change-Id: I90c28cd21f3a5bc9f0155a88b50b13434fda4c5d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/838
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-01 20:56:56 +00:00
Griffin Smith
46d4a73e34 feat(gs/emacs): Bind M m to notmuch/compose
Change-Id: Ic6945b0508134904fbe435ac3049dbb40b8f7d21
Reviewed-on: https://cl.tvl.fyi/c/depot/+/805
Reviewed-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-06-30 22:09:35 +00:00
Griffin Smith
8091da8f0f feat(3p/haskellPackages): port in patches from xanthous
Add a few relatively uncontroversial patches to fix some broken packages
that I had developed for xanthous to the top-level third_party tree, so
they can be reused by other people in the monorepo

Change-Id: I68740477bda278c5dcc123080029ee4bd2cae37a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/740
Reviewed-by: Profpatsch <mail@profpatsch.de>
Reviewed-by: tazjin <mail@tazj.in>
2020-06-29 01:56:24 +00:00
Griffin Smith
1397cbce52 fix(xan): Disable comonad-extras
Turns out we don't actually need this, and the patch for it doesn't
cleanly apply anymore

Change-Id: Ifc95496211c7c1c779fd2544f4ff5a51aa3857ab
Reviewed-on: https://cl.tvl.fyi/c/depot/+/736
Reviewed-by: glittershark <grfn@gws.fyi>
2020-06-29 00:38:32 +00:00
Griffin Smith
48cc610fa4 fix(xan): Build without nixpkgs in NIX_PATH
CI doesn't have a nixpkgs channel (obvs), and we want to be able to
build from the depot tree, so reorder some stuff so we never depend on
nixpkgs

Change-Id: I99b513a3d7bcd64b6d167335856651e0ca66e33b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/734
2020-06-29 00:38:32 +00:00
Griffin Smith
e2273389d5 feat(xan): Any user input cancels autocommands
This is quite straightforward - any time the user presses a key that
resolves to a command, cancel any active autocommands.

Change-Id: Ibb48b0281b0dc6536d75c8957f8c8e5533ff6630
Reviewed-on: https://cl.tvl.fyi/c/depot/+/731
Reviewed-by: glittershark <grfn@gws.fyi>
2020-06-29 00:00:40 +00:00
Griffin Smith
90bfbb1667 chore(xan): explicit export list, remove unused pragma
Change-Id: I7089850f23b2b9612b6585a2760536fd1178cbc6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/730
Reviewed-by: glittershark <grfn@gws.fyi>
2020-06-29 00:00:40 +00:00
Griffin Smith
e66ee1c8dc refactor(gs/emacs): Remove outdated capture templates
Change-Id: I8f2deb21f8edf46768cfe9346c70bb9b63ba76e4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/729
Reviewed-by: glittershark <grfn@gws.fyi>
2020-06-28 23:41:44 +00:00
Griffin Smith
2b2e1152ce feat(gs/home): alias gcc->git checkout canon
To go along with git checkout master

Change-Id: I2a0d09e50cf82368e324e1dfbbd3dc868d30b9f2
Reviewed-on: https://cl.tvl.fyi/c/depot/+/728
Reviewed-by: glittershark <grfn@gws.fyi>
2020-06-28 23:40:06 +00:00
Griffin Smith
7252468b34 feat(xan): Add a benchmark suite
Change-Id: Id31960e7bc2243dfa53dc5e45b09d8253bdef852
Reviewed-on: https://cl.tvl.fyi/c/depot/+/727
Reviewed-by: glittershark <grfn@gws.fyi>
2020-06-28 23:38:48 +00:00
Griffin Smith
bf9b09bd8c feat(xan): Generate random villages
This algorithm is a little rough around the edges right now, but
generally the idea is we find a relatively closed-off region of the map,
and place rooms randomly on it, expanding them until they run into each
other, then we put doors in the walls of the rooms and a single door
opening into the region. Later on, we'll generate friendly (or
unfriendly!) NPCs to put in those rooms.

Change-Id: Ic989b9905f55ad92a01fdf6db11aa57afb4ce383
Reviewed-on: https://cl.tvl.fyi/c/depot/+/726
Reviewed-by: glittershark <grfn@gws.fyi>
2020-06-28 23:38:48 +00:00
Griffin Smith
6c7e14d2dc feat(xan): Use Witherable in the prelude
Install the witherable library, expose it in the prelude, and update all
call sites that are broken by that change.

This is a really nice library, and basically the ideal abstraction layer
for what it does.

Change-Id: I640e099318c1ecce0ad483bc336c379698bdab88
Reviewed-on: https://cl.tvl.fyi/c/depot/+/725
Reviewed-by: glittershark <grfn@gws.fyi>
2020-06-28 23:38:48 +00:00
Griffin Smith
20bc4aa10d feat(xan): Add a Marker entity type
It's useful, when developing new level gen techniques, to be able to
specially mark certain areas of the map during devlopment. This adds a
Marker entity type, which renders as a red X on the map and provides a
programmable description when examined. In the future it'll probably be
nice to toggle markers on/off just like we do with revealAll, but for
now it'll be fine to just remove the code to render them like we do with
debug traces.

Change-Id: Ief5d090809a0a4cbcc28f90e4902a5e38d42eeb5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/724
Reviewed-by: glittershark <grfn@gws.fyi>
2020-06-28 23:38:48 +00:00
Griffin Smith
3a1865bc5f feat(gs/home): Install nsfv-setup from depot
Change-Id: I17cc6268285d06f64f84f8b0d52a367ad8e3c837
Reviewed-on: https://cl.tvl.fyi/c/depot/+/580
Reviewed-by: glittershark <grfn@gws.fyi>
2020-06-26 13:58:05 +00:00
Griffin Smith
cf1ce7c987 refactor(gs/home): Install jsonnet from unstable
Change-Id: I88b7574b8f415a476b15e21e49ba52e9ade5dd7b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/579
Reviewed-by: glittershark <grfn@gws.fyi>
2020-06-26 13:56:41 +00:00
Griffin Smith
19e54738d7 feat(users/glittershark): Jsonnet in emacs + system
Add jsonnet-mode to emacs, and install jsonnet in the development.nix
module in home-manager.

Change-Id: I11d6417b6a059de151dbb5407682059e0d5a7d3c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/564
Reviewed-by: glittershark <grfn@gws.fyi>
2020-06-23 16:45:47 +00:00
Griffin Smith
9ead20ef9f feat(g/emacs): Add template for work org files
This includes an attempt at making this work with auto-insert, but that
didn't seem to have any effect - can just call it manually now

Change-Id: I0eac267b7d3387efd84a2dd0d32b1364fa06f328
Reviewed-on: https://cl.tvl.fyi/c/depot/+/563
Reviewed-by: glittershark <grfn@gws.fyi>
2020-06-23 14:25:37 +00:00
Griffin Smith
c7e0d962f0 fix(org-gcal): Don't render LOCATION if there isn't one
previously it'd just render:

    :LOCATION: key not found: location

Change-Id: I6454c1ef8c6c1096773978add1243097116d1e68
Reviewed-on: https://cl.tvl.fyi/c/depot/+/558
Reviewed-by: glittershark <grfn@gws.fyi>
2020-06-22 14:06:42 +00:00
Griffin Smith
5f018172ee feat(g/emacs): Use LSP for python
Change-Id: I4d36fc88026b8e266b6f15614a27bb4dbd4ff564
Reviewed-on: https://cl.tvl.fyi/c/depot/+/557
Reviewed-by: glittershark <grfn@gws.fyi>
2020-06-22 13:18:41 +00:00
Griffin Smith
7c36c3edf9 feat(g/emacs): Break out magit commands
Since these are defined in tvl.el now

Change-Id: I34c249dceef33dac46ffe5db8b42f057d2c12a4c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/556
Reviewed-by: glittershark <grfn@gws.fyi>
2020-06-22 13:18:41 +00:00
Griffin Smith
0367e8c303 fix(xanthous): Make floodFill faster
Speed up the floodFill algorithm by sprinkling in some strictness and
specializing it to the only type it's currently called at anyway.

Change-Id: I4557fc51b1c1036c127bfd5bee50748d8692ae74
Reviewed-on: https://cl.tvl.fyi/c/depot/+/555
Reviewed-by: glittershark <grfn@gws.fyi>
2020-06-22 00:40:19 +00:00
Griffin Smith
fbbb284444 feat(xanthous): install hp2pretty
heap profiling woo

Change-Id: Ie14bc81e9278e3c0d65bd22efc24cfaae43369ca
Reviewed-on: https://cl.tvl.fyi/c/depot/+/554
Reviewed-by: glittershark <grfn@gws.fyi>
2020-06-22 00:40:19 +00:00
Griffin Smith
aab362ef37 chore(xan): Install ghc-prof-flamegraph
Some things are slow, and it's time to profile them

Change-Id: I6a915db8bcc85adc7c3902a407cebb5a6f52d514
Reviewed-on: https://cl.tvl.fyi/c/depot/+/553
Reviewed-by: glittershark <grfn@gws.fyi>
2020-06-22 00:40:19 +00:00
Griffin Smith
ff77481367 feat(gs/emacs): actually require tvl
Change-Id: Iba79c85ebc87c6df13d69781255b3f6645233c2c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/506
Reviewed-by: glittershark <grfn@gws.fyi>
2020-06-19 18:29:53 +00:00
Griffin Smith
ef5dfb4822 feat(g/emacs): Install tvl
Change-Id: I5f923125b27890b14dc5b6a375861186406f5333
Reviewed-on: https://cl.tvl.fyi/c/depot/+/495
Reviewed-by: glittershark <grfn@gws.fyi>
2020-06-19 03:35:54 +00:00