# I am the Watcher. I am your guide through this vast new twtiverse.
# 
# Usage:
#     https://watcher.sour.is/api/plain/users              View list of users and latest twt date.
#     https://watcher.sour.is/api/plain/twt                View all twts.
#     https://watcher.sour.is/api/plain/mentions?uri=:uri  View all mentions for uri.
#     https://watcher.sour.is/api/plain/conv/:hash         View all twts for a conversation subject.
# 
# Options:
#     uri     Filter to show a specific users twts.
#     offset  Start index for quey.
#     limit   Count of items to return (going back in time).
# 
# twt range = 1 238096
# self = https://watcher.sour.is?offset=237557
# next = https://watcher.sour.is?offset=237657
# prev = https://watcher.sour.is?offset=237457
Les gens qui arrosent leur pelouse le soir, vous aimez les moustiques en fait? Collabos! 🦟
[47°09′05″S, 126°43′57″W] Saalmi, retransmit, please
@kat uh, i use yandex mail which uses HTML by default
[47°09′58″S, 126°43′17″W] Storm recedes -- back to normal work
This is so good...

https://innig.net/teaching/liberal-arts-manifesto

by Paul Cantrell (@inthehands@inthehands)

#Education #Curiosity #Liberation
🧮 USERS:1 FEEDS:2 TWTS:1376 ARCHIVED:87698 CACHE:2671 FOLLOWERS:22 FOLLOWING:14
@kat join the SearxNG cult! the grass is way greener over here 😁
@movq neither do I 😆 and I'm going full Albert Camus mode. Embracing the Absurdism of life just to cope, it's the only choice I have left.
i ordered some fun colorful new minidiscs so i can finally get back to recording my mixes :D looking forward to it
i ordered some fun colorful new minidiscs so i can finally get back to recording my mixes :D looking forward to it
@aelaraji i'm so sick of AI summaries they piss me tf off
@aelaraji i'm so sick of AI summaries they piss me tf off
"The only way to learn is to try. The best way to learn is to have fun." —@ucodery@fosstodon.org
[47°09′55″S, 126°43′52″W] Automatic systems disengaged due to heavy rain
Unless your Terms of use update email looks and reads the same as the one I got yesterday from mastodon.social, I don't wanna know about it, nor do I agree to it.
https://oppi.li/posts/plain_text_journaling/
@aelaraji I’d love to have a positive, optimistic reply to that, but … uhm … I don’t. 🤣
@kat Ooh, I’ve got to bookmark that page. 😃

@aelaraji I wish I had the luxury of not reading that junk. 😅 But instead, I have a Mutt hotkey that pipes an HTML mail through elinks … Bah.
FFS! Can't I just get results, accurate no BS results? No erroneous/misleading AI-Slop of a summary I've never asked for ? I get it, there is plenty of people who _LOooove_ (if not _worship_) that shit, Good for them! But at least make it opt-in or add in some kind of "Do Not Slop" browser option _(as if the "Do Not Track" one made a difference, but I digress)_. Shit's only going down-hill from here, I might as well as just spin up my own Searx instance and call it a day.
@prologic I’m trying to call some libc functions (because the Rust stdlib does not have an equivalent for getpeername(), for example, so I don’t have a choice), so I have to do some FFI stuff and deal with raw pointers and all that, which is very gnarly in Rust – because you’re not supposed to do this. Things like that are trivial in C or even Assembler, but I have not yet understood what Rust does under the hood. How and when does it allocate or free memory … is the pointer that I get even still valid by the time I do the libc call? Stuff like that.

I hope that I eventually learn this over time … but I get slapped in the face at every step. It’s very frustrating and I’m always this 🤏 close to giving up (only to try again a year later).

Oh, yeah, yeah, I guess I could “just” use some 3rd party library for this. socket2 gets mentioned a lot in this context. But I don’t want to. I literally need *one* getpeername() call during the lifetime of my program, I don’t even do the socket(), bind(), listen(), accept() dance, I already have a fully functional file descriptor. Using a library for that is total overkill and I’d rather do it myself. (And look at the version number: 0.5.10. The library is 6 years old but they’re still saying: “Nah, we’re not 1.0 yet, we reserve the right to make breaking changes with every new release.” So many Rust libs are still unstable …)

… and I could go on and on and on … 🤣
@movq > That guy over there in the corner...

I'm literally sitting in a corner *chuckles*. I rarely get any emails nowadays. But if I do and it is not plain-text, then my Mutt gets to bark at it and I, just... won't read it. 🤷🏽‍♂️
[47°09′57″S, 126°43′24″W] Wind speed: 84kph -- batteries low
🥁 Brrrrrrrrr... Bud'em... Tsssss...
@movq make that 4 people! i use plain text when i can because this page convinced me lmfao
@movq make that 4 people! i use plain text when i can because this page convinced me lmfao
Aha, afinal aquele episódio do ananás no carrinho do supermercado tem background histórico

https://wholesalenutsanddriedfruit.com/upside-down-pineapple-was-a-symbol-for-swingers-in-the-colonies/
Aha, afinal aquele episódio do ananás no carrinho do supermercado tem background histórico

https://wholesalenutsanddriedfruit.com/upside-down-pineapple-was-a-symbol-for-swingers-in-the-colonies/
@andros U2FsdGVkX18Tihk9v1GrKLgV2t8gjvdVVNToYmzblFh/EIt1mSUUEjosoY7i1NYnLkVaN3Wdkf11dEnDkHrLEQ==
[47°09′57″S, 126°43′56″W] Wind speed: N/A -- Cannot comunicate
Rest in peace Barry Vercoe
@lyse :'-(
C'est la dernière semaine de cours qui commence, l'occasion de jouer avec des glaçons. Le principe? Il faut sauver son glaçon ou éliminer les glaçons adverses. Du souffle du dragon à la pluie de sel avec un plateau qui change à chaque partie, on s'amuse bien en classe. vous pouvez tester à la maison : https://si3t.ch/glagla
C'est la dernière semaine de cours qui commence, l'occasion de jouer avec des glaçons. Le principe? Il faut sauver son glaçon ou éliminer les glaçons adverses. Du souffle du dragon à la pluie de sel avec un plateau qui change à chaque partie, on s'amuse bien en classe. vous pouvez tester à la maison : https://si3t.ch/glagla
Batdo
/https://baldo.cat/media/photos/batdo.jpg) #catsoftwtxt
[47°09′11″S, 126°43′13″W] Weather forecast alert -- storm from NW
[47°09′20″S, 126°43′50″W] --no signal--
🧮 USERS:1 FEEDS:2 TWTS:1375 ARCHIVED:87691 CACHE:2671 FOLLOWERS:22 FOLLOWING:14
#python Alguém tem o contato do Juan Lopes? @gwidion@gwidion ?

Acho que ele ia gostar de ver isso aqui:

https://mastodon.social/@carapace/114699111024833608
@lyse … because you, me, and that guy over there in the corner are the only three people left using plain-text email. 🫤 (And probably Stallman.)
Fuck me sideways, Rust is so hard. Will we ever be friends?
[47°09′46″S, 126°43′54″W] Dosimeter fixed
#MaradoWeekly #WeeklyPlant Week 24 Live wire patching without making music: patching a new vase of wild strawberries instead
#MaradoWeekly #WeeklyPlant Week 24 Live wire patching without making music: patching a new vase of wild strawberries instead
> It all started in New York in the early 1980s. Click, now 85, and his friends were sitting at the long bar of the New York Athletic club reading magazine articles about boxing, fencing, judo and wrestling. “One of my mates said, ‘Dude, we don’t do any of those things.’” They had to face it. They were dull. They decided to embrace their dullness.
>
> As a joke, they started The Dull Men’s Club, which involved some very silly, dull activities. They chartered a tour bus but didn’t go anywhere. “We toured the bus. We walked around the outside of the bus a few times. And the driver explained the tyre pressures and turned on the windscreen wipers.”

https://www.theguardian.com/society/2025/jun/09/meet-the-members-of-the-dull-mens-club-some-of-them-would-bore-the-ears-off-you
> It all started in New York in the early 1980s. Click, now 85, and his friends were sitting at the long bar of the New York Athletic club reading magazine articles about boxing, fencing, judo and wrestling. “One of my mates said, ‘Dude, we don’t do any of those things.’” They had to face it. They were dull. They decided to embrace their dullness.
>
> As a joke, they started The Dull Men’s Club, which involved some very silly, dull activities. They chartered a tour bus but didn’t go anywhere. “We toured the bus. We walked around the outside of the bus a few times. And the driver explained the tyre pressures and turned on the windscreen wipers.”

https://www.theguardian.com/society/2025/jun/09/meet-the-members-of-the-dull-mens-club-some-of-them-would-bore-the-ears-off-you
[47°09′41″S, 126°43′13″W] Resetting dosimeter
#ptpol

Portanto, o #IL não quer ser colado a #Milei e #Musk e então em vez de exigir uma #motosserra... quer um #bulldozer.

*animação de olhos a rebolar*
#ptpol

Portanto, o #IL não quer ser colado a #Milei e #Musk e então em vez de exigir uma #motosserra... quer um #bulldozer.

*animação de olhos a rebolar*
[47°09′27″S, 126°43′36″W] Dosimeter overflow
[47°09′11″S, 126°43′25″W] Dosimeter malfunction
[47°09′04″S, 126°43′44″W] Transfer aborted
🧮 USERS:1 FEEDS:2 TWTS:1374 ARCHIVED:87681 CACHE:2671 FOLLOWERS:22 FOLLOWING:14
La IA detrás de mí código
/https://duque-terron.cat/media/photos/camphoto_1297389768.jpeg) #catsoftwtxt
- Esta almohada me gusta. ¡Pa mi! -
/https://baldo.cat/media/photos/IMG_4714.jpeg) #catsoftwtxt
https://blog.garambrogne.net/kloset.html #kloset disséqué une histoire de #plakar un outil de sauvegarde qui utilise déduplication compression chiffrage et signature
Birds walking on the ground: it's the best.
[47°09′01″S, 126°43′47″W] Transfer 25% complete...
Me: I had a 7-day working sprint I should relax today before I teach a class in the evening...

My brain: Good, as you don't feel any obligation to work on your PhD today, you should just open the PhD working file and start working on it, no pressure. it will feel nice, I promise!
OpenBSD has the wonderful pledge() and unveil() syscalls:

https://www.youtube.com/watch?v=bXO6nelFt-E

Not only are they super useful (the program itself can drop privileges – like, it can initialize itself, read some files, whatever, and then tell the kernel that it will never do anything like that again; if it does, e.g. by being exploited through a bug, it gets killed by the kernel), but they are also extremely easy to use.

Imagine a server program with a connected socket in file descriptor 0. Before reading any data from the client, the program can do this:

unveil("/var/www/whatever", "r");
unveil(NULL, NULL);
pledge("stdio rpath", NULL);

Done. It’s now limited to reading files from that directory, communicating with the existing socket, stuff like that. But it cannot ever read any other files or exec() into something else.

I can’t wait for the day when we have something like this on Linux. There have been some attempts, but it’s not that easy. And it’s certainly not mainstream, yet.

I need to have a closer look at Linux’s Landlock soon (“soon”), but this is considerably more complicated than pledge()/unveil():

https://landlock.io/
Vocês traduzem "New York" para "Nova Iorque" nas citações bibliográficas (local de publicação)?
@prologic nice... had to look up "Lamarckian" :-)
@prologic nice... had to look up "Lamarckian" :-)
“Learn Something Old Every Day, Part XV: KEYB Is Half of Keyboard BIOS”

https://www.os2museum.com/wp/learn-something-old-every-day-part-xv-keyb-is-half-of-keyboard-bios/
@andros U2FsdGVkX18PSQ+Mk7cYagSzPXMXZ32goXv9FiHgnOeIRJG88R+5o5phWrec0w+DVfklNgKx1XIEIj7hqo9AaQ
[47°09′59″S, 126°43′45″W] Carrier too weak
Hm... Captura de ecrã a um navegador web a tentar visitar parlamento.pt e a falhar com ERR_EMPY_RESPONSE.
Hm... Captura de ecrã a um navegador web a tentar visitar parlamento.pt e a falhar com ERR_EMPY_RESPONSE.
I wish I had the time and energy to play with #pyodide more, I could try adding #shapely to #pyp5js ...

https://pyodide.org/en/stable/usage/packages-in-pyodide.html

#Python #CreativeCoding
[47°09′03″S, 126°43′33″W] Transponder still failing -- switching to analog communication
[47°09′37″S, 126°43′20″W] Transponder jammed
[47°09′56″S, 126°43′30″W] Resetting transponder
Spent an absurd amount of time searching for the "update fork" button on #gitlab's web interface.

Why? Because it turns out you can only see it if you are in landscape, in portrait view the button simply does not exist...

#ux #fail gitlab interface in landscape, an "update fork" button exists on the right side gitlab interface in portrait, no "update fork" button exists
Spent an absurd amount of time searching for the "update fork" button on #gitlab's web interface.

Why? Because it turns out you can only see it if you are in landscape, in portrait view the button simply does not exist...

#ux #fail gitlab interface in landscape, an "update fork" button exists on the right side gitlab interface in portrait, no "update fork" button exists
@birb@birb https://www.cm-lamego.pt/pages/321.rss
@birb@birb https://www.cm-lamego.pt/pages/321.rss
@birb@birb https://www.cm-lamego.pt/pages/322.rss
@birb@birb https://www.cm-lamego.pt/pages/322.rss
🧮 USERS:1 FEEDS:2 TWTS:1373 ARCHIVED:87677 CACHE:2676 FOLLOWERS:22 FOLLOWING:14
orb v0.1.0 - tiny metasearch | https://nilfm.cc/orb.html
[47°09′31″S, 126°43′03″W] Transponder still failing
As feiras medievais são "reconstruções históricas" do que nunca existiu - e ainda assim espalham-se pelo país como momentos de convívio e folia. Em Lamego tem a particular característica de ser promovida como contendo uma recriação histórica das #cortes de Lamego*, ainda que estas nunca tenham existido.

Mas para mim a feira #medieval de #Lamego é aquela altura do ano em que vou até à praça e bebo #hidromel. E quem diz que essa não é uma boa tradição a manter e celebrar? ;-)

* https://pt.m.wikipedia.org/wiki/Cortes_de_Lamego Um maralhal de gente na praça do comércio em Lamego, a ver um qualquer dos espectáculos a decorrer na Feira Medieval de Lamego 2025.
As feiras medievais são "reconstruções históricas" do que nunca existiu - e ainda assim espalham-se pelo país como momentos de convívio e folia. Em Lamego tem a particular característica de ser promovida como contendo uma recriação histórica das #cortes de Lamego*, ainda que estas nunca tenham existido.

Mas para mim a feira #medieval de #Lamego é aquela altura do ano em que vou até à praça e bebo #hidromel. E quem diz que essa não é uma boa tradição a manter e celebrar? ;-)

* https://pt.m.wikipedia.org/wiki/Cortes_de_Lamego Um maralhal de gente na praça do comércio em Lamego, a ver um qualquer dos espectáculos a decorrer na Feira Medieval de Lamego 2025.
new icon! the girl is manon from KATSEYE because i'm mega obsessed with them
new icon! the girl is manon from KATSEYE because i'm mega obsessed with them
[47°09′39″S, 126°43′36″W] Transponder malfunction
@kat i linked the normal length edit instead of the full 15 minute music video because i'm not gonna subject you all to that amount of my bullshit

(...15 minute version is a great watch though)
@kat i linked the normal length edit instead of the full 15 minute music video because i'm not gonna subject you all to that amount of my bullshit

(...15 minute version is a great watch though)
REBORN LIKE A PHOENIX WING ❤️‍🔥 👼 https://www.youtube.com/watch?v=D-w2HwG18vg
REBORN LIKE A PHOENIX WING ❤️‍🔥 👼 https://www.youtube.com/watch?v=D-w2HwG18vg
@kat thats awesome. my kids still love playing it.
@kat thats awesome. my kids still love playing it.
@prologic what do we have here?
@prologic what do we have here?
@lyse those are so annoying. except when they're idol tiktoks then they're fine to me
@lyse those are so annoying. except when they're idol tiktoks then they're fine to me
O Zé do Pipo devia ser um gajo meio frito das ideias: quem é que um dia se lhe ocorre "deixa pôr maionese e levar ao forno"?
O Zé do Pipo devia ser um gajo meio frito das ideias: quem é que um dia se lhe ocorre "deixa pôr maionese e levar ao forno"?
[47°09′09″S, 126°43′17″W] Storm recedes -- back to normal work
STOP! this is a dambara ruru video checkpoint. you must watch this video or else i will find you
STOP! this is a dambara ruru video checkpoint. you must watch this video or else i will find you