In the future, we’ll try out a posting system without using buffer, but huginn instead. I think that the main issue here is failing to serve, so I am setting up a monitoring service for both FreshRSS and huginn, so that if they can’t be reached, I get sent a message so I can fix this issue on the go. Running Plesk on our VPS should make this less difficult than setting up the infrastructure. I like to post this in advance of me doing it, because in reality, I am already halfway in. #server #asca
Monitor is in place in for both services. #FreshRSS #huginn #server #asca
To continue: I am also running a #wallabag server which I use to store bookmarks and interesting reading material for myself. And while working in public on a social platform, my partner recommended that I use my wallabag favorites to add to our informational feed. And the process for outputting #RSS from wallabag is very easy: I just had to generate a token for that, and then I plugged in the output RSS into our #FreshRSS backend. #server #asca
Next thing I need to do is to turn off the mastodon-native “cards” for links, because I am future-proofing my self-hosted services against issues with the law here in Germany, especially regarding what is called “framing” here.
In short, I better not EVER have a picture anywhere on anything I self-host I have not explicitly acquired the rights to, or have made myself.
There is a whole gray market in Germany for suing the people for that. Fixing this next.
#asca #server
#mastodon #gdpr

Adding these lines to my application.env covered this issue

# do not fetch external resources
DISABLE_FETCH_PREVIEWS=true
DISABLE_EMBED_PREVIEW=true

I will need to go through my own feed next to ensure that there are no embeds left over. This is in addition to my recent purging of boosts: https://mastodon.mariobreskic.de/@mario/114982417840616548

#server #asca #mastodon #gdpr

Mario Breskic (@[email protected])

Had to nuke all my boosts 💥 — not because I don’t love you all, but because German copyright law said “No fun, only §!” 🇩🇪📚 Turns out even displaying book covers (aka “framing”) can get dicey. Courts here ruled that embedding images without permission = potential copyright infringement. No thanks 😅 Details if you love legal pain: https://www.kanzlei.biz/suche/?sq=framing&type= Stay safe, stay boostless! 💂‍♂️🔗

Mario Breskicʼs Mastodon

And from there, I delete all #PreviewCards in #mastodon by using these commands:

1. docker compose exec web bash
2. RAILS_ENV=production bundle exec rails console
And then I run this in the console: PreviewCard.destroy_all

This will run for a while but it should remove all stored preview cards from my mastodon server, for all posts.
And it worked. Just climb back up to my prompt by punching in “exit” until I am back home, and that issue has been fixed as well. #server #asca #mastodon #gdpr

#aside and #tldr
Running a solo Mastodon instance? Here's how to keep it clean and #gdpr compliant:
– Disable link previews: DISABLE_FETCH_PREVIEWS=true
– Disable embeds: DISABLE_EMBED_PREVIEW=true
– Purge old PreviewCards via Rails console
– Avoid federated content
– Self-author everything
– Host locally, anonymize IPs
Respectful publishing, no third-party hosting
#asca #server #mastodon #selfhosted #germany

Correction, see #aside here https://mastodon.mariobreskic.de/@mario/115050605879471525

#aside and #tldr
Running a solo Mastodon instance? Here's how to keep it clean and #gdpr compliant:
– Disable link previews: DISABLE_FETCH_PREVIEWS=true
– Purge old PreviewCards via Rails console
– Avoid federated content
– Self-author everything
– Host locally, anonymize IPs
Respectful publishing, no third-party hosting
#asca #server #mastodon #selfhosted #germany

Mario Breskic (@[email protected])

#aside: the only line that is currently accurate and therefore needed is DISABLE_FETCH_PREVIEWS=true this change supersedes the previous setting, and I will take note of that in the tldr below. #server #asca #mastodon

Mario Breskicʼs Mastodon

There seems to be a bug implementing this in #mastodon #v4.4.3, so here is the workaround for disabling fetch previews by deleting preview_cards from the DB:

DELETE FROM preview_cards;

And blocking future inserts:

CREATE OR REPLACE FUNCTION block_preview_card_insert()
RETURNS trigger AS $$
BEGIN
-- Ignore insert
RETURN NULL;
END;
$$ LANGUAGE plpgsql;

CREATE TRIGGER prevent_preview_card_insert
BEFORE INSERT ON preview_cards
FOR EACH ROW
EXECUTE FUNCTION block_preview_card_insert();

Testing this by posting a link to a good website: https://smartquotesforsmartpeople.com/
Smart Quotes for Smart People

Smart Quotes for Smart People

The workaround to #mastodon ignoring DISABLE_FETCH_PREVIEWS=true is a hard one, but I will keep an eye on this in the future.

Undoing the previous changes inside the db container, due to having found a more promisingly elegant solution:

DROP TRIGGER IF EXISTS prevent_preview_card_insert ON preview_cards;

DROP FUNCTION IF EXISTS block_preview_card_insert();

Fix:
adding this to my yaml file for my sidekiq and my web container:

command: >
bash -c "bundle exec rails runner 'class FetchLinkCardService; def call(*args); nil; end; end' &&
bundle exec puma -C config/puma.rb"

and sidekiq

command: >
bash -c "bundle exec rails runner 'class FetchLinkCardService; def call(*args); nil; end; end' &&
bundle exec sidekiq"

DISABLE_FETCH_PREVIEWS=true is being ignored in v4.4.3 in docker · Issue #35813 · mastodon/mastodon

Steps to reproduce the problem the environmental setting DISABLE_FETCH_PREVIEWS=true to .env or .yaml file should turn off the creation of PreviewCards for links in posts restarting the containers ...

GitHub

I need another test, as a sanity check:

https://de.wikipedia.org/

Wikipedia – Die freie Enzyklopädie

#PreviewCards are still being created, despite the patches.

Changed the #sidekiq patch to target the LinkCrawlWorker like so:

command: >
bash -c "bundle exec rails runner 'class FetchLinkCardService; def call(*args); nil; end; end' &&
bundle exec sidekiq"

Monoskop

Wiki for Arts and Studies

Your Outboard Brain Knows All

The line between where your memory leaves off and Google picks up is getting blurrier by the second. We're not committing as much to our gray matter these days, because electronic memory is so cheap and ubiquitous.

WIRED

And brute force I will now, since the Worker insists on working.

Inside the pgsql container:

CREATE OR REPLACE FUNCTION block_preview_card_insert()
RETURNS trigger AS $$
BEGIN

RAISE NOTICE 'PreviewCard insert blocked by DB trigger.';
RETURN NULL;
END;
$$ LANGUAGE plpgsql;

CREATE TRIGGER prevent_preview_card_insert
BEFORE INSERT ON preview_cards
FOR EACH ROW
EXECUTE FUNCTION block_preview_card_insert();

And another test, which I hope completes this issue for me:

https://www.schulmanart.com/2017/03/how-to-price-art/

Fix is in place.
#aside: final test, linking to this and if no PreviewCard shows up, I have successfully #fixeditbybreaking #asca
https://www.domestika.org/es/courses/1457-home-office-trabajar-desde-casa-con-exito
Curso online - Teletrabajo: claves para trabajar desde casa (Foncho Ramírez-Corzo)

Aprende las herramientas básicas del teletrabajo para mejorar la productividad y desarrollarte profesionalmente

Domestika

Rebuilt the index post/persistent context “tool” for tumblr because threading there should not be done with reblogs.
Instead, I used a system I came up with in 2019, on Twitter: make a post containing a link I want to hook up to the persistent context scaffolding.

On tumblr, this means: make a post, then link to that post from its category/theme master post.
https://www.tumblr.com/codeandcanvas/792786451752468480/index-post #asca

Post by @codeandcanvas · 2 links

💬 0  🔁 0  ❤️ 1 · Index post · Instead of editing and then splitting apart previous posts, I will instead use the power of “knowing better upon reconsideration” to rebuild how my index post and link…

Tumblr
Settled for a better system on #tumblr I use an index post to link to my own hashtags I use on Code and Canvas. This is a smart solution because Tumblr is really good at grouping hashtags by blog, since only that blogs hashtags of that name will end up being displayed.
The thread is then visually prepared by tumblr natively, rather than me forcing it.
This seems fine to me. #asca

Will have to update my #linkwarden incrementally from v2.11.5 to v2.12.2.

I use linkwarden to store links from my blog articles via a custom wordpress plugin which I have hacked together using #chatgpt #asca

I am sure that doing the update incrementally makes more sense than jumping a few versions in between.

I have a theory about how tech works. So I think I should try out nostr before you do. Yes, you. You reading this. You are one of around 30 people who could possibly read this, so I sort of know who you are. And I am telling you that I think that I should dive into nostr before you do. Because, you see, I have a theory about how tech works.
I looked into nostr. I think I will just say that social media is dead, and that I will quit looking for new things in that field, because dead fields yield no crop

Restarted my side project of bringing the @medienfeed service to the fediverse.

A free info service about design and media for the #DACH region, which already runs well on other websites.

Played around with making #huginn act like a buffer for the posts, using a Scheduler Agent and a Delay Agent for the scheduling.

Added a truncate filter to the Formatting Agent so the process doesn’t get denied by exceeding xxx amount of characters.

@medienfeed Nach dem neuesten Update sorgte ich innerhalb aller #huginn Projekte für mehr Klarheit, indem ich eine neue #Taxonomie anwandte

Unter uns, was sich Firmen in puncto Nutzern einbilden, ist entsetzlich.
ChatGPT meinte neulich dazu:

‚If you participate meaningfully, you are infrastructure.
And infrastructure doesn’t get to say “nah.”‘

Ich beschließe diesen Mastodon-Server von L1 nach L2 zu verschieben. Das beinhaltet vor allem persönliche Funktionsänderungen für mich selbst, aber auch Änderungen in der Art und Weise, wie ich hier kommunizieren werde und über was ich schreiben werde.
L2 (ausgeschrieben Lagrange-Punkt Zwei) unterscheidet sich von L1 ganz deutlich, und vor allem aber auch von von L4 und L5 und dem möchte ich gerecht werden.
Die Positionierung auf L1 erwies sich als Fehler und wird über Wochen korrigiert.
Ich schicke gerade einen Ping an die Microblogging-Accounts in L4.
Ein Blick in meine IFTTT-Struktur und ich sehe, dass der Ping auch an diese Mastodon-Instanz hier gehen, was gut ist, denn da hängt sofort der ganze Rattenschwanz an vermischten Identitäten mit dran, also nicht nur die Migration von L1 nach Zwo, sondern auch die Loslösung LZwos von derartigen Durchreichungen.
Den Zugangspunkt/Webhook zu Mastodon behalte ich aber bis auf weiteres. L2 wird von Automatisierungen gelöst?
Und die Vermischung von L3 (sämtliche Backupsysteme leben hier, sowohl in der Abstraktion, als auch als Programme) mit L4 durch das Durchreichen meiner Social Wall (L3) nach Microblogs (L4) findet hier ein Ende. Ich habe diese Archivsysteme nicht aufgebaut, um mich (oder dich) ständig an sie erinnern zu müssen, sondern die Freiheit zu haben, zu vergessen, weil ich weiß, wo ich nachlesen kann, wenn ich mich erinnern muss.

Ich finde die Grundlage des Lagrange-Punktes 4 dabei reizvoll: nicht nur handelt es sich hierbei um Objekte, die unter einem viel stärkeren Einfluss von Massen stehen, die ich selbst nicht beeinflussen kann

(Social-Media-Websites sind im Allgemeinen nicht stabil, die Accounts, die man dort hat, können durch Trends, Performanz und Cliquen sehr schnell verschwinden, dem Tribalismus ist das zu schulden),

man lebt auch schlicht nicht auf Trojanern. Aber man kann Sonden dort absetzen. Das geht.

Ich experimentierte mit dem Veröffentlichen meines Lesematerials als Telemetrie. Der springende Punkt dabei ist, dass ich keine Kommentare, keine Leseempfehlungen, und auch keine Hashtags abgeben möchte: ich teile damit weder Geschmack, noch signalisiere ich damit Produktivität. Entsprechend habe ich mein System schon angepasst, jedoch bleibt dieser Ort, L2, davon verschont. Hier finden andere Dinge statt. Dinge wie dieses.

Ich überarbeite mein Modell: Social Media sind nicht L4 oder L5, sondern astronomische Zentauren.

Instabil.

Das entwickelt sich langsam zu einem echten Projekt: wie macht man das Web für einen Nicht-McLuhan verwendbar?
Ich bemerke, dass die Lösung in DNS-Filtern zu bestehen scheint, und in eiserner Selbstdisziplin diese Filter nicht ständig aus- und wieder anzumachen.
Dass der Browser mehr ist als ein Darstellungsfenster, muss wieder zurück in meinen Kopf.

Versuche gerade meine Bookmarks von wallabag zu Linkwarden zu migrieren. Die Frage ist, ob Datengräber wie Linksammlungen nicht doch einfach nur nach einer Variante der Pareto-Regel für Daten funktionieren: 80% des Speicherplatzes sind immer von den Sachen belegt, die man nur in 20% der Fälle benötigt.

Aber gut. Irgendwo steht eine Notiz, dass der Bibliothekar (und auch der sogenannte „Hoarder“, also ein kompulsiver Sammler) im Mensch 2026 sublimiert wurden.

Nachdem ich gesehen habe, dass Linkwarden wenige Websites in einem lesbaren Modus speichert, bleibe ich bei wallabag für meine Lesezeichen, und verwende Linkwarden als Backup der Links, zu denen ich in meinen Postings auf mariobreskic.de verlinke.
Manche Software ist einfach genau richtig so wie sie ist.
Gut, dass ich in der Zwischenzeit nichts gelöscht habe, puh. Manchmal geht mein Enthusiasmus für Neues mit mir durch.
Und weiter geht es mit der Arbeit an meiner Bibliothek: ich passe gerade Adobe Bridge, Wallabag und Zotero so an, dass ich überall die gleichen Tags verwende, beispielsweise #berufsfeldgestaltung #designgeschichte #grafik2d #typografiei #typografieii #vertiefend und #visuellewahrnehmungundgestaltung für Rastersysteme für die visuelle Gestaltung ; ein Handbuch für Grafiker, Typografen und Ausstellungsgestalter von Josef Müller-Brockmann. Ich bewege mich vom Denken in Ordnern weg 🤔💭 #asca
Das hat überraschend lange gedauert, aber jetzt ist mehr Ordnung vorhanden. Und zu meiner Überraschung fühlte ich, dass eine methodische Herangehensweise an Gestaltung zu mir spricht, auch wenn im Moment nur in einer Art Tagtraum.
Aber jetzt sowohl in Adobe Bridge, als auch in Zotero die neue flache Hierarchie durch das Auswählen der entsprechenden Tags zu filtern, ist eine echte Entlastung:
keine Altlasten in der Form von Tags mit Ober- und Unterkategorien mehr, sondern nur die Literatur und ihre Verschärfung als vertiefende Literatur. So ganz langsam scheine ich mir einen Begriff jenseits von Ordnerstrukturen machen zu können.
Die nächsten Tage lese ich unter anderem auch über die Stuttgarter Schule rund um Max Bense. Hier und da finden sich noch Artefakte dazu.
Jerry Cantrells Doppelalbum „Degradation Trip” an einem trüben Sonntag von CD zu FLAC zu übertragen ist mehr als nur symbolisch. Dass ich dieses Album überhaupt vor so vielen Jahren während eines spontanen Treffens in Tübingen geschenkt bekommen habe, macht mich immer noch stutzig.
Ominös. Degradation Trip.
Ein melancholisches Album, wie Moore im Spätsommer 💔
20 Minuten am Tag für Social Media

Basierend auf meinen Nachforschungen, sind 20 Minuten Social Media pro Tag ausreichend und mehr führt nur zu Problemen des Selbstwerts, der emotionalen Selbstregulation, sowie zu Problemen, die sich...

Tumblr
Nachdem meine alte Suchmaschine für Grafikdesign seit bald zwei Jahren nicht mehr existiert, und der Grundgedanke in @medienfeed auf- und überging, habe ich heute der Energie Raum gegeben, die die daraus entstandene Lücke fühlt:
ich habe einen (zweiten) FreshRSS-Server eingerichtet, damit ich wieder meine Quellen und Themen um und über Grafikdesign und Gestaltung lesen kann. Hätte ich nur einen weiteren, privaten Account eingerichtet, müsste ich zwischen zwei Logins hin- und herwechseln.
So kann ich aber wieder an diesen traumhaften Zustand anknüpfen: auf meinen Geräten Feeds zu lesen, plattformunabhängig und auch ein wenig stolz darauf, meinen eigenen Infodienst so aufbauen zu können.
Ich richte auf jeden Fall meine Feed-Reader nochmal neu ein, für den neuen Freshrss-Server, der nur für mich selbst ist. Ich mag sowas: die eigene Welt wirklich mit sich herumzutragen, aber auch in dieser zu leben und zu agieren.
Während ich die letzten Stunden mir meine Notizen machte, wurde mir klar, dass ich, nachdem ich diesen Laptop neu installiert haben werde, der Welt der Betriebssystemfummler den Rücken zukehre.
Die Zeit, die das für mich und immer freiräumen wird!
Unter uns, ich glaube, dass die Erfahrung des Defragmentierens bei ein paar Leuten den bleibenden Eindruck hinterließ, dass der PC sich in einem fortlaufend defekten Zustand befinde, den man selbst reparieren müsse.
Was für eine Zeitverschwendung!
#note Umlernen wird zwar ein wenig dauern, aber mit der Neuinstallation meines Windows ist der erste Schritt schon getan.
Schließlich bin ich selbst die Ursache, dass ich das jetzt mache.
Tag drei meiner Neuinstallation.
Ich habe mein Paradigma für Datensicherheit weiterentwickelt: weg von der Cloud, hin zu lokalen Prüfsummen der Dateien. Außerdem teile ich meine Daten jetzt in Hot- und Cold-Storage, was lediglich eine zusätzliche externe Festplatte nötig machte.
Ja, was bleibt am Ende, außer so mancher Erkenntnis und Erfahrung?
Und auch ich bin hier keine Ausnahme: wenn man genug weiß, bemerkt man, dass es am Ende keine Rolle gespielt hat, außer eine Art Selbstbeschäftigung gewesen zu sein.
Zurück zum authentischen Handeln.