0
0
3

GA Nostr. Thought of the day: Nostr is an endless hacking fest for someone like me. The rabbit hole is almost bottomless. My last couple of months went like this: - Haven needs to support Blossom mirroring on Primal mobile? OK, looks like this is a problem in Khatru. Let’s fix that. - Actually, every Blossom server is doing something slightly different when mirroring, and I don’t want Haven or Khatru to rely on if conditions just to work with different Blossom servers. OK, let’s try to improve the specs. - Great. Now I need a Blossom client I can quickly hack on to test my changes... Let’s add mirroring support to nak (I haven’t contributed it upstream yet... It's on my to-do list). - OK, now I’ve got a proper Blossom client to hack on, but nak isn’t playing well with Amber. Let’s figure that one out... - While we’re at it, since nak has its own bunker, why not add QR code and Nostr Connect token support? I mean, QR code support in the terminal, how cool would that be? Maybe I can pester fiatjaf about implementing persistent profiles too. - So, in order to contribute I need to contribute some of these changes I need to get acquainted with nip34... ngit and gitworkshop.dev to the rescue. - Now nak is working great, but for some reason Bunklay and `relay.nsec.app` still aren't playing well with Amber for me. Let’s look into that and experiment with other relays + remote signing software. Wait… what was I doing again? And that’s how I end up actively working on Haven while you folks don’t see commits for months. Nostr development is full of distractions. The good kind of distractions! Thanks for your patience nostr:nprofile1qqszv6q4uryjzr06xfxxew34wwc5hmjfmfpqn229d72gfegsdn2q3fgpzfmhxue69uhkummnw3e82efwvdhk6tcpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhszythwden5te0dehhxarj9emkjmn99urf278z, nostr:nprofile1qqsrhuxx8l9ex335q7he0f09aej04zpazpl0ne2cgukyawd24mayt8gprfmhxue69uhhq7tjv9kkjepwve5kzar2v9nzucm0d5hszxmhwden5te0wfjkccte9emk2um5v4exucn5vvhxxmmd9us2xuyp, nostr:nprofile1qqs827g8dkd07zjvlhh60csytujgd3l9mz7x807xk3fewge7rwlukxgpz9mhxue69uhkummnw3ezumrpdejz772u5wm and nostr:nprofile1qqs06gywary09qmcp2249ztwfq3ue8wxhl2yyp3c39thzp55plvj0sgpzpmhxue69uhkummnw3ezumrpdejqzyrhwden5te0dehhxarj9emkjmn9qydhwumn8ghj7argv4nx7un9wd6zumn0wd68yvfwvdhk6tc7xx9t4 who I’ve been pestering incessantly with all sorts of dumb questions and issues. Hopefully all this yak shaving is pushing the Nostr ecosystem forward, even if just a bit. Let’s see how far we can take this! More yak shaving to come. #gm #nostr #devstr #blossom #bud04 #mirroring #nip46 #remoteSigning #nip34 #gitStuff

1
2
3

GA Nostr. Thought of the day: Nostr is an endless hacking fest for someone like me. The rabbit hole is almost bottomless. My last couple of months went like this: - Haven needs to support Blossom mirroring on Primal mobile? OK, looks like this is a problem in Khatru. Let’s fix that. - Actually, every Blossom server is doing something slightly different when mirroring, and I don’t want Haven or Khatru to rely on if conditions just to work with different Blossom servers. OK, let’s try to improve the specs. - Great. Now I need a Blossom client I can quickly hack on to test my changes... Let’s add mirroring support to nak (I haven’t contributed it upstream yet... It's on my to-do list). - OK, now I’ve got a proper Blossom client to hack on, but nak isn’t playing well with Amber. Let’s figure that one out... - While we’re at it, since nak has its own bunker, why not add QR code and Nostr Connect token support? I mean, QR code support in the terminal, how cool would that be? Maybe I can pester fiatjaf about implementing persistent profiles too. - So, in order to contribute I need to contribute some of these changes I need to get acquainted with nip34... ngit and gitworkshop.dev to the rescue. - Now nak is working great, but for some reason Bunklay and `relay.nsec.app` still aren't playing well with Amber for me. Let’s look into that and experiment with other relays + remote signing software. Wait… what was I doing again? And that’s how I end up actively working on Haven while you folks don’t see commits for months. Nostr development is full of distractions. The good kind of distractions! Thanks for your patience nostr:nprofile1qqszv6q4uryjzr06xfxxew34wwc5hmjfmfpqn229d72gfegsdn2q3fgpzfmhxue69uhkummnw3e82efwvdhk6tcpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhszythwden5te0dehhxarj9emkjmn99urf278z, nostr:nprofile1qqsrhuxx8l9ex335q7he0f09aej04zpazpl0ne2cgukyawd24mayt8gprfmhxue69uhhq7tjv9kkjepwve5kzar2v9nzucm0d5hszxmhwden5te0wfjkccte9emk2um5v4exucn5vvhxxmmd9us2xuyp, nostr:nprofile1qqs827g8dkd07zjvlhh60csytujgd3l9mz7x807xk3fewge7rwlukxgpz9mhxue69uhkummnw3ezumrpdejz772u5wm and nostr:nprofile1qqs06gywary09qmcp2249ztwfq3ue8wxhl2yyp3c39thzp55plvj0sgpzpmhxue69uhkummnw3ezumrpdejqzyrhwden5te0dehhxarj9emkjmn9qydhwumn8ghj7argv4nx7un9wd6zumn0wd68yvfwvdhk6tc7xx9t4 who I’ve been pestering incessantly with all sorts of dumb questions and issues. Hopefully all this yak shaving is pushing the Nostr ecosystem forward, even if just a bit. Let’s see how far we can take this! More yak shaving to come. #gm #nostr #devstr #blossom #bud04 #mirroring #nip46 #remoteSigning #nip34 #gitStuff

0
1
3

GM folks. Khatru devs: Heads up. I'm making some backwards-incompatible changes to Khatru's Blossom API, as previously agreed with nostr:nprofile1qqsrhuxx8l9ex335q7he0f09aej04zpazpl0ne2cgukyawd24mayt8gprfmhxue69uhhq7tjv9kkjepwve5kzar2v9nzucm0d5hszxmhwden5te0wfjkccte9emk2um5v4exucn5vvhxxmmd9us2xuyp. The three things to watch for are: 1. All blob-related events that take a sha256 will also receive a new string field (`ext`) with the file extension: https://github.com/fiatjaf/khatru/blob/v0.18.2/blossom/server.go#L17-L26 2. If khatru can't detect the blob contents, `ext` will be empty and `BlobDescriptor.Type` will be `application/octet-stream`, in accordance with the latest Blossom specs: https://github.com/hzrd149/blossom/blob/master/buds/01.md#get-sha256---get-blob 3. `GET /{sha256}` and `HEAD /{sha256}` will both pretty much ignore the file extension and return the blob with the `Content-Type` from the `BlobDescriptor`. E.g., if you upload a PDF and later request `{sha256}.jpg`, Khatru’s Blossom server will still serve the original PDF with `Content-Type: application/pdf`. (This is the best compromise given the current Blossom API, as agreed with nostr:nprofile1qqszv6q4uryjzr06xfxxew34wwc5hmjfmfpqn229d72gfegsdn2q3fgpzfmhxue69uhkummnw3e82efwvdhk6tcpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhszythwden5te0dehhxarj9emkjmn99urf278z.) I'll ping you again when this is merged. Any thoughts or concerns, please let me know. nostr:nprofile1qqsw9n8heusyq0el9f99tveg7r0rhcu9tznatuekxt764m78ymqu36cpr3mhxue69uhhyetvv9ujucnfw33k76twwpshy6ewvdhk6tcpzdmhxue69uhhwmm59e6hg7r09ehkuef0qy2hwumn8ghj7un9d3shjtn4w3ux7tn0dejj7ne6u4e, nostr:nprofile1qqs2qzx779ted7af5rt04vzw3l2hpzfgtk0a2pw6t2plaz4d2734vngpzamhxue69uhhyetvv9ujumn0wd68ytnzv9hxgtcppemhxue69uhkummn9ekx7mp0qy2hwumn8ghj7un9d3shjtnyv9kh2uewd9hj7hycrvd, nostr:nprofile1qqst6jhruelzn9jdf9qhyfsac3fetjyld0fwwary9cmxzfchrhacragppemhxue69uhkummn9ekx7mp0qy2hwumn8ghj76n9d3k8jenfwd5zumrpdejz7yj9f6t (Feel free to ping anyone else who may be interested.) #devstr #khatru #blossom

1
0
3

0
0
3

0
0
3

0
0
3

0
1
3

0
0
0

0
0
1

0
0
3

0
0
3

0
0
1

0
0
1

0
0
3

0
0
3

0
0
1

0
0
1

Gigi @Gigi - 10mo

0
0
3

0
0
1

Showing page 1 of 3 pages