# 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 235518
# self = https://watcher.sour.is?offset=228536
# next = https://watcher.sour.is?offset=228636
# prev = https://watcher.sour.is?offset=228436
OHHH THIS IS EPIC YALL TY i'd love to try this!!!
OHHH THIS IS EPIC YALL TY i'd love to try this!!!
@prologic i would be very interested in this as a caddy user who needs a WAF probably lol
@prologic i would be very interested in this as a caddy user who needs a WAF probably lol
@kingdomcome HIYA
@kingdomcome HIYA
@ YEAHHHHHHHHH IRENE'S HERE!!!!!!
@ YEAHHHHHHHHH IRENE'S HERE!!!!!!
I'll upload a user icon later. & I guess link back to this account on my website. Right now, I'm gonna try to take a #nap
What's up twtxt network
👋 Hello @kingdomcome, welcome to yarn, a Yarn.social Pod! To get started you may want to check out the pod's Discover feed to find users to follow and interact with. To follow new users, use the ⨁ Follow button on their profile page or use the Follow form and enter a Twtxt URL. You may also find other feeds of interest via Feeds. Welcome! 🤗
👋 Hello @kingdomcome, welcome to yarn, a Yarn.social Pod! To get started you may want to check out the pod's Discover feed to find users to follow and interact with. To follow new users, use the ⨁ Follow button on their profile page or use the Follow form and enter a Twtxt URL. You may also find other feeds of interest via Feeds. Welcome! 🤗
@eapl same here. There are many "doctors", and "professors" named Don Abel. None of them are showing as having said, or written that quote.
Hmm, yeah, I am doing something wrong. Same is happening with any site to which I apply the this.

Is there a reason you forked this from mholt? What was added, or changed? Your "Initial commit" throws an error.
nice! would you mind elaborating a bit?
Is that the scientific method?
I couldn't find anything related when I searched for it.
On a test I ran, with a static site that is a PWA, like this:


example.com {
        root * /web/example.com
        route / {
             rate_limit {path} 20r/m
             file_server
        }
}


It works (as limiting rate), but when rate isn't reached, the page doesn't render. Not sure what could be going on.
@movq Sounds about right. :-D It's now calm again.

Always noise, whichever way you loo^Whear at it. :-(
@movq This video never gets old! :-) Now I ended up on https://brendangregg.com/specials.html#rshutdown and laughing my ass off. :-D
No more stupid little DDoS(s) from fucking China now 🤣
No more stupid little DDoS(s) from fucking China now 🤣
Note for reference I was trying to write and fix this rule (_fixed version below_):


# Ignore Content-Type restrictions for Git
SecRule REQUEST_HEADERS:Host "@streq git.mills.io" "id:101,phase:1,t:none,nolog,ctl:ruleRemoveById=920420"
Note for reference I was trying to write and fix this rule (_fixed version below_):


# Ignore Content-Type restrictions for Git
SecRule REQUEST_HEADERS:Host "@streq git.mills.io" "id:101,phase:1,t:none,nolog,ctl:ruleRemoveById=920420"
Notably the custom operator @lookupASN
Notably the custom operator @lookupASN
I'll try to add a README for caddy-waf soon™ (_going back to bed now_) at least document the customizations I've made to this WAF (_which I forked from caddy-coraza_)
I'll try to add a README for caddy-waf soon™ (_going back to bed now_) at least document the customizations I've made to this WAF (_which I forked from caddy-coraza_)
This is how I build my caddy:


proxy-1:~# cat build.caddy.sh
#!/bin/sh

xcaddy build \\
\t--with github.com/caddy-dns/cloudflare \\
\t--with github.com/caddyserver/cache-handler \\
\t--with git.mills.io/prologic/caddy-ratelimit \\
\t--with git.mills.io/prologic/caddy-waf
proxy-1:~#
This is how I build my caddy:


proxy-1:~# cat build.caddy.sh
#!/bin/sh

xcaddy build \
	--with github.com/caddy-dns/cloudflare \
	--with github.com/caddyserver/cache-handler \
	--with git.mills.io/prologic/caddy-ratelimit \
	--with git.mills.io/prologic/caddy-waf
proxy-1:~#
This is how I build my caddy:


proxy-1:~# cat build.caddy.sh
#!/bin/sh

xcaddy build \
	--with github.com/caddy-dns/cloudflare \
	--with github.com/caddyserver/cache-handler \
	--with git.mills.io/prologic/caddy-ratelimit \
	--with git.mills.io/prologic/caddy-waf
proxy-1:~#
Ahh fuck! Sorry I was fixing a rule 🤣 This is much better!


proxy-1:~# grep -c 'Bad ASN' /var/log/caddy/caddy.log
2441
Ahh fuck! Sorry I was fixing a rule 🤣 This is much better!


proxy-1:~# grep -c 'Bad ASN' /var/log/caddy/caddy.log
2441
[47°09′49″S, 126°43′41″W] Dosimeter still failing
So this should build caddy with both modules:


$ xcaddy build --with git.mills.io/prologic/caddy-ratelimit --with  git.mills.io/prologic/caddy-waf


Right?
@lyse The west. Nasty wind is always coming from the bloody west. (My apartment is facing the west and so I get to enjoy all the storms. 😂)

Good weather/wind comes from the east. (Which makes all the planes approach from the west again and so I get to enjoy their noise. 😂😂)
@lyse The west. Nasty wind is always coming from the bloody west. (My apartment is facing the west and so I get to enjoy all the storms. 😂)

Good weather/wind comes from the east. (Which makes all the planes approach from the west again and so I get to enjoy their noise. 😂😂)
@lyse The west. Nasty wind is always coming from the bloody west. (My apartment is facing the west and so I get to enjoy all the storms. 😂)

Good weather/wind comes from the east. (Which makes all the planes approach from the west again and so I get to enjoy their noise. 😂😂)
@lyse The west. Nasty wind is always coming from the bloody west. (My apartment is facing the west and so I get to enjoy all the storms. 😂)

Good weather/wind comes from the east. (Which makes all the planes approach from the west again and so I get to enjoy their noise. 😂😂)
@movq hahahahaha! I see. Of course, better be safe than... well, you know it. :-)
Meh, I hit an import cycle while writing tests. Now I have to relocate some code. What do we conclude from that: don't write tests. ;-)
The rate-limit one too (https://git.mills.io/prologic/caddy-ratelimit), for sure! Would the caddy-waf be:


$ xcaddy build --with git.mills.io/prologic/caddy-waf


Yes? Still, the README for a configuration example would be awesome!
@prologic cool! Looking forward to the README for https://git.mills.io/prologic/caddy-waf! :-) I will probably build that module on my Caddy!
Where is all this wind suddenly coming from?
@bender Yes they are rather large 🤣 Here you go:


proxy-1:~# cat /etc/caddy/waf/bad_asns.txt
# CHINANET-BACKBONE No.31,Jin-rong Street, CN
# Why: DDoS
4134

# CHINA169-BACKBONE CHINA UNICOM China169 Backbone, CN
# Why: DDoS
4837

# CHINAMOBILE-CN China Mobile Communications Group Co., Ltd., CN
# Why: DDoS
9808

# FACEBOOK, US
# Why: Bad Bots
32934
proxy-1:~#
@bender Yes they are rather large 🤣 Here you go:


proxy-1:~# cat /etc/caddy/waf/bad_asns.txt
# CHINANET-BACKBONE No.31,Jin-rong Street, CN
# Why: DDoS
4134

# CHINA169-BACKBONE CHINA UNICOM China169 Backbone, CN
# Why: DDoS
4837

# CHINAMOBILE-CN China Mobile Communications Group Co., Ltd., CN
# Why: DDoS
9808

# FACEBOOK, US
# Why: Bad Bots
32934
proxy-1:~#
@prologic can you give me an example of one ASN you have blocked? First time I heard of ASNs but, furthermore, blocking ASNs. It seems like they are *huge* blocks!
@bender AS Number):

> An autonomous system (AS) is a collection of connected Internet Protocol (IP) routing prefixes under the control of one or more network operators on behalf of a single administrative entity or domain, that presents a common and clearly defined routing policy to the Internet.[1] Each AS is assigned an autonomous system number (ASN), for use in Border Gateway Protocol (BGP) routing. Autonomous System Numbers are assigned to Local Internet Registries (LIRs) and end-user organizations by their respective Regional Internet Registries (RIRs), which in turn receive blocks of ASNs for reassignment from the Internet Assigned Numbers Authority (IANA). The IANA also maintains a registry of ASNs which are reserved for private use (and should therefore not be announced to the global Internet).
@bender AS Number):

> An autonomous system (AS) is a collection of connected Internet Protocol (IP) routing prefixes under the control of one or more network operators on behalf of a single administrative entity or domain, that presents a common and clearly defined routing policy to the Internet.[1] Each AS is assigned an autonomous system number (ASN), for use in Border Gateway Protocol (BGP) routing. Autonomous System Numbers are assigned to Local Internet Registries (LIRs) and end-user organizations by their respective Regional Internet Registries (RIRs), which in turn receive blocks of ASNs for reassignment from the Internet Assigned Numbers Authority (IANA). The IANA also maintains a registry of ASNs which are reserved for private use (and should therefore not be announced to the global Internet).
@bender AS Number):

> An autonomous system (AS) is a collection of connected Internet Protocol (IP) routing prefixes under the control of one or more network operators on behalf of a single administrative entity or domain, that presents a common and clearly defined routing policy to the Internet.\n Each AS is assigned an autonomous system number (ASN), for use in Border Gateway Protocol (BGP) routing. Autonomous System Numbers are assigned to Local Internet Registries (LIRs) and end-user organizations by their respective Regional Internet Registries (RIRs), which in turn receive blocks of ASNs for reassignment from the Internet Assigned Numbers Authority (IANA). The IANA also maintains a registry of ASNs which are reserved for private use (and should therefore not be announced to the global Internet).
@bender Maybe, I don’t want to risk anything, though, and I can’t get this video out of my head: https://www.youtube.com/watch?v=tDacjrSCeq4 😅 (My main machine runs on an SSD, the HDDs are just for additional data like my software archive, music, …)

@lyse 😂
@bender Maybe, I don’t want to risk anything, though, and I can’t get this video out of my head: https://www.youtube.com/watch?v=tDacjrSCeq4 😅 (My main machine runs on an SSD, the HDDs are just for additional data like my software archive, music, …)

@lyse 😂
@bender Maybe, I don’t want to risk anything, though, and I can’t get this video out of my head: https://www.youtube.com/watch?v=tDacjrSCeq4 😅 (My main machine runs on an SSD, the HDDs are just for additional data like my software archive, music, …)

@lyse 😂
@bender Maybe, I don’t want to risk anything, though, and I can’t get this video out of my head: https://www.youtube.com/watch?v=tDacjrSCeq4 😅 (My main machine runs on an SSD, the HDDs are just for additional data like my software archive, music, …)

@lyse 😂
Retocada en blanco y negro. Ahora es más adorable
#catsoftwtxt
Retocada en blanco y negro. Ahora es más adorable
#catsoftwtxt
Montando en elefante
#catsoftwtxt
Montando en elefante
#catsoftwtxt
@prologic what's ASN again?
On my blog: Developer Diary, Epiphany https://john.colagioia.net/blog/2025/01/06/epiphany.html #programming #project #devjournal
Well. A new year came and I am reading Solenoid, a masterpiece written by Mircea Cărtărescu
somehow this server went out overnight??? weird
somehow this server went out overnight??? weird
[47°09′34″S, 126°43′23″W] Dosimeter malfunction
Nouvel article pour les anxieux comme moi : Sac d'urgence. https://si3t.ch/log/2025-01-06-sac-d-urgence.txt
Nouvel article pour les anxieux comme moi : Sac d'urgence. https://si3t.ch/log/2025-01-06-sac-d-urgence.txt
@aelaraji Thank you very much, glad you like it. :-) I always try to make web pages use as much semantic tags as possible and keep the HTML very simple, so that they also have a chance to look decent in terminal browsers. The logo took me a few hours to draw in all its three sizes.
I just solved my issue with noise in my headphone. Thank you public archives! So smooth now :) https://www.mail-archive.com/misc@openbsd.org/msg182180.html
I just solved my issue with noise in my headphone. Thank you public archives! So smooth now :) https://www.mail-archive.com/misc@openbsd.org/msg182180.html
Cool! 😎 So I can now block ASN(s) 🤣 (_And I bet no-one noticed anything_)
Cool! 😎 So I can now block ASN(s) 🤣 (_And I bet no-one noticed anything_)
[47°09′08″S, 126°43′28″W] Transfer aborted
@kat I love blue 🤣
@kat I love blue 🤣
Saludos desde Argentina
@kat i wound up with xcolor AND pastel at the same time, because xcolor does exactly what i want while pastel and its picker subcommand does the same thing, relying on xcolor, but brings up a nice graphic of the picked color and related colors, plus more than just the hex code. neat.
@kat i wound up with xcolor AND pastel at the same time, because xcolor does exactly what i want while pastel and its picker subcommand does the same thing, relying on xcolor, but brings up a nice graphic of the picked color and related colors, plus more than just the hex code. neat.
just spent like half an hour finding a terminal based color picker that would just. turn the cursor into a cross hair and let me pick from the screen. in linux fashion this was somehow difficult
just spent like half an hour finding a terminal based color picker that would just. turn the cursor into a cross hair and let me pick from the screen. in linux fashion this was somehow difficult
@prologic i love pink i put it on all my sites
@prologic i love pink i put it on all my sites
@aelaraji Still in my cache 🤣
@aelaraji Still in my cache 🤣
@aelaraji Bahahaha, you know where the default theme lives 🤣 PRs welcome!
@aelaraji Bahahaha, you know where the default theme lives 🤣 PRs welcome!
[47°09′08″S, 126°43′23″W] Bad satellite signal -- switching to analog communication
Browsing X and fell down a gopher hole. Love it. ✌️ -Steve Galbincea
@xuu ROFLMAO! 🤣 reading that, the Tech bro sounded in my mind like Cow from Cow and Chicken
@xuu ROFLMAO! 🤣 reading that, the Tech bro sounded in my mind like Cow from Cow and Chicken
@bender @movq I appreciate you! and don't you worry about it, if 2025 doesn't behave itself we Will make it! 🦾 (now I know the real meaning behind the expression of _Making it_)
@bender @movq I appreciate you! and don't you worry about it, if 2025 doesn't behave itself we Will make it! 🦾 (now I know the real meaning behind the expression of _Making it_)
I was looking for an #mpd/#rofi script and stumbled upon this repo adi1090x/rofi, it is just 🤤 DELICIOUS! ... and a great reference/kick starter for making my own.
I was looking for an #mpd/#rofi script and stumbled upon this repo adi1090x/rofi, it is just 🤤 DELICIOUS! ... and a great reference/kick starter for making my own.
Seriously @prologic you should think about making a pink theme the _De Facto_ for yarn, even the 🧶 emoji is pink! 😆
Seriously @prologic you should think about making a pink theme the _De Facto_ for yarn, even the 🧶 emoji is pink! 😆
HAHAHAHA! 🤣 I freaking love this reaction. Welcome aboard @gretahayes
HAHAHAHA! 🤣 I freaking love this reaction. Welcome aboard @gretahayes
It's nice to see that _some_ Crawlers _actaully_ respect rate limits and respect a 429 Too many requests response 👌 Thank you Google! 🙌
It's nice to see that _some_ Crawlers _actaully_ respect rate limits and respect a 429 Too many requests response 👌 Thank you Google! 🙌
@bmallred did you rotate your twtxt file or something happened to your twts? 🤔 asking just in case...
@bmallred did you rotate your twtxt file or something happened to your twts? 🤔 asking just in case...
@bender So you mean, get failtb2n to look at my Caddy audit logs for violations and then just block at the firewall level for repeated violations? 🤔