telegram occasionally changes the upstream urls at which images are
served, with old/new partially overlapping in time afaict.
with this commit, a new endpoint is added to tgsa at
/img/$user/$post_id/$img_idx
which serves a redirect to the actual image url that telegram had
returned within the last hour (i.e. as per the cache).
next step is to use these image urls in the bbcode itself.
Change-Id: I9aa5cb56bc444cbe796868346c67f2e1e1b79413
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5610
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
this lays the groundwork for adding another handler and returning
handler results as `anyhow::Result<rouille::Response>`.
needed for the image redirect stuff.
Change-Id: I909bd9c2f46f42ea759d50662d7bc36c1f408ed3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5609
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
factor out a function to access telegram posts from the cache,
fetching them anew if required.
a small behavioural change means that the program now takes a write
lock when fetching a post, to avoid simultaneously fetching the same
post many times (quite likely once it serves image redirects).
Change-Id: If9c1429f86fb118dab90834f349cb222709c3a31
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5608
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Telegram expires certain links in messages after some (unknown) amount
of time; this commit is the first step to working around that by
providing an image URL proxy.
In order to do that, we tick two important boxes here:
1. Store an extensible data structure in the cache.
2. Expire them periodically.
Change-Id: Iba192d8b71db4493c942d1baf5680bd086f8f60b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5607
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
When dual-wielding weapons, do damage from both weapons and use both
weapons' attack messages.
Change-Id: I3c404946d0167c9b5c2bcf58ab5c3429cc5269fc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5605
Autosubmit: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
Only remove items selected to wield from the inventory once they're
actually going to be wielded, to avoid cancelling the hand selection
from causing the item to disappear
Change-Id: I3c4010058ae18b205a68b035d5e189a10ffbd12c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5510
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
Autosubmit: grfn <grfn@gws.fyi>
Describe the items already in the hand when prompting for which hand to
wield an item in
Change-Id: Ifdf2703e8695aae5cbf06a3195fb790428954012
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5509
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
Autosubmit: grfn <grfn@gws.fyi>
I believe this should take care of all advisories.
Change-Id: I20984caa20897c0d0541f427a657990dc9b156fb
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5584
Autosubmit: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
This lets pass create TOTP tokens, which is very handy.
Change-Id: I85b699087e83c3d18cd8840df11c4e27c85e1f3f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5578
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
This results in a much more useful element size. Note that this still
does not scale some core UI elements, such as the mouse cursor, at all.
Change-Id: I7d4da485f0723740a7228a1561aaf50135c86032
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5575
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
This silences some new git warning about whatever.
Change-Id: Iaa5225a307b850a756871fa5f494d687eb020fd7
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5574
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
bash (unlike fish) doesn't break down if TERM=dumb which is the only one
I'll be using in emacs (I want to reduce my usage of things depending on
ANSI escape sequence to a minimum, for stuff that needs it I still have
foot). bash is started in login shell mode so /etc/profile is sourced
which will a) enable direnv support and b) setup some tweaks (relating
to PAGER etc.) if TERM=dumb.
Since I use a semicolon for a prompt in (ba)sh, shell-prompt-pattern
needs to be adjusted.
Change-Id: If58b6d1edf1d9ab1883cb51c27729e23d889b16c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5570
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
Autosubmit: sterni <sternenseemann@systemli.org>
This is much nicer than button areas on a large touchpad.
Change-Id: I369f96f6b99cdf1803be1056b31fcfab8c0deae4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5569
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
This is my new Huawei MateBook X.
Change-Id: I32a8b77dd8f53b3c89bf63f448cd2880f9a457b7
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5554
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Adds a small module that automatically picks the right home
configuration for each machine.
For some reason, importing home-manager itself in this module causes
infinite recursion. I've not looked into why, and left the import in
the tverskoy config instead.
Change-Id: Ie27109a3c4478b198ab646b2e179999cf053980e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5552
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
This will be reused between machines.
Change-Id: Ice7835ce7e63b00284e046606309e882412cda26
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5547
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
I have to google all of this this each time otherwise.
Change-Id: Ib7df0882e4681bd061f77a00b678641a7f37c58c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5546
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
This is no longer required; said customer has switched to Tailscale.
Change-Id: Iebe2fdfbf4013af86b7236e061cf4dbf47ac7c9e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5537
Tested-by: BuildkiteCI
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
There's some configuration shared betwene my physical machines which
is just duplicated all over the place right now. What's the point of
having Nix if you don't use it fully?
Change-Id: Ic7e89f918d2517637b3d49617b4dc1a2cc6023b9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5536
Tested-by: BuildkiteCI
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
More common CLI utilities that I expect to be available as defaults.
Change-Id: I59c5492f3dc007aaea5bfb7b01d5f842ced0d6c9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5564
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
I "think" this belongs in `wpc-language-support.el`, because I need it mostly to
render `*.hcl` files.
Change-Id: I93106c4912699245449328608c12d4f7c74b4fff
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5563
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
This has been useful while developing my NixOS installer.
Change-Id: I45fd5e1647248a6ebf277ffff3638587d8cc695d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5559
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
More tools I didn't know I'd ever become acquainted with until I started
supporting Windows Servers: remmina - for RDPing.
Change-Id: Id861535c4a6bc6d6223ce21e5da60c627c8995b3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5557
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
This allows me to use my device as a router (or in Tailscale terms: as an "exit
node").
Change-Id: I994e6c104c246364118155e934b11969a4d7066e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5555
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
This is really annoying since the window is not recognized as a popup /
dialog window by sway.
Change-Id: Icacf7f673e6d96915711950185a704fccd95aed3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5542
Reviewed-by: sterni <sternenseemann@systemli.org>
Autosubmit: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI