Oddbean new post about | logout
 Bostr is a new Nostr relay that bounces your  Nostr read and write events to multiple relays, allowing users on metered or mobile connections to save on bandwidth.

You could run one for yourself, your community, or for the general public.

Example: You run a Bostr relay at home and configure your mobile client to only use your home Nostr relay. While out and about, you utilize one relay, saving your mobile data, while the Bostr relay at home handles the heavy lifting and data intensive internet traffic for you, sending your notes and events out to the world.

https://github.com/Yonle/bostr 
 This
nostr:nevent1qqsdjv9xmru93wgx0tuyqeyjtshnm9wq96gqy9dy6j562qrpqysqxlspzpmhxue69uhkummnw3ezuamfdejsygplwuxkt5a8vj5utj6s8tsj8e3wcavc45p4mqmw92qs7wrh5azmyspsgqqqqqqsctmssx 
 "Bosta" means "shit" in Portuguese 
 Hahahhahahahaha I liked hahahhahahha

Combine with brazilian censorship 🤣 
 cow shit, to be more precise 
 Deu Bostr deu Bostil 
 I pronounce bostr as "boster" 
 Actually, I retract my boost. The author included a mandatory copyright and non-FOSS license. 
 Doh. I never read the licenses. Thanks Shawn. 
 🫡 
 What makes BSD 3-Clause not be FOSS? 
 If that’s the license, I couldn’t find it and that would be my mistake. But is a mandatory copyright statement consistent with BSD-3? 
 https://github.com/Yonle/bostr/blob/master/LICENSE

Yeah that's part of that license. It keeps the author recognized but still allows for any use as long as that statement stays. It adds a third condition just saying you can't use that to promote your project with OG creator. 
 TIL. 🤦🏼‍♂️ 
 Take everything I said with a bottle of salt. I'm usually off on a major part so my assumption may be way off 🤣  
 Licensing is fucking hard. Can we make a new license that basically says "give me credit, but use my shit how you please"? I understand that. 
 CC with Attribution is exactly that 🐶🐾🫡 
 Creative Commons says on their website to not use their licenses for software. 
 Creative Commons recommends and uses free and open source software licenses for software.

It’s a recommendation, and not a requirement 🐶🐾🫡 
 Yes. Then click on the reccommends link to their FAQ 
https://i.nostr.build/yVmJ.jpg 
 It's badly worded. They recommend using licenses, just not their licenses 😂 
 Discussing software licensing on Nostr is peak nerdism. I love it. 
 lol! I read more about it, and it seems there maybe compatibility issues, hence not recommended. So I guess BSD license would be a better one for your case 🐶🐾🫡🤣 
 See! We need my original new license standard "use my shit but give me credit". license 🤣🤣
 
 We need more software lawyers on here. MIT license also seems to be good, but how the fuck can I tell when I am not a lawyer 🐶🐾🤣🤣🤣 
 Oh my god. You need the Microsoft Public License. Lmao

https://opensource.org/license/ms-pl-html/ 
 I'm not reading all of that. My license proposal is seven words! 
 I actually read it and it is fucking good and short, everything considered 🐶🐾🤔 
 Oh. Thank you for your service. 
 🤫

Microsoft bad. 😂🤣 
 🐶🐾🤣🤣🤣 
 Microsoft used to be "bad", but now they're all about Linux and open source 😂 They're a very different company. 
 New leadership brought some good in them. 🐶🐾🫂 
 Ngl Sataya Nadella is a cool cat and I’m seriously considering getting his book. 

Fish, you need to look at the .NET conf videos that just dropped on Blazor in .NET8 bro. There some real goated stuff happening there. 
 I am not a fan of .NET or Java, so not really into that 🐶🐾🤣😭 
 I can understand Java, but I'm still a bit shocked on .NET. Some time I would love to sit in a nest and talk coding aesthetics with you. So few people willing to sit and talk about that without getting angry. 😆  
 We should have a coding talk nest! Sounds like fun. Maybe even talk a little about licensing 🐶🐾🤣 
 I would totally be down for that. Sounds like fun. 
 I'm down too. 
 Non-Denominational: MIT
GPLv3: Church of Christ
GPLv2: Jehovah’s Witnesses 
BSD: Mennonites
MPL: Catholic

🤣 
 They recommend software ones because it has indemnification clause and other provisions. But if you just want to give it away and only have attribution, the CC is OK. Disclaimer, IANAL 🐶🐾🫡 
 The best open source license in existence:

http://www.wtfpl.net/about/ 
 Yes that is part. Like any BSD OS is carry over from old school.  
 Great idea, shit license, shit name 
 The name doesn't matter. I'd run a relay called Shitbox 9000 if it worked. 
 Excelente projeto, vou implantar em meu relay. 

É usem o meu relay a quase 1 ano rodando:

wss://relay.nostrbr.online  
 lnbits? 
 Dope! 
 Amazing. This needs to be a setting in client to prioritize specific relay/s when on mobile data 
 Coracle has a variant of this idea, but it also supports nip 65 routing 
 this is also new good option #relay #saver
#nost #proxy #aggregator
tech users can open this via 🧅  and access when traveling save on #mobile #data
lnbits+multiplexer(nostrclient) is same function another option
we need more  microapp on NPM / python like this 
 yonle@lecturify.net person on nostr yet
purple pill HIM 
 Hi. 
 I feel tempted...

nostr:nevent1qqsdjv9xmru93wgx0tuyqeyjtshnm9wq96gqy9dy6j562qrpqysqxlsppemhxue69uhkummn9ekx7mp0qgsr7acdvhf6we9fch94qwhpy0nza36e3tgrtkpku25ppuu80f69kfqrqsqqqqqpwvqasr 
 Mutiny’s blastr does this too

https://github.com/MutinyWallet/blastr 
 errrr just for the write fanout 
 Blastr is very different, but similar that it rebroadcasts. 
 It's hilarious how this note turned into software licensing discussion 😂 
 Sometimes it do be like that 😂 
 Ok, not to diss this project or anything, but relay-proxy from earlier this year does the same thing. Multiplextr does as well, but using a wrapper protocol so clients can make non-static relay selections.

Proxies like this hurt the ability for clients to intelligently route. They also have significant privacy drawbacks, especially if proxying AUTH (they can exfiltrate protected data).

I'd love to see more work in this area, especially since proxies have the ability to improve routing without clients having to do anything by inspecting filters coming through. I recently wrote a bit about this, see below:

https://habla.news/u/hodlbod@coracle.social/1700155417145 
 I'm not going to be able to read this right away but thank you so much for this article. I've been thinking about some of the same concepts and this article looks really well thought out. 
 I feel like the whole reason this exists because we don't have routing or gossip on all clients, so people are trying to find work arounds to make Nostr more usable. If we had routing and gossip, we wouldn't need this most likely. 
 Well, this breaks gossip in clients that have it. It would be possible for a proxy to add gossip to clients that don't, and that would be awesome, but this isn't it. 
 Just like an IRC bouncer, You are expected to run the software for your own actually.  
 And no. NIP-42 was not enabled by default & only supported for personal use due to the reasons that you've provide above. 
 And again, NIP-42 requires domain name validation. So #bostr could not use NIP-42 for public usage. 
 I am rather questioning the privacy at multiplextr than in #bostr as it tell to coracle that the event was sent from "that" relays, and then coracle sign the AUTH for "that" relays also. 
 Yes, multiplextr absolutely has the privacy problem you're describing. The advantage it has is it allows clients to implement routing. 
 How to keep this proxy relay address private? Does anybody can connect to this proxy relay silently if they know the address ?  
 In config.js, You put your public key in `authorized_keys` array. After restart, bostr will only allow users in `authorized_keys` to use the bouncer.

However, You need to ensure that NIP-42 is supported in your client. Otherwise the bouncer will not doing anything for you during authentication.

Additionally, You could enable internal NIP-42 for NIP-42 relays for your own use by inserting public & private key in `private_keys`. 
 It works when left authorized -keys empty, but Every time I added key to authorized_keys, seems it doesn’t work.🤔️ 
 Did your client supports NIP-42? I've tested this funcion in #Amethyst client. 
 Ok,thanks. It work in snort web client. Seems most clients donot support nip-42. 
 By the way, about the bounce, can it bounce to local host, like ws://127.0.0.1:port  
 It could bounce to wherever you want to. 
 I think so, but failed🤔️ 
 How so?

If you want to debug, You could enable `log_about_relays` in config.js to see whenever the bouncer connects to your relay or no. 
 Sorry, saw the configuration in the file. Can whitelist

// For personal usage. Leaving this empty allows everyone to use this bostr instance.
  // NOTE: Requires NIP-42 on client.
  authorized_keys: [
    // "pubkey-in-hex",
    // "npub ....",
    // ....
  ], 
 Looks like i got free promotion.

nostr:nevent1qqsdjv9xmru93wgx0tuyqeyjtshnm9wq96gqy9dy6j562qrpqysqxlspz4mhxue69uhkymmnw3ezuemvd96xx6pwd4jsygplwuxkt5a8vj5utj6s8tsj8e3wcavc45p4mqmw92qs7wrh5azmyspsgqqqqqqs78jgq9 
 💯💯💯
nostr:nevent1qqsdjv9xmru93wgx0tuyqeyjtshnm9wq96gqy9dy6j562qrpqysqxlspr4mhxue69uhkummnw3ez6ur4vgh8wetvd3hhyer9wghxuet5qgsr7acdvhf6we9fch94qwhpy0nza36e3tgrtkpku25ppuu80f69kfqrqsqqqqqp3np40v 
 The comments was nuts.

Anyway, BSD license was not really that bad. It was close to ISC License with different wording.

Cheers. 
 Haha. Thanks for your work. Appreciate it. 
N | 1 years ago (raw) | root | parent | reply | flag +1
 このスレッドで色々議論されている。
note1myc2dk8ctzusv7hcgpjfyhp08k2uqt5sqg26f49f55qxzqfqqdlqv55l2w 
 You’ve just saved my life of pain lmao, cannot wait to set this up for myself 
 Tonight at six: Reports indicate Semisol was killed in his sleep by a group of bearded socialists wearing unwashed shirts, who allegedly chanted “Stallman is great, Stallman is good,” throughout the ordeal. 
 Is that what I said? 
 I also don't have to shit in a toilet, but not doing so many upset some people.