about summary refs log tree commit diff
path: root/users
AgeCommit message (Collapse)AuthorFilesLines
2023-09-27 r/6666 feat(tazjin/emacs): add a key binding for telega-chat-withVincent Ambo1-1/+3
Puts this under the prefix command for #'telega itself. Change-Id: I7dc394840ded3f31bf54848e581a0add36da7f3b Reviewed-on: https://cl.tvl.fyi/c/depot/+/9479 Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su> Autosubmit: tazjin <tazjin@tvl.su>
2023-09-27 r/6665 fix(tazjin/emacs): set telega's completing read to standardVincent Ambo1-1/+3
Telega tries to use some random completing-read functions, but I just want it to use the default one, which I've configured the way I want. Change-Id: I33da24f257e8ac0cae4a7d25ba6c5e4e656fcad5 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9478 Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su> Autosubmit: tazjin <tazjin@tvl.su>
2023-09-27 r/6664 feat(tazjin/emacs): add more tree-sitter grammarsVincent Ambo1-0/+6
Change-Id: I8e38445457fe2663572ed9d15cdb1942336247dd Reviewed-on: https://cl.tvl.fyi/c/depot/+/9477 Autosubmit: tazjin <tazjin@tvl.su> Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-09-19 r/6618 chore(users/wpcarro): drop 'exa' from NixOS systemsVincent Ambo1-1/+0
This is unmaintained and has been removed from nixpkgs. As an alternative, 'eza' can be installed. This is the last instance of 'exa' in depot, so the workaround from the channel bump has been removed. Change-Id: Id915260b6c969a6b2a8ecae49d3ce92285f09f71 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9330 Autosubmit: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI Reviewed-by: wpcarro <wpcarro@gmail.com>
2023-09-17 r/6605 feat(users/Profpatsch/whatcd-resolver): add executableProfpatsch3-1/+37
Change-Id: I28f5c26443b9a878f8f374af2c7935831d17ab12 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9355 Tested-by: BuildkiteCI Autosubmit: Profpatsch <mail@profpatsch.de> Reviewed-by: Profpatsch <mail@profpatsch.de>
2023-09-17 r/6604 refactor(users/Profpatsch/whatcd-resolver): rename main functionProfpatsch1-12/+12
Change-Id: I8ce8ef1cc8a35358d20610be7c8bdadefd3aa30f Reviewed-on: https://cl.tvl.fyi/c/depot/+/9354 Autosubmit: Profpatsch <mail@profpatsch.de> Reviewed-by: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI
2023-09-15 r/6593 feat(users/Profpatsch/whatcd-resolver): misc improvementsProfpatsch1-18/+30
* run on port 9092 (transmission runs on 9091) * run postgres on port 5431 instead of 5432 (to not interfere) * only search for albums for now * correctly handle missing torrent file in SELECT Change-Id: I20125f7731c9b80a9e8ea05b726adfb1244a24bc Reviewed-on: https://cl.tvl.fyi/c/depot/+/9335 Reviewed-by: Profpatsch <mail@profpatsch.de> Autosubmit: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI
2023-09-15 r/6592 feat(users/Profpatsch/whatcd-resolver): query all pages in searchProfpatsch1-54/+78
If more than one page is returned by the search, query all of them. Also add an ON CONFLICT clause in case the torrent group already exists, to update it. This function is getting a bit unwieldy (plus it suffers from an n+1 problem), but ok. Change-Id: Ib505a2be8286d658ae44a3fe124a4fb42d0fc0c6 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9334 Autosubmit: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
2023-09-15 r/6590 chore(users/tazjin): drop 'exa' from my systemsVincent Ambo2-2/+0
I don't use it, and it's deprecated. Change-Id: I8e8c505ba309d5228b54f155463af4ed007f5452 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9331 Autosubmit: tazjin <tazjin@tvl.su> Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-09-12 r/6587 chore(tazjin/emacs): remove unused or duplicated packagesVincent Ambo3-17/+5
Some of these I don't use, some of these have been replaced with tree-sitter, some of these have moved into core. Change-Id: Id0a8aac4189607a89db861bbc09b95c75c45dc0f Reviewed-on: https://cl.tvl.fyi/c/depot/+/9310 Autosubmit: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su>
2023-09-12 r/6586 fix(tazjin/emacs): manually hook up tree-sitter grammarsVincent Ambo1-17/+19
The mechanism in nixpkgs does not work, but doing it myself is not that difficult. Change-Id: I91b12e9c1f5d381c9990fd46e02169f5275f88da Reviewed-on: https://cl.tvl.fyi/c/depot/+/9309 Autosubmit: tazjin <tazjin@tvl.su> Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-09-12 r/6585 feat(tazjin/emacs): enable a bunch of tree-sitter modesVincent Ambo1-0/+17
Especially interested in the C++ mode, as I am regularly dealing with extremely large C++ files where the existing mode is having trouble. Change-Id: I8c17a35011a23b67043de5de58c4269c636de68b Reviewed-on: https://cl.tvl.fyi/c/depot/+/9308 Autosubmit: tazjin <tazjin@tvl.su> Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-09-12 r/6584 feat(tazjin/emacs): add a bunch of tree-sitter grammarsVincent Ambo1-0/+17
I want to experiment with the new tree-sitter modes in Emacs, maybe they're good. Change-Id: I706fc8a889fcfa61d0f11d50ecbc67a2899b5bbf Reviewed-on: https://cl.tvl.fyi/c/depot/+/9307 Reviewed-by: tazjin <tazjin@tvl.su> Autosubmit: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-09-11 r/6578 chore(tazjin/nixos): ensure expect is always installedVincent Ambo1-0/+1
Change-Id: I2beff7484e869fcf2771e7e1c9ba5f73d0daea25 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9295 Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI Autosubmit: tazjin <tazjin@tvl.su>
2023-09-10 r/6576 refactor(tvix): move logo to //tvix:logoFlorian Klink1-2/+1
Also expose both formats, then use it from users/tazjin/presentations/tvix-eval-2023. Change-Id: Id906e8aff5510a7a4f33336326472e86db18ea32 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9280 Tested-by: BuildkiteCI Autosubmit: flokli <flokli@flokli.de> Reviewed-by: tazjin <tazjin@tvl.su>
2023-09-08 r/6567 feat(tazjin/blog): publish tvix-eval talk blog postVincent Ambo2-1/+5
Change-Id: I374c2658a19db17e53ab392299cf23657e8b75b2 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9278 Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-09-07 r/6563 docs(tazjin/blog): add NixCon 2023 link to talk notesVincent Ambo1-1/+2
Change-Id: I55e2c668a014a87ba15db2a93f14eb0812a83a8e Reviewed-on: https://cl.tvl.fyi/c/depot/+/9274 Reviewed-by: tazjin <tazjin@tvl.su> Autosubmit: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-09-07 r/6562 chore(tazjin/presentations): last minute changes to tvix-eval talkVincent Ambo2-7/+7
Change-Id: I788a17f846b35f5635ed7a9ec0d3249b05653d44 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9273 Tested-by: BuildkiteCI Autosubmit: tazjin <tazjin@tvl.su> Reviewed-by: tazjin <tazjin@tvl.su>
2023-09-06 r/6561 chore(3p/sources): bump channels & overlays (2023-09-06)Vincent Ambo1-1/+0
* //users/tazjin/nixos: disable virtualbox because it doesn't build anymore. I don't actually need it. Change-Id: Ie4640c09406485ed61673919b2c7621d0a809622 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9271 Reviewed-by: flokli <flokli@flokli.de> Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org> Autosubmit: tazjin <tazjin@tvl.su>
2023-09-03 r/6549 docs(tazjin/blog): Append link to Vincent's interviewMark Shevchenko1-0/+1
Change-Id: I55840ae2ffce6fa64111716307c0ff2a73652877 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9215 Autosubmit: Mark Shevchenko <markshevchenko@gmail.com> Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-09-02 r/6544 feat(tazjin/tvix-eval-2023): add link collection blog post & QR codeVincent Ambo4-11/+34
Makes it possible for people in the audience to get to the link collection reasonably quickly. Later on that post can also have the talk itself added. For now it is unlisted. Change-Id: If9ae1d88d3c6f22bbd70b2b3cbea0b0d42895a93 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9208 Autosubmit: tazjin <tazjin@tvl.su> Reviewed-by: Mark Shevchenko <markshevchenko@gmail.com> Tested-by: BuildkiteCI
2023-09-02 r/6543 feat(tazjin/tvix-eval-2023): add presenter notes and minor fixesVincent Ambo3-50/+106
Change-Id: I1193f83cf1e9633f74b4359272448ccb44971628 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9207 Reviewed-by: Mark Shevchenko <markshevchenko@gmail.com> Autosubmit: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-09-02 r/6542 feat(tazjin/presentations): add (intentionally) broken WASM demoVincent Ambo5-0/+956
This demonstrates a Rust stdlib call that just causes runtime panics on WASM, for explaining the problems with porting Tvixbolt. Change-Id: Ief974f1bba509fdac4b9bc9f862ee8f4dfc5158e Reviewed-on: https://cl.tvl.fyi/c/depot/+/9206 Tested-by: BuildkiteCI Reviewed-by: Mark Shevchenko <markshevchenko@gmail.com> Autosubmit: tazjin <tazjin@tvl.su>
2023-09-02 r/6541 chore(tazjin/emacs): refine -> inspetorVincent Ambo1-1/+1
refine doesn't work anymore, inspector seems to be a more modern alternative. it's impressive that they managed to write elisp code that broke. Change-Id: I672de68abdc3d780f66769043afefd8d37438548 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9209 Autosubmit: tazjin <tazjin@tvl.su> Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-09-01 r/6540 feat(tazjin/presentations): bootstrap tvix-eval-2023 presentationVincent Ambo6-0/+288
I spent way too much time fighting LaTeX to do roughly what I want here again, but all the alternatives are even worse. Change-Id: Ibe12a4ce175ceb73e9d6e276613dcd4827dd76c4 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9150 Autosubmit: tazjin <tazjin@tvl.su> Reviewed-by: Mark Shevchenko <markshevchenko@gmail.com> Tested-by: BuildkiteCI
2023-08-31 r/6539 chore(users/Profpatsch/htmx-experiment): move to Multipart2Profpatsch5-304/+13
We don’t strictly need servant-multipart, if all we need is to parse some multipart forms. This removes some deps. Change-Id: I218731fada056b9edfb3d01fc33880673d14473e Reviewed-on: https://cl.tvl.fyi/c/depot/+/9187 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
2023-08-29 r/6538 chore(tazjin/khamovnik): load private Emacs config automaticallyVincent Ambo1-2/+5
Change-Id: I26374733c35c2165363eaae45f56ba1e9facfe99 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9167 Tested-by: BuildkiteCI Autosubmit: tazjin <tazjin@tvl.su> Reviewed-by: tazjin <tazjin@tvl.su>
2023-08-29 r/6537 refactor(tazjin/nixos): pick correct Emacs from a NixOS optionVincent Ambo2-81/+93
This gives me the ability to override the Emacs per-machine easily. Change-Id: Id480889c108833b0a11c377a9b1e946900c5aba1 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9166 Reviewed-by: tazjin <tazjin@tvl.su> Autosubmit: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-08-29 r/6536 chore(tazjin/emacs): remove withLocalEmacsVincent Ambo1-15/+0
I only wrote this as a hack to make my Emacs config run on gLinux, but that isn't relevant anymore. Change-Id: I19c49d500e0ec75bb85644d25a63b0b6c530aa62 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9165 Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su>
2023-08-29 r/6535 chore(tazjin/emacs): emacs-unstable -> emacs29Vincent Ambo1-1/+1
Instead of staying up-to-date with Emacs master, I'd like to be a bit more laid back and stay with stable releases. Now that native compilation is in this is not a big difference. I tried to use `-pgtk`, but it broke EXWM. Change-Id: I0789a1f73d0149bda912987e726de396545abce1 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9164 Autosubmit: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su>
2023-08-29 r/6534 refactor(tazjin/gio-list-apps): refactor into dynamic Emacs moduleVincent Ambo7-52/+178
Instead of producing a binary that gets called by Emacs, with input/output serialisation, use a dynamic Emacs module that lets Emacs more-or-less directly call the relevant GTK functions. I'm doing this mostly as an experiment. Might be interesting to end up with a dynamic module that I can dump some experimental code into that improves my workflows. To do this, I've exposed the emacs binary used by my Emacs configuration in an additional `passthru` field. This ensures that the module is linked against the right version of Emacs. Change-Id: I1426994fe3455ed1b2a685c5a09705e29fa40950 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9163 Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su> Autosubmit: tazjin <tazjin@tvl.su>
2023-08-29 r/6533 refactor(tazjin/emacs): refactor LRU workspace list to use ring.elVincent Ambo1-40/+21
This built-in emacs library actually provides a data structure that can work as an LRU list through the existing helper function to move an element to the front of the ring if it already exists. As a result, the code for workspace history moving becomes a lot less brittle and complicated than it was before. No more carefully figuring out when to modify state, just push it in the ring unless it's being rotated already. Change-Id: If354e0618fc5a6d7333776468eec077596cfe9df Reviewed-on: https://cl.tvl.fyi/c/depot/+/9162 Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-08-29 r/6532 chore(tazjin/emacs): remove EXWM gnome-terminal window naming caseVincent Ambo1-8/+0
I haven't used that since ... 2018 or so, time for it to go. Change-Id: I5e1b729bd553940b98335e3d9c7ca5b134fdf692 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9161 Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-08-28 r/6531 feat(tazjin/emacs): add occasionally useful advice-remove-all helperVincent Ambo1-0/+5
Change-Id: I66981e8bec300dff48d7a549f2d2847c637a4557 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9160 Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su>
2023-08-28 r/6530 chore(tazjin/emacs): remove now builtin packagesVincent Ambo1-2/+0
Change-Id: Ib7bf90a1c1fcd9d4475664f4d68a83967df47bfc Reviewed-on: https://cl.tvl.fyi/c/depot/+/9159 Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-08-26 r/6529 feat(tazjin/emacs): implement run-xdg-app using gio-list-apps toolVincent Ambo4-2/+21
Change-Id: I43111dfc7091c416035be563ca7fc17265667b33 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9158 Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su>
2023-08-26 r/6528 feat(tazjin/gio-list-apps): CLI to list xdg apps using Gio libraryVincent Ambo5-0/+551
This does nothing other than dump out the list of XDG apps to stdout in JSON format. There are no options or anything. This can be used for selection in app launchers (e.g. dmenu, something based on completing-read in emacs, rofi, etc.). I wrote this because I don't want to deal with having to do this in Elisp. It's also unclear what logic actually hides behind under the hood here, so why not just use the official library. Change-Id: I16fed2c92760cadecc02c59a4e537a1fa247aff9 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9157 Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-08-26 r/6527 feat(tazjin/emacs): annotate remote files in reliably-switch-bufferVincent Ambo1-3/+15
Change-Id: I0fa460f2d455114ca9387ad23d5a72bcb5a5d9ea Reviewed-on: https://cl.tvl.fyi/c/depot/+/9156 Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-08-26 r/6526 refactor(tazjin/emacs): ivy,swiper,counsel -> vertico,consultVincent Ambo6-41/+14
vertico and consult are more modern versions of interactive narrowing helpers, as those implemented by ivy and its related packages. The primary differences (and what I care about here) is that they are more focused on integration with the core Emacs primitives, rather than building an ecosystem around them. For example: * vertico enhances `completing-read' and friends, but does not attempt to provide its own ecosystem of functions to *trigger* completions. * vertico integrates with the default `completion-style' system, meaning that I can continue to use things like prescient without extra packages that integrate it with vertico * consult does not rely on vertico or any other specific completion framework (such as counsel/swiper do with ivy), and simply implements its functions using completing-read This reduces the overall amount of code in the dependency closure and leads to a less special setup. Functionality is basically equivalent, except for two things which counsel came with that I will need to substitute: * counsel-notmuch (actually this was a separate package, but I didn't use it much anyways, so just ignoring it for now) * counsel-linux-app (opening desktop shortcuts, this I will need to make) As a side note, consult notes "This package is a part of GNU Emacs", but it doesn't seem to be the case. Change-Id: Ia046b763bf3d401b505e0f6393cfe1ccd6f41293 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9155 Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su>
2023-08-26 r/6525 chore(tazjin/emacs): remove a bunch of unused codeVincent Ambo5-106/+5
Change-Id: Ife854e83ef97f1e9a26072f2ab2a3b23f5d64840 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9154 Reviewed-by: tazjin <tazjin@tvl.su> Autosubmit: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-08-23 r/6522 fix(tazjin/emacs): suppress incredibly ennoying EPA error bufferVincent Ambo1-1/+3
When entering an incorrect GPG key password, I don't want my whole buffer layout ruined. A small error message in the modeline is enough. Change-Id: I7318d685e74fa4e110a9bff30d0de9f7f18b2be4 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9149 Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-08-23 r/6521 chore(tazjin/emacs): disable some nonsensical ivy optionsVincent Ambo1-3/+1
Especially the recursive minibuffers only cause a mess. Change-Id: I6f7f790acd6a2f8cc4cec26c9cf97d5e53e77106 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9148 Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su>
2023-08-23 r/6520 feat(tazjin/emacs): implement reliably-switch-bufferVincent Ambo2-0/+22
Adds a completing-read function (defaulting to ivy for me, but it doesn't matter) that offers a reliable alternative to standard buffer-switching implementations. In particular, this implementation retains a mapping of buffer names to their buffer *objects*, so that the correct buffer is selected even if some renaming took place during the selection. I tried to account for a bunch of the common behaviours I could think of: * invisible buffers are ... invisible * entering a buffer name manually creates that buffer, if there is no match * ... unless that buffer is an invisible buffer, in which case it is selected and switched to * the first element is always `(other-buffer (current-buffer))`, because of the ordering of #'buffer-list Yet, the entire code of my implementation is less than the *setup* code of ivy-switch-buffers, so it's possible I missed something. Well, I'll find out ... Change-Id: I08be0da0863d06c9a930e5efaf916719655db90e Reviewed-on: https://cl.tvl.fyi/c/depot/+/9147 Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
2023-08-17 r/6486 feat(grfn/system): Use fancy unicode chars in psqlAspen Smith1-0/+7
Change-Id: I3abb97a2f101fbf813736e48fa86b51ca2dbe931 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9083 Autosubmit: grfn <grfn@gws.fyi> Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
2023-08-17 r/6485 chore(grfn/home): Use stable emacsAspen Smith1-1/+1
I don't really need anything from unstable emacs atm, and it's... unstable. Change-Id: Ibd30f9f767e374c7e9fc125c494c414fd26815a7 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9082 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI Autosubmit: grfn <grfn@gws.fyi>
2023-08-17 r/6484 fix(grfn/emacs): Work around doom bugAspen Smith1-0/+2
Apparently this needs to be forward-declared now... Change-Id: I71857f38ab168751fb9926da8e74004c20729d60 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9081 Tested-by: BuildkiteCI Reviewed-by: grfn <grfn@gws.fyi> Autosubmit: grfn <grfn@gws.fyi>
2023-08-13 r/6481 feat(users/Profpatsch): add my xmonad configProfpatsch6-0/+221
Change-Id: I41d7c3029990f5f1ae56a767331781b38e69997c Reviewed-on: https://cl.tvl.fyi/c/depot/+/9077 Autosubmit: Profpatsch <mail@profpatsch.de> Reviewed-by: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI
2023-08-09 r/6479 refactor(nix/sterni/int): rename div & mod to quot & remsterni2-23/+28
This mirrors the terminology Haskell uses: quot and rem truncate towards zero which is also the case for builtins.div. We can give us the option to introduce Haskell-style int.div and int.mod (to complete the confusion) which would truncate towards negative infinity. Change-Id: Ibebb0a01a73c9718cd62121b2fc2a19c3a4be0de Reviewed-on: https://cl.tvl.fyi/c/depot/+/9009 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org>
2023-08-09 r/6478 feat(sterni/nix): add trivial float librarysterni3-0/+73
Only implements the different conversion types from and to ints for now. Unfortunately very reliant on builtins.{floor,ceil} which can't be implemented purely except very inefficiently (to my knowledge), so it only really works for C++ Nix >= 2.4. Tests are thus skipped for C++ Nix 2.3. Change-Id: Idcb1a11df11e214cdba3f2a0715472b370daa7dc Reviewed-on: https://cl.tvl.fyi/c/depot/+/9008 Reviewed-by: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI
2023-08-09 r/6477 refactor(users/sterni/nix): move generic number operation into numsterni6-45/+64
We omit type checks for performance reasons in most places currently, so the library grouping is important in showing people what to use for what sort of input. The moved functions make sense to use with floats as well, so we'll move them to the num library. Some of the remaining functions could theoretically be adapted and moved, but aren't for now. Change-Id: Ifdecaa60be594f4438b2a58b9ea6445e2da080e3 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9007 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org>