Oddbean new post about | logout

Notes by Vitor Pamplona | export

 Don't forget about self-custodying your Nostr keys! 😉  
 When Alby NIP-55 signer?  
 Because the signer communicates via Android inter-app APIs that don't exist anywhere else. 
 Yep. I think someone tried to replicate on a desktop signer with socket files in the home dir. It's all about specifying a good standard for the communication.  
 nostr:nprofile1qqsxg45ph8gx0vdrvtzta6xal7v86frx6jvstsnvhrlvtehmwwh4epqpzemhxue69uhhyetvv9ujuvrcvd5xzapwvdhk6qghwaehxw309aex2mrp0yh8x6tpd4ehgu3wvdhk6qg5waehxw309aex2mrp0yhxgctdw4eju6t04vkzjx's Push client keeps the websocket connection to your inbox relays always runming, displays the notifications and then redirects to your favorite Nostr Client when you click on it. https://image.nostr.build/dca8711b0317ac7f79a869af9e81e82b6beb0dc1b36cacf01bee2965ce2f2c5d.png 
 It all depends on how many sats he gets :)  
 Yeah, I still need to see how that non-DM message is getting there. 

But the 10002 are supposed to be everywhere, in all relays the app has access to. That is written in the NIP. It's really important to find up-to-date 10002 events for any key as fast as possible. 
 Is your Outbox accepting 10002 events and saving them or just rejecting them all the time? 

We have an auto-update tool that if a relay sends an event that is older than what the app has, the app replies with the newer event. If the relay does not accept the newer event but still has the old one, the app will continuing blasting the relay until it updates it because having outdated info is terrible for these types of events. 
 I still think Pokey is the best one  
 There is a decision here that you can decide to render every single event kind as a notification (seems like a lot of work) OR broadcast the received event to the phone. Nostr apps would keep listening to the broadcast and render the notification themselves with this: 
https://developer.android.com/develop/background-work/background-tasks/broadcasts 
 test #test 
 Tested, with pow  
 nostr:nprofile1qqsxg45ph8gx0vdrvtzta6xal7v86frx6jvstsnvhrlvtehmwwh4epqpzemhxue69uhhyetvv9ujuvrcvd5xzapwvdhk6qghwaehxw309aex2mrp0yh8x6tpd4ehgu3wvdhk6qg5waehxw309aex2mrp0yhxgctdw4eju6t04vkzjx is trying to make an always-on push notification Android client for all nostr apps, similar to how Citrine and Amber work. 

Go bug him and let him know how cool this idea is.

Any good app names for him? 
 You got the name nostr:nprofile1qqsxg45ph8gx0vdrvtzta6xal7v86frx6jvstsnvhrlvtehmwwh4epqpzemhxue69uhhyetvv9ujuvrcvd5xzapwvdhk6qghwaehxw309aex2mrp0yh8x6tpd4ehgu3wvdhk6qg5waehxw309aex2mrp0yhxgctdw4eju6t04vkzjx 
 Couple bugs in #Amethyst

The "see more" button on the post doesn't do naything once I tap reply,... 
 Update, v92.4 fixed the see more. 

I will check the video deletion from galery. 

The tor time out is tricky... Right now it is at 30seconds. Maybe we need to increase it, but we run the risk of having too many connections waiting..  
 Which Nostr Android client still doesn't have login with Amber? 
 Come on nostr:nprofile1qqsdv8emcke7k3qqaldwv956tstu40ejg663gdsaayuuujs6pknw7jspp4mhxue69uhkummn9ekx7mqpr3mhxue69uhkummnw3ezucnfw33k76twv4ezuum0vd5kzmqpzfmhxue69uhhqatjwpkx2urpvuhx2uc86mqq0 
 With Amber, you don't need to insert your nsec in any client. You can have 100s of them installed in your phone and your key will be safe.  
 Yep, we changed the name signature to result. :( 
 Ok, so we are about 10 years away from Saylor coming to Nostr and saying that only Facebook can operate our relays.. Good to know. 
 nostr:nprofile1qqsyvrp9u6p0mfur9dfdru3d853tx9mdjuhkphxuxgfwmryja7zsvhqppemhxue69uhkummn9ekx7mp0qy... 
 It could be some redirection. Nip05 does not accept any redirections on the server side.  
 nostr:nprofile1qqsyvrp9u6p0mfur9dfdru3d853tx9mdjuhkphxuxgfwmryja7zsvhqppemhxue69uhkummn9ekx7mp0qy... 
 Yep, unless you follow them, its going to block them again as quickly as the app sees the spam again. You can disable the spam filter on the security settings. You can also see which messages are deemed spam at the relay list screen, by clicking on one of the relays.

The app requires 5+ absolutely equal messages with over 50 chars (so GMs are good) to call an npub spammer. Usually that happens on public chats and some replies. 
 Talking about bad reviews... Go write a review for your favorite clients. No one writes when things "just work". 
 Weird. You can leave the beta, we don't really use it.  
 Usually Play store 
 One of the most difficult decisions a Nostr client faces is whether to fix an incorrect or non-compliant post from another client or simply not display it. If you fix it, the original client may never correct their mistake because "hey... it works!" — why would they? On the other hand, if you don’t, your users miss the intended content, and the author’s message is either lost or less impactful. Fixing it on the reader's side adds complexity across Nostr, as every client would then need to code a way to handle the same issue. And if you don’t fix it, users flood us with complaints about a "bug" in Amethyst, which means there is a perception that Amethyst is buggy, even though it’s not our problem. 

If we fix it, other devs complain we are too permissive and "breaking" Nostr. If we don't, our users give us bad reviews.

There is no right or wrong answer. There is only pain. 
 Yeah, this makes the decision even worse.  
 All the time 
 The priority when I talk to Milan is NIP17 and marketplaces. The rest can wait a bit.  
 Talking is not coding. We talk all the time. It doesn't mean that anything will get coded. There are usually bigger priorities in place in each of the projects. 
 It's just today's issue. But every week is something different, from nip04-nip44 stuff to markdown, to markers, to reactions, to communities stuff, etc. It's usually a minor issue in the grand scheme of things, but it's always there. 
 Yep, the drawback is the cost of censorship resistance. 
 I just don't agree with blasting the other client. We never know the reasons why they do what they do and being nasty never got anyone anywhere.  
 For relays, there is an easy answer: compliance testing apps. Like the check your DNS, or website for SEO applications. I think nostr:nprofile1qqswuyd9ml6qcxd92h6pleptfrcqucvvjy39vg4wx7mv9wm8kakyujgpypmhxue69uhkx6r0wf6hxtndd94k2erfd3nk2u3wvdhk6w35xs6z7qgwwaehxw309ahx7uewd3hkctcpypmhxue69uhkummnw3ezuetfde6kuer6wasku7nfvuh8xurpvdjj7a0nq40 started one.  
 When you press the X icon to close a new post, should the app delete that draft or keep it? 
 Likely never going to happen. It's too engrained into everything now.  
 They don't expire.... 🤔 I am not sure where that is coming from. 
 new post, top left corner.  
 #asknostr How to upload video from #Amethyst ? 
 Why not just uploading from the app?  
 Perhaps this could be a new list type that defines a relay (or more) plus additional params?

A p... 
 I am building this right now. I need to move our "global" relay setting from the kind3 list to a list for each feed such that you can have as many Global feeds with different relay sets as you want. 

I was trying to use nostr:nprofile1qqsf03c2gsmx5ef4c9zmxvlew04gdh7u94afnknp33qvv3c94kvwxgspz3mhxue69uhhyetvv9ujuerpd46hxtnfduq35amnwvaz7tmjv4kxz7fwwajhxar9wfhxyarr9e3k7mgprdmhxue69uhksmmyd33x7epwvdhhyctrd3jjuar0dak8x6lmt90's custom feeds, but there is too much going on in that NUD. I don't want to have to filter out custom feeds we don't support right now.  
 agreed 
 They are simple enough...  
 I can confirm it is exactly what happens.  
 Is this explain why enabling internal tor option makes some notes not loading?
nostr:nevent1qqs9w... 
 More likely that the relays block Tor. 
 Relays are like your school. It's the place you go to find what's going on with your friends. You can always invite them to your house, but that's too much work, creates too much of a mess. So, schools are run by other folks that want to see people talking to each other. 
nostr:nevent1qqs8qxa8uenctgda7klg8fwzu9v3pt5v9rnn2tea6fzpfl3j9kr05rgppemhxue69uhkummn9ekx7mp0qgsrnnt2e4qwqvqmy58tlunv0vvpac9q8xmknav7rm53tra45fp8wvgrqsqqqqqprhmz2a 
 Only until you grow up to walk by yourself (all clients have defaults). 
 Can someone explain relays to me as if I am 7 years old 😏 
 Relays are like your school. It's the place you go to find what's going on with your friends. You can always invite them to your house, but that's too much work, creates too much of a mess. So, schools are run by other folks that want to see people talking to each other. 
nostr:nevent1qqs8qxa8uenctgda7klg8fwzu9v3pt5v9rnn2tea6fzpfl3j9kr05rgppemhxue69uhkummn9ekx7mp0qgsrnnt2e4qwqvqmy58tlunv0vvpac9q8xmknav7rm53tra45fp8wvgrqsqqqqqprhmz2a 
 Amethyst trying to not break any relay out there while the user scrolls. https://video.nostr.build/9ef696c74d6717e30697faa7bae0dc91a7982e3ed5a94ffee35b0de96cf22c42.mp4 
 Many users saw empty mute lists when using Amber for the last month or so. We finally found the issue. Try this version out. 
nostr:nevent1qqsqvv0a9qgrpvcy3aempqsjzw2na5kr2sdmlf08ehfw7dddsucfyfgpzamhxue69uhhv6t5daezumn0wd68yvfwvdhk6tczyz4fq3ej2cpa4n20s9pqjdt8ju6kdh3mrcs2392hku5v80jvd2zykqcyqqqqqqg0nl79f 
 Now in #Amethyst, both the search and filters are not working 🤭 
 What's going on? Tor issue? 
 Security filters? Are they not loading? Is it the mute list or the muted words?  
 Ohh I see. Are you using amber?  
 Can you try logging in with the nsec just to see if the mute list is broken or if it is a permission issue with Amber? 
 nostr:nprofile1qqs827g8dkd07zjvlhh60csytujgd3l9mz7x807xk3fewge7rwlukxgpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhszrnhwden5te0dehhxtnvdakz7qgswaehxw309ahx7um5wghx6mmd9usjfpck we have a bug somewhere that the (old?) return from amber wasn't parsed correctly and it created an encrypted ciphertext with a "-null" attached to it. You can see on this user's 1000 mute list below. 

I added a pre-check on the NIP-04 decrypt so that it fixes this issue if Amethyst see it out there. You might want to release a new version with the latest commit to make sure Amber can also decrypt and fix it when using other clients.  https://image.nostr.build/710ef75319e48ecebf5cf8312d70475fc197179f86b450f0f8b50d07ac93ae04.jpg 
 I am just releasing v0.92.7 that should include a fix for this if the nsec is on Amethyst directly. Give it a try and let me know if it did fix. 

Add and remove a mute work to fix your mute list and then you can go back to using the nsec from amber.  
 Version is out on Obtainium and with a direct download from https://github.com/vitorpamplona/amethyst/releases/tag/v0.92.7 
 how do I use algo.utxo.one from amethyst? nostr:nprofile1qqsw9n8heusyq0el9f99tveg7r0rhcu9tznatuek... 
 What do I need to do to support it?  
 Bluesky only works with Bluesky's own code. 

Thanks for reading my paper.
nostr:nevent1qqs90yp42d0j0cfnj5r7ugjcdhtgcah9t02h9aa2flrhrfc8yy0jl6gpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhsygrkcud2uwjfruweamz8ewshug5umfq38g9mkmn2u9mk6ajru2w2lgpsgqqqqqqsf35982 
 Yep, CBOR is the greatest thing ever until you look at it closely and go... Wtf.   
 Bluesky only works with Bluesky's own code. 

Thanks for reading my paper.
nostr:nevent1qqs90yp42d0j0cfnj5r7ugjcdhtgcah9t02h9aa2flrhrfc8yy0jl6gpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhsygrkcud2uwjfruweamz8ewshug5umfq38g9mkmn2u9mk6ajru2w2lgpsgqqqqqqsf35982 
 Hooray, now that I'm completely dependent on typescript, the type checker is now failing on line ... 
 For applications, I think so. Rust is too low level for apps. Reading Rust is painful. 
 Come to kotlin, Will. :)  
 Kotlin compiles to native :)  
  Hello, I've just seen that #Amethyst is no longer available in #Google Play... is this normal? T... 
 I have not received any notification from the store about any removal. It should be available in France as well. But the Play filter is not based on where you are, but where your account was created from. 
 And also the app is limited to +18  
 Browser extensions really need to start allowing multiple accounts. It has been 2 years already... Let's go... No one is using just one account in Nostr. 
 Very confusing, but it works. We just need to keep logging off and in everything we switch because clients don't notice the difference.