Avatar
pjv
0c99877612291bd818b3dd92f2852b823557b3744c3cb10470865c7a56a4929b

I'm building a WordPress plugin that is a small nostr client that allows sending WordPress content to Nostr from within the WP post editor. First public release on Github: https://github.com/pjv/wp-nostr.

#[0]

#[1]

Also rocketchat which I deployed instead of zulip when I evaluated them both, but if I had it to do over again now without the friction of user lock-in, I'd probably go with Matrix.

#[0] I have not tried this on a linux box (I use a mac), but I think you might be able to easily build for macos using cargo-bundle: https://github.com/burtonageo/cargo-bundle

I'm compiling gossip from the repo, but early on out of curiosity I installed cargo-bundle, created a simple Cargo.toml and then was able to generate a stand-alone app bundle for macos that worked fine.

cargo-bundle says it cross-compiles with a simple --target flag so my guess is that you would be able to pretty simply build at least for intel macs. On a quick glance through the repo I'm not sure if it can cross-compile for apple silicon yet. There's an open issue about implementing fat binaries that would run on both intel and apple silicon macs.

If you want to try it, I'll test for you. I have both an intel mac and an apple silicon mac.

Here's a personal relay strfry write policy in python: https://github.com/pjv/strfry-python-write-policy

#[0] If I'm no longer seeing posts from my fediverse follows through the relay.mostr.pub bridge (were working initially, then stopped without changing any of my configuration in my clients), how can I try to debug this?

It's not the diets, it's the humans. Every crypto currency is a religion. Every political leaning is a religion. Every technology for communicating with other humans is a religion. Every sports team. Every music group. Every media star. Every billionaire...

No, strfry and the plugin(s) simply communicate via stdio. The plugin is an executable in any language that can deal with input on stdin and write output to stdout. I wrote mine in python.

Here's the brief documentation: https://github.com/hoytech/strfry/blob/beta/docs/plugins.md

I don't think that strfry currently exposes enough through its plugin framework to implement the anti-spam ideas here (which I agree will be essential). Or if it does, it's currently undocumented.

What it does is let you build a simple (non-stateful) "write policy" plugin that gives you the incoming event (with some metadata like IP address, etc) and lets your plugin decide whether that event should be accepted or not.

The plugin I am currently testing on my instance:

1. lets you define a whitelist of pubkeys that are allowed to post anything.

2. lets anyone post a kind 10002 event

3. lets anyone post any event with a 'p' tag that includes any of the pubkeys in the whitelist

4. rejects writing everything else

strfry seems not to have any "read policy" plugin implementation (yet?). So I am unable to put limits on what people can read.

#[0] great document.

I'm working on a write-policy plugin for strfry that will implement most of what you specified in the section on personal relays. Can you expand some of the details of what constitutes "events tagging me"?

Does that include scanning the content of notes for npubs and / or hex pubkeys? Or just looking at 'p' tags?

Any subset of event kinds you have in mind for "events tagging me"?

That looks excellent.