Commit graph

76 commits

Author SHA1 Message Date
Griffin Smith
9e622eceae refactor(gws.fyi): Register GC roots
Don't want this getting GCed in between execution, so remove
--no-out-link from the nix-build invocation.

Change-Id: Ib786d46f84938f45f51823781eecb88338120526
Reviewed-on: https://cl.tvl.fyi/c/depot/+/943
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-06 15:34:04 +00:00
Griffin Smith
b608c4ef25 refactor(gws.fyi): update freenode nick
Change-Id: Id1107c13f10726ecb8a14c14e6532c17f0b5c54a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/942
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-06 15:31:43 +00:00
Griffin Smith
b13da9ebdd refactor(gws.fyi): Point to sourcegraph
Change-Id: I658ca00a9e5cdf69e884edb872816c192f794683
Reviewed-on: https://cl.tvl.fyi/c/depot/+/941
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-06 15:31:43 +00:00
Griffin Smith
a73714a93c feat(ops/nixos): Add generic rebuild-system script
This adds a first crack at one idea for a generic, non-user-specific
rebuild-system script to ops.nixos.rebuild-system. The idea here is that
we enumerate all the nixos systems stored in the monorepo (similarly to
what we do for ci-builds right now) then search through them by hostname
to find the one matching the hostname of the current system, which is an
attempt at a more generic version of tazjin's rebuilder script which
does the same thing but with an explicit case block.

As a caveat, it feels like there's a slight possibility that this way of
finding systems is going to get slow to evaluate - on my system it feels
fine but if it grows out of hand it's probably feasible to just bake
this into the built script as a dynamically generated case statement.

Change-Id: I2e4c5401913b6f4d936ab48ba2f95f96e0e78eb4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/894
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
2020-07-06 15:16:36 +00:00
Griffin Smith
8bcdff263c refactor(gs/emacs): Break email config into its own file
Change-Id: I90327cbd2d8a735cdedae7f7b5412959cf710aef
Reviewed-on: https://cl.tvl.fyi/c/depot/+/938
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-06 15:09:59 +00:00
Griffin Smith
8545a61775 feat(gs/emacs): Run hlint after lsp
Change-Id: I57413e181354014eee2da7564ac3676b840dee94
Reviewed-on: https://cl.tvl.fyi/c/depot/+/913
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-04 15:30:52 +00:00
Griffin Smith
020f6081cd feat(xan): Install hlint in shell
Change-Id: I93035bc05ff7f47515efe18703f296129ed9e7f8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/911
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-07-04 15:30:52 +00:00
Griffin Smith
9b8d3185fe refactor(xan): Switch to V2 over tuples most places
These are generally rather nicer to work due to some typeclass instances,
and integrate better with other ecosystems for things like linear
algebra etc.

Change-Id: I546c8da7b17234648f3d612b28741c1fded25447
Reviewed-on: https://cl.tvl.fyi/c/depot/+/910
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-04 15:30:52 +00:00
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