Search
Items tagged with: ActivityPub
Week in Fediverse 2024-03-15
Servers
- GoToSocial v0.14.2
- Castopod v1.10.5
- Mitra v2.13.0
- tootik v0.9.4
- Announcing Ibis, the federated Wikipedia Alternative
- Apas: ActivityPub via email
Clients
- Sengi v1.7.0
- Elk v0.13.0
- Jerboa v0.0.63
- toot v0.42.0
- Mastonaut v1.9.0
- Voyager v1.47.0
- Photon v1.28.3
- Shitter v3.5.6
Tools and Plugins
- PeerTube Livechat Plugin v8.4.0
- FediFetcher v7.0.4
- Fediverse Redirect v1.13.0
- Fedify: A fediverse server framework in Deno
- LemmyAutomod: A tool for Lemmy that allows instance admins to set rules that will take action in certain scenarios
Protocol
- FEP-6481: Specifying ActivityPub extension support with NodeInfo
- FEP-9fde: Mechanism for servers to expose supported operations
Articles
- The playground schematic analogy for designing a fediverse service
- Owncast Newsletter, March 2024
- Tiktok and the Fediverse
- How updates work in ActivityPub / Mastodon
- Last Week in Fediverse – ep 59
-----
#WeekInFediverse #Fediverse #ActivityPub
Previous edition: https://mitra.social/objects/018e1f65-597a-c30c-c68f-fdbe89706f3a
Tiktok and the Fediverse
Today, the United States House of Representatives voted to require the Chinese company Bytedance to sell its stake in the popular service Tiktok. If the company does not comply, the bill would ban …Evan Prodromou's Blog
What do you think of when you hear the word "Fediverse'?
Please note that this is only a question about the meaning of the term, not wich protocol is better or if bridges between protcols are a good or bad thing.
Boost for more reach would be nice.
#fediverse #activitypub #Mastodon #bluesky
- Instances connected by using the ActivityPub protocol. (65%, 27 votes)
- Any network of connected Servers regardles the used protocol. (17%, 7 votes)
- Something else, I wrote in the comments. (12%, 5 votes)
- No opinion about that. (4%, 2 votes)
- I never heard the term Fediverse. (0%, 0 votes)
One of my takeaways: it is not widely understood what is required for federation that is _not_ in the #ActivityPub spec
To federate with other AP instances requires consensus on:
* How to post and load posts (http signatures, not in the spec)
* Account lookups (eg, webfinger)
* What the meaning of a "note" is (overloaded term)
* How to interpret collections and navigate them (not in the spec, or rather it's in the spec but is so broad as to not be useful)
* Reply flows
* JSON-LD
etc
1/
https://dbzer0.com/blog/can-we-improve-the-fediverse-allow-list-model/
#fediverse #ActivityPub #SpamPrevention
Internationalise The Fediverse
https://shkspr.mobi/blog/2024/02/internationalise-the-fediverse/
We live in the future now. It is OK to use Unicode everywhere.
It seems bizarre to me that modern Internet services sometimes "forget" that there's a world outside the Anglosphere. Some people have the temerity to speak foreign languages! And some of those languages have accents on their letters!! Even worse, some don't use English letters at all!!!
A decade ago, I was miffed that GitHub only supported some ASCII characters in its project names. There's no technical reason why your repo can't be called "ഹലോ വേൾഡ്".
Similarly, I'm frustrated that Mastodon (the largest ActivityPub service) doesn't allow Unicode usernames and has resisted efforts to change.
So I built a small ActivityPub server which publishes content from an Actor called @你好@i18n.viii.fi
- it is only a demo account, but it works!
Some ActivityPub clients report that they are able to follow it and receive messages from it. Others - like Mastodon - simply can't see anything from it. Take a look at the replies on Mastodon to see which services work. You can also see some of its posts on the Fediverse.
What Does The Fox Spec Say?
The ActivityPub specification says:
Building an international base of users is important in a federated network.
Internationalization
I can't find anything in the specifications which limits what languages a username can be written in. But there are a few clues scattered about.
The user's @
name is defined by preferredUsername
which is:
A short username which may be used to refer to the actor, with no uniqueness guarantees.
4.1 Actor objects
There's nothing in there about what scripts it can contain. However, later on, the spec says:
Properties containing natural language values, such asname
,preferredUsername
, orsummary
, make use of natural language support defined in ActivityStreams.
4. Actors
So it is expected that a preferred username could be written in multiple scripts. Which implies that the default need not be limited to A-Z0-9.
The ActivityStreams specification talks about language mapping.
Finally, the ActivityPub specification has some examples on non-Latin text in names.
So, I think that it is acceptable for usernames to be written in a variety of non-Latin scripts.
But What About...?
There are usually a few objections to "Unicode Everywhere" zealots like me. I'd like to forestall any arguments.
What about homograph attacks?
Well, what about them? ASCII has plenty of similar looking characters. I doubt most people would notice when a capital i is replaced by a lower L - and vice-versa. Similarly the kerning issue of an r and n looking like an m is well known. Are mixed language homographs more dangerous? I don't think so.
What if people make names that can't be typed?
Well, what if they do? Maybe not being found by people who can't type your language is a feature, not a bug. But, anyway, clients can let users search for other people, or copy and paste their names.
What about weird "Zalgo" text?
It is up to a client to decide how they want to render text input. The "problems" of strange Unicode combinations are well known. This is not a hard computer-science problem.
What about bi-directional text?
The spec makes clear this is allowed.
Do people even want a username in their own script?
I have no evidence for this. But I bet you'd get pretty frustrated if you had to switch keyboard just to type your own name, wouldn't you? In any case, why can't I have a username of @😉
What's Next?
If you build ActivityPub software, give some thought to the billions of people who don't have names which easily fit into ASCII.
If your software can see @你好@i18n.viii.fi
and its posts, please let me know.
https://shkspr.mobi/blog/2024/02/internationalise-the-fediverse/
#ActivityPub #fediverse #i18n #mastodon #unicode
I'd like to run an instance with non-ASCII usernames · Issue #8417 · mastodon/mastodon
Mastodon usernames are currently restricted to Latin characters. I'd like to have the option to run an instance which allows usernames like "莎士比亚". I'm not saying that it should be mandatory that e...GitHub
We’ve just published an update about this Mastodon trial which has been running for the last 6 months – you can read it here: https://www.bbc.co.uk/rd/blog/2024-02-extending-our-mastodon-social-media-trial
We are going to continue our trial here for at least another six months while we share our findings internally and seek more engagement from other BBC teams. We are also planning to start researching ways to publish more BBC content using ActivityPub.
#mastodon #ActivityPub #socialmedia
Rebuilding FourSquare for ActivityPub using OpenStreetMap
https://shkspr.mobi/blog/2024/01/rebuilding-foursquare-for-activitypub-using-openstreetmap/
I used to like the original FourSquare. The "mayor" stuff was a bit silly, and my friends never left that many reviews, but I loved being able to signal to my friends "I am at this cool museum" or "We're at this pub if you want to meet" or "Spending the day at the park".
So, is there a way to recreate that early Web 2.0 experience with open data and ActivityPub? Let's find out!
This quest is divided into two parts.
- Get nearby "Points of Interest" (POI) from OpenStreetMap.
- Share a location on the Fediverse.
OpenStreetMap API
OpenStreetMap is the Wikipedia of maps. It is a freely available resource which anyone can edit (if they're skilled enough).
It also comes with a pretty decent API for querying things. For example, nw["amenity"]({{bbox}});
finds all "amenities" near a specific location.
As you can see, it has highlighted some useful areas - a pharmacy and a pub. But it has ignored other useful locations - the train station and the park. It has also included some things that we may not want - bike parking and a taxi rank.
What API call is needed to get useful locations of of OverPass?
It's possible to specify the type of thing to find using nw["amenity"="restaurant"];
- but adding every single type of thing would quickly end up with a very large query containing hundreds of types.
It is also possible to exclude specific types of places. This retrieves all amenities except for fast food joints:
nw["amenity"]({{bbox}});-nw["amenity"="fast_food"]({{bbox}});
Again, that would be complex.
Perhaps one solution is just to return everything and let the user decide if they want to check in to a telephone kiosk or a fire hydrant? That's a bit user-hostile.
Instead, this query returns everything which has a name nw["name"]({{bbox}});
That cuts out any unnamed things - like park benches and car-sharing spots. But it does add named roads and train lines.
It is possible to use filters to exclude results from OverPass. The best that I can come up with is: nw["name"][!"highway"][!"railway"][!"waterway"][!"power"]({{bbox}});
That gets everything which has a name, but isn't a highway or railway or waterway or powerline. It isn't perfect - but it will do!
This is the query which will retrieve the 25 nearest things within 100 metres of a specific latitude and longitude. It includes the name and any other tags, the location, and the OSM ID.
ActivityPub
There's good news and bad news here. Firstly, ActivityStreams (which are subscribed to in ActivityPub) supports the concept of "Place" and "Location".
Once the user has a latitude and longitude, the can share it - along with a message, photo, or anything else.
Something like:
{ "@context": "https://www.w3.org/ns/activitystreams", "type": "Note", "content": "Here in NYC! <a href=\"https://www.openstreetmap.org/way/958999496\">John Lennon's Imagine Mosaic</a>.", "attachment": [ { "type": "Image", "mediaType": "image\/jpeg", "url": "https:\/\/fastly.4sqi.net\/img\/general\/590x786\/56367_9pxuZJD7d1hgPdaMFcFq1pipvTTMynBJsYcpHH-b8mU.jpg", "name": "A photo of a mosaic which says 'Imagine'." } ], "location": { "name": "John Lennon's Imagine", "type": "Place", "longitude": 40.77563, "latitude": -73.97474 }}
For example, here's a PixelFed post with an attached location - and this is the JSON representation. That status can be reposted into other social networks.
It is worth noting that Mastodon doesn't (natively) support location - if you view my repost of that PixelFed post you'll see there's no location metadata attached. That's OK! It just means that the status needs to include human-readable data.
Similarly, Mastodon doesn't support the arrive
vocabulary. So this will be limited to a message with a location attached.
Other ActivityPub services do support location.
Putting it all together
Well… that's a job for next week. Probably!
- Building a web site which gets the user's location is easy.
- Getting the data from OverPass should be straightforward.
- Creating an ActivityPub server which can post geotagged notes into the Fediverse might be a little beyond my skillset! Some testing with Darius Kazemi's AP Glitch suggests this should work.
If you'd like to help, please leave a comment.
https://shkspr.mobi/blog/2024/01/rebuilding-foursquare-for-activitypub-using-openstreetmap/
#ActivityPub #fediverse #FOURSQUARE #geolocation #OpenStreetMap
05 - Find nodes by applying multiple filters
A basic tutorial covering the key features of the Overpass languageosm-queries.ldodds.com
@raroun Nein, nicht abstrus, sonderen dem Zweck angepasste Plattform auswählen.
#Friendica ist Micro- und Macroblogging
#Pixelfed ist fürs Teilen von Bildern.
Dea ist eben das #Fediverse. Es gibt nicht die ein und alle Plattform für ein und alles. Sondern es gibt verschiedene Dienste - sie sind alle über #ActivityPub verbunden.
Question to any #Friendica users who are also familiar with federating to #Mastodon servers.
Why don't Friendica Likes
of posts federate across to Mastodon?
- is there any known solution for this annoyance, or at least a workaround?
- does the problem lie within Friendica, within Mastodon, or somewhere else?
- doesn't this IMO sizable flaw rather mock the mantra that the Fediverse via #ActivityPub facilitates widespread interoperability amongst myriad clients?
When i recently discovered that none of my Masto friends was seeing any of my Friendica Likes to their toots, i felt a bit devastated, not least coz it might have connotated rudeness on my part in their minds.
Hey #fediverse,
Can y'all Please tell #NPR about #mastodon, #activityPub (and #Matrix!), please?
No really.. They're literally asking for it,
Ok, I could be reading too much into it, but it really would be nice if maybe I wasn't the only one that mentioned maybe it's something they should look into?
kthx,
- A. Rando
Week in Fediverse 2024-01-12
Servers
- lotide v0.14.2
- ActivityPub for WordPress v2.0.0
- Bovine v0.5.7
- snac v2.44
- GoToSocial v0.13.1
- Lemmy v0.19.2
- Hubzilla v8.8.6
- Mitra v2.7.0
- ActivityPods v1.5
- tootik v0.5.14
- Thank you for making Owncast a success in 2023
Clients
- SubwayTooter v5.545
- IceCubesApp v1.10.20
- Voyager v1.34.0
- Lemoa v0.5.1
Tools
- TootSDK v2.0.0
- Lemmy Migrate v1.1.2
- Kbin KES v3.2.0
- Rebuttals on the Fediseer
Protocol
- Activity Streams/Primer/Link type
- ActivityPub editor's draft
Articles
- The Pirate Ship Model of Federated Social Media
- Podcasting news
- How Threads will integrate with the Fediverse
- Last Week in Fediverse – ep 50
-----
#WeekInFediverse #Fediverse #ActivityPub
Previous edition: https://mitra.social/objects/018cdb6f-6551-f5ce-b5ca-2b934b8f625b
The Pirate Ship Model of Federated Social Media
It’s romantic sailing the high seas with your mates.תַּעֲלֻמוֹת (@taalumot)
We just released version 2.0.0 of the #ActivityPub plugin for #WordPress (WordPress.com release is planned for tomorrow).
Main feature: Full bidirectional/threaded comment federation 🎉
Full Changelog: https://github.com/Automattic/wordpress-activitypub/releases/tag/2.0.0
Thanks #Automattic @mattwiebe @kanru @linos @mediaformat @mat @webrocker @sentynel and @janboddez for your contributions
https://wordpress.org/plugins/activitypub/
Release 2.0.0 · Automattic/wordpress-activitypub
What's Changed Normalize attributes that can have mixed value types by @pfefferle in #586 some phpcs fixes by @pfefferle in #590 WebFinger: Add support for URLs by @pfefferle in #594 Remove deprec...GitHub
My instinct, looking at conversations around #ActivityPub and AS2, is that there there's a disconnect when people talk about trying to ensure compile-time type safety with those that prefer systems that lean more toward dynamic, runtime typing.
Because I've seen a few cases now where people in the latter group seem to not understand why the first group views the translation into this as such a problem.
But this isn't about the preferred tool, this is about where the complexity lives.
1/
Frage | Wenn ich einen fremden Kommentar bei einen meiner Beiträge lösche, wird das dann auch auf via ActivityPub verbundenen Server gelöscht oder nur bei mir?
Hintergrund ist das eben jemand meinte das das dann eben anscheinend nur bei mir gelöscht würde, was in meinen Augen recht sinnfrei wäre.
Tags: #Frage #ActivityPub #Friendica #Beiträge #Kommentare #Löschen #Sascha #2024-01-03 !Friendica Support
I can't be the only person who is bothered that Intransitive Action still has an origin on it, right? When origin is defined as the indirect object?
DRUPALERS!
so what is #Drupal doing about #ActivityPub on an official level? because last i checked, there's only these 3 modules, and only the #Indyweb one is recommended --NOT EVEN THE ACTIVITYPUB ONE!
related: https://mastodon.social/@mike@flipboard.social/111575193521003434
#activitypub #gotosocial #fediverse
https://docs.gotosocial.org/en/latest/
https://github.com/superseriousbusiness/gotosocial
GitHub - superseriousbusiness/gotosocial: Fast, fun, ActivityPub server, powered by Go.
Fast, fun, ActivityPub server, powered by Go. Contribute to superseriousbusiness/gotosocial development by creating an account on GitHub.GitHub
Ja, siehe:
#ActivityPub
#W3C #Recommendation 23 January 2018
https://www.w3.org/TR/activitypub/
#Activity #Vocabulary
#W3C #Recommendation 23 May 2017
https://www.w3.org/TR/activitystreams-vocabulary/
ActivityPub
The ActivityPub protocol is a decentralized social networking protocol based upon the [ActivityStreams] 2.0 data format.www.w3.org
Könnt Ihr genauer erläutern, wo und wie #ActivityPub Emoji-Reaktionen unterstützen soll?
Das "Activity Vocabulary" kennt "Like" und "Dislike"...
https://www.w3.org/TR/activitystreams-vocabulary/#activity-types
The JSON-LD Playground web app is very useful for validating or exploring #ActivityPub data. However, if you prefer the command line or want to integrate Playground-like functionality into scripts, the ld-cli program could be useful. It’s definitely been useful for me. Features include: expand, compress, flatten, frame and conversion to/from RDF (N-Quads).
https://github.com/filip26/ld-cli https://github.com/filip26/ld-cli6
GitHub - filip26/ld-cli: A Command Line Interface for Linked Data Processing
A Command Line Interface for Linked Data Processing - GitHub - filip26/ld-cli: A Command Line Interface for Linked Data ProcessingGitHub
I post most of my photos here - https://www.flickr.com/photos/mgifford
I'd love to have #Flickr just jump onto #ActivityPub so they could all be in one place.
Until then. Here are some photos of France.
https://github.com/steve-bate/fediverse-jsonschema
GitHub - steve-bate/fediverse-jsonschema: JSON Schema definitions for Fediverse protocols and specifications.
JSON Schema definitions for Fediverse protocols and specifications. - GitHub - steve-bate/fediverse-jsonschema: JSON Schema definitions for Fediverse protocols and specifications.GitHub
friendica VPS setup on ubuntu 22.04 LTS
Hi,
I'm working on my first #friendica #VPS installation, here you'll find my initial post about general thoughts like what distro to use, size and costs.
I'm using the tutorial "creating a friendica server - ubuntu" by @Hank G ☑️.
As of now I'm doing well in the process and want to start this post to document differences and questions while installing the server.
This server is going to host an already existing friendica node I have to move from another hosting provider. That means that for example the DB doesn't have to be created from scratch but moved and other smaller details.
I will try to address the different steps of installation in answers to this post and appreciate help, ideas and observations.
I'm doing this from a #linux desktop environment from the console but there shouldn't be differences if you want to do this from a #windows machine.
Integrujte WordPress nejen s Mastodonem
Tento týden společnost Automattic oznámila dostupnost pluginu ActivityPub na Wordpress.com. Tento plugin si ale můžete nainstalovat i do vlastní instance Wordpressu, udělat ze svého blogu součást sítě Fediverse a přímo komunikovat nejen s uživateli Mastodonu. Přečtěte si, jak na to.
#ActivityPub #blog #fediverse #Mastodon #sociálníSítě #wordpress
https://blog.eischmann.cz/2023/10/14/integrujte-wordpress-nejen-s-mastodonem/
Místo Google Photos je super Immich. Mám ho také na serveru. Ten jsem chtěl nabízet za menší poplatek na provoz na subdoméně jmeno.mycloud.photos. Třeba někdo využije s rodinou.
Tomorrow I'll be doing a presentation about the #ActivityPub API at the O'Reilly Media event "APIs: Possibilities and Pitfalls". I'm excited!
https://www.oreilly.com/live-events/apis-possibilities-and-pitfalls/0636920097623/
APIs: Possibilities and Pitfalls
Following up on the themes explored during our API Day event in the early spring, APIs: Possibilities and Pitfalls now takes exploring APIs to the next step, with future-thinking insights on important and innovative APIs and techniques for API-dri...www.oreilly.com
In the many discussions about #threads promise to add #activitypub support, regulations such as the #DMA and the #DSA, as well as the Canadian Online News Act have come up.
In this piece I dive deep into the specific articles of the Acts to see if they might impact Meta's decision making.
Read it at
https://fediversereport.com/making-sense-of-threads-and-regulation/
Making sense of Threads and regulation
The launch of Threads, with its promise of adding ActivityPub support in the future, is hotly debated.fediversereport.com
Frage | Friendica: Federiert Friendica schneller zu Diaspora als zu ActivityPub?
Kann es sein das von Friendica aus die Federierung zu und von Diaspora wesentlich schneller als zu und von ActivityPub ist? Ich hatte jetzt schon mehrmals den Fall das ich auf Diaspora nach kürzester Zeit Reaktionen auf meine Beiträge bekam, während Reaktionen von anderen via ActivityPub verbundenen Servern erst ein gutes Stück später Reaktionen eintrödelten.
#Frage #Friendica #Federation #Diaspore #ActivityPub #2023-07-13 !Friendica Support
(Sowohl der Kommentar auf den Beitrag als auch die 'Gefällt mir', kommen alle von Diaspora Nutzern)
I’ve promised enough people this, so I had to do it! 😁
Here’s my write-up of how I added client-side Fediverse-powered comments to my Jekyll blog using the Mastodon API.
Huge props to @jwildeboer for the initial inspiration, as well as @julian and everyone who provided feedback for inspiring the design improvements.
https://cassidyjames.com/blog/fediverse-blog-comments-mastodon/
✨💬 Reply to this thread then check the blog post comments to see it in action!
#Mastodon #Jekyll #WebDevelopment #ActivityPub #design
Toot toot! Mastodon-powered Blog Comments
The Fediverse—and Mastodon’s API—is magic for static Jekyll sitesCassidy James Blaede
Eventually #Meta will have the final say when it comes to #ActivityPub. Like how all word processors must support .docx, and all websites are built with Chromium compatibility in mind.
This is how you take over an open protocol.
"Embrace, extend, extinguish."
7/🧵
#pixelfed
#activitypub
#mastodon
#tip_mastodon
https://pixelfed.cz
Pixelfed CZ
Pixelfed.cz je platforma pro sdílení obrázků, etická alternativa k centralizovaným platformám.Pixelfed CZ
@Nuno @amitten Well, I'd say it depends a lot on the concrete situation. Many #activitypub devs have seen how historically companies like Meta & Google have applied a Trojan horse strategy, to eventually take over the small spaces that decentralized and/or FOSS projects had opened. The #XMPP case comes to mind, but it also encompasses how the whole web has become.
If to put in place measures to avoid that happening to the #Fediverse is being a fanatic, long live the fanatics! 😃