taskbook is really neat. i like using its to-do features, i think the note-taking i wonāt need as iāve been using obsidian a lot for that lately but the to-do stuff is really helping me out
I keep forgetting how much socialization with people I actually like really helps ease up my depression for a bit.
@prologic@twtxt.net awww thank you! yeah iād love to keep it small and chill. thatās what i and my friends like most about yarn, how small and quiet it is, itās just chill! and thereās no likes/reposts too which helps keep it super chill i think. just vibes⦠itās the best! youāve built something great!
GUYS HELP I LOCKED MYSELF OUT OF MY ACCOUNT ON WEB AND I COULDNāT GET EMAILS WORKING IāM STUCK POSTING FROM CLI LOLLLL
"twtxtfeevalidator/0.0.1" UA about? I thought I could ask before throwing a 1000GB file at it šŖ¤ could it be the same 'xt' thing @lyse was talking about the other day?
@lyse@lyse.isobeef.org Oh! no need to be sorry and feel free to keep at it if it helps, I donāt mind. Itās just that Iām always on the lookout for corpo-bots and crawlers slipping through the cracks (a fun little game of sorts) š
the only thing I let them see is a robots.txt telling them to :diffoff
Also, Iām curious about the invalid lines in my feed. is it something I should lookout for in future?
@prologic@twtxt.net oh itās ok! thank you for the explanation! i think for me when it comes to programming i learn best by doing, so like written examples or talking about it helps less, BUT baseline explanations like what a pointer is does help! i was so confused and i still need to fix the error iām having but i will figure it out!
Rode my bicycle into town. What the hell is wrong with some of these motorists!? Here in right lane traffic land, a car reversed out of the driveway on the left into the road and nearly hit me. And this happened twice! If you donāt fucking see, how about you go slowly and not just hope that nobody is coming!? The first one even decided to honk at me. SUV drivers confirming prejudiceā¦
Well, at least I could help a lady with transfering her child in a pram.
help iāve had this account for barely 2 days and iām nearly at 100 posts
well, the extension helps to know the file format as in .txt and .html, perhaps .twt, he!
Fartlek: 7.12 miles, 00:09:56 average pace, 01:10:41 duration
kept it chill the first three miles then took a walk break to lower the heart rate and started off again into a fartlek. the intervals helped because my mind was starting to fuck with me with the steady pace. got some pretty good rain in the last two and a half miles which was great too!
#running
Organised my decades old ebook collection and cleaned up all the duplicates. The Czkawka application helped a lot with getting that done. Also - finally - using Calibre as our home digital library.
@mckinley@twtxt.net To help saving the planet is a good reason. :-)
@prologic@twtxt.net Thereās always my log.html page if it helps⦠and while weāre still at it hereās the other twt #z2ymlkq for reference ;)
I sent a few local tests, could you help me check if you see https://eapl.mx/twtxt.txt in your log file?
If you want more eyes on the agent, you can tell tell me, as I was thinking on something similar to catch those āfollowing requestsā.
@eapl.mx@eapl.mx Yes, the idea is to add User Agent support to #Timeline.
Right now it just adds every request to a growing log file, but I have also been working on a way to analyse it, so it only saves the time of the latest request.
Iām not sure how to make it part of timeline itself, since it requeses that you redirect/rewrite from twtAgent.php to the acctual twtxt.txt
Help with making Timeline send proper User Agents to others would be much appreciated:)
@prologic@twtxt.net My pleasure! glad I could help.
Btw about social: found very interesting thing about twitter:
The legal basis that X asserts in the filing is not terribly interesting. But what is interesting is that X has decided to involve itself at all, and it highlights that you do not own your followers or your account or anything at all on corporate social media, and it also highlights the fact that Elon Muskās X is primarily a political project he is using to boost, or stifle, specific viewpoints and help his friends. In the filing, Xās lawyers essentially sayālike many other software companies, and, increasingly, device manufacturers as wellāthat the companyās terms of service grant Xās users a ālicenseā to use the platform but that, ultimately, X owns all accounts on the social network and can do anything that it wants with them.
Forcing social media to open their algorithms: hostile to corporations
Forcing young people to not use social media: hostile to young people, helps prevent them from organizing
You think they did this for the benefit of the young people?
Also this āļø
End of year holidays are a mix of sadness and happiness for me. I canāt help but remembering those who are gone, with which I spent so many good times. A part of me wants to feel happy, and celebrate another completed round around the Sun, while the other feels sad because of those I will never see again.
Whatās made you unlock twitch.tv?
A couple of events where my only choices for watching them are: Twitch, Youtube or Fartbook.
What are you doing differently?
TL;DR: I stopped going there unless I have to for the reason above.
I used to spend Waaaaay too much time on the platform. I had a whole setup using Streamlink, MPV and Chatterino where sometimes, Iād have up to 10 concurrent open streams all day long on a secondary monitor (thanks to tiling window managersā magic), some I was interested in watching, some I moderated for a couple of friends and some Iāve had open just for support (helping new streamers in the community with their numbers till they take off and such). Theeen something happened to one of my loved ones, so I had to stop all the nonsense and spend that time and attention with the person who deserves it the most. I blocked the platform at first since I had a habit to type twit... as soon as I opened a browser š
(addiction is real) and now I donāt. (That reflex got replaced with typing twtxt... instead š)
@bender@twtxt.net š Would calling it a Single user Twtxt "Yarn Pod **Like**" software help you sleep better at night? And just in case things are not clear here, Iām being sarcastic (well, kindaā¦) and not trying to gaslight anyone. Think of my comment as Bromance or something like that LOL.
But seriously, Just like any UNIX-Like system to Unixā¢, as in non of them are UNIXā¢, but each of them is providing more or less similar experience and re-implementing what once was parts of āUNIX⢠softwareā their own (more or less better) ways. Timeline is Yarn⢠Pod like, (my personal take on the word pod is: āan instance of XYZ software acting an escape POD from X-BS for⦠ABC reasons.ā) providing more or less of a similar experience, implementing some of Yarn.social Extensions, trying to add in some more ā¦etc.
Otherwise, I donāt see the Yarn pod mention as some kind of malicious manoeuvre, but more of a tribute to what (might have) sparked inspiration for creating Timeline? Also, our friend @sorenpeter@darch.dk here has got a valid reason for using PHP (#tms7aka) so letās letās put our unease towards the language itself aside and maybe just help however/as much as we can in order to make internet (the World?) a better place.
Want to help improve the shoddy code?
Thank you, @eapl.me@eapl.me! No need to apologize in the introduction, all good. :-)
Section 3: Iām a bit on the fence regarding documenting the HTTP caching headers. Itās a very general HTTP thing, so there is nothing special about them for twtxt. No need for the Twtxt Specification to actually redo it. But on the other hand, a short hint could certainly help client developers and feed authors. Maybe itās thanks to my distroās Ngninx maintainer, but I did not configure anything for the Last-Modified and ETag headers to be included in the response, the web server just already did it automatically.
The more that I think about it while typing this reply, the more I think your recommendation suggestion is actually really great. It will definitely beneficial for client developers. In almost all client implementation cases Iād say one has to actually do something specifically in the code to send the If-Modified-Since and/or If-None-Match request headers. There is no magic that will do it automatically, as one has to combine data from the last response with the new request.
But I also came across feeds that serve zero response headers that make caching possible at all. So, an explicit recommendation enables feed authors to check their server setups. Yeah, letās absolutely do this! :-)
Regarding section 4 about feed discovery: Yeah, non-HTTP transport protocols are an issue as they do not have User-Agent headers. How exactly do you envision the discovery_url to work, though? I wouldnāt limit the transports to HTTP(S) in the Twtxt Specification, though. Itās up to the client to decide which protocols it wants to support.
Since I currently rely on buckketās twtxt client to fetch the feeds, I can only follow http(s):// (and file://) feeds. But in tt2 I will certainly add some gopher:// and gemini:// at some point in time.
Some time ago, @movq@www.uninformativ.de found out that some Gopher/Gemini users prefer to just get an e-mail from people following them: https://twtxt.net/twt/dikni6q So, it might not even be something to be solved as there is no problem in the first place.
Section 5 on protocol support: Youāre right, announcing the different transports in the url metadata would certainly help. :-)
Section 7 on emojis: Your idea of TUI/CLI avatars is really intriguing I have to say. Maybe I will pick this up in tt2 some day. :-)
So letās recap⦠Weāve got Putin waging war against Ukraine. Netanyahu waging war against Palestine. Iran getting involved. Kim Jong Un helping Russia and sending soldiers as resources for Putinās war. And now Trump has won a 2nd term in the US where weāll see him scrap EU sanctions and fines against US companies violating EU laws and what else? š¤
What dafuq is wrong with this world?! š
@doesnm@doesnm.p.psf.lt here! create a $HOME/.cache/mutt/twtxt/ directory for example and then add this set header_cache = $HOME/.cache/mutt/twtxt/ to your muttrc (the one you have set up for or use with jenny if youāre using different ones). Thatās what helped me with that.
AI helps driverless cars predict how unseen pedestrians may move
A specialised algorithm could help autonomous vehicles track hidden objects, such as a pedestrian, a bicycle or another vehicle concealed behind a parked car ā Read more
My favourite part of Halloween is helping to set up the charity halloween party at a local school. Love decorating the haunted hallway and setting up the lights. Feels great to get those smiles on peopleās faces.
Pinellas County Running: 4.56 miles, 00:12:32 average pace, 00:57:13 duration
different path today to hit some uphills and tour a different neighborhood after milton. stopped at the high school to help brian out with the camper.
#running
@2024-10-08T19:36:38-07:00@a.9srv.net Thanks for the followup. I agrees with most of it - especially:
Please nobody suggest sticking the content type in more metadata. š
Yes, URL can be considered ugly, but they work and are understandable by both humans and machines. And its trivial for any client to hide the URLs used as reference in replies/treading.
Webfinger can be an add-on to help lookup people, and it can be made independent of the nick by just serving the same json regardless of the nick as people do with static sites and a as I implemented it on darch.dk (wf endpoint). Try RANDOMSTRING@darch.dk on http://darch.dk/wf-lookup.php (wf lookup) or RANDOMSTRING@garrido.io on https://webfinger.net
Grand Canyon Rim To Rim: 27.90 miles, 00:28:36 average pace, 13:17:46 duration
grand canyon rim-to-rim with kelly and craig. it was a blast! a lot of firsts: crazy elevation, head lamps, poles. i had a really good time and then we started to encounter some elevation. definitely could feel the altitude as soon as there was an incline. then after so many large steps up my quads started to feel it. at one point everything seized up and i fell down. luckily craig jumped in my leg and started stretching it out which helped a lot. the rest of it from there it was slow going but only once the large steps were sparse we cruised ahead. definitely would do it again.
#running #race
@off_grid_living@twtxt.net is it locked because of a DRM thing or something else?
Otherwise you can check if you already have the pdftotext command that comes with the poppler-utils package, try converting converting the pdf into a text file and copy to your heartās content. I have just tried it myself.
If you donāt have it already hereās what you can do on Ubuntu or any Debian based distribution of Linux:
- Update and upgrade your packages:
> sudo apt update && sudo apt upgrade
- Install the
poppler-utilspackage
> sudo apt install poppler-utils
- Now you can convert your pdf to txt file with:
> pdftotxt -layout -enc UTF-8 name_of_source_file.pdf name_of_destination_file.txt
You can always do a pdftotxt --help to see the rest of possible options.
Hope this helps.
š Thanks for joining us on our Sept monthly Yarn.social meetup today yāall šāāļø We had @david@collantes.us @sorenpeter@darch.dk @doesnm@doesnm.p.psf.lt @falsifian@www.falsifian.org and @xuu@txt.sour.is šŖ Nice turn out! (not all at once of course, as we normally run this over 4 hours as we span many time zones!)
Things we talked about:
- Decentralised vs. Distributed
- Use of SHA256 for Twt Hash(es)
- We solved Edits! š„³
- UUID(s) probably wonāt work! (susceptible to sppofing)
- Helped @sorenpeter@darch.dk write some PHP to process/parse
User-Agentand service his feed via a custom PHP script š
- @falsifian@www.falsifian.org introduced himself š
- Talked about Merkle Trees š³
Did I miss anything? š¤
@bender@twtxt.net Itās the experience of an ordinary person in a strange place where memories are disappearing with the help of the Memory Police. The setting feels contemporary (to the bookās 1994 publication date) rather than futuristic, except for some unexplained stuff about memories.
@prologic@twtxt.net Thanks for writing that up!
I hope it can remain a living document (or sequence of draft revisions) for a good long time while we figure out how this stuff works in practice.
I am not sure how I feel about all this being done at once, vs. letting conventions arise.
For example, even today I could reply to twt abc1234 with ā(#abc1234) Edit: ā¦ā and I think all you humans would understand it as an edit to (#abc1234). Maybe eventually it would become a common enough convention that clients would start to support it explicitly.
Similarly we could just start using 11-digit hashes. We should iron out whether itās sha256 or whatever but thereās no need get all the other stuff right at the same time.
I have similar thoughts about how some users could try out location-based replies in a backward-compatible way (append the replyto: stuff after the legacy (#hash) style).
However I recognize that Iām not the one implementing this stuff, and itās less work to just have everything determined up front.
Misc comments (I havenāt read the whole thing):
Did you mean to make hashes hexadecimal? You lose 11 bits that way compared to base32. Iād suggest gaining 11 bits with base64 instead.
āClients MUST preserve the original hashā ā do you mean they MUST preserve the original twt?
Thanks for phrasing the bit about deletions so neutrally.
I donāt like the MUST in āClients MUST follow the chain of reply-to referencesā¦ā. If someone writes a client as a 40-line shell script that requires the user to piece together the threading themselves, IMO we shouldnāt declare the client non-conforming just because they didnāt get to all the bells and whistles.
Similarly I donāt like the MUST for user agents. For one thing, you might want to fetch a feed without revealing your identty. Also, it raises the bar for a minimal implementation (Iām again thinking again of the 40-line shell script).
For āwho followsā lists: why must the long, random tokens be only valid for a limited time? Do you have a scenario in mind where they could leak?
Why canāt feeds be served over HTTP/1.0? Again, thinking about simple software. I recently tried implementing HTTP/1.1 and it wasnāt too bad, but 1.0 would have been slightly simpler.
Why get into the nitty-gritty about caching headers? This seems like generic advice for HTTP servers and clients.
Iām a little sad about other protocols being not recommended.
I donāt know how I feel about including markdown. I donāt mind too much that yarn users emit twts full of markdown, but Iām more of a plain text kind of person. Also it adds to the length. I wonder if putting a separate document would make more sense; that would also help with the length.
Had to build a list of all feeds (that I follow) and all twts in them and there are two collisions already:
$ ./stats
Saw 58263 hashes
7fqcxaa
https://twtxt.net/user/justamoment/twtxt.txt
https://twtxt.net/user/prologic/twtxt.txt
ntnakqa
https://twtxt.net/user/prologic/twtxt.txt
https://twtxt.net/user/thecanine/twtxt.txt
Namely:
$ jenny -D https://twtxt.net/user/justamoment/twtxt.txt | grep 7fqcxaa
[7fqcxaa] [2022-12-28 04:53:30+00:00] [(#pmuqoca) @prologic@twtxt.net I checked the GitHub discussion, it became a request to join forces.
Do you plan on having them join?
Also for the name, how about:
- āprogitā or āprologitā (prologic official hard fork)
- āgit-stanceā (git instance)
- āGitTreeā (Gitea inspired, maybe to related)
- āGitomataā (git automata)
- āGit.Sourceā
- āForgorā (forgit is taken so I forgor) š¤£
- āSweetGitā (as salty chat)
- āPepper Gitā (other ingredients) š
- āGitHeartā (core of git with a GitHub sounding name)
- āGitTakaā (With music in mind)
Ok, enough fun⦠Hope this helps sprout some ideas from others if nothing is to your taste.]
$ jenny -D https://twtxt.net/user/prologic/twtxt.txt/5 | grep 7fqcxaa
[7fqcxaa] [2022-02-25 21:14:45+00:00] [(#bqq6fxq) Itās handled by blue Monday]
And:
$ jenny -D https://twtxt.net/user/thecanine/twtxt.txt | grep ntnakqa
[ntnakqa] [2022-01-23 10:24:09+00:00] [(#2wh7r4q) <a href="https://yarn.girlonthemoon.xyz/external?uri=https://twtxt.net/user/prologic/twtxt.txt">@prologic<em>@twtxt.net</em></a> I know, I was just hoping it might have also gotten fixed by that change, by some kind of backend miracles. š]
$ jenny -D https://twtxt.net/user/prologic/twtxt.txt/1 | grep ntnakqa
[ntnakqa] [2024-02-27 05:51:50+00:00] [(#otuupfq) <a href="https://yarn.girlonthemoon.xyz/external?uri=https://twtxt.net/user/shreyan/twtxt.txt">@shreyan<em>@twtxt.net</em></a> Ahh š]
@aelaraji@aelaraji.com This is one of the reasons why yarnd has a couple of settings with some sensible/sane defaults:
I could already imagine a couple of extreme cases where, somewhere, in this peaceful world oneās exercise of freedom of speech could get them in Real trouble (if not danger) if found out, it wouldnāt necessarily have to involve something to do with Law or legal authorities. So, If someone asks, and maybe fearing fearing for⦠letās just say āTheir well beingā, would it heart if a pod just purged their content if itās serving it publicly (maybe relay the info to other pods) and call it a day? It doesnāt have to be about some law/convention somewhere ⦠𤷠I know! Too extreme, but Iāve seen news of people whoād gone to jail or got their lives ruined for as little as a silly joke. And it doesnāt even have to be about any of this.
There are two settings:
$ ./yarnd --help 2>&1 | grep max-cache
--max-cache-fetchers int set maximum numnber of fetchers to use for feed cache updates (default 10)
-I, --max-cache-items int maximum cache items (per feed source) of cached twts in memory (default 150)
-C, --max-cache-ttl duration maximum cache ttl (time-to-live) of cached twts in memory (default 336h0m0s)
So yarnd pods by default are designed to only keep Twts around publicly visible on either the anonymous Frontpage or Discover View or your Timeline or the feedās Timeline for up to 2 weeks with a maximum of 150 items, whichever get exceeded first. Any Twts over this are considered āoldā and drop off the active cache.
Itās a feature that my old man @off_grid_living@twtxt.net was very strongly in support of, as was I back in the day of yarndās design (nothing particularly to do with Twtxt per se) that Iāve to this day stuck by ā Even though there are some š that have different views on this š¤£
@prologic@twtxt.net I have some ideas:
- Add smartypants rendering, just like Yarn has.
- Add the ability to create individual twtxts, each named after their hash.
- Fix the formatting of the help. :-P
@aelaraji@aelaraji.com I just added support for passing a custom template file via -T/--template in case you need a custom template š
prologic@JamessMacStudio
Wed Sep 18 01:27:29
~/Projects/yarnsocial/twtxt2html
(main) 130
$ ./twtxt2html --help
Usage: twtxt2html [options] FILE|URL
twtxt2html converts a twtxt feed to a static HTML page
-d, --debug enable debug logging
-l, --limit int limit number ot twts (default all) (default -1)
-n, --noreldate do now show twt relative dates
-r, --reverse reverse the order of twts (oldest first)
-T, --template string path to template file
-t, --title string title of generated page (default "Twtxt Feed")
-v, --version display version information
pflag: help requested
PS: I still canāt get your and benderās archived twts (at least the ones Iāve noticed), nor can I --fetch-context on replays to them. your oldest is the one from 2024-06-14 18:22 ⦠I can see lyseās tho! but I doubt this is related the edit issue but this helps with something.
@falsifian@www.falsifian.org TLS wonāt help you if you change your domain name. How will people know if itās really you? Maybe thatās not the biggest problem for something with such low stakes as twtxt, but itās a reasonable concern that could be solved using signatures from an unchanging cryptographic key.
This idea is the basis of Nostr. Notes can be posted to many relays and every note is signed with your private key. It doesnāt matter where you get the note from, your client can verify its authenticity. That way, relays donāt need to be trusted.
@prx@si3t.ch I havenāt messed with rdomains, but still it might help if you included the command that produced that error (and whether you ran it as root).
@movq@www.uninformativ.de Yep, thatās very nice music. :-)
Canāt help myself, but I have to include the Uranus song now. :-D https://www.youtube.com/watch?v=OSWszdSHkyE#t=7
Clown visits may shorten the amount of time children spend in hospital
Medical clowns, who play with children in hospitals, may help them be discharged sooner by reducing their heart rates ā Read more
@movq@www.uninformativ.de thanks for getting to the bottom of it. @prologic@twtxt.net is there a way to view yarndās copy of the raw twt? The edit didnāt result in a visible change; being able to see what yarnd originally downloaded would have helped me debug.
@bender@twtxt.net On twtxt, I follow all feeds that I can find (there are some exceptions, of course). Thereās so little going on in general, it hardly matters. š
And I just realized: Muttās layout helps a lot. Skimming over new twts is really easy and itās not a big loss if there are a couple of shitposts⢠in my ātimelineā. This is very different from Mastodon (both the default web UI and all clients Iāve tried), where the timeline is always huge. Posts take up a lot of space on screen. Makes me think twice if I want to follow someone or not. š
(I mostly only follow Hashtags on Mastodon anyway. Itās more interesting that way.)
yarnd that's been around for awhile and is still present in the current version I'm running that lets a person hit a constructed URL like
@prologic@twtxt.net @bender@twtxt.net I partially agree with bender on this one I think. The way this person is abusing the /external endpoint on my pod seems to be to generate legitimate-looking HTML content for external sites, using a username that does not exist on my pod. One āsemantically correctā thing to do would be to error out if that username does not exist on the pod. Itās not unlike having a mail server configured as an open relay at this point.
It would also be very helpful to give the pod administrator control over whatās being fetched this way. I donāt want people using my pod to redirect porn sites or whatever. If I could have something as simple as the ability to blacklist URLs thatād already help.
@lyse@lyse.isobeef.org Interesting. The yarnd --help currently says (for me):
-R, --open-registrations whether or not to have open user registgration
meaning it doesnāt give the default setting or warn you that you need to use -R=false and not -R false. It also leaves unclear whether --open-registrations false would work or if you need to do --open-registrations=false. Itās also unclear whether the setting change in the user interface is overridden by the command line arguments, overrides the command line arguments, is persisted across restarts.
Maybe all this is worth posting an issue for additional documentation on the git repo if there isnāt one already.
āregistgrationā is misspelled that way in the help by the way.
@abucci@anthony.buc.ci Thank you for using Lyseās Unofficial Yarnd Help Desk: https://lyse.isobeef.org/tmp/yarnd-disable-registrations.png
@movq@www.uninformativ.de, maybe you can help me with this. I want to place the vim cursor at the end of the first line on replies, and forks. I have tried adding to this to jennyās configuration:
"editor": "vim \"+normal $\"",
But that doesnāt work. How would you go about it?