Add a cabal file and move into subdir.
Use MyPrelude & fix a few linter warnings.
Change-Id: I19d5ba47be789fc24f8e02ee8721f73c706ae3e9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/8465
Reviewed-by: Profpatsch <mail@profpatsch.de>
Autosubmit: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
* Satisfy new assert that the corresponding shell needs to be enabled
via programs.* if it is as the login shell of at least one user.
* //users/tazjin: “Address” removal of hardware.video.hidpi option.
* //3p/gerrit: update fetch sha256
Change-Id: Id0988a0ea7f393d6b7848a7104fc3526ee1177f4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/8407
Autosubmit: sterni <sternenseemann@systemli.org>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
* //users/wpcarro/avaSystem: disable hidpi
Recent changes have made nixpkgs adopt the position that hidpi
optimization can't be done generically and at the very least needs to
know a specific DPI number to optimize for. In addition to knowledge
of the display(s) in question (i.e. wpcarro needs to do this) the
issue <https://github.com/NixOS/nixpkgs/issues/222805> can give
guidance as to how to restore the desired hidpi look and feel.
Change-Id: Ia4b079a06dcb710050619f350cd0655216b4a42f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/8345
Autosubmit: sterni <sternenseemann@systemli.org>
Reviewed-by: wpcarro <wpcarro@gmail.com>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Starting with 1.18.1 we no longer need to pass an extra flag to work
around the log4j CVE, so baseJvmOpts can be empty.
Change-Id: I6d6c5a366ecbb499b2e3945db81ca0a8b2e2dcbf
Reviewed-on: https://cl.tvl.fyi/c/depot/+/8332
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
Autosubmit: sterni <sternenseemann@systemli.org>
One normal chromium is enough. google-chrome is not needed because
Chromecasts usually don't work anymore anyways.
Change-Id: I48bed05c56bd6f450be393cf727930eaad5cd6b9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/8231
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
* //3p/sources: temporarily switch to nixos-unstable-small, since it
includes:
- evans update we are interested in, allowing us to drop our evans
patches.
- awscli2 update that unbreaks //users/grfn
* //3p/overlays/tvl:
- drop evans patches
- update tdlib to 1.8.11 to make tazjin's emacs happy
- drop obsolete mullvad workaround
* //users/grfn/keyboard: disable -Werror for array-bounds warnings.
Seems like a non-trivial job to resolve the warning properly,
hopefully GCC 12 still generates the same working code as GCC 11 used
to.
* //users/grfn/system/home: remove yubikey-manager-qt.
Yubico can't seem to keep that on pace with yubikey-manager. It
requires a <5 version of the latter which is incompatible with the
recently released cryptography >= 39.
* //3p/gerrit: update changed FOD hash for the fetch step
Change-Id: I590ab996247e69b0ab5059cd173840ef4ebfe939
Reviewed-on: https://cl.tvl.fyi/c/depot/+/8133
Tested-by: BuildkiteCI
Reviewed-by: flokli <flokli@flokli.de>
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: sterni <sternenseemann@systemli.org>
Reviewed-by: grfn <grfn@gws.fyi>
I didn’t ever get aerc to work, so let’s get rid of this.
Change-Id: Ie59b23fe7d5af70ca82c1c624c1e11d21da735f4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/8189
Autosubmit: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
Reviewed-by: sterni <sternenseemann@systemli.org>
Includes a frontend bug fix and a closure size reduction of the server
application.
Change-Id: I5713a5348281acb7126c1fd85a637a6fff969c98
Reviewed-on: https://cl.tvl.fyi/c/depot/+/8187
Reviewed-by: sterni <sternenseemann@systemli.org>
Autosubmit: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
This is an experiment for tvix-eval.
Change-Id: Ic752b5b125cefefeb1343e38a70beb364478e6eb
Reviewed-on: https://cl.tvl.fyi/c/depot/+/8131
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
This also removes the globally available `data.data.transactions`.
Change-Id: I674a772ac91f01ff8c2d211157bd567391ab1765
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7913
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Hacked this together during my week-off while I was in Telluride, CO. The git
history is quite sloppy; so is some of the code. But it (mostly) works as a
demo, and that was the point.
Change-Id: Icfbc277090b69a802c00becdbd162652e4e8e156
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7904
Reviewed-by: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Autosubmit: wpcarro <wpcarro@gmail.com>
I'm considering rearchitecting the parser to align with the "Crafting
Interpreters" wisdom. I don't really want to do that right now, and the current
implementation fits my use-case. If I discover bugs or want to add more
features, I'll revisit the issue.
Change-Id: Ia767933519ea9fc0fe954cb142f21b02e13a1f40
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7883
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
I was (and still ~am) a bit leery of supporting this (scope creep?), but I need
it in two of my personal projects all within the first O(days) of using this. So
I'm thinking that if this tool is going to be a workhorse, I'll need to
sacrifice some purity for practicality. Future me will find out the real
answer...
Change-Id: Ia71a8cf6627062440476b638d2c194c2c9ac97c4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7878
Autosubmit: wpcarro <wpcarro@gmail.com>
Reviewed-by: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Google Cloud Run uses images to define services, so:
```shell
$ mg build :image
$ docker load <./result
$ docker tag website:latest gcr.io/wpcarros-infrastructure/website:latest
$ docker push gcr.io/wpcarros-infrastructure/website:latest
```
And then restart the service with `:latest`.
TODO: Figure-out some ~sane CI solution (maybe personal Buildkite).
Change-Id: I5734e3344779552aba7e0478321ba99610204e29
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7735
Reviewed-by: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Trying to prune my monthly GCP bill, which is ~$60. Will run my website as a
stateless Google Cloud Run service and see if that'll help.
I still need to figure out what to do with my Quassel instance...
Change-Id: I934b55029f14132af74cabde5e0ddb9e2d3bb933
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7734
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
This seems to have been turned on in ~November/December 2022, and is
wreaking havoc on my system usability as it keeps killing my X session
as soon as any kind of load happens on the system.
This can be as little as accidentally playing two YouTube videos (as
each YouTube tab can take 3-5GiB of RAM), or trying to process a
dataset locally.
I'm not sure if this is the culprit, but it sure seems like it.
Change-Id: Id742b4506262cc362c9fd3f2575aea23e5c092a7
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7858
Tested-by: BuildkiteCI
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
This is currently hosted by the company, and I'm assigning my
copyright to the company, which also runs an ad placement on the page.
Note that the NixOS module for hosting it has not been moved yet.
Change-Id: Iba9e1cab9370faa79e43c3344fbfbbbabead50b3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7857
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Adds a simple json quasiquoter thingy.
Json can be sent to the `/mailfilter?action=update` endpoint.
Change-Id: Iba80c2ab69178e431519933c4a01cd68aaa9f637
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7839
Tested-by: BuildkiteCI
Autosubmit: Profpatsch <mail@profpatsch.de>
Reviewed-by: Profpatsch <mail@profpatsch.de>
Move the tool parsers down. Get `pass` from the tools. Add some
helpers for running tools.
Change-Id: Id2c47be58417faf434966eaae81e4944372f1bd5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7838
Autosubmit: Profpatsch <mail@profpatsch.de>
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
packed_simd is deprecated, but we don't need very much SIMD:
* _mm256_set1_epi8 / vpbroadcastb (splat)
* _mm256_cmpgt_epi8 / vpcmpgtb (comparison)
* _mm256_movemask_epi8 / vpmovmskb (compress to bitmask)
This also simplifies the code by only vectorising the bare minimum,
since we just get a bitmask and operate in scalar mode as soon as
possible.
We don't need nightly Rust anymore: we're using only stable intrinsics.
Change-Id: Id410b5fef2549f3c97f48049f722f1e643e68553
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7687
Reviewed-by: edef <edef@edef.eu>
Tested-by: BuildkiteCI
This isn't just a наречие, it also functions as a предлог.
Change-Id: Id2e2ccbe0a8b7f73739289d531b6d1fda81bed2d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7799
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Autosubmit: tazjin <tazjin@tvl.su>
Implement a parser for tools, and instantiate once for
arglib-netencode arguments (parsed by the new netencode parser) and
one just from the PATH for testing from the repl.
Change-Id: Id0cf264100123a87700880c7230d68426224fd0d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7798
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
A simple categorical parser that does not implement Monad, and does
not contain an `m` and some rudementary error message handling.
In the future I’d probably want to wrap everything in an additional
`m`, so that subparsers can somehow use `Selective` to throw errors
from within `m` that contain the parsing context if at all possible.
Hard to do without Monad, I have to say. Not even stuff like `StateT`
works without the inner `m` implementing `Monad`.
Change-Id: I1366eda606ddfb019637b09c82d8b0e30bd4e318
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7797
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
Wraps a command in some arguments via arglib.
Also refactor the module to be a `let`.
Change-Id: Ie9b64f7d40c57a4e57bd4d6c411bef5ef57a2b59
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7796
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
After experimenting with existing "data engineering solutions" like
datasette, periscope, I think rolling my own dataviz for this project might be
easiest (surprisingly).
**Wish List:**
- Benthos job to dump my financial transactions into a SQL table.
- Scatter plot of expenses (or just transactions generally).
- Support filtering the data using "Simple Select" query language.
- Stacked histogram of income/expenses with a line overlaying the "idealized"
savings.
Change-Id: Iec2948641dba8c4c6d5ad19a0e1ea142b81198af
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7784
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
For my tooling, I want to be able to use vscode language servers for
all subprojects, and the best ways to do that I’ve found so far is to
add a global shell.nix which contains the transitive closure of all
dependencies I need.
This is not /nice/ per se, but it does the job with minimal effort
right now and gives me a good development environment for all these
crazy & dumb experiments in here.
Change-Id: I717a72f490e9d58d45e4e15e9ba604c36b299814
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7794
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
This is so we can use the rust language server for the file.
Change-Id: I8a2fe15ea67fd0e26814fda57bf0cace0d264cae
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7792
Autosubmit: Profpatsch <mail@profpatsch.de>
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
Instead of compiling the module, run it in interpreted mode. Saves on
linking times and can probably be driven to do cooler things in the
future, like calling functions directly via an environment variable or
something.
Change-Id: I9c835005462cdd86055fb7702630a44f78c36107
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7781
Autosubmit: Profpatsch <mail@profpatsch.de>
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
In the end, it should be possible to write a single config which is
pushed to the service to steer which emails arrive.
This implements some helper functions and some more endpoints.
We implement Semigroup/Monoid for labelled tuples.
Change-Id: I48bfd311e4a7bba5bc08a9681d823a6a7d5175a8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7727
Reviewed-by: Profpatsch <mail@profpatsch.de>
Autosubmit: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
One step closer towards a declarative description of filters.
In the end, the filters should be updated by their `rulename` field.
This implements a simple scheme where we list all filters, parse some
of their fields, use those fields to determine whether we want to
change the filters, and then only update the filters where we changed
something.
Unfortunately, we can only update the filters one-by-one (a common
mistake in APIs).
Pulls in some modules for Json parsing that I like to use, and an
`ErrorTree` abstraction over `Error` and `Data.Tree`.
Change-Id: Iea45d5aa0a3fee7ec570f06d3e77009769091274
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7720
Autosubmit: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
The function & error message said it was searching upwards for
shell.nix, but it didn’t actually search upwards.
Change-Id: I7b81d20a1cc19fdccdc7828427cf17b42e57f414
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7718
Tested-by: BuildkiteCI
Autosubmit: Profpatsch <mail@profpatsch.de>
Reviewed-by: Profpatsch <mail@profpatsch.de>
A smol little tool to talk to the mailbox.org backend. This is handy
for eventually setting stuff like email filters. Their API is absolute
crap, but we’ll deal with it.
Updates the prelude & adds some pretty printing helpers.
Change-Id: Ie3688f8ee1d7f23c65bcf4bfecc00c8269dae788
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7717
Reviewed-by: Profpatsch <mail@profpatsch.de>
Autosubmit: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
The use of superrecord here can be replaced by simple labelled tuples.
Change-Id: I23690cd0b88896440521fe81e83347ef4773d4a0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7713
Reviewed-by: sterni <sternenseemann@systemli.org>
Autosubmit: Profpatsch <mail@profpatsch.de>
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
* //users/grfn/modules: change deprecated loaOf to attrsOf, the former
is an alias for the latter nowadays.
Change-Id: I6fa71b43f8c1d0adeafb8b78b197e80733f5392a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7679
Autosubmit: sterni <sternenseemann@systemli.org>
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
This is the latest version before 1.0 which has some bigger changes as
brick's EventM gains the ability to be MonadState which requires
adjusting basically all App code.
In 0.72, handleEditorEvent started taking a BrickEvent, so we no longer
need to unwrap the VtyEvent in handlePromptEvent.
Change-Id: Ic6a1ce6e21ba46177d3ce0b8a124abe7d8951464
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7666
Autosubmit: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
The main change is that nixpkgs updated to GHC 9.2 and Stackage LTS-20,
so we suffer from a bit of churn.
* //3p/overlays/haskell:
- use updated dhall-nix patch for hnix 0.16
- use superrecord fork with fixes for GHC 9.2
- use graphmod-1.4.5.1 which has support for GHC 9.2
* //users/Profpatsch: relax constraints on base in Haskell pkgs
* //users/Profpatsch/cas-serve: inherit superrecord from 3p
* //users/grfn/xanthous:
- //3p/overlays/haskell for 8.10.7:
* Provide missing dependency of binary-orphans. Fix already commited
upstream as e238c3fdaab710a2ce0135e5a77cd7e6bb023a22, can be
dropped when channel advances.
* Downgrade to brick 0.71.1, the latest version xanthous supports.
- Adjust to generic-arbitrary >= 1.0, providing Arg constraints where
necessary.
- Increase constraint-solver-iterations to 6 (default 4), so
Xanthous.Command and Xanthous.Data can be typechecked.
- Drop NFData instances for Key and Modifier which have been added to
vty upstream.
Change-Id: I2170438c2ce8130b65f1a9fe07c4fecab5683d66
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7654
Autosubmit: sterni <sternenseemann@systemli.org>
Reviewed-by: tazjin <tazjin@tvl.su>
Reviewed-by: grfn <grfn@gws.fyi>
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
Three small helper functions that can display module graphs of haskell
projects.
Change-Id: I7395ffc8b025f4322efc6c1e494e6a6a0145342c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7675
Tested-by: BuildkiteCI
Autosubmit: Profpatsch <mail@profpatsch.de>
Reviewed-by: Profpatsch <mail@profpatsch.de>
Apparently I had forgotten that these already exist on the toplevel.
At one point I should unify the two namespaces, but for now at least
acknowledge that they are the same functions.
Change-Id: Ie7d14de0b65f6c750d97630798c65f777b3eda8c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7673
Reviewed-by: Profpatsch <mail@profpatsch.de>
Autosubmit: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
The commit graph can be quite slow for repositories like nixpkgs, so it
is disabled there. For this we refactor the module a bit, allowing us to
set arbitrary cgit settings for repositories. This feature can also
handle all instances of defaultBranch now.
Change-Id: I22e44b7398d2692e8cc16555fb5203ad6a7a69a9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7672
Reviewed-by: sterni <sternenseemann@systemli.org>
Autosubmit: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
BQNLIBS dependency also needs to be provided in the derivation running
all solutions.
Change-Id: I704369127ab92a52c7e4b21de8b7982fb8328f9d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7662
Reviewed-by: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
Autosubmit: sterni <sternenseemann@systemli.org>
Didn't end up happening due to a lack of motivation. Will try to finish
the BQN AoC still, though.
Change-Id: Ib296aec9f3cfeef57c79a9ba09fc664c1a19dcff
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7661
Autosubmit: sterni <sternenseemann@systemli.org>
Reviewed-by: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
Quassel sometimes thinks it's a reasonable thing to do to start
firefox instead of my default browser. Why? I've got no clue.
But since I don't use Firefox anyways unless there's a special
situation going on, lets just delete it.
Change-Id: Ib7ad4cc53c44ac47f3a0c3922600c3915f90219c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7646
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
This one is not finished yet, but needs to move of this laptop by ways
of git.
Change-Id: I2c8c0a7b581a654f7cfab92dd21ced82a14c5f42
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7616
Tested-by: BuildkiteCI
Autosubmit: sterni <sternenseemann@systemli.org>
Reviewed-by: sterni <sternenseemann@systemli.org>
I have no jira account anymore, so this can be cleaned up.
Change-Id: Iac33832f3933a02ed2ceb0f21ace30be864aba6e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7614
Autosubmit: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
this way I can at least claim to not have completely ignored it this
year :p
Change-Id: I59ab58a05e6bc217e9c6d9fa830d321ddff71d8a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7608
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Let he who is without sin cast the first stone...
Change-Id: Ia0807e4efaef2aa4bddb278f60601fe4f59e95e9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7606
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Also trial enabling `global-whitespace-mode` (needed to `xml-mode` and maybe
others I'm not thinking of at the moment).
Change-Id: Ibfd6546da80a6238c8334704b144e0a164238dab
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7604
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Part 2 is pretty slow, since we just reuse our fast solution for part 1.
This means we have to check 4000000 which could be reduced a bit by
using a loop. It is tolerably slow, so whatever. (Overall this problem
would have been more fun if the space to check was smaller.)
Change-Id: I1203330fe0364894cfe0318376e583868937b5bd
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7603
Reviewed-by: sterni <sternenseemann@systemli.org>
Autosubmit: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
This solution feels very un-BQN-esque, but I could not get it to work by
doing arithmetic operations on an array of indices for any input but the
example one. It's still decently fact considering that we create so many
intermediate arrays at each step.
Change-Id: I883409b4d99d4954312df9b9a9ffc568c39f7726
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7602
Reviewed-by: sterni <sternenseemann@systemli.org>
Autosubmit: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
Looks like a vterm release clobbered these. Let's explicitly define them in the
vterm-mode-map.
Change-Id: I3248050535be903020a75bc0503da38ec9641d85
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7579
Reviewed-by: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
This always fails when running due to mismatched glibc versions, which
like... isn't nix supposed to solve thaat? I don't have the energy to
debug, this isn't important
Change-Id: I54fb91a0b8ee46b19af4f4b987e5c17d1cf6984f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7570
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
Autosubmit: grfn <grfn@gws.fyi>
discord just... refuses to launch if you're running an old version, so
we basically always have to override
Change-Id: Ia12b31da1d235fe023c06342e00b53be38d8dcd9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7569
Reviewed-by: grfn <grfn@gws.fyi>
Autosubmit: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
I cheated a bit to skip implementing multi cycle instructions. The VM is
pretty much a normal tail recursive function, but working with scalars
in BQN is on brand-ish. Array programming helps again when drawing the
picture on screen.
Change-Id: I2562c862e228f633c5fad09e503529c6e0785112
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7556
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
Autosubmit: sterni <sternenseemann@systemli.org>
Added utility used to be related, but got dropped in a refactor.
Change-Id: I1f88973d6b42f1302b49cd61c53e4cd1e15b8c6f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7553
Autosubmit: sterni <sternenseemann@systemli.org>
Reviewed-by: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
Did not have the motivation to go back and improve things, so this is my
initial attempt.
Change-Id: I3e129523d8f6c03bfbe50351f78d56ec7254a2dc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7539
Reviewed-by: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
Autosubmit: sterni <sternenseemann@systemli.org>
By taking advantage of filling (ironically) we can avoid creating a spec
in an ugly way. Additionally we transpose before parsing which doesn't
really make all that much of a difference, though.
Change-Id: Ida593138654f8367d666447f2b62013e8ddff01e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7535
Reviewed-by: sterni <sternenseemann@systemli.org>
Autosubmit: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
Today's problem works very nicely thanks to window although the indexing
sadly is off by a constant amount from what we immediately get. I have a
feeling someone is going to demolish my 31 char k solution.
Change-Id: Ia90786ce2fe321235286a85c466decf7feb669ed
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7534
Reviewed-by: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
Autosubmit: sterni <sternenseemann@systemli.org>
* take advantage of block header for destructuring
* instead of ModestTake we can split the stack we are picking from into
what we need to move and what to keep, saving us from having to repeat
ourselves.
* remove some unnecessary parens
Change-Id: I1b81a93a27d14dcbb6bdd109e862a356f611aca9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7530
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
Autosubmit: sterni <sternenseemann@systemli.org>
First input that is genuinely fun to parse in BQN. There surely is a
nice trick for _ApplyCmd, but this works and I'm unable to think today.
Change-Id: Iefccc81f1c1db03f45e31aaf7a1703ac0f91306f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7529
Autosubmit: sterni <sternenseemann@systemli.org>
Reviewed-by: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
Uses the same idea as the BQN solution, but is very concise.
Change-Id: I876208e5e86f28240f4a3384d16321fd92d077eb
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7499
Autosubmit: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
It seems to me that there must be some way to improve this further,
but I'm kind of out of time.
Change-Id: Icf3510b6c126345551125543aec70155b6eeff4e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7498
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
Autosubmit: sterni <sternenseemann@systemli.org>
This fixes cgit's ability to infer the idle time on the repo overview
properly. While we're at it, use the proper remote URL, so the redirection
warning doesn't clutter the logs.
Change-Id: Ie3a75886bdf9c704c18950290b1f7115d0ca0c02
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7496
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: sterni <sternenseemann@systemli.org>
We can actually use one and the same scan on the sorted list
to solve part 1 and 2 of the assignment.
Change-Id: I657a81bad6151ef4fe13239db88d2dbd2f9c29d8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7491
Autosubmit: sterni <sternenseemann@systemli.org>
Reviewed-by: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
Bonus solution in k as I got sniped by leah2.
Change-Id: I806f5b2ac1388159a427bb239bfb1bb7aeb329d7
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7490
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
I currently plan doing BQN and Nix (where it is not too annoying,
respectively). All solutions can either be executed together in a
derivation using CBQN and Tvix (!!!) or executed individually (I'll do
one file per solution for BQN and an attribute set of solutions for Nix
in a single file).
Change-Id: I7cff2ea60d06ae0f586d07779f14f5edd8f87aae
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7489
Reviewed-by: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
I primarily use GitHub for most of these preexisting repositories,
but they should be properly replicated on edwin in case I want to
stop. Pushing the respective refs manually is cumbersome and error
prone, so let's automate it.
The repositories are basically chowned to git:git currently and
`git fetch <remote> 'refs/*:refs/*' --prune` is execute regularly
to update the repository. In the future I could contemplate doing
it the other way round – using edwin as upstream and using
`git push --mirror` to update the GitHub repositories.
Change-Id: Icb8a11223c0b4d3c8ce9a2da7fb2b4d4df4887f8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7486
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
Did a little reverse-engineering to try and figure out how to package GUIs for
OSX, which where I learned about:
- `Info.plist`
- `version.plist`
- `pkgs.lib.generators.toPlist`
I'm sure there is more to do to make idiomatically pkg this, but this is enough
to get started, and I need to move-on.
Change-Id: I5168eada32223c5cc2f20defd3d27bccaceb3775
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7317
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
I don't currently need these for any client work but they're constant
battery drains.
Change-Id: Id45d4dacfd59cb3d18d79311fa29450d14a33e6e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7454
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
This should make it a bit clearer where not a lot is to be expected –
either yet or anymore.
Change-Id: I8139213814f2645f376ef2175aa2bc3721ee1e51
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7442
Reviewed-by: sterni <sternenseemann@systemli.org>
Autosubmit: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
it annoys me and I've been turning it off manually, which is also annoying
Change-Id: Ia3b79d11068757c0bb9ee5543a376effb98506df
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7441
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
I often have to type text in German, but on the German keyboard layout
'Y' and 'Z' are in the wrong place (why? who knows). To avoid this
confusion, this defines an input method with the positions of those
keys corrected.
Change-Id: Ie446329d151cd3ed2bbeae1a34fc82d3c29f1d12
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7440
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Occasionally I debug i686-linux builds on this machine, the
headcounter.org binary cache (despite being slow due to Hydra serving
it) speeds this up with significant cache available.
Change-Id: Ic8bc6139cf31f412676ef2925ceb726740987ff0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7295
Reviewed-by: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
Small module that regularly runs btrfs scrub on all btrfs filesystems.
Eventually the module should also do SMART value monitoring, as edwin is
a server from Hetzner's server auction, so a disk failure may not be too
far away.
Change-Id: I11e423a5d91c99ad455c2bb29b632efb79ef908e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7294
Reviewed-by: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
This adds edwin, the machine running sterni.lv, as well as my
idiosyncratic deployment solution. It is based on instantiating the
system configuration locally (where you'd work on the configuration),
copying the derivation files to the remote machine where the system
derivation is realised and deployed. Unfortunately, the first step tends
to be quite slow (despite gzip compression), so this may not be the
definite way despite its advantages.
Change-Id: I30f597692338df3981e01a1b7eee9cdad48f94cb
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7293
Reviewed-by: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
This adds an interim placeholder page for gopher://sterni.lv and
additionally my preexisting Nix-based static site generator for
gophermap supporting servers. It is based on building a nested Nix data
structure representing the directory structure of the resulting site
which then resolves to a bunch of fine grained derivations.
Change-Id: Id6c0b60cfe8d9d4df6a3700d96ed48b7df02ce58
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7292
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
This adds the module I've been using for running my minecraft servers.
It is inspired by the declarative minecraft server module in nixpkgs,
but
* does not support a non-declarative mode.
* supports more than one server on the same machine.
* patches the fabric mod loader into the server.jar on startup.
* its stopping mechanism is more robust: It issues a `save-all` and
`stop` command over RCON and uses flock(1) for waiting on the
server's shutdown instead of relying on checking for the PID
via kill(1) in a loop.
It has some gaps in terms of features that I personally don't need, but
can be filled in over time.
Change-Id: I31b9139cab41a6398e5a08ecc72be33cd021ed2e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7291
Reviewed-by: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
This is an old project of mine, I have still deployed because a friend
was interested in using it (I think they never did though). The
repository can't be subtree-ed at the moment since it is AGPL and also
contains some personal information I would prefer not to check into such
a long-lived repository. Relicensing and subtree-ing it using a
semi-elaborate josh filter would be possible in the future, but I'm not
sure if it is worth it yet. This is probably good enough for now, the
project also very rarely breaks on channel updates.
Change-Id: I8948961406f345731d5e075e47c15901c16ca27f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7290
Reviewed-by: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
We'll need this in depot in order to import my infra, as I run
flipdot-gschichtler for the OpenLab at the moment. Importing the
repository into the tree is not really an option, as it should stay in
the GitHub organization. Additionally, it doesn't currently really have
a license, but it is very possible it'll end up being AGPL.
The whole thing is quite tame and has (anecdotically) never broken on a
nixpkgs channel update. A new niv sources area is created to avoid
cluttering the global one and having these sources in a gc root
permanently.
Change-Id: If49c6c0bf59bda9a90ca5cc405423affe52d0665
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7288
Reviewed-by: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
This includes a bump for mullvad to 2022-5, which is crucial for me.
Note that the Emacs packages bump has been manually excluded.
Fixes:
* //users/grfn/system: removed `ec2.hvm` option from roswell, this
option is no longer necessary and fails eval with an error now
Change-Id: I23f4998591397a820b5912f24ed9526d9bb1532d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7400
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: grfn <grfn@gws.fyi>
Reviewed-by: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
Also delete `add-node-modules-path`. I'll likely prune more of these
dependencies when I take a closer look at my `wpc-*.el` language config stuff.
Change-Id: I47053dbca03bcfb94e07dbf4cc1df4f91d2d4c37
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7409
Reviewed-by: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Another meh package, but let's finish the job and package it up.
Change-Id: I7852a776c93c8c6717878a5ee0742287d2d23052
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7394
Reviewed-by: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
We need build-time branching and run-time branching to support OSX and Linux.
Change-Id: Ie8de39f8ce34004d8fb3acf5bb5f2ba0b5f2e3d8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7316
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Should delete this pkg, but bytes.el depends on it, so let's first package it,
and then we can delete it once CI passes/failures are more reliable.
Change-Id: Ifa939264c44adf302085a19790cf25225cd3cb5e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7393
Reviewed-by: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
I'd like my vterm (insert), evil ex map (insert), ivy mode maps to share the
common readline KBDs.
Change-Id: I104c3328f28549cc436b02f08411f114277c851b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7384
Reviewed-by: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
**TL;DR:**
- Delete half-baked packaging attempts (`job.nix`, `token.nix`).
- Ensure golang code compiles.
- Some "packages" were being treated like "programs" presumably for
debugging/testing purposes back when I was working on this. Make those
behave like libraries.
- Remove stale imports.
- Fix syntax errors.
- Miscellaneous other chores.
- Drop `shell.nix` and `use_nix` directive.
Change-Id: I63c275680bac55a3cad3b9cb48d51cdc431fbe48
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7318
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
**TL;DR:**
Most of these changes predicate behavior on the platform:
- At buildtime this is `localSystem == $something`. (`localSystem` is from
`readTree`)
- At runtime this is `(memq window-system '(ns))`.
- Add `coreutils` so `dired` listing with `--group-directories-first` works
because that flag depends on the GNU version of `ls`.
**Background:**
I need to support a bunch of OSX users at $WORK. As such, I'm planning
on using my MBP for the next few weeks to build empathy for our
userbase and polish some currently rough edges.
If I'm going to get an serious work done, I need my Emacs setup. Step
one is making sure it can build and run.
Change-Id: I918efccfa5f149e218aeea476c2c7df1c7b64ae8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7309
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Drop into a new shell environment with the same variables defined in a systemd
unit file (for debugging purposes).
Change-Id: Iaf513809b524f3f3e845b512450da71694bb7c7f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7308
Autosubmit: wpcarro <wpcarro@gmail.com>
Reviewed-by: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
It's impossible to log into many public wifi networks otherwise when
the login depends on DNS hijacking.
Change-Id: I09f8b504810eebeb788997d2100a6db4777a8725
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7307
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Autosubmit: tazjin <tazjin@tvl.su>
Proof-reading much easier when Markdown is rendered in the browser.
Change-Id: Ia173dea817866d214547546bc3428ac6fe6782bf
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7305
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Profpatsch originally implemented an advisory checker from scratch in
Rust. We now ended up just using cargo-audit for the global checks
exposed via CI and the custom implementation is unused. To clean up
//tools/rust-crates-advisory a bit, we can move the unused parts to his
user directory.
Change-Id: Iacbd27c163edd07c804220fd1b3569c23aebd3e7
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7171
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
Reference the non-deprecated version of the grafana http port option in
the proxyPass for the nginx config of mugwump.
Change-Id: Ic7f370c7f7a451fe95a046d491d7b1cdf5f728cd
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7200
Reviewed-by: grfn <grfn@gws.fyi>
Autosubmit: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
Lots of deprecations were made in the new nixos version for the grafana
config - this updates all of those settings in mugwump's system config
Change-Id: I69cdc9d2d59702c38d6334a4d27a04bef4e8c132
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7190
Reviewed-by: grfn <grfn@gws.fyi>
Autosubmit: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
This was broken in my blog for way too long.
Change-Id: I03c45c666d67006a4608a4b19d6167ab692e321d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5905
Reviewed-by: wpcarro <wpcarro@gmail.com>
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
The DNS server on the network of this boat refuses to deliver *any*
results to my laptop, only to my phone, so I had to do some trickery
to figure out the address of the WiFi login portal.
Change-Id: I7934c570be79d6191feb999e6860428623cfd88f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7168
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>