prologic

twtxt.net

Problems are Solved by Method\" 🇦🇺👨‍💻👨‍🦯🏹♔ 🏓⚯ 👨‍👩‍👧‍👧🛥 -- James Mills (operator of twtxt.net / creator of Yarn.social 🧶)

In-reply-to » I am not interested at all. If I want to interact/socialise/whatever on the Fediverse (which I do), I simply use it. I would like to keep twtxt separate.

Yes you were right. It was technically a failure. It is very difficult to reconcile the differences between a distributed network and one that’s truly decentralized.

⤋ Read More
In-reply-to » @prologic it's fine, I never expected my yeets, to be preserved for future generations. Any art I posted here, can be found through my (now almost entirely HTML 5 complient) website.

@thecanine@twtxt.net I mean I can restore whatever anyone likes, the problem is the last backup I took was 4 months ago 😭 So I decided to start over (from scratch). Just let me know what you want and I’ll do it! I used the 4-month old backup to restore your account (by hand) and avatar at least 🤣

⤋ Read More
In-reply-to » @movq Not according to the output of ./yarnc debug <your feed url>:

OH wait! 😳 Why am I storing the timestamp as created = 2025-04-07T19:59:51Z ?! 😱 @movq@www.uninformativ.de’s feed shows:

2025-04-07T19:59:51+00:00	I wonder if my current Linux installation will actually make it to 20 years:

    $ head -n 1 /var/log/pacman.log
    [2011-07-07 11:19] installed filesystem (2011.04-1)

It’s not toooo far into the future.

It would be crazy … 20 years without reinstalling once … phew. 🥴

Hmmmm

⤋ Read More
In-reply-to » (#znf6csa) @prologic What happened here – did I edit my twt or is this hash wrong? 🥴

@movq@www.uninformativ.de Not according to the output of ./yarnc debug <your feed url>:

znf6csa 2025-04-07T19:59:51+00:00	I wonder if my current Linux installation will actually make it to 20 years:

    $ head -n 1 /var/log/pacman.log
    [2011-07-07 11:19] installed filesystem (2011.04-1)

It’s not toooo far into the future.

It would be crazy … 20 years without reinstalling once … phew. 🥴

⤋ Read More
In-reply-to » (#znf6csa) @prologic What happened here – did I edit my twt or is this hash wrong? 🥴

Doesn’t look like it Hmmm

sqlite> select * from twts where content LIKE '%Linux installation%';
    hash = znf6csa
feed_url = https://www.uninformativ.de/twtxt.txt
 content = I wonder if my current Linux installation will actually make it to 20 years:

    $ head -n 1 /var/log/pacman.log
    [2011-07-07 11:19] installed filesystem (2011.04-1)

It’s not toooo far into the future.

It would be crazy … 20 years without reinstalling once … phew. 🥴
 created = 2025-04-07T19:59:51Z
 subject = (#znf6csa)
mentions = []
    tags = []
   links = []

⤋ Read More
In-reply-to » (#znf6csa) @prologic What happened here – did I edit my twt or is this hash wrong? 🥴

I’m thinking you may have edited. Lemme check actually… yarnd (on this branch) will now restore every version, and maybe I might have introduced a bit of a weird behavior there. One moment…

⤋ Read More
In-reply-to » This weekend (as some of you may now) I accidently nuke this Pod's entire data volume 🤦‍♂️ What a disastrous incident 🤣 I decided instead of trying to restore from a 4-month old backup (we'll get into why I hadn't been taking backups consistently later), that we'd start a fresh! 😅 Spring clean! 🧼 -- Anyway... One of the things I realised was I was missing a very critical Safety Controls in my own ways of working... I've now rectified this...

@kate@yarn.girlonthemoon.xyz Fair enough! 😂 Also a good approach, change the environment 🤣

⤋ Read More
In-reply-to » hey does anyone know of yarn pods with open registrations besides mine? quite literally asking for a friend who i told about yarn but can't use my site for personal reasons sadly otherwise i'd gladly invite her

Definitely open to taking on users 👌I only have open registrations turned off because of spam accounts and my pod being the most popular amongst spammers 🤣

⤋ Read More
In-reply-to » Search syntax appears to be:

Ahhh! It’s all Soren’s fault 🤣

commit ea9eaaf3d3977701dcb84b927c77c4f921bdbf43
Author: sorenpeter <sorenpeter@noreply@mills.io>
Date:   Sat Sep 24 23:34:07 2022 +0000

    Replacing Pico.css with Simple.css (#990)

    Replacing pico.css with simple.css along with some small UI changes

⤋ Read More
In-reply-to » This weekend (as some of you may now) I accidently nuke this Pod's entire data volume 🤦‍♂️ What a disastrous incident 🤣 I decided instead of trying to restore from a 4-month old backup (we'll get into why I hadn't been taking backups consistently later), that we'd start a fresh! 😅 Spring clean! 🧼 -- Anyway... One of the things I realised was I was missing a very critical Safety Controls in my own ways of working... I've now rectified this...

@lyse@lyse.isobeef.org I’m open to other suggestions 🤣 But hopefully both adding the additional prompt, not allowing it to enter shell history and removing from my shell history prevents me from doing such silly things in haste by pressing ^R and using fuzzy search which if you type fast you sometimes get wrong 😑

⤋ Read More
In-reply-to » Fuuuuuuucking hell. 😮‍💨 It’s one of “those” days.

I had a day like that just today, in fact I’ve had one of those weeks, actually no wait, I’ve had one of those months! 🤯

⤋ Read More
In-reply-to » This weekend (as some of you may now) I accidently nuke this Pod's entire data volume 🤦‍♂️ What a disastrous incident 🤣 I decided instead of trying to restore from a 4-month old backup (we'll get into why I hadn't been taking backups consistently later), that we'd start a fresh! 😅 Spring clean! 🧼 -- Anyway... One of the things I realised was I was missing a very critical Safety Controls in my own ways of working... I've now rectified this...

This is an example of what I believe every SRE should master and whatever Post Incident Review (PIR) should focus on. Where did the system fail. What are the missing or incomplete Safety Controls.

⤋ Read More
In-reply-to » This weekend (as some of you may now) I accidently nuke this Pod's entire data volume 🤦‍♂️ What a disastrous incident 🤣 I decided instead of trying to restore from a 4-month old backup (we'll get into why I hadn't been taking backups consistently later), that we'd start a fresh! 😅 Spring clean! 🧼 -- Anyway... One of the things I realised was I was missing a very critical Safety Controls in my own ways of working... I've now rectified this...

Then I cleaned up my shell history of all of the invocations I ever made of dkv rm ... to make sure I never ever have this so easily accessible in my shell history (^R):

$ awk '
  /^#/ { ts = $0; next }
  /^dkv rm/ { next }
  { if (ts) print ts; ts=""; print }
' ~/.bash_history > ~/.bash_history.tmp && mv ~/.bash_history.tmp ~/.bash_history && history -r

⤋ Read More
In-reply-to » This weekend (as some of you may now) I accidently nuke this Pod's entire data volume 🤦‍♂️ What a disastrous incident 🤣 I decided instead of trying to restore from a 4-month old backup (we'll get into why I hadn't been taking backups consistently later), that we'd start a fresh! 😅 Spring clean! 🧼 -- Anyway... One of the things I realised was I was missing a very critical Safety Controls in my own ways of working... I've now rectified this...

So I re-write this shell alias that I used all the time alias dkv="docker rm" to be a much safer shell function:

dkv() {
  if [[ "$1" == "rm" && -n "$2" ]]; then
    read -r -p "Are you sure you want to delete volume '$2'? [Y/n] " confirm
    confirm=${confirm:-Y}
    if [[ "$confirm" =~ ^[Yy]$ ]]; then
      # Disable history
      set +o history

      # Delete the volume
      docker volume rm "$2"

      # Re-enable history
      set -o history
    else
      echo "Aborted."
    fi
  else
    docker volume "$@"
  fi
}

⤋ Read More

This weekend (as some of you may now) I accidently nuke this Pod’s entire data volume 🤦‍♂️ What a disastrous incident 🤣 I decided instead of trying to restore from a 4-month old backup (we’ll get into why I hadn’t been taking backups consistently later), that we’d start a fresh! 😅 Spring clean! 🧼 – Anyway… One of the things I realised was I was missing a very critical Safety Controls in my own ways of working… I’ve now rectified this…

⤋ Read More
In-reply-to » Oh well. I've gone and done it again! This time I've lost 4 months of data because for some reason I've been busy and haven't been taking backups of all the things I should be?! 🤔 Farrrrk 🤬

@movq@www.uninformativ.de We’ll recover just fine right ? 😆 It’s only 4 months worth of posts 😅 Not like it’s the end of the world 😂

⤋ Read More
In-reply-to » Oh well. I've gone and done it again! This time I've lost 4 months of data because for some reason I've been busy and haven't been taking backups of all the things I should be?! 🤔 Farrrrk 🤬

Oh well, let’s just start over! 🤣

⤋ Read More

Oh well. I’ve gone and done it again! This time I’ve lost 4 months of data because for some reason I’ve been busy and haven’t been taking backups of all the things I should be?! 🤔 Farrrrk 🤬

⤋ Read More
In-reply-to » @eapl.me@eapl.me I replied in the fork, but essentially there's no reason we can't support two different models here. We already do this anyway with numerous single-user, single hosted and managed feeds + a bunch of multi-user yarnd pods that form a "distributed network".

@xuu@txt.sour.is Yeah looks like an edge case. Because of the way he announces his preferred nick in the feed the “Reply” button spits out @eapl.me@eapl.me@eapl.me for me, which then gets eaten as two mentions, probably matching twice against my following list?

⤋ Read More
In-reply-to » What does the #twtxt community think about having a p2p database to store all history? This will be managed by Registries.

@eapl.me@eapl.me@eapl.me@eapl.me I replied in the fork, but essentially there’s no reason we can’t support two different models here. We already do this anyway with numerous single-user, single hosted and managed feeds + a bunch of multi-user yarnd pods that form a “distributed network”.

⤋ Read More

One of the biggest gripes of the community with the way the threading model currently works with Twtxt v1.2 (https://twtxt.dev) is this notion of:

What is this hash?
What does it refer to?

Idea: Why can’t we all agree to implement a simple URI scheme where we host our Twtxt feeds?

That is, if you host your feed at https://example.com/twtxt.txt – Why can’t or could you not also host various JSON files (let’s agree on the spec of course) at https://example.com/twt/<hash> ? 🤔

That way we solve this problem in a truly decentralised way, rather than every relying on yarnd pods alone.

⤋ Read More
In-reply-to » @bmallred I forgot one more effect of edits. If clients remember the read status of massages by hash, an edit will mark the updated message as unread again. To some degree that is even the right behavior, because the message was updated, so the user might want to have a look at the updated version. On the other hand, if it's just a small typo fix, it's maybe not worth to tell the user about. But the client doesn't know, at least not with additional logic.

@lyse@lyse.isobeef.org Clients could detest edits 🤞

⤋ Read More

Short summary of Project2025 and Trump’s plans for the US:

  • Abolish the Federal Reserve
    Why? To end what is seen as an unelected, centralized body that exerts too much influence over the economy and monetary policy, replacing it with a more transparent, market-driven approach.

  • Implement a national consumption tax
    Why? To replace the current federal income tax system, simplify taxation, and increase government revenue through a broader base that includes all consumers.

  • Lower corporate tax rates
    Why? To promote business growth, increase investment, and stimulate job creation by reducing the financial burden on companies.

  • Deregulate environmental policies
    Why? To reduce government intervention in the economy, particularly in energy and natural resources sectors, and to foster a more business-friendly environment.

  • Restrict abortion access
    Why? To align with conservative pro-life values and overturn or limit abortion rights, seeking to restrict the practice at a federal level.

  • Dismantle LGBTQ+ protections
    Why? To roll back protections viewed as promoting LGBTQ+ rights in areas like employment and education, in line with traditional family values.

  • Eliminate diversity, equity, and inclusion (DEI) programs
    Why? To end policies that are seen as divisive and to promote a merit-based system that prioritizes individual achievements over group identity.

  • Enforce stricter immigration policies, including mass deportations and detentions
    Why? To prioritize border security, reduce illegal immigration, and enforce existing laws more aggressively, as part of a broader strategy to safeguard U.S. sovereignty.

  • Eliminate the Department of Education
    Why? To reduce federal control over education and shift responsibilities back to local governments and private sectors, arguing that education decisions should be made closer to the community level.

  • Restructure the Department of Justice
    Why? To ensure the department aligns more closely with the administration’s priorities, potentially reducing its scope or focus on areas like civil rights in favor of law-and-order policies.

  • Appoint political loyalists to key federal positions
    Why? To ensure that government agencies are headed by individuals who are committed to advancing the administration’s policies, and to reduce the influence of career bureaucrats.

  • Develop training programs for appointees to execute reforms effectively
    Why? To ensure that political appointees are equipped with the knowledge and skills necessary to implement the proposed changes quickly and effectively.

  • Provide a 180-day transition plan with immediate executive orders
    Why? To ensure that the incoming administration can swiftly implement its agenda and make major changes early in its term without delay.

Do y’all agree with any/all/some of these poliices? Hmmm 🤔

#Project2025 #US #Trump

⤋ Read More

Bloody hell 🤦‍♂️🤦‍♂️

$ jq -r --arg host "gopher.mills.io" '. | select(.request.host==$host) | "\(.request.client_ip) \(.request.uri) \(.request.headers["User-Agent"])"' mills.io.log-au | while IFS=$' ' read -r ip uri ua; do asn="$(geoip -a "$ip")"; echo "$asn $ip $uri $ua"; done | grep -E '^45102.*' | sort | head
45102 47.251.70.245 /gopher.floodgap.com/0/feeds/democracynow/2015/Oct/14/0 ["Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36"]
45102 47.251.84.25 /gopher.floodgap.com/0/feeds/voaheadlines/2014/Mar/09/voanews.com-content-article-1867433.html ["Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"]
45102 47.82.10.106 /gopher.viste.fr/1/OnlineTools/hangman.cgi%3F0692937396569A52972EB2 ["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Edg/114.0.1823.43"]
45102 47.82.10.106 /gopher.viste.fr/1/OnlineTools/hangman.cgi%3F9657307A96569A52974634 ["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Edg/114.0.1823.43"]
45102 47.82.10.106 /gopher.viste.fr/1/OnlineTools/hangman.cgi%3FB7571C7896569A529E6603 ["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Edg/114.0.1823.43"]
45102 47.82.10.106 /gopher.viste.fr/1/OnlineTools/hangman.cgi%3FB75EF81296569A529E6617 ["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Edg/114.0.1823.43"]
45102 47.82.10.106 /gopher.viste.fr/1/OnlineTools/hangman.cgi%3FC6564ADB96569A5A9E660C ["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Edg/114.0.1823.43"]

⤋ Read More

It would appear that Google’s web crawlers are ignoring the robots.txt that I have on https://git.mills.io/robots.txt with content:

User-agent: *
Disallow: /

Evidence attached (see screenshots): – I think its the the Small Web community band together and file a class action suit(s) against Microsoft.com Google.com and any other assholes out there (OpenAI?) that violate our rights and ignore requests to be “polite” on the web. Thoughts? 💭

⤋ Read More

I got promoted today to try using Passkeys on Github.com. Fine 😅 I did that, but I discovered that when you use your Passkey to login, Chrome prompts you for your device’s password (i.e: The password you use to login to your macOS Desktop). Is that intentional? Kind of defeats the point no? I mean sure, now there’s no Password being transmitted, stored or presented to Github.com but still, all an attacker has to do is somehow be on my device and know my login password to my device right? Is that better or worse? 🤔

⤋ Read More
In-reply-to » I'm realizing that my performance bottleneck is @prologic ! It is actually calculating the hash to make the replicas, and specifically users with very long feeds 😂 . I'm seriously thinking about enabling replies via configuration.

Gotta get faster disks man 🤣

⤋ Read More

Hi James, great to hear your interest. So this is an exclusive roundtable luncheon with people in the IT, Engineering, DevOps and Technical professionals. This is an opportunity to benchmark and share stories and experiences with like-minded peers in a closed-door, Chatham House Rule environment where you will be given the opportunity to speak openly and candidly.

I’m not even sure what half these words mean hmm 🧐

⤋ Read More

To all my EU friends out there, is it this hard™ to reach a human in European companies that allow, perform or permit silly shenanigans? 🤔 Or is it just US companies? 🤔

⤋ Read More