jrollans.com is a Fediverse instance that uses the ActivityPub protocol. In other words, users at this host can communicate with people that use software like Mastodon, Pleroma, Friendica, etc. all around the world.
This server runs the snac software and there is no automatic sign-up process.
Please pray for my fellow devastated filipino's from the strong earthquake early this morning 🙏😢😞🫂
#earthquake #philippines #support #MakeKindnessNormal #mastodon #monday #fediverse
🛡️ #Cybersecurity news & tips across the #fediverse
“Once she looked closer, the whole shop began to resemble a ballet of rules, gestures, and rehearsed obedience. There was a law in play, but how was it phrased? https:// medium.com/@tjiso/title-15-sec tion-45-c-a1538...”
https://mastodon.social/@Tjiso/116709161067459498
🤖 via RSS feed. Not an endorsement.
Dear Fedis,
I need your help.
Especially from everyone in English-speaking countries
and anyone who speaks English well,
but also anyone who’d enjoy doing this.
Please come up with a phrase
or
a name
for an EV car company using the acronym RIC.
So, my friends,
have fun!
_________
R ....
I ....
C ....
What can you come up with?
And with any luck, it’ll appear in my book
Thank you all 🙏 ❤️
#mastodon #fediverse #help #car #company #book #writing #english #language #myBook #myFirstBook
🛡️ #Cybersecurity news & tips across the #fediverse
“Free software offers trust and privacy; # Ring offers mass # surveillance : https:// u.fsf.org/4aw”
https://hostux.social/@fsf/116708770144028577
🤖 via RSS feed. Not an endorsement.
🛡️ #Cybersecurity news & tips across the #fediverse
“More # surveillance coming to # canada and # Switzerland @ icbrief https:// infosec.exchange/@icbrief/1167 08047116047223”
https://infosec.exchange/@Prometheus/116708727038228240
🤖 via RSS feed. Not an endorsement.
Loops.video is a platform in the Fediverse based on ActivityPub that allows you to share short videos – similar to TikTok, but decentralised and privacy-friendly. As Loops.video is part of the Fediverse, you can embed videos directly into your Mastodon timeline by following the account or video on Loops.video, or by sharing the link to the video on Mastodon.
Check out this video by @NewerLeaf
#loopsvideo #fediverse leave #bigtech
🛡️ #Cybersecurity news & tips across the #fediverse
“Free software offers trust and privacy; # Ring offers mass # surveillance : https:// u.fsf.org/4aw”
https://hostux.social/@fsf/116707059678300004
🤖 via RSS feed. Not an endorsement.
🔆 #FediTips for https://PrivacySafe.Social & the #fediverse
“Do you want your Mastodon posts to self-delete after a certain time limit? Mastodon has an option for this, you can find out more about it in this guide: ➡️ https:// fedi.tips/deleting-posts-autom atically-in-mastod...”
https://social.growyourown.services/@FediTips/116710172108879567
🤖 via RSS feed. Your Mileage May Vary.
Terra Flow IV: https://1-lisas-baker.pixels.com/featured/terra-flow-iv-lisa-s-baker.html
#abstract #abstractart #art #arte #artwork #wallart #homedecor #artforhome #artforsale #buyintoart #artprints #canvasprints #mastoart #fediart #fediverse #geometric #navy #rust #tan #creativeToots #modernart #contemporaryart #geometricdesign
🛡️ #Cybersecurity news & tips across the #fediverse
“https://www. europesays.com/people/103602/ US Senate blocks debate on FISA surveillance law days before program ‘goes dark’ # BillPulte # DonaldTrump # FederalHousingFinanceAgency # ForeignIntelligenceSurv...”
https://pubeurope.com/@people/116706017678033945
🤖 via RSS feed. Not an endorsement.
🛡️ #Cybersecurity news & tips across the #fediverse
“I guess this will end up as the new business model: tech companies will start charging a premium for software that *doesn't* have "AI" tools. But meanwhile, the ecologically catastrophic data centers and dystopian survei...”
https://infosec.exchange/@LisaKalayji/116704588004663241
🤖 via RSS feed. Not an endorsement.
C'est simple, c'est fluide, et ça change la vie pour suivre le Fediverse à son rythme !
Viens tester ça ici :
👉 https://phanpy.blablalinux.be
#Mastodon #Phanpy #Fediverse #OpenSource
We've successfully upgraded our Mastodon server to v4.6.0-beta.1+mementomods-2026-06-07, along with Mastodon Bird UI 4.0.0-beta.1.rc (nightly). Yes, beta, Mastodon has officially crossed from alpha into beta on the road to 4.6.
This update includes today's latest daily build with 119 new commits from upstream since mementomods-2026-05-26.
What's new in Mastodon core - these are the changes Mastodon Team have introduced us in the latest nightly version we are running:
✨️ New features
- Mastodon hit v4.6.0-beta.1, the version we've been chasing through the alpha cycle has crossed into beta, signalling the upstream 4.6 release is getting close
- Collections is in beta! You can now use them on Mementomori.social
- Export Custom Filters, you can finally back up or migrate your filter rules
- A new direct link from Privacy and reach settings to your profile editor saves a click
- Rule acceptance during signup is now a form (better keyboard and assistive tech support)
- Vertical text editing in the alt text editor for languages that write top-to-bottom
- Three new languages in the languages helper: Lazuri, Mingrelian, and Ottoman Turkish
- "Hidden account" message is less misleading when you visit a profile you can't see
- Several internal refactors (BundleColumnError ported to TypeScript, copy-to-clipboard extracted into a hook) that should make future patches smoother
🔧 Fixes & improvements
- Pile of Collections fixes: editor no longer lets you add the same account twice, ValidationError when loading many collections at once is gone, missing null check when importing collections from notifications, and an "about page" error when selecting a non-default Rules language
- Custom filter export had a wrongly-named param
- Profile API documentation link in CHANGELOG corrected
- "Change thumbnail" button no longer shows when it shouldn't
- Server rules and the custom closed-registrations message no longer break
- Custom emoji formatting in usernames inside the `EmptyState` component fixed
- Trending links: author name spacing tightened
- Advanced UI navigation overflow issue fixed
- Signature verification handles invalid keys gracefully
- Container builds no longer fail when the repo name has uppercase characters
- Blocked domains no longer linger in the Elasticsearch InstancesIndex after being unblocked
- Admin Mailer trends mail rendering fixed
- Stylesheet imports are now recursive
♿ Accessibility
- New `PageUp` and `PageDown` hotkeys for list navigation
- Post/feed hotkey navigation made more robust
- Differentiated accessible labels for About links in the footer
📦 Dependency updates
- Vite 8.0.16, Yarn 4.16.0, Sass 1.100.0, Sidekiq 8.1.6, ioredis 5.11.0, ws 8.21.0, axios 1.17.0, react-redux 9.3.0, @reduxjs/toolkit 2.12.0, pg 8.21.0, plus a security update for `@vitest/browser` and many smaller bumps
🐦⬛ Mastodon Bird UI 4.0.0-beta.1.rc (nightly)
This release adds Bird UI styling for the now-live Collections feature:
- Collections nav icon renders again (it was hidden by Bird UI's broad column-link icon-path reset)
- "Follows you" badge in account list items (collections lists, follower lists) uses the same dark pill style as in profiles
- Verified link badge in account list items mirrors the profile field verified style: Bird UI's tick icon and accent link color in place of the green gradient SVG
- All badges in account list items drop the core 4px padding so they sit flush in the row
Plus navigation polish:
- Notifications now sits in the second slot of the side navigation menu, right after Home
- Trends heading no longer renders a stray bottom border
Source code for our Mastodon: https://github.com/mementomori-social/mastodon
Source code for our Mastodon Bird UI: https://github.com/rollecode/mastodon-bird-ui/tree/nightly
As always, if you notice anything unusual or buggy, please reach out to me or any of the admins. Enjoy your time here, and feel free to message me with any questions or thoughts. 
If anything feels off, please let us know!
#MementoMoriSocial #Mastodon #MastoAdmin #BirdUI #MastodonBirdUI #Fediverse
🛡️ #Cybersecurity news & tips across the #fediverse
“# ICE ’s Plan to Let # Cops Around the Country Scan Faces to Verify # Immigration Status https://www. 404media.co/ices-plan-to-let-c ops-around-the-country-scan-faces-to-verify-immigration-status/ # polic...”
https://mastodon.thenewoil.org/@thenewoil/116704346327578058
🤖 via RSS feed. Not an endorsement.
Is there maybe someone in the #Fediverse who needs a reasonable beefy (gameing/gamedev) laptop?
- MSI Katana GF66 12UGSZOK
- 64GB RAM (4800MTs)
- RTX 3070 Ti 8GB
- 1TB SSD
- ~1-2 years old
I'm looking to get under 1 months server costs (~1400 EUR) that offers a little breathing room but I'm not sure that reasonable since other offers make me cry
Offers/questions and/or reality check are welcome

*has to be shipped from the NL
🛡️ #Cybersecurity news & tips across the #fediverse
“Pentagon flags a U.S. "ally" at its highest spy-threat tier: critical. The friend who taps your phone isn't a friend.
https://twp.ai/9OXYeF
#Israel #Pentagon #News #Surveillance #NatSec #Politics #IndieMed...”
https://bsky.brid.gy/r/https://bsky.app/profile/did:plc:m4jmanw3astpwhqp54g6yslu/post/3mnn2eb6i2q2p
🤖 via RSS feed. Not an endorsement.
🛡️ #Cybersecurity news & tips across the #fediverse
“[DEATH]
UK Government Plots Digital ID Lockdown On EVERY... This national infrastructure mirrors global blueprints pushed by the World Health Organization and f Source: https:// modernity.news/2026/06/05/uk-g over...”
https://mastodon.social/@thomaster/116703647640758640
🤖 via RSS feed. Not an endorsement.
The Fediverse is so cool because of the diversity of the different software. In the last weeks, I did build a (completely?) new one. The Menuverse consists of two software: 1) create daily changing dishes like in a canteen, and 2) can aggregate different of this actors in a marketplace. The working title for this is Menuverse.
Every canteen is Fediverse actor and not only can these marketplaces subscribe to this, but also other softwares like Mastodon, Misskey and so on.
I created a demo setup with live data from different university canteens here:
https://mahlzeitheute.de/ This is the marketplace software)
(The data and frontend is currently only in German).
You can also visit or follow the nearest canteen to me here: @fl-ca1.
You can find the full software here: https://codeberg.org/54GradSoftware/menuverse
But please note that this still quite experimental and I would not advise running in production (unsupervised).
I would love to get (technical) feedback, and I'm looking for real canteens who would like to test the software.
More information in the next posts (this is a thread). [1/4]
#pppdev project will be about creating collections and pins inside of them which can be either a link,an image or a simple note.Im thinking about how to call these two entities. Right now its Collection and Pin but Pin suggests that maybe it should be Board instead of collection? On the other hand, calling them Pins dont allow us to use "Pin it to the top" terminology - which set of names is better in your opinion? Or maybe something entirely else.I guess are.na uses Collection/Block #fediverse
RE: https://skatspelunke.eu/@gruener_skatbruder/116697587868655481
Ein starkes Argument für Mastodon sind die interessanten Posts.
Wie dieser hier von @gruener_skatbruder gegen die Rechtsmimesis von Bundeskanzler Merz (CDU). 👇
Da musste ich auch als Solarpunk & Christdemokrat erst spontan nicken, dann sehnsüchtig seufzen… 🤔🇩🇪🇪🇺🌱
#Mastodon #Fediverse #Posts #Merz #CDU #Solarpunk #Rechtsmimesis
Hatte gerade die Fantasie, dass Friedrich Merz mal die wahren Verursacher für Probleme im Land so anpampen würde, wie er uns Normalos anpampt:
"Die Autoindustrie ist ein Stück weit zu bequem geworden, um bezahlbare Elektroautos zu entwickeln."
"Dass Steuerhinterziehung mit einem Volumen von 100 Milliarden ein größeres Problem darstellt als Sozialbetrug mit ein paar hundert Millionen, ist simpelste Mathematik, meine Damen und Herren."
🧵
@dansup Yes we want to be able to hide slop, because it insults our brains and souls.
Why would anyone want to look at pictures or videos generated by copying e.g. actual photographers or artists, instead of watching or admiring the original?
Yes these kind of accounts bluntly copying recently posted pictures already exist e.g. on Pixelfed. They just download our images, throw them into a slop machine and post the output as "originals".
Those slops add zero none nada absolutely null value to our society or the arts and their sole purpose is attention seeking. And this at our all costs by burning vital resources.
I wouldn't mind banning them all. Let them do their scamming on TikTok or Insta, but not in the #fediverse.
Something extraordinary just happened: my 5-year-old recognizes the #Fediverse symbol and just asked me about the bag with its logo on it.
Hearing her say “fediverso” (we speak Italian with each other) was… an indescribable feeling. Pure joy and pride.
Special thanks to @samvie who gave me the @berlinfediday bag with the colorful Fediverse symbol as a present a while back 💖
🛡️ #Cybersecurity news & tips across the #fediverse
“RE: https:// mastodon.online/@mullvadnet/11 6160875322057756 I love this guys and their VPN service!
# vpn # masssurveillance # surveillance # UK # London”
https://mastodon.social/@unruhe/116703470074950643
🤖 via RSS feed. Not an endorsement.
RE: https://ruhr.social/@nona/116707563934038752
Weil ja die meisten hier auf Mastodon politisch nach links tendieren, möchte ich Euch diesen klugen Druko 👇 von @nona zu einem Solarpunk - Dialog empfehlen! ✅
Mir geht es dabei erstmal noch gar nicht um Moral, sondern um Psychologie:
Rechte neigen öfter zur Reaktanz, Linke öfter zur Arroganz.
Und ich halte das als Moderater für ein riesiges Demokratie - Problem, weil sich dadurch akademisierte Milieus & Parteien immer wieder in Blasen abschließen und an Rechtspopulisten verlieren! 🤔🔥
Wer da mal philosophisch vertieft einsteigen möchte, findet das schon beim ex-kommunistischen Erkenntnistheoretiker Karl Popper als „Historizismus“. 📚
Und wer nicht möchte, dass auch das Fediverse zur Dauerempörungsblase wird, kommt damit auch dialogisch weiter.
#Solarpunk #DruPo #Rechte #Reaktanz #Linke #Arroganz #Popper #Historizismus #Medien #Mastodon #Fediverse #Blogs #Demokratie #Dialog
Introducing Betula v1.8.0
#Betula is a self-hosted federated bookmark manager. Tags, notes, search, #Fediverse, archives.
This release introduces import and export of bookmarks in Netscape Bookmark File, Pinboard JSON and Raindrop CSV.
Release notes: https://joinbetula.org/v1.8.0.html
This release was sponsored by @nlnet
May you be happy!
Diesmal können wir ein #Kunst|projekt zum #DiDay beitragen.
Gemeinsam mit
@bjoernsta @mellifluousbox @DresdnerForschungswerk
und einem Mandanten konnten wir organisieren, dass einige der schmackhaften #Wechselrezepte nach den Motiven von
im Laufe des Sommers als #Graffiti auf den Fassaden von zwei Mehrfamilienhäusern in #Freiberg #Sachsen erscheinen werden.
Auch Dank der vier Künstelr aus #Dresden wird also ein ganzes Haus Teil einer #Digitalpolitik, die auf #Digitalesouveränität und das freie #Internet ausgerichtet ist.
Wenn alles läuft wie geplant, kann man dann direkt von den Wänden über entsprechende QR-Codes auf die Website https://di.day/de zugreifen!
Raus aus unserer digitalen Bubble hier im #Fediverse
und rein in die echte Welt!
#Danke auch an
#Mastodon #Signal #Linux #Nextcloud #Ecosia #LibreOffice #EOS #GrapheneOS #OpenStreetMap uvm.
dass Ihr uns Alternativen bietet!
Moin #Fediverse und euch einen gesunden Start in den nun schon 6. #diday
Ich beackere dafuer in meiner neuen @info Podcast-Ausgabe Alternativen zu #Office365 und habe hier 👉 https://share.transistor.fm/s/8810f2b2 drei davon vorgestellt:
und ab kommenden Dienstag ganz neu
Ich glaube, dass das 3 spannende Loesungen sind, die euch unabhaengiger von #BigTech machen werden.
Freue mich ueber jeden Boost. Danke fuer euren Support 🙏
Bom dia, bom Domingo a todos, aproveitem muito bem este dia de descanso, que tenham um dia espetacular e em boa companhia.
Good morning, and happy Sunday to you all. Make the most of this day off, and I hope you have a wonderful day in good company.
🥳
#NeuHier? Das Fediverse hat mein Leben tatsächlich verändert. Hier habe ich Menschen kennengelernt, die mit mir schwimmen gehen. Für viele klingt das vielleicht sehr klein. Für mich ist es riesig. Ich bin hochgradig sehbehindert und viele Dinge kann ich nicht einfach allein. Durch das Fediverse habe ich tolle Menschen gefunden, neue Freundschaften geschlossen und ein Stück Freiheit zurückgewonnen. Dafür bin ich jeden Tag dankbar.
@SchreibeEinfach Wow, super, das ging ja schnell!
Ich erinnere mich noch an den Post in dem du eine Schwimmbegleitung gesucht hattest.
Das #Fediverse hat schon was magisches…🪄
Pixelfed has a known bug about the federation, and deleting Pixelfed posts and/or accounts don't delete them on remote servers.
🛡️ #Cybersecurity news & tips across the #fediverse
“🇨🇭 Switzerland’s proposed surveillance law could force VPNs and messaging services to identify users and retain more data. Privacy advocates warn it may weaken anonymity and push some privacy-focused companies to leav...”
https://mastodon.social/@xabd/116702933176539119
🤖 via RSS feed. Not an endorsement.
🔆 #FediTips for https://PrivacySafe.Social & the #fediverse
“p.s. The sites I run are: https:// fedi.tips - Easy-to-understand guides to help people use Mastodon & the wider Fediverse https:// fedi.directory - Recommended accounts to follow https:// fedi.garden...”
https://social.growyourown.services/@FediTips/116705695243181323
🤖 via RSS feed. Your Mileage May Vary.
🛡️ #Cybersecurity news & tips across the #fediverse
“Your phone is about to stop being yours. Starting September 2026, a silent update, nonconsensually pushed by Google, will block every Android app whose developer hasn't registered with Google, signed their contract, pai...”
https://mastodon.online/@jonsnow/116702703327675239
🤖 via RSS feed. Not an endorsement.
West Highland White Terrier art - Westie Ducky Blues, available here: https://1-lisas-baker.pixels.com/featured/westie-ducky-blues-lisa-s-baker.html
#WestHighlandTerrier #terrier #westie #dog #dogs #dogsofmastodon #mastodog #art #arte #artwork #wallart #homedecor #artforhome #artforsale #buyintoart #artprints #canvasprints #mastoart #fediart #fediverse #creativetoots #ayearforart #cuteanimals
A sneak peak of another #activitypub project I'm working on - a different way of social bookmarking. Coming soon!
🚀 BizzFed.de ist im Early Access!
Ich baue ein föderiertes berufliches Netzwerk auf Basis von ActivityPub – berufliches Networking im Fediverse, ohne zentrale Plattform und ohne Datenkraken.
Aktuell geht es um eins: das Konzept gemeinsam evaluieren. Ich suche neugierige Tester:innen, die mitdenken, ausprobieren und ehrliches Feedback geben.
Lust, Teil der frühen Phase zu sein? Registriert euch!
🛡️ #Cybersecurity news & tips across the #fediverse
“🚨 BREAKING NEWS: Using privacy-focused software is now a criminal offense! 🚓 Apparently, the mere act of choosing GrapheneOS is so scandalous that it warrants immediate notification to Big Brother. 🤦♂️ Who knew optin...”
https://mastodon.social/@ngate/116702396638700197
🤖 via RSS feed. Not an endorsement.
🔆 #FediTips for https://PrivacySafe.Social & the #fediverse
“I'm an unpaid volunteer running 5 websites and 5 accounts helping people use Mastodon and the wider Fediverse. I pay their bills every month. If you want to help these sites & accounts keep going, you can buy me a coffe...”
https://social.growyourown.services/@FediTips/116704383372070495
🤖 via RSS feed. Your Mileage May Vary.
Weekend project that turned into infra I actually run daily: MastoSum.
The stack: RHEL host, 100% rootless Podman. Web on FastAPI, Celery worker/beat/flower, PostgreSQL 16, Valkey. All on userspace networking (pasta), images built & shipped by a self-hosted Forgejo runner. No root daemon, no privileged anything.
What it does: tracks technical hashtags all day and produces one daily briefing, every point linked to the original post + author. It reads only public hashtag timelines, credits every source, and trains on nothing.
And yes, an LLM writes the prose: a local Ministral model from French lab Mistral AI, running on my own hardware. No cloud, nothing leaving the box. Saying that plainly, not burying it. The whole design goal was to point readers *back* at the authors, not replace reading them.
Example output:
https://mastosum.linuxserver.pro/s/OGuLC5whmCS1ET9jAe9leg
🛡️ #Cybersecurity news & tips across the #fediverse
“After I posted that, leaning against a tree on a random spot mid-block on Valencia, I counted no fewer than four obvious cameras recording the location. Because I was looking at my phone, I do not know how many driverles...”
https://sfba.social/@Mikal/116701053563442932
🤖 via RSS feed. Not an endorsement.
I think I perfected https://nevermind.jointhefediverse.net as a good "get started with the fediverse" site with a few added links.
people want familiarity. inspiration doesn't mean dumbing anything down.
it means taking what already works, ripping out the toxic stuff:
ads, dark patterns, the whole extraction machine, and rebuilding it around privacy and safety.
a safer twitter,
a safer youtube,
a safer instagram,
a safer tiktok.
safer because you self-host and control everything, then build communities with people you trust.
that's it. that's the goal.
🛡️ #Cybersecurity news & tips across the #fediverse
“Just watched The Ear, a Czech film from 1969 banned by the Communist Party until it was released in 1990. It's part of @ eff "Bleak Week" film series.
The film's depiction of intrusive state surveillance would've ...”
https://sfba.social/@Mikal/116701021260781273
🤖 via RSS feed. Not an endorsement.
Hey! 📣
Morgen, Sonntag den 7. Juni 2026 veranstalten wir wieder den DI-Day!
Ab 14 Uhr könnt ihr zu uns in den SPACE kommen! 😊
Wir helfen euch beim Umstieg auf Linux, geben Einblicke ins Fediverse und stellen alternative Chat-Dienste wie Matrix und XMPP vor. Das googlefreie Probier-Smartphone ist auch wieder am Start!
Kommt gern vorbei, wir nehmen uns Zeit für euch! 💞
#DIDay
#DigitalerUnabhängigkeitsTag
#digitalindependenceday
#Ilmenau
#Thüringen
#Linux
#Fediverse
#Matrix
#XMPP
#chaoszone
🛡️ #Cybersecurity news & tips across the #fediverse
“Spread mechanism: Quick Share hijacked via companion device framework. Bluetooth, Wi-Fi P2P and UWB all simultaneously active. MANAGE_PROFILE_AND_DEVICE_OWNERS sets itself as device owner silently. Pre-installed permissi...”
https://cyberplace.social/@LloydIgotworms/116700462461624246
🤖 via RSS feed. Not an endorsement.
If you've been wanting to move your activity history from Strava to FitPub but dreaded dealing with the export files, I made a small browser tool that does the heavy lifting.
Drop in your Strava export files, it decompresses the .fit.gz files, splits everything into correctly-sized ZIP batches, and hands them back for upload. No install, no server, runs entirely in your browser.
👉 🏃🏻♀️ https://vast-ch.github.io/strava-archive-to-fitpub-batch-import/
Oh, meine Einreichung bei der @FrOSCon wurde angenommen \o/
Na dann fahre ich dieses Jahr wirklich endlich zur FrOSCon :D
Thema wird btw. "Der Reichweitenmythos debunked", es wird um Social Media, Vorurteile und die Veränderungen im Fediverse gehen. To be continued.
🛡️ #Cybersecurity news & tips across the #fediverse
“Content warning: USPol, FCC, SCOTUS, and selling users' location ArsTechnica: AT&T and Verizon lose Supreme Court case over fines for selling location data - https:// arstechnica.com/tech-policy/20 26/06/att-and-v...”
https://mamot.fr/@Amgine/116699549202000936
🤖 via RSS feed. Not an endorsement.
Beautiful. I can watch #loops videos on my website directly, just like any other #fediverse content - be it #peertube #pixelfed #mastodon etc! Now to follow some Loops accounts!
The Story Of A Cold Star
from In Slow Motion
https://solarphasing.bandcamp.com/track/the-story-of-a-cold-star
#music #fedimusic #fediverse #downtempo #ambient #space #spaceopera #sciencefiction #newage #drone #electronicmusic #experimentalmusic #berlinschool #synth #modular #modularsynth #experimental #spacemusic #bandcamp
Was ne Woche in #Taipei
Zum Abschluss noch eine Yoga-Session und danach ins Lieblings Ramenrestaurant. Da war ich fast 2 Jahre nicht mehr und die haben sich eckig gefreut.
Wenn du dann noch hoerst "wie immer?", dann weisste, dass du Zuhause bist.
Nach diesem Emo-Trigger will ich echt wieder nach Taipei ziehen.
Moin #Fediverse und euch einen gesunden Start in diesen Samstag. Alles wird gut 😊
Glaubt ihr die Welt wäre ein Ort,
mit mehr Frieden,
wenn viel mehr Frauen regieren würden?
#politik #welt #umfrage #mastodon #fediverse #boost #gedanken #frauen #mann #regierung #parlament #bundestag #patriarchat
| Ja: | 30 |
| Nein: | 8 |
| Vielleicht: | 28 |
| Frauen sind schlimmer als Männer: | 2 |
Closed
🛡️ #Cybersecurity news & tips across the #fediverse
“ICE plans to give more than 1,200 local police agencies a facial recognition app that scans faces against 250+ million DHS and State Department records to verify immigration status, according to internal documents obtain...”
https://mastodon.social/@oaklandprivacy/116699059841414109
🤖 via RSS feed. Not an endorsement.
🛡️ #Cybersecurity news & tips across the #fediverse
“Move Fast, Surveil Things # Meta has deployed facial recognition code to millions of their always-on # surveillance glasses, according to new reporting by Wired. EFF’s Threat Lab was able to confirm that the faci...”
https://mas.to/@PrivacyDigest/116698932007515579
🤖 via RSS feed. Not an endorsement.
🔆 #FediTips for https://PrivacySafe.Social & the #fediverse
“p.s. Someone asked what kind of flashing is dangerous, the following might be useful. According to https://www. epilepsy.org.uk/info/seizure-t riggers/photosensitive-epilepsy the frequencies are as follows: 10 to...”
https://social.growyourown.services/@FediTips/116700142417241680
🤖 via RSS feed. Your Mileage May Vary.
Tiny reminder to add alt-text to the images and media you post here my FediFriends
This is not only the right thing to do for accessibility, but it will also increase your posts' engagement by having more people happy to repost them!
Thank you!
🛡️ #Cybersecurity news & tips across the #fediverse
“# Sony # PlayStation recently introduced a company called # Yoti for # AgeVerification . After multiple unsuccessful attempts to verify, a user contacted Yoti support. They said he was automatically flagged and...”
https://mastodon.online/@jonsnow/116698736797779926
🤖 via RSS feed. Not an endorsement.
🛡️ #Cybersecurity news & tips across the #fediverse
“https://www. europesays.com/people/101949/ Democrats must hold the line against Trump’s AI surveillance plan # AICompany # Americans # CivilLiberties # Congress # DepartmentOfDefense # MassSurveillan...”
https://pubeurope.com/@people/116698554185452059
🤖 via RSS feed. Not an endorsement.
Happy Friday, fediverse!
Looking at https://fedidb.com/stats, seems like things have been picking up around here again, nice!
Also, some interesting talks at today's Next Socials' PublicSpaces conference around communities, moderation, libraries and digital public spaces, and the sustainability of the open social web.
"Incentives are completely misaligned between users and platform providers.
[Mastodon] puts communities back in control."
https://conference.publicspaces.net/en/live/7
https://conference.publicspaces.net/en/session/growth-and-sustainability-of-the-open-social-web
#fediverse #SocialMedia #NextSocials #PublicSpaces #OpenSocialWeb
🛡️ #Cybersecurity news & tips across the #fediverse
“→ Meta Silently Added Face-Recognition Code for Its # Smart Glasses to Millions of Phones
https://www. wired.com/story/meta-smart-gla sses-face-recognition-nametag-connections/ “"The feature is not yet exposed...”
https://mamot.fr/@homlett/116698341417659233
🤖 via RSS feed. Not an endorsement.
Week in Fediverse 2026-06-05
Servers
- Mastodon v4.5.11
- Hollo v0.9.3
- Wafrn v2026.06.01
- Ktistec v3.4.1
- tootik v0.23.1
- NeoDB v0.15.2
- wanderer v0.19.2
- Lemmy Development Update May 2026
- FitPub: A self-hosted fitness tracking platform for the Fediverse
- Harmony: Discord-style servers and chat with ActivityPub
- Menuverse: A federated menu system for canteens and institutions
- LAUTI: A calendar software where one can publish events, groups and places
Clients
- Pachli v3.7.0
- Elk v1.0.0
- Fedilab v3.41.0
- tooi v0.26.0
- Pixelix v4.4.0
- Aria v1.5.3
- Tesseract v1.5.0
- Interstellar v0.11.4
- Holos v1.8.0
- P2Play v0.10.1
For developers
Protocol
Articles
- Prikbord: Federated calendar for events in Rotterdam
- small details in my mastodon client that i wanted more people to notice
- From simple afterthought to over-engineered software
- FR#165 – Fediverse News May 2026
-----
#WeekInFediverse #Fediverse #ActivityPub
Previous edition: https://mitra.social/objects/019e7560-82be-7521-bbb4-2ca61a0d5ad8
RE: https://mstdn.social/@Sbarry8520/116685975188199792
Greetings #fediverse
So far we have received 10€ out of 450€ on our #donations which we intend to use and backfill the house floor and compact it with the compactor machine!
I’m still a long way and I really needs help if anyone is willing to help us as nothing is really small.
Whatever we will kindly accept thanks 🙏
PayPal https://www.paypal.com/paypalme/brandugla
Kofi https://ko-fi.com/uggla/goal?g=23
Please 🥹 let boost.
Hey👋 we truly make a big progress on the house rebuilding because if you check from the starting to were we are now is really a big progress.
It wasn’t easy actually but you all made it possible #fediverse all that work and progress is done by the help we receive through kofi and PayPal.
I can’t thank you all enough for the wonderful support on our house.
We are almost close to move in our house what’s matter now is backfilling roofing and doors the remaining will fine we already move in.
1/2
RE: https://mstdn.social/@Sbarry8520/116691618033133470
Good morning☀️ #fediverse
So far we have received 40€ out of 450€ on our #donation to backfill our house floor.
Let still boost the post and help if you actually can. We are trying to reached 250€ so that I can be able to pay the workers responsible for the backfilling to starts next week.
I truly need some assistance and if you’re willing to help anything we will kindly accept.
Here’s our details.
PayPal: https://www.paypal.me/brandugla
Kofi: https://ko-fi.com/uggla/goal?g=23
RE: https://mstdn.social/@Sbarry8520/116685975188199792
Greetings #fediverse
So far we have received 10€ out of 450€ on our #donations which we intend to use and backfill the house floor and compact it with the compactor machine!
I’m still a long way and I really needs help if anyone is willing to help us as nothing is really small.
Whatever we will kindly accept thanks 🙏
PayPal https://www.paypal.com/paypalme/brandugla
Kofi https://ko-fi.com/uggla/goal?g=23
Please 🥹 let boost.
🛡️ #Cybersecurity news & tips across the #fediverse
“Who watches the watchers? Richard J. Aldrich asks the hard questions in GCHQ. Security vs. privacy. Power vs. accountability. A 4-star read.
# GCHQ # Surveillance # Snowden # books # bookreviews
https:...”
https://mastodon.social/@ekimellnea/116696615664440617
🤖 via RSS feed. Not an endorsement.
🔆 #FediTips for https://PrivacySafe.Social & the #fediverse
“⚠️ DO NOT USE FLASHING IMAGES OR FLASHING EMOJI. Flashing lights can cause seizures and physical danger to people with photosensitive epilepsy. There's more info about this in relation to Mastodon and the wider Fediverse...”
https://social.growyourown.services/@FediTips/116698691571650533
🤖 via RSS feed. Your Mileage May Vary.
🛡️ #Cybersecurity news & tips across the #fediverse
“2/ Speaning of # enshittification - I recently generated an in-depth, long-format essay on the subject. Posted it to my recently resurrected # blog . Predatory # corporate practices revealed. Discover how # surv...”
https://connectop.us/@CharlieMcHenry/116693247423926311
🤖 via RSS feed. Not an endorsement.
#Fediverse #Bluesky #Bounce
Estava pensando fazer um teste usando o Bounce e migrar minha conta do Vivaldi para um servidor do Bluesky.
Following the @EUCommission Tech Sovereignty and Open Source Strategy (and Mastodon’s direct mention within it!) announced this week…
Our team is proud to have signed and contributed to the drafting of the European Social Stack Open Declaration alongside our peers in the #SocialWeb and #Fediverse: @anewsocial, @eurosky.social, @newsmast, Save Social, and @swf.
We are a movement, and stronger together.
Read the declaration, add your signature, and share: https://european.social/
This is the panel with #fediverse queen @_elena btw 👸
Also excellent contributions from @bjoernsta , @michael and Sherif Elsayed-Ali. #pubconf2026
🛡️ #Cybersecurity news & tips across the #fediverse
“"Florida's Fish and Wildlife Conservation Commission police are performing dozens of license plate lookups on Flock cameras for Immigrations and Customs Enforcement."
———————————————
Title: Wildlife Conservation Police...”
https://mastodon.social/@harmscommitted/116692737389902692
🤖 via RSS feed. Not an endorsement.
FediStation is Live.
Your WordPress blog just got a direct line to the Fediverse.
Share to #Mastodon, #Bluesky, #Flipboard, #Threads and #Lemmy
One click, no account needed for your readers.
Free & Yours. 👉https://fediboard.com
#WordPress #Fediverse #OpenWeb #ActivityPub #FediStation #FediBoard
🛡️ #Cybersecurity news & tips across the #fediverse
“In the second video of our series, ‘Protecting Press Freedom in the Digital Age,’ we break down how these blackouts happen and how journalists can prepare. Keep an eye on your feed. The second video is coming soon! 🥁 ...”
https://mastodon.social/@sflcin/116692594407116303
🤖 via RSS feed. Not an endorsement.
Up-and-coming Fedi node ~
Take a look at: catodon.rocks.
Fluid UI, cool Misskey/Calckey features.
Thanks to Panos it's also compatible with Lemmy forums & microblogging ~ one can explore Fedi widely.
:catodon:
Aggressive caching for a Mastodon reverse proxy: what to cache, what to never cache, and why content negotiation will eventually betray you
The same URL serves HTML to browsers, JSON to apps, and ActivityPub to remote instances. Here's how I cache Mastodon with nginx without betraying any of them.
https://it-notes.dragas.net/2026/06/05/aggressive_caching_for_a_mastodon_reverse_proxy/
Puh... Immer wieder ein spannender Moment, wenn #Debian beim morgendlichen Einschalten die Firmware auf meinen #Thinkpad T14 updatet. Ist immer so wie eine OP am offenen Herzen. Zum Glück ist auch dieses Mal wieder alles gutgegangen.
In diesem Sinne wünsche ich allen #Fedinauten einen schönen Freitag. 😊☕
#GutenMorgen #Linux #Fediverse
Location: Matrix
I have written before about putting a cache in front of snac (https://it-notes.dragas.net/2025/01/29/improving-snac-performance-with-nginx-proxy-cache/), and more recently about the HAProxy layer in front of FediMeteo (https://it-notes.dragas.net/2026/05/18/fedimeteo-haproxy-and-the-art-of-not-wasting-snac-threads/). The general idea is always the same: the reverse proxy should absorb the repetitive, public work that has no business reaching the application server.
This post is the same idea applied to a much louder neighbour: a Mastodon instance. The instance is mastodon.bsd.cafe (https://mastodon.bsd.cafe/), the proxy is nginx on FreeBSD, and the configuration below is what I am currently running in production.
Mastodon is heavier than snac in every direction. It has Puma and Sidekiq behind it, more endpoints, more streaming, more federation patterns, and one specific characteristic that complicates everything: it serves multiple representations on the same URLs. The same path returns HTML to a browser, ActivityPub JSON to a remote instance, and sometimes plain JSON to an API client. If the proxy treats the URL as one thing, sooner or later it will return the wrong thing to the wrong client.
Most of the work below comes from that single observation.
If I had to summarize this whole post in a single sentence, it would be this:
Mastodon is not a website. It is a website, an API, and an ActivityPub server, all sharing the same URLs.
Everything else in this configuration - cache keys, variants, bypass rules, the diagnostic headers - is decoration around that one fact.
A popular toot from a friend gets boosted. Twenty federated instances ask for the same ActivityPub object within the same second. Browsers fetch the HTML version of the same URL. If the proxy sees only "a URL", it will eventually betray you: a remote instance will receive HTML, a browser will receive ActivityPub JSON, and you will spend an afternoon wondering why your timeline looks broken on three different servers. I have spent that afternoon. I do not recommend it.
The first assumption is that AUTHORIZED_FETCH (secure mode) is disabled. With secure mode off, all ActivityPub GET responses cached at the proxy layer are public and identical regardless of the requesting actor. With secure mode on, Mastodon can legitimately return different bodies depending on which remote actor is asking, and caching them blindly at the proxy becomes at best wasteful, at worst a cache-poisoning surface.
This is not a hypothetical. CVE-2026-25540 (https://nvd.nist.gov/vuln/detail/CVE-2026-25540), fixed in Mastodon 4.3.19, 4.4.13, and 4.5.6, is exactly this kind of mistake, but inside Mastodon's own Rails.cache: the pinned posts and featured hashtags endpoints had actor-dependent ActivityPub responses but were keyed without the actor. The CVE does not directly apply to nginx caches, but the underlying lesson does. Do not cache what depends on the caller unless the caller is part of the cache key. Keep this rule in mind every time you are tempted to cache a federation endpoint "just in case".
The second assumption is that no signed-URL storage backend sits behind /system/ or /media_proxy/. If those paths ever redirect to short-lived presigned S3 or SeaweedFS URLs, my TTLs below are too long: nginx will happily cache a redirect to a URL that has already expired.
The third assumption is that federation traffic uses HTTP Signatures, not the HTTP Authorization header. Mastodon signs federated GETs with the Signature header. The Authorization-based skip-cache rule further down catches API tokens, not signed federation traffic. If you enable AUTHORIZED_FETCH, you must add an explicit skip rule for $http_signature.
I am being deliberate about these assumptions because the configuration that follows is internally consistent only as long as they hold.
The proxy in front of mastodon.bsd.cafe has three jobs:
TLS termination, microcaching of expensive endpoints (especially federation-heavy collections and default public routes), and long-lived caching of immutable assets and user media.
The point is not to replace Mastodon's internal Rails cache. The point is to absorb spiky federation traffic and repetitive asset fetches that would otherwise hit Puma and Rails for every single request.
The strategy is deliberately layered: very long TTL on fingerprinted assets, medium TTL on user-uploaded media, very short microcache on dynamic pages and federation endpoints that get hammered, and explicit bypass rules for anything private, authenticated, actor-dependent, or otherwise unsafe.
Every cacheable layer is keyed correctly for content negotiation. That is the part that matters most.
proxy_cache_path /var/cache/nginx/mastodon
levels=1:2
keys_zone=mastodon_cache:200m
max_size=20g
inactive=24h
use_temp_path=off;
200m of keys zone holds metadata for roughly 1.6 million entries in RAM. The body can grow up to 20g on disk. The two numbers are independent: keys live in shared memory, bodies live on the filesystem, and the cache key is what links them.inactive=24h evicts anything not requested for a day, even if there is free space. This is intentional. I do not want a long, cold tail of stale entries to squat in the cache forever. I want the working set to remain hot, and I want the rest to fade.
use_temp_path=off is small but important. By default nginx writes a cached response to a temporary file and then renames it into place. If the temp path and cache path are on different filesystems, that cheap rename becomes a real copy. Setting use_temp_path=off puts temporary files directly under the cache directory and avoids that trap. It is the kind of detail nobody mentions until something is suspiciously slow.
Of all the maps in this configuration, only one really earns its place. This one:
map $http_accept $mastodon_cache_variant {
default "default";
"~*application/activity\+json" "activitypub";
"~*application/ld\+json" "activitypub";
"~*application/json" "json";
"~*text/html" "html";
}
Mastodon serves the same URL with different bodies depending on the Accept header. A status URL like /@user/123456789 returns rendered HTML to a browser and an ActivityPub object to another federated instance. If you cache by URL alone, the first request that comes in wins and the next request receives the wrong content type. Instances start federating HTML, browsers start downloading JSON, and the failure is subtle enough to waste hours.The map normalizes Accept into four buckets - activitypub, json, html, and default - and the result is folded into the cache key in every location that does content negotiation:
proxy_cache_key "$scheme$host$request_uri|accept=$mastodon_cache_variant";Coalescing equivalent MIME types is intentional.
application/activity+json and application/ld+json both map to activitypub, because splitting them across two cache buckets would fragment the cache for no useful operational gain.A subtle point I want to be explicit about: I do not include $request_method in the cache key. nginx already converts HEADinto GET for caching purposes by default, which is what I want here. A HEAD request on /@user/123 should hit the same cache entry as a GET request on the same URL. Adding the method would only separate them for no benefit.
During rollout I also expose the selected variant as a response header:
add_header X-Cache-Variant $mastodon_cache_variant always;The header is there to verify the behaviour in production. It can come off once the configuration has proved itself, but I tend to leave it on. A cache that works should be visible. A cache that is invisible can be correct, but it can also be silently wrong, and I would rather know.
This is the first real gotcha, and I want to spend a moment on it because it caught me out the first time I configured a similar setup.
nginx honors the upstream Vary response header in addition to proxy_cache_key. If Mastodon emits Vary: Accept, or worse, Vary: Accept, Cookie, ..., my carefully normalized variant key gets paired with nginx's native Vary handling. The result is that the cache may still fragment on the full, un-normalized Accept header - which defeats the entire point of the variant map.
There is another, very specific failure mode on older or unpatched nginx builds. nginx stores the Vary value in a fixed-size cache metadata field. Historically that field was 42 bytes, which is famously short and almost charmingly suspicious of being a Douglas Adams reference. Modern nginx raised the limit to 128 bytes, which is enough for the common cases but still surprisingly small. If your upstream emits a long Vary header, anything beyond the limit is treated as Vary: *, which means the response is not cached at all. The only signal you get is a critical line in the error log, and unless you are looking for it, you will not see it.
The operational lesson is the same in both cases: if you rely on your own normalized variant key, do not assume upstream Vary is harmless. Check your nginx version, check your error log, and verify cache behaviour via X-Cache-Statusand X-Cache-Variant.
On the locations where the variant map is the cache dimension I care about, I take responsibility explicitly:
proxy_ignore_headers Vary;This tells nginx to stop using upstream
Vary to protect me. That is fine only if my own cache key and request normalization cover every response dimension that matters. In particular, I make sure the backend is not also varying on Accept-Encoding in a way that would create compressed and uncompressed variants behind my back. The cleanest way to avoid that is not to forward Accept-Encoding to the backend at all, and let frontend nginx handle compression itself:proxy_set_header Accept-Encoding "";This is the kind of decision I prefer to be explicit about. Ignoring
Vary is not magic. It is a responsibility, and it should be paired with the rules that take its place.Rather than build one giant boolean to decide what bypasses cache, I prefer to decompose the logic into small orthogonal maps. Each map is 1 when caching must be skipped, and the final decision is an OR of all of them.
map $request_method $skip_cache_method {
default 1;
GET 0;
HEAD 0;
}map $http_authorization $skip_cache_auth {
default 1;
"" 0;
}
map $http_cookie $skip_cache_cookie {
default 1;
"" 0;
}
map $uri $skip_cache_uri {
default 0;
~^/auth 1;
~^/oauth 1;
~^/settings 1;
~^/admin 1;
~^/api/v1/custom_emojis$ 0;
~^/api/v1/instance$ 0;
~^/api/v2/instance$ 0;
~^/api/v1/trends/tags$ 0;
~^/api/oembed$ 0;
~^/api/ 1;
}
The reasoning is straightforward. Only GET and HEAD are cacheable; everything else, including POST, DELETE, PUT, and ActivityPub deliveries, must pass through. Any request carrying an Authorization header is an API call with a token, and those are never public. Any request with a cookie is potentially logged-in traffic, and caching logged-in pages would leak personal timelines across users. Auth flows, settings, admin, and most of the API bypass the cache by URI, while a small, carefully chosen set of slow-changing public API endpoints is allowed through.The important caveat I want to underline: the Authorization map does not catch signed federated GETs. Mastodon federation uses HTTP Signatures, which means the relevant request header is Signature. If AUTHORIZED_FETCH is enabled, you must add a parallel map:
map $http_signature $skip_cache_signature {
default 1;
"" 0;
}
and then include it in both proxy_cache_bypass and proxy_no_cache. Do this before enabling secure mode, not after.The maps are used together in each cacheable location:
proxy_cache_bypass $skip_cache_method $skip_cache_auth $skip_cache_cookie $skip_cache_uri;Both directives are necessary.
proxy_no_cache $skip_cache_method $skip_cache_auth $skip_cache_cookie $skip_cache_uri;
proxy_cache_bypass means "do not read from cache for this request". proxy_no_cache means "do not write this response to cache". Without proxy_no_cache, a logged-in user's response could still poison the anonymous cache. Without proxy_cache_bypass, a request that should have gone straight to the backend might still receive a cached anonymous response. I keep both, every time.Most locations share a common proxy baseline. There is nothing clever here, but if any of these lines is missing the rest of the configuration quietly does less than expected.
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Connection "";
proxy_set_header Accept-Encoding "";
proxy_http_version 1.1 and proxy_set_header Connection "" matter for upstream keepalive. Without them, nginx may use HTTP/1.0 semantics upstream and send Connection: close on every request, which makes the keepalive directive on the upstream block far less useful than it looks.proxy_set_header Accept-Encoding "" keeps backend responses uncompressed so nginx can cache a single representation and handle client-facing compression itself. It also prevents accidental cache fragmentation through Vary: Accept-Encoding, which would otherwise creep in despite the variant map.
These settings are not exciting, and they should not be. The interesting parts of an infrastructure are not always the parts that should be unusual.
The Mastodon server block in my configuration ends up with seven distinct request profiles. Six of them cache; one explicitly does not, because streaming is not a cacheable workload.
I do not group them under one location / with a giant if block. I prefer to keep each profile in its own location, even if some of them look similar. When something goes wrong in production, I want to be able to point at one location and reason about it without holding the rest of the configuration in my head.
location ~ ^/(assets|packs|emoji)/ {
proxy_cache mastodon_cache;
proxy_cache_key "$scheme$host$request_uri";
proxy_ignore_headers Vary; proxy_cache_valid 200 301 302 7d;
proxy_cache_valid 404 10m;
proxy_cache_lock on;
proxy_cache_use_stale error timeout updating http_500 http_502 http_503 http_504;
proxy_cache_background_update on;
proxy_cache_bypass $skip_cache_method $skip_cache_auth $skip_cache_cookie $skip_cache_uri;
proxy_no_cache $skip_cache_method $skip_cache_auth $skip_cache_cookie $skip_cache_uri;
proxy_pass http://$custom_upstream;
}
These paths are content-addressed. Webpack fingerprints filenames with hashes, so a new deploy publishes new URLs while the old URLs remain valid. A 7-day TTL is safe because /packs/js/common-abc123.js will never become different content under the same URL. If it does, it has a new URL.404s get a short 10-minute TTL so a temporarily missing asset can recover quickly.
proxy_cache_lock on is the thundering-herd guard. When a popular asset is not cached and ten clients ask for it at once, nine wait for the first request to populate the cache instead of all ten hammering the backend. I like this directive a lot. It is the kind of small switch that quietly removes a class of problems.
proxy_cache_use_stale together with proxy_cache_background_update is the stale-while-revalidate pattern. If an entry has expired but Mastodon is slow or briefly down, nginx can serve the stale copy and refresh it asynchronously. For static assets this is almost always the right trade-off. The asset has not actually changed under the same URL, and a few extra hours of stale data hurt nobody.
location ~ ^/system/(accounts/avatars|media_attachments/files|custom_emojis/images)/ {
proxy_cache mastodon_cache;
proxy_cache_key "$scheme$host$request_uri";
proxy_ignore_headers Vary; proxy_cache_valid 200 302 6h;
proxy_cache_valid 404 5m;
proxy_cache_lock on;
proxy_cache_use_stale error timeout updating http_500 http_502 http_503 http_504;
proxy_cache_background_update on;
proxy_cache_bypass $skip_cache_method $skip_cache_auth $skip_cache_cookie $skip_cache_uri;
proxy_no_cache $skip_cache_method $skip_cache_auth $skip_cache_cookie $skip_cache_uri;
proxy_pass http://$custom_upstream;
}
Avatars, attachment thumbnails, and custom emoji are also effectively content-addressed, because the file path contains an ID. They can still be replaced or deleted, so the TTL is more conservative than for assets: six hours instead of seven days.The 302 status is also cached, because Mastodon may redirect to another storage location, and the redirect is usually stable enough to cache for hours.
This is also where the caveat about signed URLs really matters. If you ever put a signed-URL backend behind /system/, this TTL must be shorter than the signed URL lifetime, or nginx will eventually serve a redirect to a URL that no longer works. On mastodon.bsd.cafe I do not use signed URLs, so six hours is fine.
location ~ ^/(users|ap/users)/[^/]+/statuses/[0-9]+/replies {
proxy_cache mastodon_cache;
proxy_cache_key "$scheme$host$request_uri|accept=$mastodon_cache_variant";
proxy_ignore_headers Vary; proxy_cache_valid 200 30s;
proxy_cache_valid 404 10s;
proxy_cache_lock on;
proxy_cache_lock_timeout 1s;
proxy_cache_lock_age 5s;
proxy_cache_bypass $skip_cache_method $skip_cache_auth $skip_cache_cookie $skip_cache_uri;
proxy_no_cache $skip_cache_method $skip_cache_auth $skip_cache_cookie $skip_cache_uri;
proxy_pass http://$custom_upstream;
}
This is the location I tuned most carefully. When a status starts going viral, dozens of federated instances poll /replies to build their thread view, often within the same second. The same URL must serve an HTML thread view to browsers and an ActivityPub OrderedCollection to remote instances, so the variant key is essential here.A 30-second microcache absorbs the spike without serving meaningfully stale data. A reply that appears 30 seconds late in a federated thread is usually invisible to humans, while the backend relief is very visible.
The lock settings keep backend load and latency bounded. proxy_cache_lock_timeout 1s bounds how long queued requests wait behind the lock. If the timeout expires, they go to the upstream directly, but their responses are not stored in the cache, which prevents a runaway thundering herd from clogging the cache fill path. proxy_cache_lock_age 5s prevents one slow cache-populating request from monopolizing the fill path forever; if the request holding the lock has not completed after 5 seconds, nginx may let another request reach the upstream to retry.
I have currently left proxy_cache_use_stale off on this location while I am still validating the deployment. This is a deliberate debugging stance, not a permanent choice. Stale-while-revalidate is useful in production, but during rollout it can hide upstream issues while I am trying to understand the system. Once the behaviour is stable, the production version will be:
proxy_cache_use_stale error timeout updating http_500 http_502 http_503 http_504;
proxy_cache_background_update on;
location ^~ /media_proxy/ {
proxy_cache mastodon_cache;
proxy_cache_key "$scheme$host$request_uri"; proxy_cache_valid 200 10m;
proxy_cache_valid 301 302 10m;
proxy_cache_valid 404 1m;
proxy_ignore_headers Cache-Control Expires Vary;
proxy_cache_lock on;
proxy_cache_use_stale error timeout updating http_500 http_502 http_503 http_504;
proxy_cache_background_update on;
proxy_cache_bypass $skip_cache_method $skip_cache_auth $skip_cache_cookie $skip_cache_uri;
proxy_no_cache $skip_cache_method $skip_cache_auth $skip_cache_cookie $skip_cache_uri;
proxy_pass http://$custom_upstream;
}
Mastodon's /media_proxy/ fetches remote media so clients do not leak their IP address to remote servers. The response is the same regardless of Accept, so the cache key intentionally omits the variant. Splitting media proxy responses across html, json, activitypub, and default buckets would only waste storage.proxy_ignore_headers Cache-Control Expires Vary is deliberate here. Mastodon may emit conservative cache headers, or none at all, and I want the proxy to enforce a short local 10-minute policy regardless of what the backend says.
Set-Cookie is not in the ignore list. nginx's default refusal to cache responses carrying Set-Cookie still applies, and I want it to. It is a safety net I do not want to disable just to win a few cache hits.
The ^~ prefix is a small useful detail. Once this location matches, nginx stops evaluating regex locations. Media proxy traffic can be heavy, and skipping further regex matching is a tiny but free win.
location ~ ^/(users|ap/users)/[^/]+/(followers|following) {
proxy_pass http://$custom_upstream;
}
This one is a pure proxy, no cache. I want to be explicit that this is a decision, not an omission./users//followers and /users//following are pagination-heavy, change frequently as people follow and unfollow, and are queried by federation crawlers in ways that would make the cache key proliferate through pages and cursors. The likely hit ratio is poor, the risk of serving stale social graph data is non-trivial, and the cost of caching them - in storage and in mental overhead - is not worth it.
If a remote instance starts hammering these endpoints, the right answer is rate limiting with limit_req_zone, not retrofitting cache as a rate limiter.
location / {
proxy_cache mastodon_cache;
proxy_cache_key "$scheme$host$request_uri|accept=$mastodon_cache_variant";
proxy_ignore_headers Vary; proxy_cache_valid 200 10s;
proxy_cache_valid 301 302 1m;
proxy_cache_valid 404 10s;
proxy_cache_lock on;
proxy_cache_lock_timeout 5s;
proxy_cache_bypass $skip_cache_method $skip_cache_auth $skip_cache_cookie $skip_cache_uri;
proxy_no_cache $skip_cache_method $skip_cache_auth $skip_cache_cookie $skip_cache_uri;
proxy_next_upstream error timeout http_502 http_503 http_504;
proxy_next_upstream_tries 2;
proxy_pass http://$custom_upstream;
}
Everything not matched by a more specific location falls here: profiles, individual statuses, the about page, the public timeline, and many ActivityPub object fetches.The TTL is only 10 seconds for 200 responses. That is enough to deduplicate the wave of requests when a popular toot gets boosted or linked from elsewhere, without making the page feel stale to a human visitor.
It is worth being honest that short TTLs still cost CPU. A 10-second microcache on a sustained-traffic URL means the backend regenerates the entry six times per minute. That is vastly better than serving every request from Rails, but it is not free. If your backend cannot comfortably handle that, raise the TTL, or enable stale-while-revalidate on these dynamic paths.
proxy_next_upstream with proxy_next_upstream_tries 2 is the failover trigger. If the primary returns 502, 503, 504, or times out, nginx retries on the backup. The chain is capped at two attempts so a sick upstream cannot hold the request indefinitely.
At the http level:
map $http_upgrade $connection_upgrade {
default upgrade;
"" close;
}
In the server block:location /api/v1/streaming {
proxy_buffering off;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_read_timeout 3600s;
proxy_send_timeout 3600s;
proxy_pass http://$custom_upstream;
}
Streaming is a WebSocket and SSE-style endpoint. Buffering must be off, otherwise the proxy may hold messages while waiting for buffers to fill. The Upgrade and Connection headers are driven by $connection_upgrade, which is upgradeonly when the client actually sent an Upgrade header. That way a non-WebSocket request to the same path does not get its Connection header mangled.The hour-long read and send timeouts allow long-lived streams to stay open through quiet periods.
There is no cache here. Streaming is not a cacheable workload, and trying to make it one is one of those ideas that sounds clever for about thirty seconds.
upstream mastodonbsdcafe {
server 192.168.123.33 max_fails=3 fail_timeout=30s;
server 192.168.122.133 backup;
keepalive 64;
}
The primary backend is on another VPS; the backup is in a jail next to the reverse proxy. After three consecutive failures, the primary is marked down for 30 seconds. Traffic flips to the backup, then nginx retries the primary after the window.keepalive 64 holds up to 64 idle TCP connections to the upstream per worker. On a busy instance, this saves real handshake overhead, but only if the proxied connection can actually stay open. That is why the shared proxy settings include proxy_http_version 1.1 and proxy_set_header Connection "". Without those, upstream keepalive does much less than it looks like it should.
I also use an indirection layer:
map $remote_addr $custom_upstream {
default mastodonbsdcafe;
}
Today everything defaults to the main upstream group. The map exists so that specific client IPs can be pinned to a specific upstream when I am debugging, or so an admin connection can be routed to the backup while the primary is being tested. It costs nothing to have it sitting there, and it has saved me time more than once.log_format detailed '$remote_addr - $remote_user [$time_local] 'This log format is purpose-built for the cache layer. For each request it records total request time, upstream connect time, upstream header time, upstream response time, upstream status, which backend served the request, cache status, and which content-negotiation variant was selected.
'"$request" $status $body_bytes_sent '
'"$http_referer" "$http_user_agent" '
'rt=$request_time '
'uct=$upstream_connect_time '
'uht=$upstream_header_time '
'urt=$upstream_response_time '
'us=$upstream_status '
'ua=$upstream_addr '
'cache=$upstream_cache_status '
'variant=$mastodon_cache_variant';access_log /var/log/nginx/access.mastodon.bsd.cafe.log detailed;
add_header X-Cache-Status $upstream_cache_status always;
add_header X-Cache-Variant $mastodon_cache_variant always;
The cache status is one of the values nginx exposes through $upstream_cache_status: HIT, MISS, BYPASS, EXPIRED, STALE, UPDATING, or REVALIDATED. The response headers expose the same information to the client, which makes it trivial to verify behaviour with curl -I or browser dev tools.
The always qualifier matters. Without it, nginx only adds these headers to a subset of responses, so a 502 from the backend might arrive without the diagnostic headers you need most. I want them on every response, no exceptions.
There is also a small operational detail I find pleasant: a custom 502 page.
error_page 502 /502.html;It is not part of the cache strategy, but it makes backend hiccups less ugly. And I block some abusive user agents with
location = /502.html {
root /usr/local/www/mastodon_errors;
internal;
}
444, which closes the connection without sending any response at all:if ($http_user_agent ~* "bytespider") {
return 444;
}
This is not a general bot strategy. It is just a cheap refusal path for traffic I know I do not want.The first verification is variant separation. Three requests to the same URL with different Accept headers should produce three independent cache entries:
for v in 'text/html' \On the first pass, every variant should be a
'application/activity+json' \
'application/ld+json; profile="https://www.w3.org/ns/activitystreams"'; do
printf '%-75s -> ' "$v"
curl -s -o /dev/null -D - -H "Accept: $v" \
https://mastodon.bsd.cafe/@someuser/123456789 \
| awk '/^[Xx]-[Cc]ache/ { printf "%s ", $0 } END { print "" }'
done
MISS. On the second pass, every variant should be a HIT, with X-Cache-Variantshowing the expected bucket.The second verification is that cookies and Authorization always trigger BYPASS:
curl -I -H 'Cookie: _mastodon_session=test' \Both should return
https://mastodon.bsd.cafe/@someusercurl -I -H 'Authorization: Bearer fake' \
https://mastodon.bsd.cafe/api/v1/timelines/home
X-Cache-Status: BYPASS. If they do not, the skip-cache rules are wrong, and the entire setup is unsafe.If you intend to enable AUTHORIZED_FETCH, the third verification is for signed GETs. A quick synthetic check that the nginx map fires correctly:
curl -I -H 'Signature: fake' \If you added
-H 'Accept: application/activity+json' \
https://mastodon.bsd.cafe/users/someuser
$skip_cache_signature, the result should be X-Cache-Status: BYPASS.Finally, the logs themselves tell me how the cache is performing in production. Cache status distribution:
awk '{
for (i = 1; i <= NF; i++)
if ($i ~ /^cache=/) c[$i]++
}
END {
for (k in c) print k, c[k]
}' /var/log/nginx/access.mastodon.bsd.cafe.log
A healthy instance shows cache=HIT and cache=BYPASS doing most of the work, with cache=MISS accounting for cold paths and short-TTL refreshes. The same trick works for the variant distribution:awk '{
for (i = 1; i <= NF; i++)
if ($i ~ /^variant=/) v[$i]++
}
END {
for (k in v) print k, v[k]
}' /var/log/nginx/access.mastodon.bsd.cafe.log
This tells me what my traffic actually looks like. A federation-heavy instance shows a lot of activitypub. An instance with many human visitors shows more html. On mastodon.bsd.cafe the balance shifts depending on what is happening in the wider Fediverse on any given day.Short TTLs cost CPU. A 10-second microcache on a sustained-traffic URL means six backend regenerations per minute. That is much better than no cache, but it is not free. If the backend cannot comfortably handle that, raise the TTL or enable stale-while-revalidate on the dynamic paths.
Dynamic stale-while-revalidate is powerful but it hides problems. I currently keep proxy_cache_use_stale off on the dynamic locations because I am still validating behaviour. In steady-state production, stale-while-revalidate is usually the right choice. During rollout, it can quietly hide upstream errors and make debugging harder. Be honest with yourself about which mode you are in.
AUTHORIZED_FETCH changes the threat model. With secure mode disabled, public ActivityPub GET responses are safe to cache as public content, provided your cache key handles content negotiation correctly. With secure mode enabled, ActivityPub responses can become actor-dependent. At that point you must either bypass cache for signed GETs or include the signing actor in the key. The latter usually destroys the hit ratio, so bypassing is the practical answer.
The variant map is a compromise. It covers application/activity+json, application/ld+json, application/json, and text/html. Everything else falls into the default bucket. That is intentional, but the default bucket is still a bucket. If you discover a real client type that matters on your instance, add it explicitly.
Ignoring Vary is a responsibility. proxy_ignore_headers Vary is not magic; it tells nginx to stop protecting you based on upstream Vary. That is fine only if your own cache key and request normalization cover every dimension Vary was protecting. For this configuration that means normalizing Accept into a variant, avoiding backend Accept-Encodingvariation, never caching cookies or authorization, and never caching signed GETs if secure mode is enabled.
Followers and following are uncached on purpose. They are pagination-heavy and change frequently. Caching them would create many low-value entries with questionable freshness. If a remote instance hammers these endpoints, use limit_req_zone. Do not retrofit cache as a rate limiter.
Signed-URL redirects require shorter TTLs. Caching 302s is useful when redirects are stable. It is dangerous when redirects point to short-lived signed URLs. If your media storage returns presigned URLs, your nginx redirect TTL must be shorter than the URL lifetime.
Set-Cookie must remain special. Do not add Set-Cookie to proxy_ignore_headers unless you are absolutely sure the location cannot produce user-specific responses. nginx's default refusal to cache Set-Cookie responses is a safety net. Keep it.
A good configuration is a written form of the assumptions behind a service. When the assumptions change, the configuration must change too.
There is no single brilliant directive in this configuration. The trick is combining long TTLs for immutable assets, medium TTLs for media, tiny TTLs for dynamic public pages, cache locking for thundering-herd protection, strict bypass rules for private or actor-dependent traffic, a normalized content-negotiation key, and enough logging to prove the system is doing what I think it is.
What this layer buys me, in one sentence: fewer requests reach Puma and Rails.
That is the metric I care about. Mastodon is not slow, but it is heavy, and the bigger the instance grows the more it benefits from a layer in front that quietly absorbs the work that does not need to be done by the application. A reverse proxy that caches Mastodon safely has to remember, with every request, that the same URL might mean three different things to three different clients. Once it does, even a very short microcache can remove a surprising amount of load without changing the user-visible behaviour of the instance.
https://it-notes.dragas.net/2026/06/05/aggressive_caching_for_a_mastodon_reverse_proxy/
#ITNotes #NoteHUB #fediverse #hosting #mastodon #networking #nginx #ownyourdata #server #snac2 #social #web
Do you think we live in a superficial society?
What I mean is:
It’s all about glitz and glamour
We don’t dig any deeper
We don’t want to explore things more thoroughly
We don’t really want to know what’s going on
We don’t ask questions to understand better
So what do you think?
Are we a superficial society?
#mastodon #fediverse #boost #survey #poll #thoughts #world #society #philosophy #social
| Yes: | 40 |
| No: | 2 |
| Not always: | 22 |
| Maybe: | 6 |
Closed
🛡️ #Cybersecurity news & tips across the #fediverse
“"A Hackers Guide to Circumventing Internet Shutdowns"
"Linux devs are fighting the new age-gated internet"
"Under-16 Social Media Ban: Malaysians must verify age using MyKad or passport from 1 June"
"After Town Bans F...”
https://mastodon.social/@moniquebarrow_/116692487575902715
🤖 via RSS feed. Not an endorsement.
🛡️ #Cybersecurity news & tips across the #fediverse
“A long time since I thought about this book - worth revisiting to see what the discourse was then, and how much of it has been ignored.
muse.jhu.edu/book/11103
#facialrecognition #biometrics #surveillance
P...”
https://bsky.brid.gy/r/https://bsky.app/profile/did:plc:izyv7k3ussysmqonmcqe76li/post/3mnhvzgzn3s2f
🤖 via RSS feed. Not an endorsement.
🛡️ #Cybersecurity news & tips across the #fediverse
“There's a trash-bag revolt brewing against Flock license plate readers The black plastic bags have become the latest symbol of a growing conflict with Flock Safety, whose automated license plate readers have spread rap...”
https://mastodon.social/@gtbarry/116692436381731413
🤖 via RSS feed. Not an endorsement.
🛡️ #Cybersecurity news & tips across the #fediverse
“Medigold Health Gather data to help evaluate risks to employee health, and identify whether bett https://www. bing.com/aclick?ld=e8RVe07EigG 7PbJ-pr4CdlUzVUCUzuX81pRgZVj-bHKrPYsChoRpSVWzZVGbPAJP7yjNg2YU2MMEYw61Gtdl...”
https://mastodon.social/@thomaster/116692372250834267
🤖 via RSS feed. Not an endorsement.
Just got back from Hack #464 @hackergarten and it was awesome!
Met new people, had a great time, and especially got excited about the FitPub project (btw - https://codeberg.org/fitpub/fitpub)
Huge thanks to the host @McPringle - a real professional and an incredibly interesting, deep person with a wide range of interests. Meetings like this are truly inspiring.
Thank you to the organizers and everyone I talked to! Already looking forward to the next one 🔥
#Hackergarten #FOSS #Mastodon #OpenSource #Decentralized #Fediverse
🛡️ #Cybersecurity news & tips across the #fediverse
“Content warning: US, mass surveillance # UnitedStates # surveillance
You thought Flock is bad already?
New mass surveillance law introduced in the US: identification based on the signals coming off EVERY devic...”
https://mas.to/@gruby/116692284138597837
🤖 via RSS feed. Not an endorsement.
💔 Is There Still Hope?
I am writing these words from southern Gaza while living through one of the hardest moments of my life. Your donations have become our only lifeline amid hunger, destruction, and the lack of even the most basic necessities.
Today, I went to the hospital because of the severe pain in my leg, and there I received devastating news. The doctors discovered that one of the metal screws fixing my leg has broken, causing very serious complications. The pain has become unbearable, and I can no longer stand properly. The doctors told me that I urgently need surgery to save my leg from amputation.
My injury is not minor. I suffered a fractured femur, extensive damage to tissues and nerves, and there are still shrapnel fragments inside my leg. I also have a metal plate extending from my hip to my left knee, and after one of the screws broke, my condition has become more dangerous than ever.
I had previously postponed the surgery because I could not afford the $800 cost, and because I was struggling to provide for my family’s basic needs during these extremely difficult circumstances. Now, after my condition has worsened and one of the fixation screws has broken, the surgery has become more urgent than ever. The doctors warned me that any further delay could result in losing my leg permanently. 💔🙏
⏳ I have only 5 days left to undergo this surgery. Every day that passes increases the risk of permanent amputation, and I am terrified that it will soon be too late.
I urgently need $800 for the operation. Every contribution, no matter how small, brings me one step closer to saving my leg. 💔
I am facing this pain while also carrying the burden of my brother's imprisonment, my mother's illness, and the responsibility of being the sole provider for my family. I feel helpless and afraid of what the future may hold, but I still hold on to hope in God and in the kindness of compassionate people.
🙏 Please do not leave me alone in this hardship.
Any donation, no matter how small, could help save my leg and support my family. If you are unable to donate, please share this post. It may reach someone who can help.
💔 My life and my family's future are in your hands.
🔗 Donation Link: https://chuffed.org/project/133500-support-diyaa-a-home-a-future-and-hope-lost-in-gaza
@aral
#gaza #genocide #palestine #iran #israel #war #GazaVerified #Mastodon #fediverse #newMembers #verification
🛡️ #Cybersecurity news & tips across the #fediverse
“@ alienghic @ viq @ heiseonlineenglish It would be good to have a version for # Linux phones, but I normally don't carry any phone with me. Or it's switched off. The IR lights are nice, but then it's d...”
https://framapiaf.org/@debacle/116692277343501332
🤖 via RSS feed. Not an endorsement.
RE: https://eupolicy.social/@hpod16/116691205021254314
Hey #Fediverse koennt ihr mir mal einen Gefallen tun und fuer die Community manager der @EUCommission abstimmen und ihnen den Ruecken staerken?
Ich finde das grossartig, wie die ihre Arbeit hier durchziehen. Den Link fuer die Award-Abstimmung findet ihr hier 👉https://enonet.eu/survey/index.php/227332?lang=en und Hannahs Team ist das Projekt Nummer 32.
Gerne boosten!
Danke fuer euren Support!
AodeRelay boostedI dunno, *can* we build #European alternatives to #Facebook and co?
The #EU community managers are at it again with promoting the EU instance on #Mastodon!PS: the community management team (that's my team) are up for an award. Any chance you'd give us a vote? Project 32 on this link: https://enonet.eu/survey/index.php/227332?lang=en
@evan I understand your intention behind tags.pub. And honestly, if you want to offer this service I'm fine with it. But I think to roll it out as an OptOut service is the wrong way. As this is it that annoys people. All people criticising this "service" tried to get rid of it and it didn't work. But I learnt it's fixed in the meantime.
However: As far as I understood your intention is to make hashtags more visible all over the #Fediverse as in certain cases they aren't visible on all instances. This is obviously a weakness of the Activitypub protocol according to Hashtags. So this should lead to an improvement of the protocol.
However, probably the most people don't have a problem with it. That's why I think your service should be an OptIn service as I described this morning already.
I don't know what it would mean to eliminate the design weakness of the ActivityPub protocol. But this should be done. And once it's done tags.pub is no longer neccessary.
@march @tux @bewitchedmind @feb
part three
Opt Out is not safe for females.
This is not hyperbole.
Women in online spaces have been tracked down and phyically assaulted.
"Violence" /"Abuse" also includes smart alek comments, snide remarks about appearance, cat-calls, and unsolicited come-on lines.
Online verbal assault is violence, because it barges into a person's mind and eats away at our mental health.
part four
There is a rise in male on female violence, verbal and physical, so to decide to ignore or jettison any privacy measures when creating a tech project, is to add to the rise in violence against women
part five
Expecting women to spend time searching for tech that exposes us to the possibility of assault, so we can Opt Out, is adding to women's overwhelming need for living in a constant state of alert.
This is not hyperbole.
So, I'm asking male techies, prioritize women's safety. Think of what a wonderful reputation Fediverse could have if this was normalized.
part two
So, when any techie designs a feature where women's posts are distributed *without consent* , as in not asking permission first, they are putting the aforementioned problems aside, and that sends the signal, intentional or not, we are worthless.
👉 No pre-approved consent means a woman's safety is at risk.👈
👇 cont'
🛡️ #Cybersecurity news & tips across the #fediverse
“Michael Geist: “The disconnect is dizzying: the government cannot claim privacy as a fundamental right in the morning and enact mandatory metadata retention that overrides it in the afternoon.”
# privacy # digitalri...”
https://cosocial.ca/@mike_vlasman/116692046386571921
🤖 via RSS feed. Not an endorsement.
"Aggressive caching for a Mastodon reverse proxy: what to cache, what to never cache, and why content negotiation will eventually betray you"
A 34 min read
Coming tomorrow, on IT Notes!
#ITNotes #StayTuned #Mastodon #Fediverse #nginx #IT #SysAdmin
🔆 #FediTips for https://PrivacySafe.Social & the #fediverse
“Do you want to copy your followed hashtags from one Mastodon account to another Mastodon account? This was previously impossible to do automatically, but there is now an unofficial tool that lets you do this: ➡️ https...”
https://social.growyourown.services/@FediTips/116692901952615639
🤖 via RSS feed. Your Mileage May Vary.
I recently switched from Tusky to Fedilab and I'm quite satisfied. I was getting a bit but frustrated with the way Tusky handles its timelines. While infinite scroll is the devil (for us and the environment!), it's more intuitive. That and the fact I will potentially have a Peer Tube and pleorama account in the near future makes it a good choice for me. Would be cool if one day it could do BookWyrm and Loops
#tusky #fedilab #mastodon #peerTube #pleorama #fediverse #bookWyrm #loops #socialMedia
Bienvenidos a masto.es, servidor de Mastodon para hispanohablantes de temática general.
Ampliación del límite de caracteres en una publicación a 2000 caracteres.
Acerca de: https://masto.es/about
Administrado por: @rober
#FeaturedServer #Español #Mastodon #Fediverse #FreeFediverse
🇬🇧 Ever wondered how burningboard.net actually runs?
Fully self-hosted in Germany, no trackers, no external logging. Isolated FreeBSD jails, a strict firewall, ZFS and encrypted off-site backups (restore-tested twice a year). Sovereign and transparent. All the details: https://meta.burningboard.net/infrastruktur.html
🇩🇪 Wie läuft burningboard.net eigentlich?
Komplett selbst gehostet, in Deutschland, ohne Tracker und ohne externes Logging. Isolierte FreeBSD-Jails, strikte Firewall, ZFS und verschlüsselte Offsite-Backups (2x im Jahr per Restore getestet). Souverän und transparent. Alle Details: https://meta.burningboard.net/infrastruktur.html
#mastoadmin #freebsd #zfs #gdpr #digitalsovereignty #fediverse
Der di.day bietet nun auch die Möglichkeit sich als Helfer_in einzutragen. Ihr findet mich hier: https://experts.di.day/experts/17
Tragt euch doch auch ein, damit wir möglichst vielen Menschen helfen können ihr digitales Leben etwas freier und sicherer zu gestalten.
🛡️ #Cybersecurity news & tips across the #fediverse
“"[C]riminal cover up." "Attorneys representing Jarius Brown, a man who was beaten to the point of hospitalization by the DeSoto Parish Sheriff's Office in September 2019, are accusing the Louisiana State Police of helpi...”
https://mastodon.social/@harmscommitted/116688575435683479
🤖 via RSS feed. Not an endorsement.
WordPress powers roughly 40% of all websites. That is not a statistic. it is the backbone of the Open Web!
Download FediStation today, now available on WPStore
fediboard.com/products/fed...
#fediverse #openweb #flipboard #mastodon #lemmy #bluesky #threads #wordpress #bloggers
For too long, the internet has been carved up into walled gardens controlled by a handful of companies. Time for a change...
#fediverse #flipboard #openweb #mastodon #surfsocial
#facebook #instagram #x
https://fediboard.com
🛡️ #Cybersecurity news & tips across the #fediverse
““Do not let the word ’ metadata’ reassure you. # Metadata is the 2 a.m. phone call, the clinic you contacted, the lawyer you retained, the organizer you met and the journalist you trusted,” he told MPs.
“A mandate t...”
https://mstdn.party/@GoWeaponsHot/116687992584804836
🤖 via RSS feed. Not an endorsement.
Hydrangea Butterfly Cow I - Available Here: https://1-lisas-baker.pixels.com/featured/hydrangea-butterfly-cow-i-lisa-s-baker.html
#cow #cows #bovine #farmanimals #cuteanimals #holsteincow #cowart #butterfly #bluebutterfly #hydrangeas #flowers #floral #art #arte #artwork #wallart #homedecor #artforhome #artforsale #buyintoart #artprints #canvasprints #mastoart #fediart #fediverse #ayearforart #creativeToots
Paths and Patches explores: Connected community spaces. https://www.blog-pat.ch/connected-community-spaces/ #fediverse #ActivityPub #ATProto
🛡️ #Cybersecurity news & tips across the #fediverse
“A whiff of mystery? NYC cops investigate groups entering sewers at night
The investigation follows the emergence of surveillance footage, which was circulated on social media, appearing to show a group of men climbing o...”
https://mastodon.hongkongers.net/@glnews_mirror/116687674000141247
🤖 via RSS feed. Not an endorsement.
Location: Fediverse
Here some #ducks for #fediverse shot with @halide.
My free trial has ended, and I’m still not sure about this camera app. It is not for everyday use for sure, because a lot of photos will require editing after the shoot. Still, the results are beautiful. I’m dreaming about #fujifilm #X100VI. #halidemarkiii has reminded me about pictures I saw taken by that legendary camera.
I’m trying to justify buying the subscription. And maybe resurrect my #Pixelfed account =)
@evan Maybe you don’t think it’s possible, but it happens. That’s why I added the hashtag #Fediverse to all of my replies to you. The domain tags.pub is blocked by me and your bots are going on boosting me.
An other user already mentioned that even your proposed hashtags in the profile don’t stop your Bot army from boosting.
@evan As I already wrote as an answer to another of your messages. It's not only about the notifications. And switching of notifications from all users that don't follow me just to get rid of the notifications of your "Bot army" cuts me fully off from a function that I want. Sorry, but this is one reason why i call your bots intrusive.
And maybe think about that not everybody is being interested in this "range extender" mayby the most users are happy as it is. And now, due to the bot they get something that they don't want at all.
As I already wrote in an other reply: Rethink the design of the bot and do it as an optIn Bot. Who's in the #Fediverse and still thinks that range matters can use it. But stop forcing it to the whole Fediverse. Again: That is intrusive.
@tux @jools @tux@anonsys.net
@evan I just double checked. Your Domain "tags.pub" is blocked by me (screenshot). Your bots are boosting my posts anyway. Also on one of my two threads I started about this topic yesterday a user mentioned that adding the No..... Hashtags to the profile doesn't work and don't stop the bots from boosting.
I also know that there are users that moved to post private now due to being annoyed of your bots. That means that I won't see any hashtags of these users anymore as I don't follow them and don't want to follow them.
So that clearly shows me that your "Bot armee" has a destructive and destroyable influence to the #Fediverse
Smaller instances can use relays to extend their range. To program an "agressive Bot armee" like this isn't helpful at all. Such a bot instance should always be OptIn only!
And oping out by using hashtags on the profile isn't what the profile is meant for!
Maybe you should rethink this project and stop it before it's ruining even more than it already did!
🛡️ #Cybersecurity news & tips across the #fediverse
“A whiff of mystery? NYC cops investigate groups entering sewers at night
The investigation follows the emergence of surveillance footage, which was circulated on social media, appearing to show a group of men climbing o...”
https://mastodon.hongkongers.net/@glusnews_mirror/116687472259431591
🤖 via RSS feed. Not an endorsement.