š Hi, the current time is about a half past eight in the night š.
rustfmt. I now use similar tools for Python (black and isort).
@movq@www.uninformativ.de Welcome to the dark side š¤£
Since I used so much Rust during the holidays, I got totally used to rustfmt. I now use similar tools for Python (black and isort).
What have I been doing all these years?! I never want to format code manually again. š¤£š
@shinyoukai@yume.laidback.moe Hopefully, yes. Havenāt tried it yet.
@movq@www.uninformativ.de I donāt think he is š¤
@shinyoukai@neko.laidback.moe mckinley is back? Where? š¤
Okay, I had heard of āRiverā before but I was not aware of this:
https://codeberg.org/river/river
River defers all window management policy to a separate window manager implementing the river-window-management-v1 protocol. This includes window position/size, pointer/keyboard bindings, focus management, window decorations, desktop shell graphics, and more.
This sounds promising and it follows the old X11 model. River does all the nasty Wayland work and I can make just the WM? š¤š¤Æ
āREMINDER: Laser pointers banned in Switzerlandā
https://home.cern/news/official-news/cern/reminder-laser-pointers-banned-switzerland
@shinyoukai@neko.laidback.moe Whoohoo! Thatās a start to cross-platform support š¤£
Patch applied!
** being goblin **
In response to my most recent week notes, Adrian shared this lovely quote on goblins with me. It comes from my favorite game designer, Avery Alder,
being goblin is a way of flagging that you want to include people not in spite of their sloppiness and uneven emotional growth, but because of itāāābecause goblins come as they are, and they grow in community with one another. Being goblin means being intergenerational in an un-pr ⦠ā Read more
@movq@www.uninformativ.de Aha! Well, happy hacking. A tiling window manager seems to be good fun. :-)
It drizzled all morning when we picked up the old christmas trees in town with the scouts. Right after lunch the snow storm suddenly hit and dumped three centimeters of snow in just 15 minutes. I cycled home in these crazy conditions, freezing rain hammered my face. As soon as I arrived, it stopped. Itās now down to drizzling again.
All my soaked gear is now hung up to dry. The next 11 months, Iām going to find needles over needles in all kind of impossible places.
@shinyoukai@neko.laidback.moe No email has arrived here? š¤
@shinyoukai@neko.laidback.moe Okay I pushed a commit that hopefully fixes this. I hope!
@shinyoukai@neko.laidback.moe Yes; however the interpreter is also platform dependent and relies on making raw syscalls. This is so the runtime semantics remain the same between the two execution modes.
Iāll see if I can add support for linux/amd64 and netbsd/amd64 for the VM at least.
@lyse@lyse.isobeef.org Itās not super comfortable, thatās right.
But these mouse events come with a caveat anyway:
ncurses uses the XM terminfo entry to enable mouse events, but it looks like this entry does not enable motion events for most terminal emulators. Reporting motion events is supported by, say, XTerm, xiate, st, or urxvt, it just isnāt activated by XM. This makes all this dragging stuff useless.
For the moment, I edited the terminfo entry for my terminal to include motion events. That canāt be a proper solution. Iām not sure yet if Iām supposed to send the appropriate sequence manually ā¦
And the terminfo entries for tmux or screen donāt include XM at all. tmux itself supports the mouse, but Iām not sure yet how to make it pass on the events to the programs running inside of it (maybe thatās just not supported).
To make things worse, on the Linux VT (outside of X11 or Wayland), the whole thing works differently: You have to use good old gpm to get mouse events (gpm has been around forever, I already used this on SuSE Linux). ncurses does support this, but this is a build flag and Arch Linux doesnāt set this flag. So, at the moment, Iām running a custom build of ncurses as a quick hack. š And this doesnāt report motion events either! Just clicks. (I donāt know if gpm itself can report motion events, I never used the library directly.)
tl;dr: The whole thing will probably be ākeyboard firstā and then the mouse stuff is a gimmick on top. As much as Iād like to, this isnāt going to be like TUI applications on DOS. Iāll use āWindowsā for popups or a multi-window view (with the āWindowManagerā being a tiny little tiling WM).
@shinyoukai@neko.laidback.moe if you donāt show me the actual full stacktrace, I canāt fix the problem š¢
Most of it should work on other platforms, the bytecode VM that is. You may run into some platform quirks though that rely on syscall() ā Let me know what you run into and Iāll try to fix them nw. The problem right now is I havenāt even begun to start work on another platform/architecture yet.
Mu (µ) is coming along really nicely 𤣠Few things left to do (in order):
- Finish the concurrency support.
- Add support for sockets
- Add support for
linux/amd64
- Rewrite the heap allocator
- Rewrite Mu (µ) in well umm Mu (µ) š
Hereās a screenshot showing off the builtin help(): 
Itās gone. š
@shinyoukai@neko.laidback.moe the whole bridge idea is a mistake done twice (I encouraged the first time, it was a mistake to do so). In this case, the āBabel Towerā works; there is no need to interact with āothersā, let it be just twtxt.
** no beautiful things **
Thereās this line in The Hobbit that haunts me. For one thing, it is part of a wider problematic habit running throughout all of Tolkien that, moving in the mythopoetic space, leads to these sweeping statements that define or collapse an entire culture into a single stroke. It seems to me to be like the most damning thing you could say about a culture, though:
Now goblins are cruel, wicked, and bad-hearted. They make no beautiful things, but they make many clever ones.
Emphasis my own, and the quote ⦠ā Read more
@movq@www.uninformativ.de Oh, I see. Unfortunately, there seems to be no box drawing character for a corner with a diagonal line. Indeed, this is probably the best you can do.
Is the single character enough to hit it comfortably with the mouse, though? Maybe one additional to the left and above could be something to think about. Not sure. Of course this complicates it a bit more. Personally, I like fullscreen windows, so Iām definitely the wrong guy to judge this or even comment on. :-)
@lyse@lyse.isobeef.org Ah, the lower right corner is different on purpose: Itās where you can click and drag to resize the window. https://movq.de/v/cbfc575ca6/vid-1767977198.mp4 Not sure how to make this easier to recognize. š¤ (Itās the only corner where you can drag, btw.)
@bender@twtxt.net Seriously, if I ever get a CRT monitor again, I want it to be an amber one and then hook it up to some 8086. š Only problem is that this stuff is expensive as hell now ā¦
Hey folks! We have recently had a wonderful new release of #py5, read about the new 3D trimesh integration feature and the matplotlib TextPath integration.
That release was quickly followed by a release to fix some small issues that surfaced this last week. Please check out py5 0.10.9a1 and join us at https://github.com/py5coding/py5generator/discussions to share your experiences!
#CreativeCoding #Processing #Python #genuary (sorry for the hashtag spamming, I couldnāt resist!)
Quer dizer que eu vou comeƧar o ano com o Manjaro espandongando por conta de alguma atualização dos drivers de vĆdeo, Ć© isso?
Feeling nostalgic, for 3D-ish old game sprites, so I made one of myself.

I love it. It make me feel quite nostalgic.
@movq@www.uninformativ.de Very nice, itās coming together!
Just in case you havenāt already noticed it, the right lower corner of the window in front was not updated when it received the focus. 8-) (In tt I also render focused text input fields with a doubly lined border, where unfocused ones have a single one.)
(The background and the window shadow are not amber and it wouldnāt have looked like that on a real monitor, unless you cranked up the brightness way too high.)
I think my widget toolkit will have an amber theme by default:
https://movq.de/v/22662db9b2/amber.png
My first PC had a monochrome amber screen and I just love looking at this. š
(It looks even better with redshift enabled, but I canāt screenshot that.)
Only downside is that there arenāt that many amber shades in the standard 256 color palette. Or well, maybe thatās actually a good thing, as it probably helps to keep the theme more minimal and less cluttered/noisy. š¤
Work kills the soul
Since most of the jobs that we do nowadays are simply meaningless: Yes. Work kills the soul.
Work kills the soul
it sure can! š¤£
Make it so number one !
@movq@www.uninformativ.de Whatās Email?! š
@zvava@twtxt.net and the year of the Linux desktop, I swear! No more procrastination, this year is it.
Vacation: Doing crazy things like C on DOS, lots of Rust, bare-metal assembly code, everything is fine.
Back at work: How the fuck do I move an email in this web mail program? Am I stupid? š®āšØ
@rrraksamam@twtxt.net down, boy! :-D
Post sobre o curso grĆ”tis na Udemy, complementar ao livro āAutomate the Boring Stuff with #Pythonā (que tambĆ©m pode ser lido de graƧa no site do autor)
@kiwu@twtxt.net better now, with you around! š
@lyse@lyse.isobeef.org Iāll let you guys know when/if itās ready to get published. š There are still rough edges and, obviously, very few widgets. Most importantly, a list view and a table widget are missing. But my vacation is over now, so things will crawl to a halt.
@prologic@twtxt.net Yep! I like that this distillation metaphor makes it explicit: You have to go ahead and actually distill something. It doesnāt happen automatically. The metaphor acknowledges that this is work that needs to be done by someone.
āWhat is a PC compatible?ā https://codon.org.uk/~mjg59/blog/p/what-is-a-pc-compatible/
@bender@twtxt.net Theyāre not completely impossible, but C makes it much easier to run into them. I think the key point is that in those āsafeā languages, buffer overflows are caught and immediately crash the program (if not handled otherwise) instead of silently corrupting memory, not being noticed right away and maybe only later crashing at a different location, where it can be very hard to find the actual root cause. This is a big improvement in my book.
Some programmers are indeed horrible. Iām guilty myself. :-)
I like the article.
I came across this on āWhy Is SQLite Coded In Cā, which I found interesting:
āThere has lately been a lot of interest in āsafeā programming languages like Rust or Go in which it is impossible, or is at least difficult, to make common programming errors like memory leaks or array overruns.ā
If thatās true, then encountering those issues means the programmer is, simply, horrible?
@movq@www.uninformativ.de I quite like this part:
Many people write programs, but few stick with a program long enough to distill it.
I think this is finally a good metaphor to talk about āsimpleā software:
https://oldbytes.space/@psf/115846939202097661
Distilled software.
I quote in full:
principles of software distillation:
Old software is usually small and new software is usually large. A distilled program can be old or new, but is always small, and is powerful by its choice of ideas, not its implementation size.
A distilled program has the conciseness of an initial version and the refinement of a final version.
A distilled program is a finished work, but remains hackable due to its small size, allowing it to serve as the starting point for new works.
Many people write programs, but few stick with a program long enough to distill it.
I often tried to tell people about āsimpleā or āminimalisticā software, āKISSā, stuff like that, but they never understand ā because everybody has a different idea of āsimpleā. The term āsimpleā is too abstract.
This is worth thinking about some more. š¤
@movq@www.uninformativ.de Yiha! Even autoscroll, very nice! The naming certainly drew inspiration from Urwid. I like it. Looking forward to eventually checking out its inner workings. :-)
@movq@www.uninformativ.de @prologic@twtxt.net @bender@twtxt.net Given the age, they must mean Kopernikus! https://en.wikipedia.org/wiki/DFS_Kopernikus
@bender@twtxt.net I also went back to my duty today and fixed a problem I created right before vanishing into the holidays. Of course, I discovered more problems while fixing the one thing. Luckily, another public holiday tomorrow. :-)
During my time off, I was a very lazy rat. I planned on doing some woodworking again, but instead I started watching Itchy Bootās Africa season: https://www.youtube.com/watch?v=pMvfS5mbsiI&list=PL8M9dV_BySaXNvQ_V1q4UU-DirPQlX0ZP
@prologic@twtxt.net Yup, itās been a while since I played that. š Hardly rememberd it, to be honest. And apparently I did everything wrong, because that monster just came along and trashed my city, no way to stop it. š¤Ŗ
@bender@twtxt.net No, I had my break/holiday earlier. I chose to work through, except the public holidays of course.
@bender@twtxt.net I am so prepared and ready for retirement. 𤣠(Not gonna happen for a while, though. If ever.)
@prologic@twtxt.net so, you were not giving time off during the end of year? The company you work for didnāt give a break?
@movq@www.uninformativ.de hear hear! If anything, holiday breaks help to validate the fact that we are prepared for retirement. At least, I am!
@movq@www.uninformativ.de Ahh nice! Itās been several decades since Iāve played that! Probably 3 actually come to think of it š¤£
@prologic@twtxt.net SimCity 2000 in DOSBox š
@movq@www.uninformativ.de what game is that?
I basically worked through the Christmas break last year. I already had my holidays in Vietnam a few weeks earlier. š
I just wanted to chill a bit, then this fucker came along and burned everything to the ground.
httpd now sends the Last-Modified with UTC instead of GMT. Current example:
@shinyoukai@neko.laidback.moe Not using OpenBSD or httpd? Yeah. Itās been working quite well since ~2017, so, meh, too lazy to switch now. But nothing is set in stone, of course.
@bender@twtxt.net I have another two days of vacation, then itās back to the grindstone for me as well. š¢
Canāt we have vacation all year round? š¤£
@prologic@twtxt.net Computers are great, eh? Soooo many problems to choose from! What do you want to solve today? š
And now the event loop is not a simple loop around cursesā getch() anymore but it can wait for events on any file descriptor. Hereās a simple test program that waits for connections on a TCP socket, accepts it, reads a line, sends back a line:
https://movq.de/v/93fa46a030/vid-1767547942.mp4
And the scrollbar indicators are working now.
Iāll probably implement timer callbacks using timerfd (even though thatās Linux-only). š¤
@movq@www.uninformativ.de I think they are Windows users, going by the lack of attention to detail, and the fact they love DFS. Ha!
Ending three luxurious do-what-I-please weeks; tomorrow is back to work. What do you all do during your break (and this assumes you had one, even if short)? I mostly did nothing, which in itself was truly something! So much, I long to do it all over again. A man can dream, right? Haha!
Trying to build a native heap allocator that grows and isnāt statically wired into the binaryās image is fuckān hard⢠as š¤£
Looks like someone loves Depth First Search.
@movq@www.uninformativ.de Very cool! š
More widget system progress:
https://movq.de/v/87e2bce376/vid-1767467193.mp4
I like the oldschool shadow effect. š Not sure if Iāll keep it, but itās neat.
The menu bar is still fake.
Had to spend quite a bit of time optimizing the rendering today. This can get really slow really quickly.
Unicode is Pain.
I might be able to start porting my first program (currently uses urwid) soon. š¤
Ano novo e volta o meme do āano do desktop Linuxā, e finalmente perco a paciĆŖncia.
Porque Ʃ que se fala do Linux no desktop como se fosse a segunda vinda de Cristo quando finalmente acontecer? O Linux domina nos segmentos mobile, e olha que bem que estamos, nƩ?
Ć que concentrar o ativismo no sistema operativo Ć© um erro com vistas curtas, e Ć© inconsequente defender apenas āo Linuxā sem uma postura tecnopolĆtica sobre software livre
httpd now sends the Last-Modified with UTC instead of GMT. Current example:
@shinyoukai@neko.laidback.moe Yeah, probably. Not going down the CURRENT route, thatās for sure. š
@movq@www.uninformativ.de Cool! :-) I just implemented a workaround for the time being.
httpd now sends the Last-Modified with UTC instead of GMT. Current example:
@lyse@lyse.isobeef.org Itās already fixed:
https://github.com/openbsd/src/commit/668f1f05e71c5e979d278f1ad4568956226715ea
Question is when that fix will land. š
httpd now sends the Last-Modified with UTC instead of GMT. Current example:
@lyse@lyse.isobeef.org Bah. Yeah, that looks like a bug. Letās see if this already reported upstream. š¤
@movq@www.uninformativ.de I noticed that your feedās last modification timestamp was missing in my database. I cannot tell for certain, but I think it did work before. Turns out, your httpd now sends the Last-Modified with UTC instead of GMT. Current example:
Sat, 03 Jan 2026 06:50:20 UTC
Iām not a fan of this timestamp format at all, but according to the HTTP specification, HTTP-date must always use GMT for a timezone, nothing else: https://httpwg.org/specs/rfc9110.html#http.date
@movq@www.uninformativ.de Letās hope they find the guys who fired that rocket onto the balcony and we actually get a fireworks ban.
@prologic@twtxt.net Very impressive! :-)
New year new⦠year; And Thatās about it. No M(ent)alware upgrade needed this time.
@shinyoukai@neko.laidback.moe Oh no, fuck that 𤣠Thatās why I built an FFI so I can call C-functions via shared libraries š¤£
** 2026.01 week notes **
Will I succeed in making week notes a weekly activity this year?
Only time will tell!
ā¦also, I meanā¦I feel like the answer is alreadyānoā and that is fine, but anyways.
- I donāt usually take the holidays off from work, it is a nice time to catch up on stuff while still being able to hang out with my family who are all off from school and work.
- Iāve moved where I work in the house so that it is easier for me to hang out with the dog whoās struggling to go up and down stairs, which is kinda problematic since ⦠ā Read more
@movq@www.uninformativ.de Very nice! We also had some snow this morning, but itās already melted. And the sun is missing, too. :-D
Mu (µ) is now getting much closer to where I want it to be, it now has:
- A
processstdlib module (very basic, but it works)
- An
ffistdob module that supportsdlopen/dlsymand calling C functions with a nice mu-esque wrapperffi.fn(...)
- A
sqlitestdlib module (also very basic) that shows off the FFI capabilities
š
@movq@www.uninformativ.de Looks kind of nice š
@movq@www.uninformativ.de What I wish for once on this miserable planet is for coporations one day ohave a different set of reasons to exist and thrive other than:
but since the only goal of that manufacturer is to make money, they do it
Life becomes very boring and uninteresting when your only goal in life is to āmake more fucking moneyā š° Fuck 𤬠Fuck this Corporatocracy we live in š¤¦āāļø
Finally Skyrim weather. š„³
@eldersnake@we.loveprivacy.club
Steps to world domination:
- āInventā āAIā (by using other peopleās data).
- Get people hyped about it and ideally hooked on it.
- Only provide it as a cloud service. But hey, if you want to, you can run it locally!
- Buy all hardware available on the market, so that nobody but you can build more systems.
- All PCs of consumers and competitors are too weak now and canāt be upgraded anymore.
- Everybody depends on your cloud service! Win!
All of that is possible because corporations donāt have a āconscienceā in capitalism. Nobody forces the RAM manufacturers to sell all their stuff to just one or two buyers, but since the only goal of that manufacturer is to make money, they do it.
@eldersnake@we.loveprivacy.club da fuq?! š¤Æ
@movq@www.uninformativ.de Wow, thatās sick! :-)
@movq@www.uninformativ.de Iām pretty sure I know a bunch of people who love to blow up their money. :-(
Holy shit! :-O At least, the walls didnāt shake here. But we also had some very loud explosions, maybe they were far enough away. :-? Of course, the bangs continued last night.
Maybe some politicians need to be personally attacked with this sort of shit first in order to ban it once and forever.
@shinyoukai@neko.laidback.moe @prologic@twtxt.net Yeah, itās been ages that I came across Trac. :-D
@shinyoukai@neko.laidback.moe I canāt believe Trace and Edgewall Software is still around and in use š¤£