Oddbean new post about | logout

Notes by Andrew Tropin | export

 Trying and learning different bug tracking and project management tools for the last few weeks (bugzilla, debbugs, track, redmine, gitlab, taiga, plane, forgejo, phabricator, gitea, sourcehut and a couple more) I have to admit that the most convinient, visually pleasant and functional enough is GitHub Projects :/

#git #projectmanagement #bugs 
 Text files don't take much space. Meanwhile 12GB mail directory: 🤔 
 Ordered a new 2tb storage for my laptop. It means that we will test the reproducibilty of my rde config and overall installation experience of rde soon :)

For quite some time, I didn't have enough space to maintain VMs, gnu/store and couple of movies at the same time, so I had to cleanup and GC often. Soon it should become much more comfortable to work and live.

#guix #rde 
 For people interested on how much storage you need for comfortable work on systems powerd by GNU Guix: I have around 300GB total on all btrfs subvolumes and while it's manageable, it feels quite tight for my everyday research and development duties.

#guix #rde 
 nostr:npub1zglpd69ltamxe7nnm6rdfleu8amgg3sn24n8rvdey6avckmeax8qvcrqd7 That is... weird.  Is that ... 
 @3a2b67a3 I didn't expect such behavior, so I will ask on IRC. https://paste.rs/qrrYe 
 Fun fact: After calling `join-thread`, you still can get #f from `thread-exited?`

#guile #scheme #lisp

https://cdn.fosstodon.org/media_attachments/files/111/169/807/499/488/927/original/3650298cbbe2bebd.png 
 Today is a deadline for sending proposals for grant to nlnet:
https://nlnet.nl/news/2023/20230801-call.html

#foss #nlnet 
 nostr:npub1zglpd69ltamxe7nnm6rdfleu8amgg3sn24n8rvdey6avckmeax8qvcrqd7 score, this one is going in... 
 @4c603b88 We never ready for a great journey, but nevertheless it happens from time to time :) 
 I have half an hour trip to climbing gym and back 3 times a week. Not to waste this time I take my laptop with downloaded materials with me and watch courses. 

Previously it was OCaml course, now it is Advanced Compilers course:
https://www.cs.cornell.edu/courses/cs6120/2023fa/self-guided/

#llvm #gcc #compilers #scheme #racket #guile #lisp #clojure 
 @f0105b0d Sorry, I can't understand what you are trying to communicate by this message. 
 How about completions in guile-nrepl?

Drafted it in a few minutes. 

But it seems I need to start working on a client as well to make it more capable (for example to show completion types like procedures, symbols, modules).

#guile #scheme #lisp #clojure

https://cdn.fosstodon.org/media_attachments/files/111/141/965/475/739/343/original/9fc99efa5b770521.png 
 nostr:npub1zglpd69ltamxe7nnm6rdfleu8amgg3sn24n8rvdey6avckmeax8qvcrqd7 Since I'm quite passionate ... 
 @588c866e Sure, send it, why not :) 
 nostr:npub1zglpd69ltamxe7nnm6rdfleu8amgg3sn24n8rvdey6avckmeax8qvcrqd7 damn son! this is awesome! 
 Me, trying to explain how guile-nrepl utilize guile-fibers for asyncronous interruptible evaluation.

BTW, I've commited and pushed all the recent local changes. It's not ready for everyday usage, but If you are curious and want to try it out type `make server` and use an nrepl client of your choice (monroe or rail for example).

https://git.sr.ht/~abcdw/guile-nrepl
https://github.com/Sasanidas/Rail

#guile #scheme #lisp #guix #emacs #rde

https://cdn.fosstodon.org/media_attachments/files/111/136/487/429/343/750/original/550a8ae43258ac57.png 
 Post about rde on lobste.rs, got a link to it in personal messages, IDK how to use it, so I will just share it :)

https://lobste.rs/s/xswrjc/rde_tools_for_managing_reproducible

#rde #guix #guile #scheme #lisp #emacs 
 nostr:npub1zglpd69ltamxe7nnm6rdfleu8amgg3sn24n8rvdey6avckmeax8qvcrqd7 

whats is this ? 👀 
 @1e075b84 It's guile-nrepl + rail.el:

https://git.sr.ht/~abcdw/guile-nrepl (this repo is ~10 commits behind my local checkout atm)

https://github.com/Sasanidas/Rail 
 Modern Scheme REPL?
- Interruptible evaluation in remote Scheme process? ✔ 
- Immediately seeing stdout and stderr of remotely evaluated expression? ✔  
- Readable exception messages? ✔

A couple things still bother me:
- How to intercept access to stdin (current-input-port)? Need to make custom ports?
- Evaluation happens in a fresh thread every time: 1. constantly creating new threads is not optimal 2. it doesn't allow to invoke previously saved continuations.

#guile #scheme #lisp #emacs

https://cdn.fosstodon.org/media_attachments/files/111/132/126/114/710/444/original/dc80dc1dc8b16d1f.png 
 5 Concurrency Patterns for Guile Scheme I extracted during my recent work on asyncronous system for guile-nrepl.

https://youtu.be/gNpeA64Qno8

#guile #scheme #fibers #ml #ocaml 
 Launching containers using shepherd, it's like docker-compose for your project, but on steroids!

https://github.com/BIMSBbioinfo/swineherd

Kudos for this cool work to rekado.

#guix #shepherd #guile #scheme #lips #docker 
 nostr:npub1zglpd69ltamxe7nnm6rdfleu8amgg3sn24n8rvdey6avckmeax8qvcrqd7 just updated it. Thanks a t... 
 @035573f8 Very much enjoyed! (: 
 nostr:npub1zglpd69ltamxe7nnm6rdfleu8amgg3sn24n8rvdey6avckmeax8qvcrqd7 really excited to see this ... 
 @035573f8 🔥

I want to repost your message, can you add a https:// to the link, please?

BTW, I lived in Boise for two months :) 
 codepages, cyrillic alphabet, unicode, ligatures, emojis, history of all that stuff and funny real-life stories along the line in one video by Dylan Beattie:

https://youtu.be/4mRxIgu9R70

My opinionated TLDR on that talk: Plain text is not a simple format.

#unix #plaintext #unicode #unicode click this tag and the previous one :) 
 @6f9398eb It's funny coincidence, yesterday Nicolas sent a patch with laminar home service and rde feature: https://lists.sr.ht/~abcdw/rde-devel/patches/44696 
 @6f9398eb Wow, I see Guix System on ricv on your profile picture! 
 nostr:npub1zglpd69ltamxe7nnm6rdfleu8amgg3sn24n8rvdey6avckmeax8qvcrqd7 Does it work? When I see lo... 
 @d52be8ff Yes, it does. Type `login root` RET RET. 
 You can try a GNU Hurd kernel based operating system made with Guix in your browser:

https://gexp.no/blog/try-gnuhurd-in-the-browser.html

#gnu #hurd #guix #kernel #linux 
 @d5d21d6b (:
A little bit perly. :)

Idk, if it is relevant, but there is a couple of tools for working with patches and mboxes: https://b4.docs.kernel.org/en/latest/
https://docs.kyleam.com/piem/index.html 
 Guix for MacOS users:
https://gitlab.com/cnelson31/msg

It uses qemu under the hood, but it's better than complete absense of the guix :)

#guix #lisp #apple #mac #macos 
 @ac58cb3c Thank you for the link, yep, I watched it a couple of days ago one more time:
https://fosstodon.org/@abcdw/111012153486374711

It's inspirational, but org-ref seems too cumbersome/overcomplicated. Trying to build a slimmer and more extensible setup for rde, so it's easier to maintain and troubleshoot it and other people  can reuse it. 
 nostr:npub1zglpd69ltamxe7nnm6rdfleu8amgg3sn24n8rvdey6avckmeax8qvcrqd7 nostr:npub19k5gtzqqnvhnqdvq... 
 @2a4f6354 @2da88588 I guess I'll use zotero traslation-server + zotra + org-protocol

But need to properly package translation-server for guix first :)

https://github.com/mpedramfar/zotra#using-zotra-with-a-browser-and-org-protocol
https://github.com/zotero/translation-server/ 
 @f04ed07c Seems useful, probably it's a slightly different workflow from what I'm looking for. Thank you for sharing! 
 Bibliography in Emacs.

1. I found a Zotero guix package: https://github.com/guix-science/guix-science/pull/27/files

2. @2da88588 mentioned https://github.com/mpedramfar/zotra emacs package, which can use zotero translators without zotero client itself!

3. It's seems that a good solution will be to package zotra and zotero translation-server and setup org-protocol handler for capturing bib entries from browser.

#guix #zotero #emacs #orgmode 
 @2da88588 One more package for creating bib entries: https://github.com/rougier/persid

Created by @39c25544 
 nostr:npub1zglpd69ltamxe7nnm6rdfleu8amgg3sn24n8rvdey6avckmeax8qvcrqd7 They seem to have surprisin... 
 @2da88588 I expect zotero translators to be more extensive and complete. 
 @2da88588 Capturing bibliography entries is the exactly what I'm puzzled with at the moment!
Thank you very much for the link, really promising.

I also found https://github.com/yantar92/org-capture-ref a few minutes ago, but IDK how good it is. 
 nostr:npub1zglpd69ltamxe7nnm6rdfleu8amgg3sn24n8rvdey6avckmeax8qvcrqd7 You maybe want to look into... 
 @67854ae6 I don't think so (: 
 Trying to set up a bibliography and article note-taking workflow with org-roam, org-cite and citar. Looks quite hard so far.

#emacs #orgmode 
 Be aware, rde causes dotfile bankruptcy!

#rde #emacs #guix #lisp #guile #scheme

https://cdn.fosstodon.org/media_attachments/files/111/055/873/367/526/657/original/60d5ae18f8df77f2.png 
 nostr:npub1zglpd69ltamxe7nnm6rdfleu8amgg3sn24n8rvdey6avckmeax8qvcrqd7 Are you doing that nREPL impl? 
 @6adcf666 Yes, nREPL server for Guile. 
 nostr:npub1zglpd69ltamxe7nnm6rdfleu8amgg3sn24n8rvdey6avckmeax8qvcrqd7 I like the patch-over-maili... 
 @8ff43f22 for editing capabilities it's possible to add --compose switch and/or combine git send-email with format, but yes, overall you aright, it's not very friendly MUA experience. 
 @e5b72764 @6adcf666 having patches in emails gives an ability to apply them, write a review without having a network.

Probably pull requests are good for some use cases, but not very offline friendly :) 
 Using electron app for notes feels like using microwave oven for a timer. 
 Using electron app for notes is like using microwave oven for a timer. 
 nostr:npub1zglpd69ltamxe7nnm6rdfleu8amgg3sn24n8rvdey6avckmeax8qvcrqd7 So Codeberg or...? 

I've h... 
 @6adcf666 
> I've heard that plenty of people love applying mail-based patches, but the PR/MR system seems less open to user error, as you've mentioned.

That's right.

> So Codeberg or...?

IDK to be honest. I really like the offline friendlines of emails and it's a huge deal for me right now.

Overall, I'm good with sourcehut, but sometimes I have troubles with poorly formed patch series without cover letters or sent to a separate thread instead of reroll to the same one. 
 There are a lot of benefits in mailing list based development, but there are so many ways to do something wrong: send a patch to a wrong message/thread, forget cover letter or In-Reply-To header, attach instead of inline and so on.

Technically all the tools are available, but it takes a tangible amount of time and practice to configure them and start doing everything properly.

Resources like https://git-send-email.io/ helps, but still doesn't solve the issue completely. 
 Update on tree-sitter structure navigation in emacs mailing list:

https://lists.gnu.org/archive/html/emacs-devel/2023-09/msg00130.html

#treesitter #emacs 
 nostr:npub1zglpd69ltamxe7nnm6rdfleu8amgg3sn24n8rvdey6avckmeax8qvcrqd7 How about guile-tap instead? 
 @f21217c4 I'll just avoid using test-group inside fibers for now. I guess I'll need to revisit scheme's testing frameworks one more time later this year, but let's finish guile-nrepl first. 
 Ouch, I can't use srfi-64 test-group inside asyncronous code, because it uses dynamic-wind and re-entering fiber's continuation messes up test-runner output:

https://git.savannah.gnu.org/cgit/guile.git/tree/module/srfi/srfi-64/testing.scm?h=0e9ccaf47#n443

#scheme #lisp

https://cdn.fosstodon.org/media_attachments/files/111/023/210/400/313/573/original/8943a85a9df6bff3.png 
 Another good idea is to make assertions outside of async code. 
Event not found
 @2f77c6f8 @1772be87 Work for me too. 
Event not found