Commit graph

817 commits

Author SHA1 Message Date
Vincent Ambo
af6dc48971 feat(tazjin/nixos): run Radicle seed node & httpd on koptevo
Change-Id: Icd433f433c0abe8f54735ab45a636b4561fe8d3e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12486
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2024-09-14 23:47:29 +00:00
Vincent Ambo
0022285600 feat(tazjin/nixos): set up yggdrasil on all physical machines
Change-Id: I1d722c6d2e6192c445e77cb9b186a5320c2a60ec
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12485
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-14 23:47:29 +00:00
Vincent Ambo
c9eeb7da70 feat(tazjin/nixos): serve homepage on yggdrasil
First test of running an Yggdrasil service, lets see how that goes!

Change-Id: Iac10b72f7314a45df13ea539c5c1cef6c994154f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12484
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-14 23:47:29 +00:00
Vincent Ambo
7593592241 chore(users/tazjin): move my homepage module into //users
This was in //ops for legacy reasons, but this is really not necessary.

Change-Id: I758b257838993ef0f7d55809c137118826e2ba85
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12483
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2024-09-14 23:47:29 +00:00
Vincent Ambo
7f5956b2be feat(tazjin/koptevo): configure yggdrasil network
I'm looking to replace tailscale with this for some use-cases.

Change-Id: I00f765a403879ef048e635a6fedcfdde3f685159
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12482
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-14 23:47:29 +00:00
Vincent Ambo
adf8a7da87 feat(tazjin/nixos): issue wildcard cert for yggdrasil services
Issue a wildcard certificate using the Yandex Cloud DNS plugin (which is where
DNS for tazj.in is hosted).

Change-Id: I44fa48add660f4f4324ec4b056a81d78c45ff4f4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12481
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-14 23:47:29 +00:00
Vincent Ambo
158ba0d607 feat(tazjin/niri-reap): add a workspace compacting tool
I don't use workspaces and don't have them bound to anything in my Niri
configuration. However, when an external screen is unplugged, its workspace
(and windows) move to one of the remaining outputs.

This adds a tool that makes the windows available again by "reaping" them from
the other workspaces and moving them to the current one.

For starters I'll bind this to a key and see how it works in practice.

Change-Id: I18b2d60e93c8397dd637cdc426b4e46af5725558
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12451
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-13 10:52:38 +00:00
Vincent Ambo
773ddcb209 feat(tazjin/nixos): install radicle-node on all machines
Change-Id: I67ce259d890bd508cd9c9516702d51d5e70f4065
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12470
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-13 09:48:50 +00:00
Vincent Ambo
485fb81edf fix(tazjin/nixos): fix font name collision
Change-Id: I8780f5906855d2ce39ec78530ede84bbcfb5fbf2
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12469
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Autosubmit: tazjin <tazjin@tvl.su>
2024-09-13 09:23:36 +00:00
Vincent Ambo
374cde20f2 chore(3p/sources): bump channels & overlays (2024-09-10)
Includes the following fixes:

* users/wpcarro: disable pulseaudio option (can't have pipewire _and_ PA)
* users/aspen: disable pipewire (there's PA config here, so whatever)
* bump wasm-bindgen in Rust frontend projects
* users/tazjin: disable builds for frog (it's in storage)

Change-Id: Ia508b14b84619d06c1d98f7245e84d66bc791592
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12466
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: flokli <flokli@flokli.de>
Tested-by: BuildkiteCI
Reviewed-by: aspen <root@gws.fyi>
2024-09-12 12:42:44 +00:00
Vincent Ambo
7fa52f5933 refactor(tazjin/niri): configure seamless monitor/column movements
Makes it possible to just keep switching focus or moving a column in the
direction of the target screen. This is MUCH easier to think about.

Change-Id: I0488b8d338261b83327dc476e0173b222de9221a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12467
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2024-09-11 21:34:35 +00:00
Vincent Ambo
bdf1162d47 fix(tazjin/home): fix cursor sizes on hidpi/non-hidpi machines
Change-Id: If2e2c7ffeadcd920e518c107b30156a62ea7c5c4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12449
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-07 17:18:58 +00:00
Vincent Ambo
7903d26054 refactor(tazjin/dotfiles): move waybar configuration into Nix
Change-Id: Ia031fd755ecf451b0ef1f9e63f3aec8b56fe2d57
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12448
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-07 15:58:40 +00:00
Vincent Ambo
0a38618675 feat(tazjin/eaglemode): install new eaglemode plugins
Change-Id: Ic5044ada0a3e07f3982cabb8e16c5dd9b2a38472
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12447
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
2024-09-07 12:17:48 +00:00
Vincent Ambo
c352306491 feat(tazjin/home): configure chicago95 theme in home-manager
Finally no more setting this up manually!

Change-Id: I75d7a53623cc05a0a88f70e20e881a944b6ed818
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12446
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-07 11:40:09 +00:00
Vincent Ambo
31f55d7ce7 fix(tazjin/khamovnik): clean /tmp on boot
Change-Id: I5d71319be952f6524d5804d50e3178858371b4cf
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12443
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-06 16:25:09 +00:00
Vincent Ambo
72bdb15958 feat(tazjin/dotfiles): add waybar configuration
This configuration is not automatically placed anywhere yet, because I'm also
still actively iterating on it.

Change-Id: I0a13fcbc2b9a5587480f6a69a73ab99b36d209e6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12435
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
2024-09-05 22:11:42 +00:00
Vincent Ambo
730d1cc77b feat(tazjin/dotfiles): check in Niri configuration
Adds the current (fairly simple) Niri configuration, which is annealed from
a few days of being poked constantly.

This isn't yet deployed through home-manager or anything as I'm still doing
stuff with it manually.

Change-Id: I3dfcafb55d98d9655585d3128e1088fc13e60cc7
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12434
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Autosubmit: tazjin <tazjin@tvl.su>
2024-09-05 22:10:40 +00:00
Vincent Ambo
317962fbed fix(tazjin/nixos): add fonts for waybar configuration
These don't actually really work the way I want, but I have no idea how font
configuration works.

Change-Id: I228ab234f37d8ae0847cbdc6a3431fc29a2585e6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12433
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
2024-09-05 22:10:09 +00:00
Vincent Ambo
609b68031b chore(3p/sources): bump channels & overlays (2024-09-01)
Included changes:

* users/aspen: explicitly use open-source nvidia driver

  This now has to be specified explicitly, otherwise evaluation fails with an
  error.
* users/aspen: nixfmt -> nixfmt-classic
* users/aspen: fixes for renamed packages & options
* users/tazjin: fixes for renamed packages & options
* 3p/overlays: remove cbtemulator patch (merged upstream)
* tvix/shell: remove unnecessary patches (merged upstream)
* 3p/rust-crates: mark libgit2_sys as broken
* users/Profpatsch: mark git-db as broken
* 3p/overlays: pick `mypaint` from stable channel
* tvix: fix comments that clippy doesn't like anymore
* tvix/glue: disable a misfiring clippy lint (applying its suggestion breaks
  code below)

Change-Id: I6d3fc027694bbe7425a2d25dc53d65467a44f3b0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12403
Tested-by: BuildkiteCI
Reviewed-by: aspen <root@gws.fyi>
Reviewed-by: Profpatsch <mail@profpatsch.de>
Autosubmit: tazjin <tazjin@tvl.su>
2024-09-05 20:56:31 +00:00
Vincent Ambo
200d49a0e1 feat(tazjin/home): configure screen locking with swayidle
Change-Id: I73e42071710f481c0f1acf965e18446c18e7c94b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12430
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-05 11:58:30 +00:00
Vincent Ambo
33f30573f9 fix(tazjin/nixos): fix wayland screen sharing
Apparently something called a "desktop portal" needs to provide a magic
"service" and blabla; the TL;DR is that adding all this Gnome stuff makes screen
sharing work.

Tested using the Mozilla WebRTC test page:
https://mozilla.github.io/webrtc-landing/gum_test.html

Seems like our Chromium/Firefox are new enough not to require magic settings for
Wayland.

Change-Id: I250d857a0e941ef63fffca17a9c9feed14ec1bd9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12432
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-03 22:34:13 +00:00
Vincent Ambo
a9403664e1 fix(tazjin/nixos): always start pipewire before niri
According to discussions in the Niri issue tracker, pipewire must be started
before niri in order for screen sharing to work. Why? No idea.

Change-Id: Id4ff890dd2536b3cc98b14992cd799d257eec9be
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12431
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-03 22:34:13 +00:00
Vincent Ambo
632e74e435 fix(tazjin/khamovnik): try to force suspend on all lid close events
logind doesn't like reliably suspending, and apparently it has a bunch of bugs
around dock detection (I don't even use docks), but maybe this helps

Change-Id: Ia822799cde838d8d41a67f9d39d59d1fa0306116
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12429
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2024-09-03 22:26:31 +00:00
Vincent Ambo
7f1ecff989 refactor(tazjin/emacs): change key bindings for telega/term-switcher
Change-Id: Ia083a337f69aa258b9d4487affc594f5c4f1096d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12426
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-03 13:45:24 +00:00
Vincent Ambo
69dcd8e92c feat(tazjin/nixos): install waybar on desktop machines
Change-Id: I3b60b12175168e67df55d4eff28d2cac4f30aff1
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12425
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-03 13:45:24 +00:00
Vincent Ambo
9ea1862750 fix(tazjin/nixos): replace wezterm with alacritty again
wezterm has very strange rendering bugs which I have no interest in debugging

Change-Id: I59a068df9b4474830ba4706bf8e626b45cd015f0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12424
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2024-09-03 13:45:24 +00:00
Vincent Ambo
6cfae6c423 feat(tazjin/nixos): enable Qt theming with qt5ct
Change-Id: I1ce0ab9085951d48021f2034a32bcf91c0a675df
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12423
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2024-09-03 13:45:24 +00:00
Vincent Ambo
a115238f1b feat(tazjin/eaglemode): add example plugin to config
Change-Id: I5993c429dfa066295823d5666763ca0120cc209c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12391
Reviewed-by: tazjin <tazjin@tvl.su>
Reviewed-by: emery <emery@dmz.rs>
Tested-by: BuildkiteCI
2024-09-02 21:26:16 +00:00
Vincent Ambo
1c73c1c703 style(tazjin/wallpapers): add some new Stålenhag content
Change-Id: I693378ae6904f2658b4cf3477aff37d54b3c41f3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12405
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-08-31 23:55:03 +00:00
Vincent Ambo
a2eb46e3d8 feat(tazjin/home): configure wpaperd
Change-Id: Ic4eecdff48f947a44d2a06039573274a9edb35c8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12404
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-08-31 23:47:57 +00:00
Vincent Ambo
11aacd7857 feat(tazjin/nixos): setup niri (scrolling window manager)
This commit is experimental for now.

The backstory is this: There are use-cases where tiling windows (as in EXWM,
which I normally use) annoy me. There are also use-cases where stacking
windows (as in e.g. XFCE, which I tried for a bit) are annoying.

Scrolling WMs are a new thing which is sort of similar to tiling, but as it adds
more screen real estate doesn't require shuffling around or resizing of existing
windows basically ever.

I'm going to trial this (assuming I can get everything that's relevant for me
set up) and see how it goes.

Change-Id: I603c87b8ebd7fbde763d9d4708e098e9079889c5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12402
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
2024-08-31 23:47:57 +00:00
Vincent Ambo
b3c790a81e fix(tazjin/khamovnik): ensure networkmanager is always enabled
Got into weird states more than once while the private configuration wasn't
available ...

Change-Id: I75b1a242d9cf10f5e4ac27ad7fce3e40a79898cc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12401
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-08-31 23:46:55 +00:00
Vincent Ambo
a28c495c38 feat(tazjin/nixos): ensure eaglemode is always installed
Change-Id: I6084e041b760d90929f7e9b3d6f7cd6ca12370ba
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12400
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-08-31 23:46:55 +00:00
Vincent Ambo
a60998c234 chore(tazjin/emacs): use emacs-pgtk
I'm doing a wayland experiment, this is necessary for now. This disables some
parts of the configuration which are not going to work with wayland.

Change-Id: I61d0042fd52f2c7cade2794c0d5b5849ecaf5229
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12399
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2024-08-31 23:45:23 +00:00
Vincent Ambo
55b0726571 feat(tazjin/eaglemode): add my eaglemode config
Very barebones for now.

Change-Id: I05b89f5f392eda221d0a61999d47d83f9bf3354a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12370
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-08-30 13:30:07 +00:00
Vincent Ambo
d292203235 feat(tazjin/cursed): add bubblegum demo from VolgaSprint talk
Change-Id: I4d9bd21e3dd6dbc24d46907e6270d49b97f50b99
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12352
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2024-08-27 10:02:59 +00:00
Vincent Ambo
6167e63e07 feat(tazjin/german-string): impl Clone for GermanString
Small strings are always copied fully, without allocations.

Large transient strings copy the data and allocate.

Large persistent strings are also a trivial copy.

Change-Id: I319c0b800fa7a4a62e634176b959bb2fa766a4eb
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12342
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2024-08-25 10:07:03 +00:00
Florian Klink
6dff303c5f chore(users/tazjin): hardware.opengl -> hardware.graphics
Change-Id: I649a6de6eef0b9b8c9cb658fdb6e4e46f5c8be1c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12335
Autosubmit: flokli <flokli@flokli.de>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-08-25 09:19:25 +00:00
Vincent Ambo
8f6f45097e feat(tazjin/german-string): add constructor that leaks a Vec<u8>
Change-Id: Id0b6b4794128573ddb62e82fd77d080e564978be
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12264
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
2024-08-22 14:02:15 +00:00
Vincent Ambo
012da7d0e1 feat(tazjin/german-string): add persistent construction from statics
Makes it possible to construct persistent German Strings from data with 'static
lifetime. This doesn't leak any additional data.

Change-Id: Ifb3a36ff72b106724883302e4c2195ac54acd352
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12263
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
2024-08-22 14:02:15 +00:00
Vincent Ambo
95ebcc24b0 refactor(tazjin/german-string): add type for encoding storage class
Adds a StorageClassPtr type that is set up to be able to steal bits from an
aligned pointer to encode the storage class of a German String.

Change-Id: I64591174eac1ebcb73e624a59bd107ba1e02c69d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12262
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-08-22 14:02:15 +00:00
Vincent Ambo
ed4f68b1d3 feat(tazjin/german-string): add constructor method from owned data
Makes it possible to construct a GermanString from an owned byte vector, without
having to clone the data.

This is done by "disowning" the vector using ManuallyDrop to access its internal
pointer. For transient strings, this memory is then owned (and freed) by the
GermanString instance.

Small strings are copied out of the heap and stored inline as before, to avoid
any dereferencing operations.

Change-Id: I754736099f71d646d430aed73e558a5a7626c394
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12249
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2024-08-19 13:19:40 +00:00
Vincent Ambo
0d6d31bc66 feat(tazjin/german-string): add pointer equality check in Eq
This can short-circuit two large string comparisons.

Change-Id: If45e7cf33921fe571482dc710c27ef8cc7c70885
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12245
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2024-08-19 13:19:40 +00:00
Vincent Ambo
a521f9e5f8 chore(tazjin/german-string): add Nix build
Change-Id: I1e8c500c9bb4ba365ba32f53f60bcf657f62ed62
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12243
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-08-19 13:19:40 +00:00
Vincent Ambo
56d4f01e9f feat(tazjin/german-string): add [Partial]Ord implementation
Change-Id: I8002ec63be45a15160387c21ed1fa8721a7c3eb4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12242
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
2024-08-19 13:19:40 +00:00
Vincent Ambo
86f467cee6 test(tazjin/german-string): add roundtrip proptests
Change-Id: Iee392368252d5c6e96d879b213aee34a301d13d6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12241
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-08-19 13:19:40 +00:00
Vincent Ambo
64a085cf52 feat(tazjin/german-string): add Eq impl & corresponding proptests
Change-Id: I66a258fad5d4e249268b9d2743d46b30c5ac1dac
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12240
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Autosubmit: tazjin <tazjin@tvl.su>
2024-08-19 13:19:40 +00:00
Vincent Ambo
ab6a4815ff feat(tazjin/german-string): add Debug implementation
Change-Id: I9a4a8a4815ac210c402cfc2feb1fe0606affb327
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12239
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-08-19 13:19:40 +00:00
Vincent Ambo
2284c00417 feat(tazjin/german-string): PartialEq implementation for GermanString
This is where one of the advantages of this string representation starts to
shine: For small strings there's no derefencing any heap memory at all, and for
the long representation we can compare the prefix before moving on.

Change-Id: Iac333a52e8d7c9dd09e33dbcf51754e321c880e6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12238
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-08-19 13:19:25 +00:00