Commit graph

10823 commits

Author SHA1 Message Date
Vincent Ambo
f3165f48aa refactor(3p/nix/libexpr): Make nix::AttrName a std::variant
nix:AttrName was one of the few classes that relied on the default
constructor of nix::Symbol (which I am trying to remove in a separate
change).

The class essentially represents the name of an attribute in a set,
which is either just a string expression or a dynamically evaluated
expression (e.g. string interpolation).

Previously it would be constructed by only setting one of the fields
and defaulting the other, now it is an explicit std::variant.

Note that there are several code paths where not all eventualities are
handled and this code is bug-for-bug compatible with those, except
that unknown conditions (which should never work) are now throwing
instead of silently doing ... something.

The language tests pass with this change, and the depot derivations
that I tested with evaluated successfully.

Change-Id: Icf1ee60a5f8308f4ab18a82749e00cf37a938a8f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1138
Reviewed-by: edef <edef@edef.eu>
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-07-13 20:14:49 +00:00
Vincent Ambo
693661fe87 feat(3p/nix/libutil): Add util::overloaded class for std::visitor
Implements the fairly common lambda overload class used for std::visit
over variants and other things that require groups of callables.

Change-Id: Ia7448b7e1bd349b4909974758e6e6303a80d86d7
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1137
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
Reviewed-by: edef <edef@edef.eu>
2020-07-13 20:14:49 +00:00
Griffin Smith
2832ea43ea feat(owothia): Add realname
Change-Id: Ica75f7ec2f849431ebc5c4d1c299f61969bee03e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1135
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-07-13 19:13:26 +00:00
Griffin Smith
6c98805500 feat(owothia): Remove stopwords
Remove a (currently rather brief) list of stopwords from the verbs
considered for owo'ing. The specific case I wanted to remove here is the
verb "'s" from a contraction (there have been a fair number of "'s me
owo") but I've added a few more just for good measure.

Change-Id: I53994663db1f8767ec5dc3ddc58dd35fb6cd6d70
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1134
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-07-13 19:13:26 +00:00
Vincent Ambo
f808afc89c feat(tazjin/frog): Install patched rr
Frog has a ThreadRipper, and rr won't run at all without this patch.

Change-Id: Ie7e7c3567fb395ef8e7cd23061f099f91c7882ed
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1130
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-07-13 17:56:22 +00:00
Vincent Ambo
f70afe61a4 feat(3p/rr): Add ThreadRipper compatibility patch
Change-Id: Ia73883075e11bccaa234d3b1212f3ab9363f234c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1129
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
2020-07-13 17:56:22 +00:00
Griffin Smith
4e52e2bd3d chore(owothia): ignore build directory
Change-Id: I5381a1a90323e7d15e47963b99d8c3ec65a53673
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1133
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-07-13 17:51:16 +00:00
Griffin Smith
68df913b8a feat(owothia): Make chance configurable
Make the chance of an owo configurable via an _OWO_CHANCE env var.

Change-Id: Ia4d0e426b2825c6a7becc073ff99ae8037637032
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1132
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-13 17:42:48 +00:00
Griffin Smith
2eb90cbca1 feat(owothia): Add owothia
Add owothia, an irc bot that picks a random verb out of a random subset
of messages and replies with a message of the form "<verb> me owo".

it's incredibly messy, full of warnings, includes a *number* of harcoded
things, but also is hilarious.

Change-Id: I73cacd533bbbff9e753d1e542308da25247a7034
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1063
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
2020-07-13 17:31:32 +00:00
eta
7e0b2cd3f3 feat(tvldb): parse CTCP ACTIONs properly, allow use of aliases in ??! syntax
Change-Id: I3cc0e88a94ea0edc470ff9e0da203f1193d40f9f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1128
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-13 17:00:14 +00:00
Vincent Ambo
356dde149f feat(whitby): Configure Gerrit backups on whitby
Change-Id: I84245fb809725853a301f217cdb11eacc1984cae
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1103
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
2020-07-12 14:11:24 +00:00
Vincent Ambo
e035c46c6e chore(whitby): Give the git user a home directory
Change-Id: I5e6e13fa8a1656434ca897c83fe7ac48eb869369
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1102
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
2020-07-12 13:51:20 +00:00
Vincent Ambo
ec46fdf28c chore(tazjin/camden): Remove cgit & gerrit deployments
Change-Id: Iaf34d0d005285a367fa9730093b553d38acb8ae5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1101
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-07-12 13:40:12 +00:00
Vincent Ambo
8b6b3df5c4 fix(www/base): Add nginx fix timer
Change-Id: Iec66fea0f3991ba74aede3911ea9f6ae5adb0188
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1082
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
2020-07-12 13:36:45 +00:00
Vincent Ambo
405b7ec95b feat(whitby): Enable Gerrit & cgit deployments
Change-Id: Ic701552e130252cfff005938d9c4e98423a7a96a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1069
Reviewed-by: lukegb <lukegb@tvl.fyi>
Tested-by: BuildkiteCI
2020-07-12 13:36:45 +00:00
Vincent Ambo
d76f1eb10b chore(tazjin/camden): Remove Sourcegraph & TVL website deployments
These are now on whitby.

Change-Id: I25b1cdedf4ce9cdb377a40edbbbce123938b6828
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1068
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-07-12 13:36:45 +00:00
Vincent Ambo
93575158c6 feat(whitby): Enable SourceGraph server
Change-Id: Ia8a20d54a4ac77d64f5e3fd2255ffad78dce0fb0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1067
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
2020-07-12 13:36:45 +00:00
Vincent Ambo
6ed4e7d4d1 chore(sourcegraph): Bump version to 3.17.3
Change-Id: I6bc25d039cbe497bc9aa8784ac2f95219b5c617c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1066
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
2020-07-12 13:36:45 +00:00
Vincent Ambo
5abdc16f6f feat(nixos/sourcegraph): Move cheddar server to module & make ports configurable
Change-Id: Iaf0c854b148062e30d426c2e92638932caf2e92e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1065
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
2020-07-12 13:36:45 +00:00
Vincent Ambo
90b8433828 feat(nixos/www): Add configuration for tvl.fyi homepage
... and enable it on whitby

Change-Id: Ife45f15227f9d95823ebd3b97d2a17175b84eaff
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1064
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
2020-07-12 13:36:45 +00:00
Cameron Kingsbury
8065004ae3 docs(web/tvl): update tvl graph
Change-Id: I60d90f59839bb68a1ae95770c014932e9e7afa51
Reviewed-on: https://cl.tvl.fyi/c/depot/+/940
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-07-12 00:04:42 +00:00
Vincent Ambo
31f65f5d2b feat(whitby): Move over clbot deployment from camden
There is only one minor configuration change: CLBot now connects to
cl.tvl.fyi, instead of localhost, because Gerrit is still on camden.

Change-Id: Ibd8d46ec2c18312a270471a2f0be3e58eaf0cbab
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1062
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
2020-07-11 12:20:17 +00:00
Vincent Ambo
ea428faf99 feat(whitby): Enable smtprelay module
This is required for the Gerrit setup.

Change-Id: I02e03dafe36e6c47ffabf4d590e0c6f1dea027e6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1061
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
2020-07-11 11:58:43 +00:00
Vincent Ambo
b53d25ab3f fix(monorepo-gerrit): Use Google's CDN to serve static assets
Change-Id: Ib4ffc1d9b030a5982b9063c1d6322fb87ba7f910
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1022
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
2020-07-11 01:00:31 +00:00
Vincent Ambo
5de644a597 chore(monorepo-gerrit): Increase Gerrit's heap limit to 4g
(this translates to -Xmx)

Change-Id: I31bbbd247952fa6a592cb66ad144025af640d2db
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1021
Tested-by: BuildkiteCI
Reviewed-by: isomer <isomer@tvl.fyi>
2020-07-11 01:00:31 +00:00
Vincent Ambo
a8c77b9c2a fix(monorepo-gerrit): Explicitly set gerrit.docUrl
This prevents a request that takes >1s on each page load.

Change-Id: Ic91bb602e3059b1f17681aa468739bb0a103f8cf
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1003
Tested-by: BuildkiteCI
Reviewed-by: isomer <isomer@tvl.fyi>
2020-07-11 01:00:31 +00:00
Luke Granger-Brown
b65575fc31 fix(gerrit): Load fonts from Google Fonts instead.
This also incidentally includes a fix for _not_ loading fonts from
Google Fonts, but I don't really care about that.

Change-Id: I6e00791d0ba06cb1e3c029e1b8617c33000d2ab1
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1041
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-07-11 00:57:35 +00:00
Vincent Ambo
9eb248e0c5 feat(tazjin): tazjin
tazjin: https://github.com/tazjin/tazjin/issues/1
Change-Id: I655670fed1dd1ba7e9034f165238e2d69b228ee5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1002
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
2020-07-10 23:23:41 +00:00
Eelco Dolstra
5e2151b521 fix(3p/nix/repl): Scan NixRepl for GC roots
Backport of b244e65cdb

Fixes https://github.com/NixOS/nix/issues/3175

------

Original fault description by puck:

I suspect I found the issue: The Nix Command structs are stored on the
heap (using ref<T>, a wrapper around std::shared_ptr<T>), which means
that any pointers that the NixRepl struct contains are eligible to be
reaped by the GC. This includes, but is not limited to, the Env
pointer, which seems to cause most of the random segfaults, or random
other values in the environment, which seems to be what @arianvp
experienced too.

Change-Id: I376d7cfd432daaa6f1fbbf77788ff048082f34e5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1001
Tested-by: BuildkiteCI
Reviewed-by: Kane York <rikingcoding@gmail.com>
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-10 22:25:30 +00:00
Andreas Rammhold
1937bc8624 fix(3p/nix/libstore): use exception instead of assertion when storepath is malformed
Previously the nix-daemon would crash if a user fed it invalid store
paths for drv files. The crash was due to the changed assertion
triggering. Whenever that assertion would hit the nix-daemon process
along with all it's current childs (running builds from all users) would
be interrupted.

Before this patch:

 $ nix-store --realise /nix/store/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.drv
 don't know how to build these paths:
   /nix/store/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.drv
 error: unexpected end-of-file

 < nix-daemon terminates >

With this patch:

 $ nix-store --realise /nix/store/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.drv
 don't know how to build these paths:
   /nix/store/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.drv
 error: path '/nix/store/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.drv' is not a valid store path

 < nix-daemon does *NOT* terminate >

Change-Id: I01c5048c8a43a8b9154bdeb781d05b7744869ec0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/981
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
Reviewed-by: tazjin <mail@tazj.in>
2020-07-10 19:41:52 +00:00
Andreas Rammhold
d06237707b feat(tvl-slapd): add andi
Message-Id: <20200710190623.26573-1-andi@notmuch.email>
Change-Id: Ibd74f93f589beecbf7fa9090550ecf95caa0a3b0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/982
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-07-10 19:10:18 +00:00
Luke Granger-Brown
021d688ccc chore(gerrit): update to 3.2.2
Change-Id: Ia41e19250f9f900c73904553a931f0f4dde3a5bf
Reviewed-on: https://cl.tvl.fyi/c/depot/+/860
Tested-by: BuildkiteCI
Reviewed-by: Kane York <rikingcoding@gmail.com>
Reviewed-by: tazjin <mail@tazj.in>
Reviewed-by: isomer <isomer@tvl.fyi>
2020-07-10 18:50:13 +00:00
Vincent Ambo
b485203b8c feat(3p/nix): Add additional worker protocol actions to proto
This takes us about halfway through worker-protocol.hh

I have left out the documentation strings for some of these items
because I don't feel that I can currently write an unambigous
description of them. For now I am just attempting to match the types.

Change-Id: Iae64b1676152fe4ea069e2021b75ad76465cf368
Reviewed-on: https://cl.tvl.fyi/c/depot/+/960
Tested-by: BuildkiteCI
Reviewed-by: isomer <isomer@tvl.fyi>
2020-07-10 17:12:39 +00:00
Vincent Ambo
93eb10566a docs(3p/nix): Update links & other things in README
Change-Id: I1a111c11a83f0506e0973615848cc9c0ef4765e2
Reviewed-on: https://cl.tvl.fyi/c/depot/+/959
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-07-09 22:53:28 +00:00
Griffin Smith
e63b0ea892 fix(gs/emacs): Trim input strings for ERC
I send a lot of accidental newlines after messages because my muscle
memory is very intent on hitting "o" to get into insert mode.

Change-Id: Iecd469d1d8d2053e68837b3b65399cb272d7fc29
Reviewed-on: https://cl.tvl.fyi/c/depot/+/958
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-09 14:51:37 +00:00
Vincent Ambo
e2e1579185 feat(tazjin/camden): Configure Quassel core instance
I'm not actually sure if this will apply cleanly, because the new
NixOS ACME module is kind of broken.

Change-Id: I39584333dbea0a5f7b72e68d5e9f752a4c31bfe6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/957
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-07-08 22:10:08 +00:00
Vincent Ambo
d6bf3207b0 feat(tazjin/frog): Install Quassel client on frog
Change-Id: I5abcf0768a84b2010acefef595d05d4f24f6d622
Reviewed-on: https://cl.tvl.fyi/c/depot/+/956
Tested-by: BuildkiteCI
Reviewed-by: isomer <isomer@tvl.fyi>
2020-07-08 22:10:08 +00:00
Vincent Ambo
449afaa384 feat(ops/nixos): Add module for running a Quassel daemon
The upstream module is not flexible enough for my needs, so I made my
own.

Change-Id: Ie9f786da7eb8c878e0782b07a075c064ad8cd253
Reviewed-on: https://cl.tvl.fyi/c/depot/+/953
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-08 22:10:08 +00:00
Griffin Smith
df80e19bf5 refactor(gs/emacs): Use IRCCloud bouncer
Not using znc.gws.fyi anymore

Change-Id: I6461096c949d68fdb0a061359e7273ccae9f5fef
Reviewed-on: https://cl.tvl.fyi/c/depot/+/955
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-08 20:20:54 +00:00
Luke Granger-Brown
2c7e9986e2 chore(apereo-cas): fix up configuration
- X-Forwarded-Proto support so it knows it's behind TLS
- Remove extraneous logs and just log to stdout so it's caught be systemd

Change-Id: I650777bbfd24a1922f26967ffff7da06d14b6639
Reviewed-on: https://cl.tvl.fyi/c/depot/+/952
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-08 17:49:25 +00:00
Griffin Smith
37ec60c706 feat(gs/i3): Add dottime to status bar
woooo dottime

Change-Id: I41ea0ca70c38e16d716a172c2d2b4d3f983f6e5f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/954
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-08 15:59:53 +00:00
tazjin
c9afd22c44 chore(3p/lieer): Revert "Work around issues in Google Mail API"
This reverts commit 8b58593193.

Reason for revert: Google has fixed the upstream issue and this is not necessary anymore.

Change-Id: Ib1f7cfbc0e7e0997239514e9be75d2deab8c3c67
Reviewed-on: https://cl.tvl.fyi/c/depot/+/961
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-07 21:50:01 +00:00
Luke Granger-Brown
cb52c9e41d chore(ops/nixos/tvl-sso): add secrets
Change-Id: I29f5e762852593f05b9936d5635aadcc7eba2840
Reviewed-on: https://cl.tvl.fyi/c/depot/+/951
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-07-06 23:08:00 +00:00
Luke Granger-Brown
1e8dbd5b1b fix(ops/nixos/tvl-sso): correct path to executable
Change-Id: I29f5e762852593f05b9936d5635aadcc7eba283f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/950
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-07-06 23:08:00 +00:00
Luke Granger-Brown
57ade16b9d feat(whitby): add apereo-cas/tvl-sso
Change-Id: I29f5e762852593f05b9936d5635aadcc7eba283e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/935
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-07-06 22:59:56 +00:00
Griffin Smith
90f23b8de1 fix(gs/emacs): Add org files to agenda recursively
Apparently just putting the directory in there only sees top-level
files, rather than descending a directory.

Change-Id: If9febb37f59754bcfe442fb413df475d83e0193f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/949
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-06 22:55:39 +00:00
Griffin Smith
0dfea78424 feat(gs/keyboard): Add the start of an FPS layer
Not having space on my left hand is definitely not great for FPSes

Change-Id: Ie69201c5a3a2696a7d606be3979e1bfa11eb261a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/948
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-06 22:52:02 +00:00
Griffin Smith
9ec0f4d0c8 feat(gs/keyboard): Integrate my layout with the depot
Integrate the keyboard layout for my Ergodox EZ, which is a layout for
QMK, with the depot, including exposing several cross-compilation
packages necessary to compile qmk for avr in third_party.

Change-Id: Idd43169a0a3cf0be2bd1a578fdaff70388a58bfc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/947
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-07-06 22:52:02 +00:00
Luke Granger-Brown
aae3d25234 feat(ops/nixos/www): create login.tvl.fyi host
Change-Id: Ifad80915a61a1a5ac14e598a9d788aec3482693c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/936
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-07-06 22:48:40 +00:00
Luke Granger-Brown
310302637b feat(3p/apereo-cas): add TVL-specific configuration to overlay
Change-Id: I5193cb7695d37c1770257741e600d7029b6596a0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/934
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-07-06 22:13:32 +00:00