-

@ 0c998776:56a4929b
2023-08-30 13:36:52
My use-case is probably different from yours but I can 100% honestly say that Graphene works better for me as a daily driver than the stock Android on a Samsung A71 that I switched from. I only have one profile. I was expecting to have to spend a lot of time setting things up and tweaking, but it ended up being less than I feared, and since I got the phone set up and configured, it's been surprisingly stable and reliable.
-

@ 0c998776:56a4929b
2023-08-29 16:53:19
FWIW, I'm using GrapheneOS specifically to de-Google (in the sense of them vampiring my data). I've tried all the open source keyboards and they are all unusable for me. I am running the latest version of Google's GBoard which is the best keyboard for me functionally by many miles.
The beautiful thing about Graphene is that you can install GBoard and very simply give it zero permissions; no networking, no contacts, no microphone, no photos and videos... and then you get a fully functional keyboard and none of the siphoning.
-

@ 0c998776:56a4929b
2023-08-26 12:14:15
I don't know anything directly about the devs, but grapheneOS works better for me than stock Android and the amount of stuff I am not currently "sharing" with google lets me sleep better.
-

@ 0c998776:56a4929b
2023-08-25 12:35:46
master
-

@ 0c998776:56a4929b
2023-08-12 10:21:41
This is great news. I think if widely well-implemented in relays and clients the gossip model can fix some fundamental issues in nostr that would eventually (under higher adoption) become show-stoppers.
If nostr's functioning becomes critically dependent on some low number of popular relays (which is arguably the case already), it loses its single most important characteristic: DECENTRALIZATION. And those popular relays inevitably become targets of all kinds of interference (hacks, DDOS's, court orders, etc, etc, etc).
If nostr is going to work as a large-scale social media platform (there are plenty of other use-cases that don't depend on this), there have to be LOTS of independent, commodity relays all over the place that are fairly dumb and follow a relatively simple set of common rules.
-

@ 0c998776:56a4929b
2023-07-28 10:59:10
Live and let die. Also Roger Moore.
-

@ 0c998776:56a4929b
2023-07-22 19:31:51
Original code is a rush when you get it working. Refactoring gives you the satisfaction of craft. Looking forward to when you push this new code to main.
-

@ 0c998776:56a4929b
2023-07-14 15:32:42
Thanks. I'm following a handful of AP accounts through the mostr.pub bridge and whether their posts make it to my nostr client seems kind of hit and miss. It's fantastic that it exists at all but I'm wondering if nostr federation is not still a bit alpha.
Also, for people on the AP side, nostr user names are so opaque.
-

@ 0c998776:56a4929b
2023-07-14 15:22:00
nostr:npub108pv4cg5ag52nq082kd5leu9ffrn2gdg6g4xdwatn73y36uzplmq9uyev6
Sorry to use you as a chatGPT substitute but I don't like talking with algorithms.
Do you happen to know what the simplest (smallest resource requirements), cleanest, docker-based solution is to stand up a small activity pub server that can federate with mastodon? It would be used just to host one or a small handful of related accounts - not for the purpose of creating its own sub-community.
Some years ago when I was looking into the same, I put up an eexperimental pleroma instance. Is that still the way, or something better since then?
-

@ 0c998776:56a4929b
2023-07-11 13:46:11
All you need is an infinite number of elifs and an infinite number of print statements and you have AI.
-

@ 0c998776:56a4929b
2023-07-06 17:21:53
Sorry, but until people understand what decentralized means and why it is important to them and to a functioning society... until they DO care about that... we are biding time.
Disintermediated, p2p value transfer is important no doubt.
Disintermediated, uncensorable p2e (everyone) speech is (at the present time) a bigger innovation.
-

@ 0c998776:56a4929b
2023-07-05 13:21:17
You could take a look at my personal strfry repo here: https://github.com/pjv/strfry_personal_docker - would be easy to modify it to suit your use-case.
nostr:npub108pv4cg5ag52nq082kd5leu9ffrn2gdg6g4xdwatn73y36uzplmq9uyev6 has published a bunch of excellent strfry policy code here: https://gitlab.com/soapbox-pub/strfry-policies/
-

@ 0c998776:56a4929b
2023-06-28 12:24:43
I use Gboard on graphene and it works perfectly. Only keyboard I can tolerate and I've used a bunch.
The way I have it configured on my phone, Google services is installed but it has zero network permissions. Same with Gboard. Nothing Google on my phone is allowed to network at all.
-

@ 0c998776:56a4929b
2023-06-26 12:54:44
If it's like it is here (in the US), it will feel pretty damn fast compared with 4G. It varies quite a lot from minute to minute but it's not unusual to see peaks of close to 300 mbit down.
It is very assymetrical though - I don't get near the DL speeds in the UL direction.
-

@ 0c998776:56a4929b
2023-06-25 14:04:10
Bitchen.
nostr:nevent1qqstm45gcyclma2d4zr34us53te0qkdn7klxsvkxps3wp6qkuq5zl7cpz3mhxue69uhkummnw3ezummcw3ezuer9wcpzpms35h0lgrqe542lg8ly9dy0qrnp3jgjy43z4cmmds4mv7mkcnjfqvzqqqqqqyam8ut5
-

@ 0c998776:56a4929b
2023-06-23 17:48:41
Well... there are definitely a few people using it and giving me feedback which is helping me fix bugs. But mainly in answer to your question, yeah, I'm using it for exactly the reason that I built it - to send out announcements of WordPress posts to nostr.
I think building more general purpose tools that would take an RSS feed as an input and generate nostr posts as an output is also a great idea. Not exactly what I wanted, so I built nostrtium to scratch my own itch.
-

@ 0c998776:56a4929b
2023-06-21 15:47:41
Problem is... if you went far enough with hardware and software it would be far too threatening for the networks to allow such devices and so they would not. So then you'd also have to somehow launch and maintain an alternative global mobile wireless network.
Gotta say that I am extremely happy with a Pixel device (6a) running Graphene OS. I was expecting to have to make a lot of awkward compromises but I have not had to do that. My use-cases are probably atypical but I've been able to set up this phone to do anything and everything that I want and need to do with it and altogether it honestly works better - a lot better in every way that matters to me - than my prior Samsung-on-Android phone that it replaced.
-

@ 0c998776:56a4929b
2023-06-14 14:49:04
I have starlink in rural usa. I've had it for about a year now and it has been much better than the long distance wifi (WISP) service it replaced.
The customer service has been good when I've had to use it which hasn't been often.
The only negative thing I've experienced so far is already 2 price hikes since I got it. I started at $99/mo and soon after it got bumped to $110 and just recently up to $120.
Still worth it to me given I have no current alternatives that have good bandwidth. That may change soon with expansion of local 5g service providers.
-

@ 5e60bbca:adc2d76b
2023-06-11 10:55:19
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Morbi commodo, ipsum sed pharetra gravida, orci magna rhoncus neque, id pulvinar odio lorem non turpis. Nullam sit amet enim. Suspendisse id velit vitae ligula volutpat condimentum. Aliquam erat volutpat. Sed quis velit. Nulla facilisi. Nulla libero. Vivamus pharetra posuere sapien. Nam consectetuer. Sed aliquam, nunc eget …
-

@ 0c998776:56a4929b
2023-06-09 11:47:12
nostr:npub16dmvfhm7uwkxnhxg30k6aczw23wxhgvs62n3puzl5tykpa4aa8esja83yd
https://nostr.build/i/87ae6a8398ef04d994f3a1cf0018d599fa2cd6f8d97d6602b8c358b3ac20c00b.jpg
If this was really a true statement by you, you'd at the very least be mirroring all of your twitter posts here on nostr (or somewhere that they cannot be censored or interfered with). You have a large following on Twitter and most of those people are not here on nostr. Clearly what's more important to you than freedom from interference is reaching your audience. Which is understandable. It's a chicken / egg thing and you are the chicken. Lay eggs here.
-

@ 0c998776:56a4929b
2023-06-08 12:51:32
nostr:nevent1qqsw72d5yfcmnw3k7uzlrzene58ge07lp390cj32gfpctpxuc0840asprfmhxue69uhhyetvv9ujuumgd96xvmmjvdjjummwv5hsz9mhwden5te0wfjkccte9ehx7um5wghxyctwvshsz8nhwden5te0wfjkccte9ehx7um5wghxyctwvshhgun4wd6x2eqppemhxue69uhkummn9ekx7mp099xjdc
There is a new version now (0.7.1) both at Github and also in the WP plugin repository. You can install nostrtium from the WordPress repo like any other plugin. Please let me know what you find. Maybe post an issue on github (https://github.com/pjv/nostrtium/issues).
-

@ 0c998776:56a4929b
2023-06-07 19:26:13
Kai.
-

@ 5e60bbca:adc2d76b
2023-06-07 14:31:07
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Morbi commodo, ipsum sed pharetra gravida, orci magna rhoncus neque, id pulvinar odio lorem non turpis. Nullam sit amet enim. Suspendisse id velit vitae ligula volutpat condimentum. Aliquam erat volutpat. Sed quis velit. Nulla facilisi. Nulla libero. Vivamus pharetra posuere sapien. Nam consectetuer. Sed aliquam, nunc eget …
-

@ 5e60bbca:adc2d76b
2023-06-07 13:20:47
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Morbi commodo, ipsum sed pharetra gravida, orci magna rhoncus neque, id pulvinar odio lorem non turpis. Nullam sit amet enim. Suspendisse id velit vitae ligula volutpat condimentum. Aliquam erat volutpat. Sed quis velit. Nulla facilisi. Nulla libero. Vivamus pharetra posuere sapien. Nam consectetuer. Sed aliquam, nunc eget …
-

@ 5e60bbca:adc2d76b
2023-06-07 13:18:58
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Morbi commodo, ipsum sed pharetra gravida, orci magna rhoncus neque, id pulvinar odio lorem non turpis. Nullam sit amet enim. Suspendisse id velit vitae ligula volutpat condimentum. Aliquam erat volutpat. Sed quis velit. Nulla facilisi. Nulla libero. Vivamus pharetra posuere sapien. Nam consectetuer. Sed aliquam, nunc eget …
-

@ 5e60bbca:adc2d76b
2023-06-07 12:58:39
http://breadtopia.wp.docker.localhost/test-6/
-

@ 5e60bbca:adc2d76b
2023-06-07 12:52:08
http://breadtopia.wp.docker.localhost/test-5/
-

@ 0c998776:56a4929b
2023-06-06 18:14:06
Also try deactivating and reactivating the plugin
-

@ 0c998776:56a4929b
2023-06-06 18:13:27
Try deleting and re-entering your private key on the settings page.
-

@ 5e60bbca:adc2d76b
2023-06-05 10:46:12
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Morbi commodo, ipsum sed pharetra gravida, orci magna rhoncus neque, id pulvinar odio lorem non turpis. Nullam sit amet enim. Suspendisse id velit vitae ligula volutpat condimentum. Aliquam erat volutpat. Sed quis velit. Nulla facilisi. Nulla libero. Vivamus pharetra posuere sapien. Nam consectetuer. Sed aliquam, nunc eget …
/test-4/
-

@ 0c998776:56a4929b
2023-06-02 12:02:53
I run Amethyst with no issues on a Pixel 6a under graphene OS.
-

@ 0c998776:56a4929b
2023-06-01 17:09:46
New beta release (0.7.0-beta.1) available from github here: https://github.com/pjv/nostrtium/releases
-

@ 0c998776:56a4929b
2023-06-01 15:42:54
If you can, please test version 0.7.0-beta.1 from the [releases page](https://github.com/pjv/nostrtium/releases) on github.
There are new auto-publish options on the settings page.
Note that after updating the plugin (just this one time) you will need to re-enter your private key on the settings page.
-

@ 0c998776:56a4929b
2023-06-01 13:51:36
FYI, for compliance with the WordPress plugin repo naming policy, the name of the project and location of the github repo have both changed. The plugin is now called nostrtium and the GH repo is at https://github.com/pjv/nostrtium.
At the moment I am alpha testing a new version that lets you set up auto-publishing to nostr for any newly published WP posts. You can choose to post (to nostr) either the WP post excerpt, the WP post permalink, or both together. I'll have a beta version available on github as soon as I can figure out how to build a github workflow to publish a beta to github without deploying to WordPress.
Development is currently glacial due to IRL pressure.
-

@ 0c998776:56a4929b
2023-05-30 13:06:47
11
-

@ 5e60bbca:adc2d76b
2023-05-24 19:57:36
http://breadtopia.wp.docker.localhost/test-3/
-

@ 5e60bbca:adc2d76b
2023-05-24 19:51:58
This is a test post. Just checking to see whether it ends up on nostr or not.
Nothing to see here, move along. 😉
http://breadtopia.wp.docker.localhost/test-post/
-

@ 0c998776:56a4929b
2023-05-19 19:01:28
It has to be some kind of bureaucrat-mandated, faux-security concept like making people periodically rotate passwords to ensure they will write them down on a post-it stuck to their monitor.
-

@ 0c998776:56a4929b
2023-05-15 12:52:07
Yup, that's on my to-do list.
-

@ 0c998776:56a4929b
2023-05-12 13:03:34
I turned on orbot and did NOT configure it to run in VPN mode and then I configured amethyst to use tor (on port 9050 which orbot is bound to by default) and it's working perfectly. None of the other traffic on my phone is going through tor.
Any app that is proxy-aware could send its traffic to port 9050 to use tor without the rest of the traffic on the phone using tor.
nostr:npub1gcxzte5zlkncx26j68ez60fzkvtkm9e0vrwdcvsjakxf9mu9qewqlfnj5z thanks for making Amethyst usable over tor - that's a great feature.
-

@ 0c998776:56a4929b
2023-05-11 11:57:57
If I understand it correctly, at the moment nostr:npub1gcxzte5zlkncx26j68ez60fzkvtkm9e0vrwdcvsjakxf9mu9qewqlfnj5z is running a single server that is scanning a lot of relays and then pushing to FCM.
-

@ 0c998776:56a4929b
2023-05-10 19:09:31
Would be better, I think, if it didn't even try to count followers.
-

@ 0c998776:56a4929b
2023-05-10 15:58:14
Personally, I use https://unifiedpush.org/ via https://github.com/binwiederhier/ntfy app on my phone which lets you receive and distribute push notifications to any app that speaks unified push. Dev-friendly intro for Android here: https://unifiedpush.org/developers/android/.
I run my own self-hosted ntfy server, but people who don't want to do that but prefer to support a really nice OSS project than to bend over for Google can use ntfy pro for a small monthly fee: https://ntfy.sh/app
-

@ 0c998776:56a4929b
2023-05-10 15:42:38
Sad!
-

@ 0c998776:56a4929b
2023-05-10 14:05:23
nostr:npub1gcxzte5zlkncx26j68ez60fzkvtkm9e0vrwdcvsjakxf9mu9qewqlfnj5z are you building this on top of GCM push?
-

@ ee11a5df:b76c4e49
2023-05-08 23:18:23
Sorry i meant a full fence, not just compile time.
-

@ ee11a5df:b76c4e49
2023-05-08 23:16:50
I'm sure you are right about just using sled instead of doing my own mmap. But I feel pride that it seems to work so I'm gonna leave that code for a while. Once it bites me, I'll do what you suggest. I've got a compiler fence so it doesn't reorder the writes, but I had forgotten to put in the msyncs!
-

@ 0c998776:56a4929b
2023-05-08 20:08:55
I'd love to see someone explain how there are so many dots on that visualization and I never got an invite despite my having given them my email address within hours of their initially posting the invite form on their website.
-

@ 0c998776:56a4929b
2023-05-08 18:58:54
Oy. my non-debug-compiled ./target folder is 4.1GB. I guess rust is doing a bunch of caching to make the build faster. It is pretty damn fast. A lot of cached stuff for a 20MB binary.
-

@ 0c998776:56a4929b
2023-05-08 15:27:38
In my perfect gossip world, I'd be able to "pin" threads for both nostr:npub1acg6thl5psv62405rljzkj8spesceyfz2c32udakc2ak0dmvfeyse9p35c and #SocialMedia (and any other arbitrary filter) at the top of the window and easily switch between them with a click.
-

@ 0c998776:56a4929b
2023-05-08 14:55:15
Both nostr and Bluesky are fundamentally trying to work on the same problem. The important distinction between what nostr is doing and what Bluesky is doing hinges on whether the respective developers want people whose speech they disagree with to be able to use what they are building to communicate with the rest of the world or not.
In nostr this is clear - the whole thing is architected in a way that it's impossible to stop people from using the protocol to say whatever they want to say. In Bluesky this seems ambiguous at best.
-

@ 0c998776:56a4929b
2023-05-08 13:22:42
> but it reminds me of Java and XML (no offense intended).
That provoked an authentic LOL. I couldn't think of more offensive comparisons for a software development project than Java and XML.
-

@ 0c998776:56a4929b
2023-05-08 12:07:50
errrr... maybe I'm missing something obvious somewhere but it looks to me like when a client requests stuff from a relay they are not sending a pubkey, right? In nip-01 the REQ doesn't include sending a pubkey. So without doing some kind of AUTH and/or changing the content of the REQs, for reads how could the relay distinguish between whitelisted people and everybody else?
-

@ ee11a5df:b76c4e49
2023-05-07 17:03:05
Sounds perfect.
-

@ ee11a5df:b76c4e49
2023-05-07 16:51:57
Very cool. Thanks for the explanations.
On the separate mmap, I'm writing the serialized OpaqueEvent first, then writing the indexes. On a crash we might have a useless event that didn't get indexed, but it wouldn't be corrupt. The writer locks a write-lock, appends, then updates the 'end' pointer at the beginning of the map, then releases the write lock.
Also, these events are opaque (customer-ready, pre-validated). I never access the fields.
I noticed strfry does an index scan of these flatbuffers (of stripped down events) when necessary, using the fields to filter. I'm instead trying to use multiple btree-like indexes:
id -> offset
(created_at, id) -> offset
(pubkey, created_at, id) -> offset
(event_kind, created_at, id) -> offset
(tagdata, created_at, id) -> offset
Each key has to be unique per event, hence the id on each. And the created_at is to scan a since/until range. It's a lot of data to store, but I think that is okay on a personal relay. I don't think it would cause more page faults and cache misses.
I'm finding the set of events that match the filter by doing a functional intersection over the results from these filters. I say functional because I don't collect each result into a set and then intersect them, I intersect as I go: first index: collect the offsets in a hashset; second index: check each in the previous hashset and if it exists, copy to the next hashset (thus functionally being a set intersection) otherwise drop it.
Maybe this is a dumb algorithm. Databases are more my brother's thing, but I'm stubbernly trying to reinvent them myself (I would never learn as well otherwise).
I think deleted events will just be marked as such in another hash table, and a periodic rewrite will filter them out. I haven't really worked that out and now that I'm thinking about it, it could be quite expensive.
A lot of these OS level features like sendfile() or pwritev() become very difficult to use when relying on an upstream library that doesn't expose it's API in a way to utilize those. If I use tungstenite for websockets, I don't think I can write into it's outbound buffers at a low level.
At this point I'm really still exploring. It will change.
-

@ ee11a5df:b76c4e49
2023-05-07 00:09:01
The ruleset I desire is (no AUTH requried):
READ:
* Allow whitelisted people to read everything
* Allow everybody to read events by whitelisted people
* Allow everybody to read all 10002 events
* Deny the rest
WRITE:
* Allow whitelisted people to write anything
* Allow everybody to write events where a whitelisted person is tagged [they won't be able to read them back, and that is very important]
* Allow everybody to write any 10002 event
* Deny the rest
I started work on a relay that uses similar ideas to yours but it is very early days. Events are appended to a mmapped file where readers are not blocked during writes (except during resize). Indices use concurrent lock-free kv system optimized for SSDs (rust package "sled") whose interface is like a BTree map between two binary blobs. I'm keying them with things like (pubkey,created_at) pairs so that I can handle since/until quickly. The value is just the offset in the mmapped events file. I'm using a form of serialization (called "speedy") that (at least in rust) performs faster than flatmaps (that may not count when switching languages). Incoming events go through slower processing to canonicalize their encoding and validate their ID and signature. Outgoing reads should be pretty close to as-fast-as-possible. All asynchronous to keep all the cores busy whenever there is work to be done.
-

@ 0c998776:56a4929b
2023-05-06 15:51:25
I think nostr:npub1acg6thl5psv62405rljzkj8spesceyfz2c32udakc2ak0dmvfeyse9p35c has already embarked down the rabbit hole of building his own personal relay, but to circle back, I think what would fulfill the original request would be a way to limit public (un-authed) event reads to only those events authored by white-listed pubkeys.
And then, yeah, there would have to be a way for the white-listed pubkeys to be able to auth on the relay and be able to subscribe to (read) all events, including those written by non-white-listed pubkeys (who are allowed [by my write policy plugin anyway] to write events that include white-listed pubkeys in the event tags).
-

@ 0c998776:56a4929b
2023-05-02 18:20:43
I use VSCodium. I like it.
-

@ 0c998776:56a4929b
2023-04-25 09:51:26
If you widen your view and think about it a little bit, the fact that government actions seem to be validating that most cynical possible view has a few implications that go beyond communication privacy.
-

@ 5e60bbca:adc2d76b
2023-04-23 13:06:21
This is a test post
https://example.com/this-is-a-test/
-

@ 0c998776:56a4929b
2023-04-17 09:37:52
... and the world would be a better place.
nostr:note1w8pcl0gcs0j7ue03s3ntrj8rhcvevag7rcyypv4e78gpu4wh09zsr7gu25
-

@ 0c998776:56a4929b
2023-04-17 09:31:04
I don't have any C++ fu, so I have not spent any real time spelunking the core source code, but I know that its db is LMDB. My only hands-on experience with strfry is from the devops side; getting it running in a container, and writing the python write policy plugin in my repo.
That strfry exposes a stdin / stdout interface to any other process that can effectively pipe input and output is brilliant. It opens up so many possibilities. nostr:npub108pv4cg5ag52nq082kd5leu9ffrn2gdg6g4xdwatn73y36uzplmq9uyev6 has written a bunch of different write policy plugins including iirc some that are storing and referencing state. Maybe I can think of a way to write some spam filtration for overzealous taggers. Or maybe if I keep tagging nostr:npub1yxprsscnjw2e6myxz73mmzvnqw5kvzd5ffjya9ecjypc5l0gvgksh8qud4 in this thread he'll come in with something interesting, though I am guessing by the number of commits in the strfry repo lately that he must be pretty busy with other stuff.
-

@ ee11a5df:b76c4e49
2023-04-17 08:40:08
Yeah I don't want people tagging me as a way to store data on my relay. That could get very spammy very fast once people learn they can abuse that.
If it was a database I would conditionally add a WHERE clause for readers when not in the whitelist, but I think strfry is more manual and not SQL right?
-

@ 0c998776:56a4929b
2023-04-16 09:46:18
That's true - it does serve all events But since it only allows writing events from keys you've white-listed, events that tag the whitelisted keys, and kind 10002 events, there's not much else for it to serve. Is the concern that it serves events from others that tag you?
Maybe we can get nostr:npub1yxprsscnjw2e6myxz73mmzvnqw5kvzd5ffjya9ecjypc5l0gvgksh8qud4 to add read policy plugins to strfry to mirror the write policy plugins though I could imagine that having some performance implications.
-

@ ee11a5df:b76c4e49
2023-04-15 21:22:59
No, I thought it still served all events rather than only allowing people to pull your events.
-

@ 0c998776:56a4929b
2023-04-15 21:14:13
Mike, did you try my docker server with the write policy plugin? If so, what didn't work for you? Tag spam?
-

@ 0c998776:56a4929b
2023-04-14 22:22:02
Welcome. Love to see you post here instead of yet another platform that will, must inevitably, bow to the pressures.
-

@ 0c998776:56a4929b
2023-04-12 12:26:29
wrote this to a twitter friend about a month ago...
==============================
this next period - year or two or three - is going to be interesting. I think that either bluesky or nostr is going to win the decentralized internet. Bluesky has a far better thought-out technical model, but the way they are developing it (which may well be required in order to have such a tight model) is totally choking any real energy which is absolutely necessary to get people to care.
nostr on the other hand is total chaotic wild west. It has massive juice in the developer community and a tribally passionate userbase is building daily. But there are so many fundamental scalability problems with the protocol that it really seems likely (to me) that at some point it will hit a threshold number of users and the whole thing will fall apart and the only way to make it work then will be to tear it all apart and sort of start over from scratch with fundamental changes. Which may or may not kill all that positive energy.
if the bluesky people are smart enough, they will soon throw the doors wide open and allow the same kind of wild west atmosphere to happen with their protocol that is currently happening with nostr. It would start a total war (in a good way) because the nostr people are totally tribal. I'm sure they will very soon start calling bluesky a "shitcoin". but i don't know if the bluesky team are going to be willing to let go of what they created, and if they try to hold on to it, they will never have a prayer of catching up to the energy in nostr.
-

@ 0c998776:56a4929b
2023-04-11 17:08:02
the infamous ouroboros directory.
-

@ 0c998776:56a4929b
2023-04-11 11:31:28
Sorry, I think Amethyst is great work but I think everything in this note is wrong.
Reports are bad.
Relays introspecting content is bad.
Play store and Apple store are bad.
Play Store and Apple store policies are bad.
Complying with bad policies is bad.
Changing the world for the better means breaking away from the old, bad stuff and charting a new course.
nostr:nevent1qqsdrsyu00r74awtj45fjmh2ctz3x5f3jjxvnq7s4vqr3zhp6tnsltcpzemhxue69uhk2er9dchxummnw3ezumrpdejz7qg7waehxw309ahx7um5wgkhqatz9emk2mrvdaexgetj9ehx2ap0zwlmq5
-

@ 0c998776:56a4929b
2023-04-11 11:06:28
I don't think there is anything inherently wrong with reactions or tallies of reactions. I think they can be meaningful and useful in many contexts. They just are not meaningful or useful (or truthful / accurate) in this particular context.
I think - and am pretty sure - the world would be a better place if people stopped believing in lies - including the lies that make them feel good. As I've argued here: https://github.com/nostr-protocol/nips/issues/159#issuecomment-1407384311 in a meaningfully decentralized system like nostr, there is no practical way for either clients or relays to actually count actual reactions. So that means that the tally next to the icon is necessarily fake news. And what is the reaction itself without the tally? 100% meaningless. It's a lie.
Of course people are going to do whatever they want and nostr is what it is exactly because people can do whatever they want with it. It's just too bad that what so many people want to do with it is to directly ape - without any discrimination - everything that legacy social media platforms do. Because a lot of what they do is bad. It would be better if nostr filtered out the bad stuff. It would be better if instead of re-creating legacy social media platforms, nostr created something entirely new that replaced legacy SM because it's better, not because it's the same.
In that issues thread that I linked to above @gkbrk made a comment about a way to make reactions useful in the context we're discussing. If there were a performant and practical way for me to see that PEOPLE I FOLLOW had a reaction to a given event, that would be really useful. This would be the job of a smart client (definitely not a relay thing and that’s a good thing - clients should be smart and relays should be dumb).
-

@ 0c998776:56a4929b
2023-04-11 10:03:08
Agree with both of these sentences.
-

@ ee11a5df:b76c4e49
2023-04-08 20:44:31
Gossip will have a "Relays > Sign-Up" page with links to the payment pages of relays that supply them in their NIP-11 along with pricing detail. It will not offer any hard coded relays, it will simply discover them as it currently does, requiring the gossip user to kick start the process when they first set it up. For relays that don't supply this information, they won't be getting this "free advertising" via the gossip client... I think that alone may incentivize relays to fill in those fields.
-

@ 0c998776:56a4929b
2023-04-08 10:21:57
Also nostr:npub1acg6thl5psv62405rljzkj8spesceyfz2c32udakc2ak0dmvfeyse9p35c, it might be good to allow gossip users to override the default POW settings on a relay-by-relay basis. Or maybe not even need to do that manually but just have a general setting to automatically do whatever POW that a relay requires in `limitations.min_pow_difficulty`.
-

@ 0c998776:56a4929b
2023-04-08 10:17:34
I've been noticing for a while that there doesn't seem to be a clearcut (interoperable) way to determine whether a given relay requires payment to post there or not. If you do a lot of manual digging and searching you can figure it out on a relay-by-relay basis but that seems unacceptable from a UI/UX point of view unless we (devs) want nostr to be geek-only.
I think for this issue what's probably needed is some kind of push to make both relays and clients really fully implement the "Server Limitations" (at least), and also the "pay-to-relay" blocks from the "extra fields" in NIP-11. So relays need to return those fields and clients need to parse those fields and if the relay has `limitations.payment_required: true` then clients should display that somehow so that it's easy for a user to know whether they can post to a relay right off or whether they need to do something special first (pay, configure POW, etc).
Too early for this now, but it would also be great somewhere down the road if there were a NIP that standardized how to pay for pay-to-post relays in a way that it could be implemented within clients such that users could do it all from within their client with a click or two. In my perfect world, this payment would not be limited to bitcoin / satoshis, but would instead be completely agnostic so that relays could take payment however they want and users could choose from among whatever choices the relay offered.
-

@ 0c998776:56a4929b
2023-04-07 11:26:04
Wow - great!
-

@ 5e60bbca:adc2d76b
2023-04-06 19:18:47
check 1 2
-

@ 0c998776:56a4929b
2023-04-05 14:42:35
Everyone using f-droid should switch to obtanium.
"Obtainium allows you to install and update Open-Source Apps directly from their releases pages, and receive notifications when new releases are made available."
https://github.com/ImranR98/Obtainium
-

@ 0c998776:56a4929b
2023-04-03 16:47:56
Nice.
Complementary personal relay server setup which also supports the gossip model: https://github.com/pjv/strfry_personal_docker
From the readme:
MOTIVATION
I think that in order for nostr to be what it can be, there needs to be a LOT of small relays all over everywhere as opposed to a short list of giant, "popular" relays that everyone uses which then must inevitably become centralized points of all manner of vulnerabilities that nostr is explicitly about avoiding.
Mike Dilger, author of the nostr client gossip as well as NIP-65 wrote The Gossip Model -- a description of how gossip manages relays in a way that can support this vision of having many smaller relays all over the place and still let people find the content they want to follow via nostr. In that document there is a section called Personal Relays. The write policy in this repo is a first stab at implementing personal relays in that fashion.
-

@ 5e60bbca:adc2d76b
2023-03-31 15:30:32
This note is a test of "double quotes"
And also of emojis 🍕.
And uñicodes.
And fake's apostrophes.
But what happens if there is a \ back\slash in the text?
-

@ 0c998776:56a4929b
2023-03-31 14:11:35
That's an interesting experiment.
-

@ 0c998776:56a4929b
2023-03-31 11:05:10
Um. Wow; it's not that often that something lands me right exactly on the fence where my crotch feels so uncomfortable (also wondering if this post gets moderated by chatGPT because I wrote "crotch").
On the one hand... this is a clever use of an interesting tool to address a real issue.
On the other hand... (hard to nutshell the other hand because it's a long, giant rant) this is a textbook contribution to what I'm calling "the great dumbing down" where ubiquitous use of LLM AI's to moderate human speech has the highly negative systemic effect of making AI seem "smart" only by comparison with the monsterous level of stupidity in a human discourse that is constrained by the boundaries of LLM AI competence.
I guess I'm coming down on the disfavor side of the fence because I think that the great dumbing down is ACTUALLY the biggest threat of AI (as opposed to the science fiction story that recent letter-writers are concerned with) and I also think that the better way forward for social media users to not get their eyeballs stained with garbage is to not look at open sewage pipes (global feeds on public relays in nosterese) and instead evolve a working WOT model where you have interesting follows and you can also easily tap into the content of their follows and their follows follows (out to some user-configurable limit of degrees of Kevin Bacon).
-

@ ee11a5df:b76c4e49
2023-03-30 22:09:01
Cool! I am definitely going to check that out this weekend.
-

@ 0c998776:56a4929b
2023-03-30 21:30:14
I published a repo that implements a usable first stab at the personal relay you described in your "Gossip Model" page on your website.
It's docker based and lets anyone who can spin up a vanilla linux VPS have a strfry-based personal nostr relay up and running in about 10 minutes.
The repo is here: https://github.com/pjv/strfry_personal_docker
#[0]
-

@ 5e60bbca:adc2d76b
2023-03-29 16:59:39
This note is a test of "double quotes"
And also of emojis 🍕.
And uñicodes.
And fake's apostrophes.
But what happens if there is a \ back\slash in the text?
-

@ 5e60bbca:adc2d76b
2023-03-29 16:55:37
This note is a test of "double quotes"
And also of emojis 🍕.
And uñicodes.
And fake's apostrophes.
But what happens if there is a \\ back\\slash in the text?
-

@ 5e60bbca:adc2d76b
2023-03-29 16:48:46
This note is a test of "double quotes"
And also of emojis 🍕.
And uñicodes.
And fake's apostrophes.
But what happens if there is a \\ back\\slash in the text?
-

@ 5e60bbca:adc2d76b
2023-03-29 16:36:32
This note is a test of "double quotes"
And also of emojis 🍕.
And uñicodes.
And fake's apostrophes.
-

@ 5e60bbca:adc2d76b
2023-03-29 16:29:38
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Morbi commodo, ipsum sed pharetra gravida, orci magna rhoncus neque, id pulvinar odio lorem non turpis. "Nullam" sit amet enim. Suspendisse id velit vitae ligula volutpat condimentum. Aliquam erat volutpat. Sed quis velit. Nulla facilisi. Nulla libero. Vivamus pharetra posuere sapien.
-

@ 5e60bbca:adc2d76b
2023-03-29 16:24:07
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Morbi commodo, ipsum sed pharetra gravida, orci magna rhoncus neque, id pulvinar odio lorem non turpis. \"Nullam\" sit amet enim. Suspendisse id velit vitae ligula volutpat condimentum. Aliquam erat volutpat. Sed quis velit. Nulla facilisi. Nulla libero. Vivamus pharetra posuere sapien.
-

@ 5e60bbca:adc2d76b
2023-03-29 16:16:00
This note is a test of "double quotes".
-

@ 0c998776:56a4929b
2023-03-28 23:05:21
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]
-

@ 5bc24eab:46e10ecc
2023-03-27 19:42:34
This 100% whole grain bread has a light maple sweetness along with tasty oat and wheat flavors and the rich complexity of natural sourdough leavening.
https://breadtopia.com/maple-oat-and-wheat-sourdough-bread/
-

@ 0c998776:56a4929b
2023-03-27 18:37:08
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.
-

@ 5bc24eab:46e10ecc
2023-03-27 17:48:15
Chilean marraquetas are crusty on the outside and soft and tender on the inside. They are shaped into four segments, so you might eat half with the traditional filling of mashed avocado and a pinch of salt. Later in the day, the other half will call out to be enjoyed with cheese and quince jelly alongside a hot cup of tea. Finally at dinnertime, choripán, a grilled sausage sandwich perhaps with Argentinian chimichurri, may start to look really appetizing. Suddenly you’ve had marraquetas at every meal!
https://breadtopia.com/chilean-marraquetas-sourdough-or-yeast/
-

@ 5e60bbca:adc2d76b
2023-03-27 17:08:10
This note is a test of emojis 🍕.
-

@ 5e60bbca:adc2d76b
2023-03-27 17:07:29
This note is a test of uñicodes.
-

@ 5e60bbca:adc2d76b
2023-03-27 15:42:51
This note is a test.
-

@ 5bc24eab:46e10ecc
2023-03-26 21:41:53
This apple crisp takes advantage of flavorful whole spelt and oat grains. The apple base is tart and delicious, and the streusel topping has a lovely contrasting texture, plus extra fiber, nutrients, and nutty flavor.
https://breadtopia.com/spelt-and-oat-apple-crisp/
-

@ 5bc24eab:46e10ecc
2023-03-24 11:09:44
Pizza is a savory pie for celebrating pi day. Happy #piday #pizzalovers. This pie uses Breadtopia's stone-milled whole grain all purpose flour made from hard red winter wheat berries.
https://breadtopia.com/whole-grain-sourdough-pizza/