This solution operates in O(n) time instead of O(n*log(n)) time, which
surprisingly isn't *that* big of a difference...
Consider a size of n of 10M...
1) ~10s
2) ~0.5s
So, yes, the O(n*log(n)) will take 100x longer to complete, but for an enormous
input size of 10M elements, it can still complete in under a minute. The
difference between that and the second, faster, algorithm, is just 9s.
Write a function that reads a string of compressed XML and outputs the
decompressed version.
Note to self: Now that I'm growing more comfortable writing parsers, I'd like to
become equally comfortable writing pretty-printers.
After a five year hiatus, I decided to attempt to solve the famous N queens
problem again. This time, instead of modeling the chess board using a
`[[Bool]]`, I'm using `[Integer]` where the `Integer` indicates which column has
a queen. This is a bit lighter in RAM.
- The new PANETTONE.IRC package contains the SEND-IRC-NOTIFICATION function,
which opens a new TCP socket to irccat (if it's running and configured) in
order to announce the creation of new issues.
- The IRCCATHOST and IRCCATPORT environment variables must be set for this to
work.
- Additionally, the ISSUECHANNEL environment variable may be used to direct
announcements at a given channel (otherwise it'll just use the first one).
Change-Id: I429a66f24d0f80ed10db173d6af7105fb1d3d023
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2077
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
This module configures irccat by creating a JSON configuration file
from a user-supplied Nix struct (this is not checked for correctness),
and merging it recursively with secrets from
`/etc/secrets/irccat.json` at service launch time.
This way we get the ability to configure (most) options declaratively
via Nix, while providing the secrets outside of Nix.
Side note: We need to figure out a secrets distribution mechanism.
Tested: Wrote a dummy config in whitby/default.nix locally and checked
that this builds, but I have not actually run the service yet. I
expect that some minor tweaks will end up being necessary.
Change-Id: I02a2e8dc40a7f8417fd77afcf8a12ac3df117988
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2074
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
Reviewed-by: glittershark <grfn@gws.fyi>
This is to be used for forwarding messages to our IRC channels.
Change-Id: I6362c6f50a22f504588a7161d41a170f4e7a6edc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2073
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
Reviewed-by: lukegb <lukegb@tvl.fyi>
Machines on which LANG is misconfigured have trouble with SBCL loading
files that contain characters in certain encodings. This overrides
whichever local LANG (if any) is set.
Change-Id: Ic4341a01c4393e7f697de6cecc58dea4f2d85987
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2076
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
... this should also update my system EXWM.
Change-Id: Idfbbda67613ac678dc2d5f82533e1c6176ab4a28
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2072
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
... I found this location in the logs, because the certs are now valid
for this, but I'm not actually sure if it's right.
Change-Id: I5ac88073e3bf6a95fead4c1d34515622c4416c6a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2070
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
Sometimes (like today) paroxysm crashes. We'd like it to restart if that
happens.
Change-Id: I98841096bcd6605c4279744ae5c65a9c92092a21
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2069
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
Considered adding hswaw, but after q3k left it'd be a single edge, so
perhaps no point.
Change-Id: Ifd8609a5227e5c3bee1d5726bb5cf70ebb2cefdf
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2053
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
This machine is significantly faster. Also, drop nixbuild, since the
transfer speed is too slow to make it worth it.
Change-Id: Ic14ef96e03a81dc429e4b4fec961c891dbb4b2b9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2066
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
My old macbook, which I still use sometimes
Change-Id: I3ad080083b67b6cfab4cd31a4dce0a80a7227bd5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2065
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
When posting a link to a PR created during an org headline, include the
name of the repository the PR was opened to in the link text.
Change-Id: I6c564aee3b098d3c6f96c7d7d609aa2638bc98e1
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2063
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
There's just not enough juice in this machine to run more than one.
Change-Id: I6e6afc86337ca023e718023e4789fc29b6d8e175
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2059
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
Don't enable whitby+nixbuild as remote builders on every machine (eg not
mugwump), only chupacabra
Change-Id: I8aa8f20d76da4ec0d8caa64ef04697b7e76cbc03
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2058
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
Eventually this should be generalized, but for now this is good enough +
nice to have
Change-Id: Icca815b651cfb6f8f0cd2d6a1f64e56c63d2fef5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2057
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
Fixes include:
1) users can now opt out of being mkov'd, instead their messages
will be ascii blocked out.
2) highlights are avoided, by learning names from the main tvl
channel and adding a dot after the first char, for example:
> 21:31:35 <•eta-eb> m.ulti: bas1l we quickly connect controller is mostly agreed
3) highlight avoidance is now stored in redis, to avoid restarts
from destroying the map and causing a bunch of highlights
upon restart
Change-Id: I1055992aab3a06aa1f4ba937fc3ef45f2f78cedc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2054
Tested-by: BuildkiteCI
Reviewed-by: cynthia <cynthia@tvl.fyi>
Reviewed-by: tazjin <mail@tazj.in>
Reviewed-by: ben <tvl@benjojo.co.uk>
Some overdue updates: People leaving, people joining. Not all new
people are in here yet either, but you have to start somewhere.
Change-Id: I66dfae443f60d090c02c619d09c12599b936b2dc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2051
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
Install some packages and enable the necessary services + udev stuff to
make yubikeys usable
Change-Id: I8aee8a8b06895880c8195f02fb57b1216a5fdffc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2049
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
In this case mostly so I can have it on mugwump
Change-Id: Ifa24caf607b30c1d034f4a9e7044ece88fcee38e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2048
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
Since buildkite is running on there, it'll be nice to be able to
download things. Obviously if this laptop ever becomes a laptop again
this'll have to go away (or just become the external domain)
Change-Id: I5fc49c061dbf79f8d523244bcf822e8d96fa6d42
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2047
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
I accidentally dropped this when reconfiguring things around to get
mugwump working, and when I rebuilt my x session turned off!
Change-Id: I252c90b6f4d796fef1f8183739fcc8dbfdd0fbf4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2046
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
Having SSL on all the vhosts in nginx breaks the prometheus scraper with
the default config, since because it's targeting a different domain the
cert validation fails. It's pointing at localhost, so it's fine to just
have it not validate.
Change-Id: I1cbddc73335d4fa060115c253d69e27059a3113f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2045
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
Add a couple of buildkite agents, based off of the config we're using
for whitby (thanks!) for building my own projects that are closed
source.
Change-Id: I2c73538595002fdf4116f534dc9a5806f17e0558
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2044
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
The default size is a little bit large
Change-Id: I9f7096cdf9f9ba8433e6ead6124bdc04fc88877b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2043
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
The one I had downloaded before was empty, accidentally
Change-Id: I37c2ce8c556aa3f728ee675ccf14ace8416dcca4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2042
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI