@prologic@twtxt.net Oh.. reading comprehension is strong today.. you went to US and now back.
@prologic@twtxt.net Hol-Up. You are state side now? Thatās a pretty big change!
@prologic@twtxt.net Hol-Up. You are state side now? Thatās a pretty big change!
@movq@www.uninformativ.de I usually only use eggs for baking or fry them for potatoes and spinach. @prologic@twtxt.net Why donāt you have them anymore? Did the fox get them all when the door didnāt close in time? ]:->
Como ya tengo la cuenta de https://twtxt.net/~eaplmx en inglƩs, usarƩ esta de Text-plano en espaƱol. Veamos quƩ tal funciona!
**R to @mind_booster: Foi tambĆ©m em 1997 que saiu o jogo Diablo, cujo impacto nos ānovos internautasā vai muito alĆ©m da comunidade de gaming:
https://twtxt.net/twt/vqon7aa**
Foi tambĆ©m em 1997 que saiu o jogo Diablo, cujo impacto nos ānovos internautasā vai muito alĆ©m da comunidade de gaming:
I realized my twtxt client isnāt validating what it pulls once it gets a valid response when a domain started returning js-heavy parking pages for every URL. Oops. Weekend project, I guess. š¤¦š»
@niplav@niplav.github.io Do you have a particular meaning in mind for ālong siteā, or do you mean all the possible meanings for ālong siteā?
@niplav@niplav.github.io and I thought evidentials were invented by the Lojban people or maybe North American amerinds, not Eastern Europeans
@niplav@niplav.github.io I have a favorite line of prose written around here somewhere but itās only understandable by a tiny slice of gamers with literal-Boomer media sensibilities. Posting it would break the Internet.
Look at the twtxt.net api: https://dev.twtxt.net/doc/api.html
O client do twtxt para o Emacs precisa de um upgrade.
Ainda sem ideia como fazer a migração para o twtxt de uma forma razoÔvel e indolor. O caminho faz-se andando.
So it happened - the twtxt.xyz domain finally expired
@prologic moving around servers, managed to break my twtxt client so using literally the first one I could find
I canāt get twtxt to work properly on my machine so I hope this works
@novaburst@twt.nfld.uk Ah.. that is probably the XMPP verify code.. it doesnt really work that well. I aught to take it out.
@novaburst@twt.nfld.uk Ah.. that is probably the XMPP verify code.. it doesnt really work that well. I aught to take it out.
@tkanos@twtxt.net Yep. https://twitter.com/jack/status/1510314535671922689
@tkanos@twtxt.net Yep. https://twitter.com/jack/status/1510314535671922689
@mutefall@twtxt.net interesting.. were you working on one of the two universities that used it between 1989 and 1991?
@mutefall@twtxt.net interesting.. were you working on one of the two universities that used it between 1989 and 1991?
#event Upcomming Meetup in Copennhagen: algolab(the_art_of_live_coding) @ StĆøberiet / Computer Klub
hey @xuu@txt.sour.is iām trying to sort of get running your keyproofs thing on my hashbangās site root, but I get this:
Apr 01 02:55:25 de1 sour.is-keyproofs[9084]: 2:55AM ERR home/novaburst/keyproofs/main.go:73 > Application Failed error=": missing jid"
@prologic@twtxt.net yeah. For commercial use even. Just need to put an attribution note in the project README
@prologic@twtxt.net yeah. For commercial use even. Just need to put an attribution note in the project README
maxlenght?, I found a workaround by writing from Goryon on mobile, on PC i can simply change the limit with the inspector but isn't it there for a reason?
@mckinley@twtxt.net Agreed! š
Can we all vote on the new default being 1024 then perhaps? š¤
+1 from me
@xuu@txt.sour.is So that means weāre allowed to use it right? š
@prologic@twtxt.net if we do adopt this one it is CC-BY from twitter. https://twemoji.twitter.com
@prologic@twtxt.net if we do adopt this one it is CC-BY from twitter. https://twemoji.twitter.com
@prologic@twtxt.net @ullarah@txt.quisquiliae.com I often see messages longer than what the textbox limit is, isnāt it limited by the maxlenght?, I found a workaround by writing from Goryon on mobile, on PC i can simply change the limit with the inspector but isnāt it there for a reason?
I too would like to express a bit more if possible, especially if i have to refer to users and link URLs and images for example, having a limit that isnāt too much of a limit is kind of pointless i think. š¤
@lyse@lyse.isobeef.org Excellent use of old denim, and also excellent use of long-form twt!
@lyse@lyse.isobeef.org Excellent use of old denim, and also excellent use of long-form twt!
@adi@twtxt.net Also, I noticed you followed me on Twitter, but you might enjoy @anths if you want techie stuff instead of Oregon politics. š¤£
I just spent an hour setting up the header of my twtxt.txt file ĀÆ_(ć)_/ĀÆ
Iāve made some fixes to twtxt to make it work with Python 3.7+. I hope @buckket@buckket.org will apply this patch!
Back to twtxt from the cli with twet https://github.com/jdtron/twet
Back to twtxt from the cli with twet https://github.com/jdtron/twet
Hello! world. First post on twtxt
@novaburst@twt.nfld.uk I doubt there will ever be a 2.0 ⦠It may end up like java and they strip off the 1.
@novaburst@twt.nfld.uk I doubt there will ever be a 2.0 ⦠It may end up like java and they strip off the 1.
@ullarah@txt.quisquiliae.com works for me! A tricky bitmight be if it splits within a codeblock so markdown canāt parse
@ullarah@txt.quisquiliae.com works for me! A tricky bitmight be if it splits within a codeblock so markdown canāt parse
@ullarah@txt.quisquiliae.com Didnāt we talk about at some point a way to set the maximum height of te panels with some UX way to read the rest? š¤ Is that still on the cards or a bad ideas? š¤
#!/bin/sh
# Validate environment
if ! command -v msgbus > /dev/null; then
printf "missing msgbus command. Use: go install git.mills.io/prologic/msgbus/cmd/msgbus@latest"
exit 1
fi
if ! command -v salty > /dev/null; then
printf "missing salty command. Use: go install go.mills.io/salty/cmd/salty@latest"
exit 1
fi
if ! command -v salty-keygen > /dev/null; then
printf "missing salty-keygen command. Use: go install go.mills.io/salty/cmd/salty-keygen@latest"
exit 1
fi
if [ -z "$SALTY_IDENTITY" ]; then
export SALTY_IDENTITY="$HOME/.config/salty/$USER.key"
fi
get_user () {
user=$(grep user: "$SALTY_IDENTITY" | awk '{print $3}')
if [ -z "$user" ]; then
user="$USER"
fi
echo "$user"
}
stream () {
if [ -z "$SALTY_IDENTITY" ]; then
echo "SALTY_IDENTITY not set"
exit 2
fi
jq -r '.payload' | base64 -d | salty -i "$SALTY_IDENTITY" -d
}
lookup () {
if [ $# -lt 1 ]; then
printf "Usage: %s nick@domain\n" "$(basename "$0")"
exit 1
fi
user="$1"
nick="$(echo "$user" | awk -F@ '{ print $1 }')"
domain="$(echo "$user" | awk -F@ '{ print $2 }')"
curl -qsSL "https://$domain/.well-known/salty/${nick}.json"
}
readmsgs () {
topic="$1"
if [ -z "$topic" ]; then
topic=$(get_user)
fi
export SALTY_IDENTITY="$HOME/.config/salty/$topic.key"
if [ ! -f "$SALTY_IDENTITY" ]; then
echo "identity file missing for user $topic" >&2
exit 1
fi
msgbus sub "$topic" "$0"
}
sendmsg () {
if [ $# -lt 2 ]; then
printf "Usage: %s nick@domain.tld <message>\n" "$(basename "$0")"
exit 0
fi
if [ -z "$SALTY_IDENTITY" ]; then
echo "SALTY_IDENTITY not set"
exit 2
fi
user="$1"
message="$2"
salty_json="$(mktemp /tmp/salty.XXXXXX)"
lookup "$user" > "$salty_json"
endpoint="$(jq -r '.endpoint' < "$salty_json")"
topic="$(jq -r '.topic' < "$salty_json")"
key="$(jq -r '.key' < "$salty_json")"
rm "$salty_json"
message="[$(date +%FT%TZ)] <$(get_user)> $message"
echo "$message" \
| salty -i "$SALTY_IDENTITY" -r "$key" \
| msgbus -u "$endpoint" pub "$topic"
}
make_user () {
mkdir -p "$HOME/.config/salty"
if [ $# -lt 1 ]; then
user=$USER
else
user=$1
fi
identity_file="$HOME/.config/salty/$user.key"
if [ -f "$identity_file" ]; then
printf "user key exists!"
exit 1
fi
# Check for msgbus env.. probably can make it fallback to looking for a config file?
if [ -z "$MSGBUS_URI" ]; then
printf "missing MSGBUS_URI in environment"
exit 1
fi
salty-keygen -o "$identity_file"
echo "# user: $user" >> "$identity_file"
pubkey=$(grep key: "$identity_file" | awk '{print $4}')
cat <<- EOF
Create this file in your webserver well-known folder. https://hostname.tld/.well-known/salty/$user.json
{
"endpoint": "$MSGBUS_URI",
"topic": "$user",
"key": "$pubkey"
}
EOF
}
# check if streaming
if [ ! -t 1 ]; then
stream
exit 0
fi
# Show Help
if [ $# -lt 1 ]; then
printf "Commands: send read lookup"
exit 0
fi
CMD=$1
shift
case $CMD in
send)
sendmsg "$@"
;;
read)
readmsgs "$@"
;;
lookup)
lookup "$@"
;;
make-user)
make_user "$@"
;;
esac
#!/bin/sh
# Validate environment
if ! command -v msgbus > /dev/null; then
printf "missing msgbus command. Use: go install git.mills.io/prologic/msgbus/cmd/msgbus@latest"
exit 1
fi
if ! command -v salty > /dev/null; then
printf "missing salty command. Use: go install go.mills.io/salty/cmd/salty@latest"
exit 1
fi
if ! command -v salty-keygen > /dev/null; then
printf "missing salty-keygen command. Use: go install go.mills.io/salty/cmd/salty-keygen@latest"
exit 1
fi
if [ -z "$SALTY_IDENTITY" ]; then
export SALTY_IDENTITY="$HOME/.config/salty/$USER.key"
fi
get_user () {
user=$(grep user: "$SALTY_IDENTITY" | awk '{print $3}')
if [ -z "$user" ]; then
user="$USER"
fi
echo "$user"
}
stream () {
if [ -z "$SALTY_IDENTITY" ]; then
echo "SALTY_IDENTITY not set"
exit 2
fi
jq -r '.payload' | base64 -d | salty -i "$SALTY_IDENTITY" -d
}
lookup () {
if [ $# -lt 1 ]; then
printf "Usage: %s nick@domain\n" "$(basename "$0")"
exit 1
fi
user="$1"
nick="$(echo "$user" | awk -F@ '{ print $1 }')"
domain="$(echo "$user" | awk -F@ '{ print $2 }')"
curl -qsSL "https://$domain/.well-known/salty/${nick}.json"
}
readmsgs () {
topic="$1"
if [ -z "$topic" ]; then
topic=$(get_user)
fi
export SALTY_IDENTITY="$HOME/.config/salty/$topic.key"
if [ ! -f "$SALTY_IDENTITY" ]; then
echo "identity file missing for user $topic" >&2
exit 1
fi
msgbus sub "$topic" "$0"
}
sendmsg () {
if [ $# -lt 2 ]; then
printf "Usage: %s nick@domain.tld <message>\n" "$(basename "$0")"
exit 0
fi
if [ -z "$SALTY_IDENTITY" ]; then
echo "SALTY_IDENTITY not set"
exit 2
fi
user="$1"
message="$2"
salty_json="$(mktemp /tmp/salty.XXXXXX)"
lookup "$user" > "$salty_json"
endpoint="$(jq -r '.endpoint' < "$salty_json")"
topic="$(jq -r '.topic' < "$salty_json")"
key="$(jq -r '.key' < "$salty_json")"
rm "$salty_json"
message="[$(date +%FT%TZ)] <$(get_user)> $message"
echo "$message" \
| salty -i "$SALTY_IDENTITY" -r "$key" \
| msgbus -u "$endpoint" pub "$topic"
}
make_user () {
mkdir -p "$HOME/.config/salty"
if [ $# -lt 1 ]; then
user=$USER
else
user=$1
fi
identity_file="$HOME/.config/salty/$user.key"
if [ -f "$identity_file" ]; then
printf "user key exists!"
exit 1
fi
# Check for msgbus env.. probably can make it fallback to looking for a config file?
if [ -z "$MSGBUS_URI" ]; then
printf "missing MSGBUS_URI in environment"
exit 1
fi
salty-keygen -o "$identity_file"
echo "# user: $user" >> "$identity_file"
pubkey=$(grep key: "$identity_file" | awk '{print $4}')
cat <<- EOF
Create this file in your webserver well-known folder. https://hostname.tld/.well-known/salty/$user.json
{
"endpoint": "$MSGBUS_URI",
"topic": "$user",
"key": "$pubkey"
}
EOF
}
# check if streaming
if [ ! -t 1 ]; then
stream
exit 0
fi
# Show Help
if [ $# -lt 1 ]; then
printf "Commands: send read lookup"
exit 0
fi
CMD=$1
shift
case $CMD in
send)
sendmsg "$@"
;;
read)
readmsgs "$@"
;;
lookup)
lookup "$@"
;;
make-user)
make_user "$@"
;;
esac
ssh client, because that's me, no-matter where I am. The only exception to this rule is I usually create a separate key for any "work" / " company" I am a part of.
@prologic@twtxt.net I have seen single use keys that are signed by a central PKI .. Keybase has one that uses a chatbot to generate the keys on the fly.
It just comes down to your threat model :)
ssh client, because that's me, no-matter where I am. The only exception to this rule is I usually create a separate key for any "work" / " company" I am a part of.
@prologic@twtxt.net I have seen single use keys that are signed by a central PKI .. Keybase has one that uses a chatbot to generate the keys on the fly.
It just comes down to your threat model :)
ssh client, because that's me, no-matter where I am. The only exception to this rule is I usually create a separate key for any "work" / " company" I am a part of.
@prologic@twtxt.net for shame! lol me too.
ssh client, because that's me, no-matter where I am. The only exception to this rule is I usually create a separate key for any "work" / " company" I am a part of.
@prologic@twtxt.net for shame! lol me too.
@prologic@twtxt.net yarn builds in 1.18!
@prologic@twtxt.net yarn builds in 1.18!
@prologic@twtxt.net Re: Chat system, What if the base specification included a system for per-user arbitrary JSON storage on the server? Kind of like XEP-0049, but expanded upon. Two kinds of objects: public and private. Public objects can be queried by anyone, private objects cannot and must be encrypted with the userās private key. Public keys could be stored there, as well as anything else defined by extensions. Roster, user block list, avatar, etc.
@prologic@twtxt.net hmm so each individual feed on your pod subās my feed? Wouldnāt that flood your server for each post?
@prologic@twtxt.net hmm so each individual feed on your pod subās my feed? Wouldnāt that flood your server for each post?
@prologic@twtxt.net ⦠Australia, or The US when visiting www.om.gay
@prologic@twtxt.net itās already been set-up, depending where you are youāll be connected to Norway, South Africaā¦
@prologic@twtxt.net basically spread the load, got rclone to spoof out the content, et voilĆ
@prologic@twtxt.net on the cheap, I have 4 web hosting accounts used for various things in the past in places
@niplav@niplav.github.io 3½ hours a weekā¦closing your 30-minute Exercise ring right on the dot, with no extra time?
From now on, my twtxt feed is gpg signed. I hope this works for everyone.
Hmm. I havenāt used twtxt in a while. How are you doing?
@prologic@twtxt.net if you need to translate Ukrainian Lingvanex appears to be the best https://lingvanex.com/demo/
@prologic@twtxt.net Iāve got a better translator it seems - https://txt.om.gay/hostmaster-ua.txt
@kevin@txt.om.gay You got an English translation of this page? š¤ 
#makeartnotwar #GLSL #shaders code at https://www.shadertoy.com/view/fs2fRm if you want to use it
@prologic@twtxt.net my cat was admitted to hospital last night before I posted that, she didnāt make it
@kevin@txt.om.gay I kind of concur with this sentiment, but also 2019 and 2021 can also go fuck off equally as much š Whatās up mate? Whatās getting up your nerves? š¤
Look at you all using naked links!
Try https://twtxt.net!
Look at you all using naked links!
Try https://twtxt.net!
@david@netbros.com Do you always link that?
@benk@kwiecien.us I havenāt actually looked at the original twtxt client, which means the following is ill-conceived speculation, but I believe that it only fetched feeds when you ārefreshedā, with a minimum time between feed fetches. Sure, youāll fetch feed unnecessarily now and then, but not nearly as often as polling every 5 minutes ;)
@screem@yarn.yarnpods.com we have had to really shorten our process. I think long interviews were scaring off talent.
@screem@yarn.yarnpods.com we have had to really shorten our process. I think long interviews were scaring off talent.
also at gemini://om.gay/twtxt.txt and gopher://oh.mg:70/0/twtxt.txt
so I may have farked up twtxt on oh.mg when I started moving docs, if you can see this the new version is at https://txt.om.gay/twtxt.txt
I did a thing to twtxtās post-post actions, hereās to hoping it works
@prologic@twtxt.net hahaha yeah, they were testing posts to make sure I didnāt feck up my server move :D
@kevin@twtxt.net You okay bud? š¤š
@screem@yarn.yarnpods.com yah I finally saw all of Daveās twts and figured he had explained Gogās/gitea better.
@screem@yarn.yarnpods.com yah I finally saw all of Daveās twts and figured he had explained Gogās/gitea better.
@prologic@twtxt.net interesting. The twt mustāve been deleted, I guess š
chinese
One year ago to the date I made the lastest update for #phpub2twtxt to github and now 365 days later I have published #pixelblog as its successor - lets see where things are going for trip around the sun
The twtxt aggregation on Antenna has exploded lately :D
@eldersnake@twtxt.net yep. And when its sat to sat connections are online it will have better cross planet latency than under sea cable. FWIW
@eldersnake@twtxt.net yep. And when its sat to sat connections are online it will have better cross planet latency than under sea cable. FWIW
Not sure if Starlink satellites are in orbit around/over Australia yet, but I wouldnāt go with that option anyway due to the latency alone.
I believe it is being trialled in some places in Aus already. I will admit, Iāve been signed up for the beta for a while and itās supposed to be coming to my area sometime in 2022, though that may be delayed due to the chip shortage stuff.
I think the latency is supposed to be 45-60ms on average, which while not as good as fixed line obviously, is leagues better than old fashioned high orbit satellite broadband which is about 600~ms.
@prologic@twtxt.net they are everywhere. 
@prologic@twtxt.net they are everywhere. 
