Developer of ActivityPub-based micro-blogging and content subscription platform Mitra. I help maintain the FEP repository and write my own FEPs too. Currently working on ActivityPub Next.
Public Key
npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw Profile Code
nprofile1qqsx5he4ms5pyakrp3f8uyjqaa4660hj008e9d877qtacl66tsc7tmqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqs6amnwvaz7tmwdaejumr0dsde92a5
Show more details
Published at
2026-08-18T21:12:09Z Event JSON
{
"id": "fcc8f960b9ba784e58b7adfd83a68ffad3e43c5512bf42aa5ec07e12affedabe" ,
"pubkey": "6a5f35dc281276c30c527e1240ef6bad3ef27bcf92b4fef017dc7f5a5c31e5ec" ,
"created_at": 1787087529 ,
"kind": 0 ,
"tags": [
[
"proxy",
"https://mitra.social/users/silverpill",
"activitypub"
],
[
"client",
"Mostr",
"31990:6be38f8c63df7dbf84db7ec4a6e6fbbd8d19dca3b980efad18585c46f04b26f9:mostr",
"wss://relay.ditto.pub"
]
],
"content": "{\"name\":\"silverpill\",\"about\":\"Developer of ActivityPub-based micro-blogging and content subscription platform Mitra. I help maintain the FEP repository and write my own FEPs too. Currently working on ActivityPub Next.\",\"picture\":\"https://mitra.social/media/6a785bf7dd05f61c3590e8935aa49156a499ac30fd1e402f79e7e164adb36e2c.png\",\"nip05\":\"[email protected] \",\"fields\":[[\"Code\",\"https://codeberg.org/silverpill/\"],[\"Matrix\",\"@silverpill:unredacted.org\"],[\"XMPP\",\"[email protected] \"],[\"$XMR\",\"48YM8jwJqDkeUvD38vepSXFeMZH1zsjbvGwTTuaNSSq6Q5GyeWaeiheAZUsSmNn72YdyLpw8geb4FL3opZfGbguJLUj8Mi9\"],[\"XMR subscription\",\"https://mitra.social/@silverpill/subscription\"],[\"PGP\",\"0541 49E3 0F91 C6D7 8FFA C49C 955F 5A6E 2123 25F0\"],[\"OMEMO fingerprint\",\"689a2fb0ec87a9481fb45cb7d8870da6aeb4d8247bd69a39017701133b901f04\"],[\"Matrix (backup)\",\"@silverpill:poa.st\"]]}" ,
"sig": "0c87f8aca9bd4bdf4c66557f56fffb1c12b021bd3080cce4a66a340bf6ae4b57a7b20e9384634347e334687765d7e1520bd73f55b4cfee73a134c62fad342125"
}
Last Notes npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…4m0l @nprofile…235q mitra 5.10.0 ships with a new command: mitra media fetch <url> It downloads the file and saves it to the media directory with a correct file name. If you want to restore missing media you can get URLs from the database and then media fetch them one by one. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…a082 The object of the Add is a Collection, which would usually mean to add the collection obviously You can introduce a new activity type, which will have different semantics. e.g. DeliverBatch ----- startTime: The creation time of the chronologically first activity in this batch. I suggest clarifying what "creation time" means. Is it the value of the published property of an activity? Delivery The Add activity in the example does not have the id, actor and to properties, which are usually required. Processing Should receiving servers add Add activities to inbox collections? @nprofile…7p3a npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill The biggest problem for peer to peer ActivityPub is the fact that ActivityPub is primarily a "pull" protocol. You need to fetch a remote actor before interacting with it. This is not feasible in the environment where nodes are intermittently online. What if we used a special activity to request objects? I've described this idea in more detail in Asynchronous object retrieval: https://codeberg.org/silverpill/feps/src/branch/main/aef6/fep-aef6.md I think this mechanism, if combined with self-authenticating objects, should make ActivityPub compatible with store and forward protocols. #p2p #dtn #fep_ef61 npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill I added a list of recommended libraries to the ActivityPub developer guide: https://codeberg.org/ap-next/ap-next/src/branch/main/guide.md#libraries - activity (Go, used in GoToSocial) - Fedify (JavaScript, used in Hollo and Ghost) - Fedipub (Ruby, used in Manyfold) - activitypub_federation (Rust, used in Lemmy) - APx (Rust, used in Mitra) This list only includes libraries that are actually used somewhere. Libraries that are not used, or used in projects with too few users are not included. #fedidev #activitypub npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…a5y3 What is your stance on "cryptocurrency related projects"? npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…mzmr having the sender generate an ephemeral keypair (include the public key envelope) So the recipient will need to encrypt to this ephemeral key when replying? npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…6dlt Gitea is not interested in federation, but for me it is the most important feature. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…vgdh What's worse, Monero is not just a cryptocurrency. It's cryptocurrency for criminals! npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill Codeberg is banning "cryptocurrency projects": https://codeberg.org/Codeberg/org/pulls/1254#issuecomment-19820413 I don't know if Mitra qualifies as such, but I guess it is time to move to a self-hosted forge. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…mzmr >If the proof covers all of that then it's not strictly needed, but it's cheap paranoia. Do you mean id/actor/to of a plaintext activity, or of an envelope (EncryptedActivity)? My understanding is that the properties of an envelope have no effect on security. It can even have a different actor. I added an example of a plaintext activity: https://codeberg.org/silverpill/feps/src/branch/main/0806/fep-0806.md#plaintext-activity Also added HPKE mode to the parameter list - mode_base. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…jph8 @nprofile…9683 @nprofile…t3h7 @nprofile…egnj @nprofile…8cpz @nprofile…smhc @nprofile…tsag http://mastodon.i2p npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill I finally got around to trying #iroh It nicely complements FEP-ef61, because it allows you to connect to another actor by its did:key. In theory, we can completely replace the federation of HTTP servers with a federation of iroh nodes. However, I'm not convinced that iroh is the best solution. The most obvious problem is a lack of anonymity. Newer versions of iroh support custom transports, and Tor transport is among them, though still experimental. The work on I2P transport has not started yet. Another problem is the requirement to be online all the time. A potential solution is iroh-gossip, which I haven't tried yet, but I doubt that it works good enough for nodes that come online once per week. A more traditional approach to FEP-ef61 with a combination for clearnet, tor and i2p gateways might be simpler and better. But iroh is an interesting project that's worth keeping an eye on. https://codeberg.org/silverpill/minimitra/src/commit/2dd4e4f82b476f6b0a3d2610f158691ad5f46d11/src/p2p_iroh.rs npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…3eqn @nprofile…ng8x It's slop, you can easily tell that from commit messages Have you tried Shoot? https://github.com/maddyunderstars/shoot It's another ActivityPub-based group messaging app npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…mzmr @nprofile…m70s @nprofile…t3h7 @nprofile…pnc4 @nprofile…pl32 Is there anything built on top of Noise for group messaging? As far as I can tell, HPKE is used in MLS npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…57wx Shoot has groupchats and guilds (similar to matrix spaces). These matrix-AP bridges seem to only work for DMs npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…57wx Would be nice if it federated with https://shoot.pub/ npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…zn8j That's because real ActivityPub differs from what is written in the W3C specification. Traditionally, development of an ActivityPub application required a lot of reverse-engineering because there were no developer documentation (aside from several blog posts), and no good libraries. This is changing, and today there are several well maintained libraries and a guide for ActivityPub developers: https://codeberg.org/ap-next/ap-next/src/branch/main/guide.md (this is what I am working on) npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill I've got a report about Mastodon v4.7.0-alpha.1 not federating with Mitra. Can anybody confirm this? They recently merged FEP-8b32 signature verification, that might be relevant. All Mitra activities are signed npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…9mrz @nprofile…tyzc It worked npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…9mrz @nprofile…tyzc I don't see a follow request, but there is a bigger federation problem - your server responds to all my requests with 418 I'm a teapot. So you will probably not see this message :] npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…834j No, it is not announced. The problem is probably in Accept.object - in my case it is a URL of the Follow activity but some servers expect an embedded activity. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…tyzc Are you trying to follow me or the group @[email protected] ? npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…834j "data did not match any variant of untagged enum AnnouncableActivities" npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…mfuj Unfortunately this doesn't match my observations. If anything, the volume of PR speak seems to be increasing, probably because people started to use LLMs to write posts for them. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill Lemmy can see my groups, and it can discover posts with "Search": https://voyager.lemmy.ml/post/17669 But it can't follow a group because it doesn't like my Accept activity: https://github.com/LemmyNet/lemmy/issues/6595 RE: https://mitra.social/objects/019f053a-9069-7fd1-89f9-60b7318a368f #nevent1q…22zk npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…2t6p That would be great! I intend to move apx to a separate repository once things stabilize a bit. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill FEP-ef61: Portable Objects has been updated: https://codeberg.org/fediverse/fep/pulls/872 The ap+ef61 URI scheme is now allowed, while ap remains the recommended one. This is to ensure compatibility with @nprofile…w028 whose maintainers decided to use the ap+ef61 scheme until the specification is finalized. #fep_ef61 #nomadicidentity npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…s2sp @nprofile…8udl Interesting. I use GIN index for FTS, but haven't noticed any issues. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…2t6p It should be possible to publish activities to a HTTP gateway and send them directly to peers at the same time. FEP-ef61-aware peers will have no problem with HTTP-compatible 'ap' URLs (I used them in my Syncthing experiment). ----- By the way, I maintain a crate that contains all necessary components for FEP-ef61 implementation: https://docs.rs/apx_sdk/latest/apx_sdk/ npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…8udl What's wrong with search on Mastodon/Akkoma? npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…2t6p FEP-ef61 implementations can communicate peer-to-peer. I once did an experiment with ActivityPub over Syncthing: https://mitra.social/objects/019de9a2-7769-7713-85c9-ad8e8599268d #nevent1q…0a8x npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…qj99 The work on FEP-8b32 implementation has started: https://socialhub.activitypub.rocks/t/fep-8b32-object-integrity-proofs/2725/113 npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…66dp Yes, embedded FEP-8b32 signatures complement HTTP signatures, they don't replace them. When you access a protected resource with a GET request, HTTP signature is the only option. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…66dp Ed25519 All known FEP-8b32 implementers support EdDSA in embedded signatures: https://codeberg.org/fediverse/fep/src/branch/main/fep/8b32/fep-8b32.md#implementations Some of them may support EdDSA in HTTP signatures too. What happens if my instance only does Ed25519 signing and another instance does not support it? The authentication will fail, but in theory recipients can try to authenticate activity by fetching it by its id. Can I use the same key pair for all users on my instance? Yes, but that increases damage in case of a key compromise. Is there a functional difference between using an instance actor or the admin user for Authorized Fetch signatures? Depends on what resource you're trying to access. If the resource is private, such as a direct message to admin, only the admin actor will be able to access it. If I don't want to implement an Outbox (since it seems like the Fediverse has moved away from it), does my endpoint for it still need to exist? The outbox property is required on actors but the endpoint is optional. The Fediverse doesn't actually move away from it, the outbox is used for backfilling. What is the worst thing a bad actor could do if my account's private key is compromised? Impersonate you, and all users on your server if the secret key is shared. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…vgdh @nprofile…7t48 This is because @board is a Group actor. When a top-level post is addressed to a group, it is considered a group conversation, so every reply is also addressed to that group. Ideally, something should be changed on the boost-bot side (source: https://github.com/wxwmoe/wxwClub). They could stop reposting replies, or they could change the actor type, or they could provide some indicator that their Group is not a modern FEP-1b12 group and behaves differently. Or maybe this boost-bot is triggered specifically by @-mention, and not by addressing (via to). In this case, we can try to disable mention - that should not affect other groups. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…5c4e That's what I am thinking too, but why it sends these Update activities in the first place? I get one every 10 minutes. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…dwj0 Do you know why your account constantly sends Update activities? The actor ID is https://hubzilla.monster/channel/scott Signed by https://authorship.studio/channel/scott npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…rgcq Oh hello there, I have a question about Aktor. Could you provide a short description of the project? In one sentence - it's for @nprofile…cjkf newsletter. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…davq @nprofile…s2sp I don't think there is a difference. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…s2sp With AcceptFeatured you don't need to determine anything. Because the object type is right here in the activity name npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill I've been reviewing the new FEP from the Mastodon team today, and one thing that caught my attention is the use of Accept and Reject activities for managing approvals. Another day, someone proposed to use Follow activity for "watching a thread". So now, when you receive a standard activity, you need to use increasingly complicated heuristics to figure out what the activity does, because it is not possible to infer that from its type anymore. This has to stop. I think we need to start giving our activities better names. #ActivityPub npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…smhc It asked to me to click on motorcycles. The future is not evenly distributed :( npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…smhc On what site did you find it? I have never seen anything like that npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…qr25 @nprofile…y0lv Yes. Relays are usually called gateways, but the architecture is very similar. https://codeberg.org/ap-next/ap-next/src/branch/main/nomadpub.md npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…qr25 @nprofile…y0lv It's hard - but not too hard, people launch new ActivityPub projects all the time. I considered Nostr back in 2023 but now it's too late, because I designed a protocol that I believe is better than Nostr, and its backward compatible with Fediverse (so it inherits its network effects). npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…y0lv @nprofile…qr25 ActivityPub. We now getting capabilities previously available only on SSB & Nostr. Key-based identity, local-first clients. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…8vmk Did that change fix the Sharkey problem? @nprofile…vgdh npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…qr25 This is one of the reasons I don't build on Nostr. It's full of delusional bitcoin cultists npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…fjtc Did you build that platform? Are there plans to open source it? Or make it available to more projects? @nprofile…g30f @nprofile…vwdh @nprofile…u3tx @nprofile…2mcw @nprofile…rdsf npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…sygg There is nothing new. All kinds of decentralized social networks have been tried in 2010s, the clear winners are Fediverse and SSB. What happens if you try to combine the two? FEP-ef61 npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…vgdh @nprofile…k4nn What kind of component? npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…k4nn This is an indicator of the last read message in the timeline npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…krnx It likely means your HTTP server is rejecting the request (not Mitra). For nginx, you need to adjust this setting: https://codeberg.org/silverpill/mitra/src/branch/main/contrib/mitra.nginx#L35 npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…krnx @nprofile…gunk npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…d8rs @nprofile…v7dx @nprofile…v7dx Sent another one to https://marius.federated.id/inbox 2026-05-06T18:33:57Z npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…v7dx >inbound verification Is it enabled on this instance? I tried to send a POST request signed according to RFC-9421 to your inbox, the response was 401. Timestamp: 2026-05-06T12:50:30Z cc @nprofile…d8rs npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…krnx It is similar to followers-only posts, but instead of simply following, subscribers need to pay a certain amount. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill UPDATE: ActivityPub over Syncthing actually works. I am exchanging activities with another Mitra Mini user. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill Fediverse & P2P Nomadic identity is a nice feature, but FEP-ef61: Portable Objects is not limited to that. The intention was always to allow peer to peer communication without servers. This is why the protocol was designed to be transport-agnostic: you can use fediverse servers to deliver activities, but you can also use emails, torrents or USB sticks. To explore these possibilities, I added a simple P2P synchronization mode to Mitra Mini, which allows clients to exchange activities via a shared directory. This doesn't mean that clients should run on the same machine. Syncthing is a tool for P2P file synchronization that can be used to share a directory between multiple machines, and it should work well for our use case. The P2P mode is available in Mitra Mini v0.4.0. You can use a pre-compiled binary, which is now self-contained and includes the mitra-web frontend. See installation instructions in the readme. To enable P2P mode, add the following block to your configuration file: [federation] p2p_shared_outbox = "/path/to/shared/directory" Registering on a web gateway is not necessary when working in P2P mode, but you need to specify it in the config, because a lot of legacy code still depends on that. If you'd like to connect, DM me your Syncthing device ID (it can be used in a Whonix VM to prevent IP address leaks). #fep_ef61 #p2p #nevent1q…syra npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…0jt2 This site provides comparison tables for various protocol features: https://funfedi.dev/support_tables/ npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…zujd Mitra is a server software. It has a default frontend, Mitra Web, but this frontend is not compatible with other servers. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…53ta How it breaks duck typing? npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…fwt5 What are you working on? npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill >I'm probably going to set it to also subscribe to a list of mitra instances daily to block - Someone on GoToSocial Oh cool, I didn't know there is a blocklist of mitra instances. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill FEP-ef61 now recommends semantic routing (FEP-ae49) for gateways: https://codeberg.org/fediverse/fep/pulls/840 #fep_ef61 npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…yla0 ActivityPub data can be portable too, even distributed across multiple instances: https://codeberg.org/ap-next/ap-next/src/branch/main/nomadpub.md But popular Fediverse platforms don't support this feature. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…2gus I wouldn't count on that. In the announcement Mastodon team credits SWF for work on E2EE, not the people doing actual research. That's part of the deal. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…s2sp @nprofile…p3lz I don't use docker in production, so I am happy that others take care of images. Haven't decided on CI yet. My plan was to move to my own self-hosted Forgejo instance once forge federation is implemented, and start building advanced infrastructure there. But the work on federation is progressing very slowly. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill flohmarkt now implements FEP-0837: Federated Marketplace! They add Proposal as an attachment to Note. Here's an example: https://kleinanzeigen.bonn.digital/~bonndigital/48a0e2b7-f0d0-421b-9190-cc15306be6a3 I think Proposal properties could be added directly to Note to make the structure simpler. But an attachment is fine too. #fep_0837 #flohmarkt npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…tc7m Added a link to your website to ActivityPub developer guide: https://codeberg.org/ap-next/ap-next/src/branch/main/guide.md#webfinger npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…tc7m Thanks! Mitra supports subdomain.domain.tld -> domain.tld setups, but not setups with two different subdomains like @[email protected] of yours. I'll fix that in the next release. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…vgdh Please try again npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…vgdh @nprofile…tn0l @nprofile…z3wv Looks like it was rejected by the anti-spam filter on gateway. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…vgdh @nprofile…tn0l Cool! Could you send a message to @nprofile…z3wv? (The platform-specific code that Mitra uses is actually Unix-only, not Linux-only.) npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…tn0l Yeah that's true - I added this to the list of limitations in the readme. But I think it can be ported to other OSes. Which one do you use? npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill How Nomadic ActivityPub (FEP-ef61) compares to other protocols? I made a table: https://codeberg.org/ap-next/ap-next/src/branch/main/nomadpub.md#protocol-comparison npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…d8rs It is displayed as a post (without image): https://mitra.social/post/019d446f-b692-036c-b345-78291b764a19 There is also another "post", full of base64 :) npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…2y8k @nprofile…xsag Some interesting data here: https://funfedi.dev/support_tables/object_types/ npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…qhdx Is there a blocklist? I've never seen FediBuzz announcing my posts, although I did see it announcing posts from other Mitra instances. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…m7tc Welcome back npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…lqwx At the moment these servers are Forte, Mitra, tootik. I added this information to "Current limitations" list in the readme. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…77cu You mean, the entry point for a developer? I started with consuming npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…lqwx There is a caveat, of course. It can communicate with Mastodon and other Fediverse servers, but only a few of them are capable of distinguishing decentralized accounts from regular ones. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…lqwx It is useful if you want a micro-blog account that is not tied to a single server / domain name. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill Announcing Mitra Mini v0.1.0 Mitra Mini is an ActivityPub client that implements nomadic identity. It has become stable enough that I decided to cut the first release. The basic features have been implemented: posts, reposts, likes. For more information, check the project's readme: https://codeberg.org/silverpill/minimitra It all started nearly four years ago with a vague idea that linking cryptographic keys to #ActivityPub actors could unlock decentralized identity in Fediverse. Eventually, the solution was discovered, and implemented by several projects, but these implementations were servers, not clients. Now there is finally a client, and the design has been proven to work well. #NomadicIdentity npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…gmdz No, I don't see it npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…gmdz In theory it could ingest content by following a blog via ActivityPub, but I don't see this mentioned in the docs. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…gmdz Such tools are often RSS-ActivityPub bridges. They parse your feed and re-publish posts to Fediverse, where people can comment on them. Apparently Pinka works like that too https://pinka.dev/setup/configuration/ npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…h0ux @nprofile…cjkf I would simply ignore an obviously vibe coded project with no history. Fedibook doesn't has a license, so it is not qualified for inclusion either way. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…h0ux I am already facing this problem in @nprofile…cjkf. I think vibe-coded projects will be de-prioritized because most of them are not newsworthy and immediately abandoned by their authors. A project will be featured only if it survives and gets some traction. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…ptyr ActivityPub relays can help with that https://joinfediverse.wiki/Relays npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…svam You can say it at https://codeberg.org/silverpill/mitra Some fedi developers took an aggressive stance, but I don't care that much. If a bug report is legitimate, then it shouldn't matter what tool was used by the reporter. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…2y8k @nprofile…c7yq @nprofile…s2sp What hasn’t been considered is the ability of multiple people to speak with “one voice” yet. Imageboards? There was one that federated using ActivityPub: https://github.com/FChannel0/FChannel-Server npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…ut88 +1 for formalizing the existing practice in a FEP. PropertyValue is covered in FEP-fb2a, but it proposes an alternative representation which implementers must support: https://codeberg.org/fediverse/fep/src/branch/main/fep/fb2a/fep-fb2a.md npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…dcn3 @nprofile…s2sp No, but I think you can use it to set up a darknet shop npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill Mitra 4.20.0 will add context property to replies. Among other things, this should help Pleroma re-construct threads when some posts are not available. cc @nprofile…s2sp RE: https://mitra.social/objects/019d06ec-3768-06df-99b6-61bb71a86d45 #nevent1q…2666 npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…vkpw @nprofile…x4d0 This request returns an HTML page instead of ActivityPub object: curl -H 'Accept: application/ld+json; profile="https://www.w3.org/ns/activitystreams"' https://blog.fabiomanganiello.com/article/Madblog-federated-blogging-from-markdown npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill Large-scale online deanonymization with LLMs https://arxiv.org/abs/2602.16800 It's over, anons. npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…s2sp HTTP signature bypass is serious, but I can't figure out what it going in this PR. Looks like a bunch of unrelated changes npub1df0nthpgzfmvxrzj0cfypmmt45l0y770j260auqhm3l45hp3uhkqx27gmw silverpill @nprofile…z7ps I usually add "on your own hardware"