@bender@twtxt.net The world is full of fools. One of ‘em might even buy that for this money. O_o Even the original price is a total ripoff in my opinion.
@prologic@twtxt.net I recommend its Wikipedia entry is edited then, if you are completely certain.
“Bluesky is a decentralized microblogging social media service primarily operated by Bluesky Social, PBC.”
That I know of, you can run the PDS, and pretty much everything else.
@bender@twtxt.net Sorry, I feel like I have to … 😅
@prologic@twtxt.net Same here… Twtxt and Mastodon are more than enough for me. I used to have a BSky account with my own domain name as a handle (which I ended up deleting after a while) and even taught about running my own PDS and the whole nine yards but, it didn’t feel like it was worth the hassle.
@New_scientist@feeds.twtxt.net No they don’t.
@prologic@twtxt.net Nah. twtxt + Mastodon is enough social media for me. 😅
\u2028
, is no longer being rendered right on the description
metadata.
@bender@twtxt.net Try blocking JS.
@prologic@twtxt.net, the new line character. \u2028
, is no longer being rendered right on the description
metadata.
@prologic@twtxt.net yes.
@prologic@twtxt.net just rebuild my image.. though git says i am already at latest
334.90
as 33490,00
. 😬 This is germany, so it wants a comma, not a dot …
@movq@www.uninformativ.de Yeah, the Swiss and C++ programmers use apostrophes. :-) My grandpa had an electronic desk calculator that also used some kind of apostrophes as the thousands separator on its cool display. Maybe it consisted of Nixie tubes, can’t remember anymore.
I think non-breaking spaces are preferred nowadays to avoid the confusion.
@prologic@twtxt.net All good mate.
@prologic@twtxt.net what do we make of Labor’s proposed social media minimum age ban, I.e ID verification, and the likes of Yarn? I haven’t been able to find out exactly how far the legislation goes, but some have said it’s broad enough to include any site that even has a comment section 🤔 but that could be FUD.
334.90
as 33490,00
. 😬 This is germany, so it wants a comma, not a dot …
@movq@www.uninformativ.de The dot is the thousands separator, so I’m surprised that it did not interpret it as €334,900.00. Luckily, you caught it in time! :-)
@xuu@txt.sour.is Hahaha, nice expression. :-D
@prologic@twtxt.net I never got the root for this
@wbknl@twtxt.net I have thought of getting one. I wish there were easier tools for it than direwolf
@bender@twtxt.net Linux and Android. I would never iOS my friend.
@bender@twtxt.net Fair point, could be. I probably have to implement it first or create some kind of a mockup to spare me the effort of some feature that I rip out again. :-)
@xuu@txt.sour.is Yep!
@movq@www.uninformativ.de Riiiight, I now remember reading that a long time ago. :-)
@bender@twtxt.net I now read the German Wikipedia article on fog. These are some really beautiful pictures:
- https://upload.wikimedia.org/wikipedia/commons/a/a9/Nebelbank_in_der_W%C3%BCste_Namib_bei_Aus_%282018%29.jpg
- https://upload.wikimedia.org/wikipedia/commons/1/17/Space_Shuttle_Challenger_moving_through_fog.jpg
- https://upload.wikimedia.org/wikipedia/commons/9/96/Fog_Bow_%2819440790708%29.jpg
- https://upload.wikimedia.org/wikipedia/commons/a/ac/360_degrees_fogbow.jpg
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 thediscovery_url
to work, though?
This is from a twt of mine from January 2022:
https://www.uninformativ.de/files/twtxt/2022%2D01%2D22%2D%2Dfollow%2Dendpoint.md
(This idea gets lost all the time, so I put it into a file now. 😅)
Not sure if this is what @eapl.me@eapl.me had in mind, obviously.
@lyse@lyse.isobeef.org agree on the HTTP stuff. I mean we could mention that for optimization see RFC yadda yadda should be followed for caching. but not have it part of the spec proper.
@sorenpeter@darch.dk Section 7 on emojis: Exactly that, it’s an avatar for text interfaces. The metadata name needs tweaking, but that’s a cool idea. If I implemented this in my client, I’d make the text avatar overridable by the user, though. Otherwise I’d probably only see boxes for everbody in my terminal. :-D
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. :-)
Perfect, @eapl.me@eapl.me, it’s fixed again. In fact this editor seems to support the Unicode line separator character all too well, otherwise it would not have replaced it in the first place. :-D Time to switch to a more unintelligent editor. ;-)
Thanks, @bender@twtxt.net. I try to.
I haven’t noticed any smell of fog, @bender@twtxt.net. Might @nff@www.noizhardware.com’s experience stem from a similar phenomenon that creates a lovely smell after a good, air-cleaning rain shower?
@eapl.me@eapl.me Neat.
So for twt metadata the lextwt parser currently supports values in the form [key=value]
https://git.mills.io/yarnsocial/go-lextwt/src/branch/main/parser_test.go#L692-L698
@sorenpeter@darch.dk on 4 for gemini if your TLS client certificate contains your nick@host could that work for discovery?
@wbknl@twtxt.net are you still in Russia? It could be hard mailing anything to there these days. I read your “russia is eternally cold”, and became curious. Patagonia is the only place I know on South America that it has rounded mountains, though they can be anywhere. Originally from Chile, or Argentina? My curiosity doesn’t need feeding, by the way. It’s all good if it doesn’t. :-)
@eapl.me@eapl.me here are my replies (somewhat similar to Lyse’s and James’)
Metadata in twts: Key=value is too complicated for non-hackers and hard to write by hand. So if there is a need then we should just use #NSFS or the alt-text file in markdown image syntax

if something is NSFWIDs besides datetime. When you edit a twt then you should preserve the datetime if location-based addressing should have any advantages over content-based addressing. If you change the timestamp the its a new post. Just like any other blog cms.
Caching, Yes all good ideas, but that is more a task for the clients not the serving of the twtxt.txt files.
Discovery: User-agent for discovery can become better. I’m working on a wrapper script in PHP, so you don’t need to go to Apaches log-files to see who fetches your feed. But for other Gemini and gopher you need to relay on something else. That could be using my webmentions for twtxt suggestion, or simply defining an email metadata field for letting a person know you follow their feed. Interesting read about why WebMetions might be a bad idea. Twtxt being much simple that a full featured IndieWeb sites, then a lot of the concerns does not apply here. But that’s the issue with any open inbox. This is hard to solve without some form of (centralized or community) spam moderation.
Support more protocols besides http/s. Yes why not, if we can make clients that merge or diffident between the same feed server by multiples URLs
Languages: If the need is big then make a separate feed. I don’t mind seeing stuff in other langues as it is low. You got translating tool if you need to know whats going on. And again when there is a need for easier switching between posting to several feeds, then it’s about building clients with a UI that makes it easy. No something that should takes up space in the format/protocol.
Emojis: I’m not sure what this is about. Do you want to use emojis as avatar in CLI clients or it just about rendering emojis?
Thanks @lyse@lyse.isobeef.org! I’m replying here https://text.eapl.mx/reply-to-lyse-about-twtxt
Thanks @lyse@lyse.isobeef.org! I’m replying here https://text.eapl.mx/reply-to-lyse-about-twtxt
Righto, @eapl.me@eapl.me, ta for the writeup. Here we go. :-)
Metadata on individual twts are too much for me. I do like the simplicity of the current spec. But I understand where you’re coming from.
Numbering twts in a feed is basically the attempt of generating message IDs. It’s an interesting idea, but I reckon it is not even needed. I’d simply use location based addressing (feed URL + ‘#’ + timestamp) instead of content addressing. If one really wanted to, one could hash the feed URL and timestamp, but the raw form would actually improve disoverability and would not even require a richer client. But the majority of twtxt users in the last poll wanted to stick with content addressing.
yarnd actually sends If-Modified-Since
request headers. Not only can I observe heaps of 304 responses for yarnds in my access log, but in Cache.FetchFeeds(…)
we can actually see If-Modified-Since
being deployed when the feed has been retrieved with a Last-Modified
response header before: https://git.mills.io/yarnsocial/yarn/src/commit/98eee5124ae425deb825fb5f8788a0773ec5bdd0/internal/cache.go#L1278
Turns out etags with If-None-Match
are only supported when yarnd serves avatars (https://git.mills.io/yarnsocial/yarn/src/commit/98eee5124ae425deb825fb5f8788a0773ec5bdd0/internal/handlers.go#L158) and media uploads (https://git.mills.io/yarnsocial/yarn/src/commit/98eee5124ae425deb825fb5f8788a0773ec5bdd0/internal/media_handlers.go#L71). However, it ignores possible etags when fetching feeds.
I don’t understand how the discovery URLs should work to replace the User-Agent
header in HTTP(S) requests. Do you mind to elaborate?
Different protocols are basically just a client thing.
I reckon it’s best to just avoid mixing several languages in one feed in the first place. Personally, I find it okay to occasionally write messages in other languages, but if that happens on a more regularly basis, I’d definitely create a different feed for other languages.
Isn’t the emoji thing “just” a client feature? So, feed do not even have to state any emojis. As a user I’d configure my client to use a certain symbol for feed ABC. Currently, I can do a similar thing in tt
where I assign colors to feeds. On the other hand, what if a user wants to control what symbol should be displayed, similar to the feed’s nick? Hmm. But still, my terminal font doesn’t even render most of emojis. So, Unicode boxes everywhere. This makes me think it should actually be a only client feature.
@bender@twtxt.net cos I live outside the United States and they don’t send to my country
@prologic@twtxt.net Yeah, the principle of data economy. :-)
Btw. if you blindly run the command again in a few days, your query might match new feeds that are not included in today’s list. Hence, some accounts might be dropped without a warning. But then, they probably don’t care.
Hey @eapl.me@eapl.me, your feed is broken. All U+2028 got transformed into newlines.
FYI 👋 I will be deleting the following inactive users from my pod (twtxt.net) soon™:
$ ./tools/inactive_users.sh 730
@thgie@twtxt.net last seen 732 days ago
@will@twtxt.net last seen 740 days ago
@shaneflores@twtxt.net last seen 752 days ago
@magnus@twtxt.net last seen 757 days ago
@nickmellor@twtxt.net last seen 757 days ago
@birb@twtxt.net last seen 763 days ago
@screem@twtxt.net last seen 772 days ago
@servusdei@twtxt.net last seen 774 days ago
@alex@twtxt.net last seen 790 days ago
@andreottica@twtxt.net last seen 801 days ago
@fox@twtxt.net last seen 822 days ago
@anx@twtxt.net last seen 829 days ago
@olav@olav.bonn.cafe last seen 855 days ago
@caesar@twtxt.net last seen 866 days ago
@jim@twtxt.net last seen 869 days ago
@rell@twtxt.net last seen 882 days ago
@readfog@twtxt.net last seen 886 days ago
If anyone on this lists sees this post and wishes to preserve their feed/account for some reason (beyonds backups I maintain), please login at least once over the next coming weeks to get off this list. I will re-run this tool again, and then nuke blindly anything that matches >730 days of inactivity.
@bender@twtxt.net they revel in their blindness. Roll within their stink.
@wbknl@twtxt.net Welcome to the twtxt-iverse!
@movq@www.uninformativ.de Ta! Absolutely, go for it. :-)
@movq@www.uninformativ.de Oh, it’s only now that I got it… :-D
@falsifian@www.falsifian.org Thanks mate! It just occurred to me the other night that my alt
choices are not the best. I should probably fix them.
This also reminds me of a JS snippet my mate wrote for navigation in browsers that don’t support incrementing numbers in the URLs. I’m using Tridactyl in Firefox and can Ctrl+A
/Ctrl+X
myself through albums with properly named files.