# 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 2172
# self = https://watcher.sour.is?uri=https://twtxt.net/user/mckinley/twtxt.txt&offset=1772
# next = https://watcher.sour.is?uri=https://twtxt.net/user/mckinley/twtxt.txt&offset=1872
# prev = https://watcher.sour.is?uri=https://twtxt.net/user/mckinley/twtxt.txt&offset=1672
To get such a low price, I am forgoing the ability to open a private support ticket. Any questions I've ever had were answered by the very thorough FAQ, but if one wanted that ability they could pay an additional $5 per month for a subscription membership.

I would also like to add that their entire Web portal works without JavaScript and it has all the features you would expect and more.
@prologic I am on the "Non-Production Site" plan with NearlyFreeSpeech which means I'm limited to 1 GiB per day of bandwidth and am occasionally subjected to "low-risk tests and betas". The implication is that there may be downtime on my site but I haven't noticed any since April of 2020 when I began hosting with them. It's 1 cent per day as a base cost for that plan.

I also pay $1 per gigabyte-month for storage and I am using 9.29 MiB which means I pay a little less than one cent per month. It used to be even less than that, but since I started using Git the complete Git history is stored on the server as well as the live copy of the site.

There is an additional charge of 1 cent per 44.64 "RAUs", their measurement combining CPU and memory usage over time. On the Non-Production plan, only resources used by processes other than the Web server are counted. I don't believe I have ever been charged for this.

Here is my billing report for 2023 so far.
@prologic I pay 1 cent per day and my website is hosted with https://www.nearlyfreespeech.net/
@prologic They clearly have no line. I'm asking the reader where *his* line is. Many people realize that Microsoft and friends are poison but choose to stick with them anyway for various reasons. I was there, too. It's not a sustainable position.
@prologic They clearly have no line. I'm asking the reader where *his* line is. Many people realize that Microsoft and friends are poison but choose to stick with them anyway. I was there, too. It's not a sustainable position.
@mckinley I had a few more words to say about this: How Microsoft's Trickery Works
@prx Nice, but I usually use https://icanhazip.com/ because it's the only one I can remember.
@movq That memory usage rivals Electron, which runs an instance of Chromium for each program. What do you need shaders for?
@movq That memory usage rivals Electron, which runs an instance of Chromium for each program. What do you need shaders for, and why can't you turn them off?
@lyse I agree with you. I don't think PDF is the right tool for the job, but it's an interesting experiment. Even the homepage of lab6.com used to be a PDF.
@movq I use https://www.html-tidy.org/
@lyse I could probably get away with HTML 3.2. I think HTML 2 is much more limited, though, and I'd be forgoing CSS.
@lyse Lab6 always delivers. You should check out some of their previous issues if you haven't already. https://lab6.com/
@movq Thank you, I'll have to follow your phlog's Atom feed. I see you're using tag URIs, nice. :)

That looks like a good system. Simple and effective. I ask because my current backup system is lacking and I'd like to do something about that. I don't want to use cloud storage, so I'll be moving hard drives around. I'm just not sure on what to do on the software side.

Solutions like Restic and Borg have many advantages, but the disadvantage is that your data is confined to that particular tool. I think I'm willing to make that trade to have snapshots, compression, deduplication, etc. I'm just on the fence about which one I should use.

@prologic, why did you choose Restic? How do you like it so far? If you've had to restore from the backup, what was that like?
@movq Thank you, I'll have to follow your phlog's Atom feed. I see you're using tag URIs, nice. :)

That looks like a good system. Simple and effective. I ask because my current backup system is lacking and I'd like to do something about that. I don't want to use cloud storage, so I'll be moving hard drives around. I'm just not sure on what to do on the software side.

Solutions like Restic and Borg have many advantages, but the disadvantage is that your data is confined to that particular tool. I think I'm willing to make that trade to have snapshots, compression, deduplication, etc. I'm just on the fence about which one I should use.

@prologic, why did you choose Restic? How do you like it so far? If you've had to restore from the backup, what was that like?
QOTD: How do you back up your files?
How do you guys back up your files?
Announcing again on this feed for visibility

mckinley.cc is now available as a Tor hidden service: http://mckinley2nxomherwpsff5w37zrl6fqetvlfayk2qjnenifxmw5i4wyd.onion/

I don't want ~27 hours generating keys to go to waste :)~
What's everyone up to this weekend?
@movq I reworked the paragraph about security and improved that sentence. Hopefully it's a little more clear.

> However, the key on the unencrypted partition is only valid for the time it takes to reboot, assuming we reboot as soon as the script completes.
@movq I get it. I wouldn't set this up for anyone else. Systems that are on all the time don't benefit as much from at-rest encryption, anyway. This is definitely an interesting solution and it has worked well for me in the past 1-2 weeks. We'll see how it goes in 1-2 years.
@movq I get it. I wouldn't set this up for anyone else. Systems that are on all the time don't benefit as much from at-rest encryption, anyway. This is definitely an interesting solution, however, and it has worked well for me in the past 1-2 weeks. We'll see how it goes in 1-2 years.
Rebooting a LUKS Encrypted System Without Typing The Passphrase: https://mckinley.cc/blog/20230526.html
@lyse I didn't know about fc either. It will definitely come in handy.
@movq You can also do sudo !! (or doas !!) if you're using Bash.
@news I guess the electric companies are the same everywhere.
What's everyone been up to lately?
@adi I remember talking about it, but I can't find a link to a tool in my bookmarks or my twtxt feeds. Sorry, man. Look up "vanity QR codes".
@prologic I have thought briefly about this. I have no idea how this could be done with the current twtxt thread paradigm.
This twt is from a user you have muted.
@prologic It's significantly cheaper to open an exchange and get people to hold their money in a custodial wallet than it is to perform a 51% attack on an established cryptocurrency.

Monero in particular uses an algorithm that's supposed to be ASIC resistant and, while it can be mined on a GPU, it's more efficient to mine on a CPU. I'm curious if that makes it easier or harder for a hostile entity to perform a 51% attack.
Oh, I just saw the other thread. Don't put your *wallet* on the VPS unless you have a specific reason to do so. If you do, make sure your keys are stored on a local machine. It's fine to run a node there, but run the wallet locally and configure it to use your node if you can.
@adi Surely you can configure the wallet to use a remote node. I've heard good things about Feather Wallet if you want something friendlier. https://github.com/feather-wallet/feather
I'm worried that Yarn will become just another ActivityPub frontend. This integration threatens to split the community in two. Users of Twtxt clients without ActivityPub support won't want to follow Yarn users because they'll be engaged in conversations that are inaccessible to standard Twtxt clients. It will only force the split deeper if ActivityPub is an option to be toggled by users or pod operators.
@slashdot Tying all your Internet traffic to a Google account... What could go wrong?
@lyse You should; it's worse than you think.
@slashdot This is a very interesting tech demo, but I'll stick with human-made TV shows.
@logout I've been reading that blog for some time. I didn't know you were the one behind it. Excellent post!
@prologic I don't know where it came from originally, but it's absolutely true.
The freedoms you surrender today are the freedoms your grandchildren will never know existed.
> "AC/DC" is pronounced one letter at a time, though the band are colloquially known as "Acca Dacca" in Australia.

Is this true, @prologic?
@abucci It does, but keepassxc-cli makes you type in your passphrase for literally every operation, with no way to cache it like gpg-agent does.
@eaplmx I'm using KeePassXC at the moment. I want to move to something in the terminal. Thinking of migrating to pass/pass-tomb. Anyone here have experience with that? How do you like it?
On the new Wikipedia theme: https://mckinley.cc/blog/20230119.html
@xuu Twtxt.net has 58 going all the way back to the hello world twt. I wonder why your pod isn't picking up all those twts in between.
@win0error Looks very interesting. Is this a recreation of the original client in C?

I compiled it and followed you, but whenever I run ./twtwt timeline it requests my followed feeds in an infinite loop. I didn't realize until I sent, probably, 150 requests, so I'm very sorry for clogging up your logs. ./twtwt view win0error works fine.
@dima1986148 ESL or ARG?
@carsten Link? yt-dlp supports nearly 2000 sites. I'm sure you could stitch something together, perhaps with ratt and a cron job.
@xuu @prologic This looks very similar to #957.
@bender I do wish there was a TUI client but it only took a minute or so to build gtkatlantic on my system.
Anyone want to try out gtkatlantic? It's an online clone of Monopoly.

Well, really, it's the only frontend to a board game server that can be used as an online clone of Monopoly.

There are a couple public instances that we can use.
@darch Looks fine over on twtxt.net
@kdx Your website hurts my brain
@lyse As far as I know, they're still visible in the Web UI. Although, in the mobile app and youtube.com, I believe it tells you that the video isn't available without having to click on it. They don't tell you that in the RSS feed, and I agree; it gets annoying.

If we had a custom feed generator that hooks directly into the YouTube API, I'll bet we could find that information and put "[Scheduled]\n[Scheduled]\n[Scheduled]\n[Scheduled]\n" in the title for premieres and remove it when the video is available.
@lyse As far as I know, they're still visible in the Web UI. Although, in the mobile app and youtube.com, I believe it tells you that the video isn't available without having to click on it. They don't tell you that in the RSS feed, and I agree; it gets annoying.

If we had a custom feed generator that hooks directly into the YouTube API, I'll bet we could find that information and put "\n\n\n\n\n\n\n\n" in the title for premieres and remove it when the video is available.
@lyse As far as I know, they're still visible in the Web UI. In the Web UI and mobile app, I believe it tells you that the video isn't available yet. They don't tell you that in the RSS feed, and it gets annoying.

If we had a custom feed generator that hooks directly into the YouTube API, I'll bet we could find that information and put "[Scheduled]" in the title for premieres and remove it when the video is available.
@lyse As far as I know, they're still visible in the Web UI. Although, in the mobile app and youtube.com, I believe it tells you that the video isn't available without having to click on it. They don't tell you that in the RSS feed, and I agree; it gets annoying.

If we had a custom feed generator that hooks directly into the YouTube API, I'll bet we could find that information and put "[Scheduled][Scheduled=][Scheduled][Scheduled=][Scheduled][Scheduled=][Scheduled][Scheduled=]" in the title for premieres and remove it when the video is available.
@lyse As far as I know, they're still visible in the Web UI. Although, in the mobile app and youtube.com, I believe it tells you that the video isn't available without having to click on it. They don't tell you that in the RSS feed, and I agree; it gets annoying.

If we had a custom feed generator that hooks directly into the YouTube API, I'll bet we could find that information and put "[Scheduled]" in the title for premieres and remove it when the video is available.
@lyse As far as I know, they're still visible in the Web UI. Although, in the mobile app and youtube.com, I believe it tells you that the video isn't available without having to click on it. They don't tell you that in the RSS feed, and I agree; it gets annoying.

If we had a custom feed generator that hooks directly into the YouTube API, I'll bet we could find that information and put "[Scheduled][Scheduled][Scheduled][Scheduled][Scheduled][Scheduled][Scheduled][Scheduled]" in the title for premieres and remove it when the video is available.
@lyse As far as I know, they're still visible in the Web UI. Although, in the mobile app and youtube.com, I believe it tells you that the video isn't available without having to click on it. They don't tell you that in the RSS feed, and I agree; it gets annoying.

If we had a custom feed generator that hooks directly into the YouTube API, I'll bet we could find that information and put "\n\n\n\n" in the title for premieres and remove it when the video is available.
@lyse As far as I know, they're still visible in the Web UI. Although, in the mobile app and youtube.com, I believe it tells you that the video isn't available without having to click on it. They don't tell you that in the RSS feed, and I agree; it gets annoying.

If we had a custom feed generator that hooks directly into the YouTube API, I'll bet we could find that information and put "\n\n" in the title for premieres and remove it when the video is available.
@lyse As far as I know, they're still visible in the Web UI. Although, in the mobile app and youtube.com, I believe it tells you that the video isn't available without having to click on it. They don't tell you that in the RSS feed, and I agree; it gets annoying.

If we had a custom feed generator that hooks directly into the YouTube API, I'll bet we could find that information and put "[Scheduled][Scheduled=]" in the title for premieres and remove it when the video is available.=
@prologic Why are you questioning it? Apple knows best. You're lucky they let you use their computer at all.
@movq In time...
@abucci I disagree. I think the "modern" definition of the word has a place here. An individual exercising his power over you on a platform to suppress you, not because you've violated any sort of rule, but because he doesn't like what you say, is at least an attempt at censorship. What would you call that?

If there was a rule that you've broken, then it's content moderation. A separate discussion can be had over whether or not that rule is just.

Fortunately, twtxt is very difficult to suppress completely. As long as I can still put a text file somewhere for people to download, I can still post.
I just realized that whole thing started with this thread. How did a post sharing a dial-in firework service in the terminal become a 5-fork-deep conversation about censorship on the Internet?
@prologic Open registrations should be an option for pod admins. I would like to see a per-pod invite system, though.
@abucci Of course you can censor people without being a nation-state. It's just a question of power. If @prologic decided he didn't like what I have to say, he could add a line to the code of yarnd that automatically hides posts on all pods if it came from me. Would that not be censorship?
@abucci An NPC would be programmed to find these ideas dangerous. Hmm...
@prologic I fully agree, but my thoughts on this are a little long for a twt.

Apple doesn't care about you: https://mckinley.cc/notes/20221229-apple-doesnt-care.html
@prologic

> Should we go for multi-user and org/user? Or keep it simple?

I really don't know which would be better.

You would need user accounts for issues and to facilitate collaboration, unless you used e-mail, which isn't really a bad thing. The SourceHut model works very well.

No matter what, I would love to be able to archive issues using Git alone. You were talking about integrating git-bug or something similar, and I think that's an excellent idea.
@prologic #1106. This is probably the most strange bug I've found.
@prologic #1106
Interesting... I'll open an issue.
Test


@prologic, @prologic@twtxt.net, @prologic. @prologic@twtxt.net. @<prologic https://twtxt.net/user/prologic/twtxt.txt>, @<prologic https://twtxt.net/user/prologic/twtxt.txt>.


@prologic, @prologic, @prologic. @prologic. @prologic, @prologic.
Yep. I'll open an issue.
@prologic I think this is the second time I've run into this quirk, but here's the official test:

@prologic,

@prologic,
More specifically: Will this be expanded into something like Gitea with the concept of users and organizations, or will it stay with a simple flat repository model like upstream legit or cgit?

Also, the shorthand mention syntax has struck again. Apologies, @justamoment.
I would personally love to see the Git log provided as a twtxt feed. Gitea's feed situation is still awful. I don't think anybody skimmed the Atom spec before they released the feature.

@prologic and @justamoment, this Gitxt project sounds really interesting. Can you tell us about some of your goals?
@justamoment I don't even have Web server logs enabled.
I love mitmproxy. That and nethogs are my go-to network monitoring tools.
@lyse There's also the ed(1) cloud service, ssh ed@bitreich.org.
@prologic Because all of those things require resources which can't just be created out of thin air. Human effort must be expended, risk must be taken, materials must be procured, and everyone involved needs to be compensated in some way for that.
@justamoment That's really cool! My computer can't seem to handle it in full screen, though.
@justamoment That's awesome!
@prologic I imagine it's something along the lines of the Eternal September.
@prologic I imagine it's something along the lines of the Eternal September
@movq This is computing, we don't get rid of historical baggage.
B.
As you've said, @prologic, it's impossible to monopolize twtxt because it's just a text file format. Also, Yarnd is under the AGPL, so anyone is free to fork it if they don't like where the project is going. Fortunately, it's under great leadership and development is steered more by the community than the owner of the repository.

Don't let it get to you, man. Interoperability with vanilla twtxt is the best feature of Yarn, and it's not worth breaking that because of one person. Besides, you won't win him over even if you do.
As you've said, @prologic, it's impossible to monopolize twtxt because it's just a text file format. Also, Yarnd is under the AGPL, so anyone is free to fork it if they don't like where the project is going. Fortunately, it's under great leadership and development is steered more by the community than the owner of the repository.

Don't let it get to you, man. Interoperability with vanilla twtxt is the best feature of Yarn, and it's not worth breaking that because of one person. Besides, you won't win him over even if you do.
Who's going to tell him that the metadata fields are a Yarn extension?
@Jirka You can't just post something like that without giving us any details or pictures...

Are you running IRIX on the SGIs?
@Jirka You can't just post something like that without giving us any details or pictures...

Are you running IRIX on the SGIs?
@prologic You could just point people directly to yarn.social. That could be a very effective guerrilla marketing campaign.
@abucci QR codes and link shorteners can be useful, but people have been *trained* to click and scan things without doing their due diligence. Of course, mobile operating systems make it very difficult to do so because their goal is to remove as much control as is acceptable by the user.

As far as I know, you have to load the page in a browser before you can see the entire URL, giving it the opportunity to redirect somewhere else or exploit some vulnerability on your device.

I think we agree here. When the user has no control and is taught to blindly trust these things, bad things happen.
@marado We really need to stop using link shorteners and QR codes, but the damage is already done.

You can put a sticker with a QR code (and no other information) on a wall in a city and people will scan it out of curiosity. They scan it, their iPhone only tells them it goes to snapchat.com (I just checked on the latest version of iOS), and they end up on my website instead because it's an open redirect.

Granted, my website is a much better place to be than snapchat.com, but you get the idea.
@prologic I'm just joking around. It doesn't really matter to me.
@prologic I'm just joking around. It doesn't really matter to me.