Avatar
MichaelJ
70122128273bdc07af9be7725fa5c4bc0fc146866bec38d44360dc4bc6cc18b9
Building the library of Alexandria

That works now! Thank you!

Is there a way Obtainium can be configured to install ntfy automatically as a dependency of Amber?

The UI is getting pushed up on "Settings > Default relays" when I try to type in the "Relay" field on the bottom of the screen. The "X" and "Save" buttons at the top get pushed off-screen.

I have changed the default relays. My current relay list on Amber is:

- wss://nostr.thesamecat.io

- wss://greensoul.space

- wss://relay.nsec.app

- wss://theforest.nostr1.com

I am not using a local relay.

#noStrudel

NoStrudel is the most consistent for me, but it moves like molasses. It feels like there are a ton of background processes on the page gumming up my browser. Not the end of the world, because at least the app is usable, but not ideal.

#ngit

I found out that ngit doesn't let you change the upstream naddr of the repo to which you're opening a proposal; it just tries to detect it automatically.

I recently opened a proposal with ngit, and NostrWorkshop shows the proposal for a few seconds, then shows an error indicating the repo naddr couldn't be found.

nostr:npub15qydau2hjma6ngxkl2cyar74wzyjshvl65za5k5rl69264ar2exs5cyejr responded to my post on it, which I appreciate, so I will be troubleshooting that. Thanks Dan!

#Primal

Primal works okay on my phone *most* of the time. Well enough to use for posting and responding.

It duplicates notifications a ton, especially in replies.

When I post a note as a reply, Primal shows the note in a greyed-out "posting" state...but never leaves that state. If I navigate away and come back the note is there, but there's that moment of uncertainty where I'm not sure whether I'm going to lose the note to the void.

Recently, my "following" feed only goes back about a day, then it shows me a handful of posts from like, a week ago, then nothing. I can't trust it's showing me all posts from my follows.

#Amber

Amber had a notable UI bug in which opening the keyboard on my phone would push the whole UI up until the top elements were off-screen.

It could generate a connection string to paste into another app, but the only way (as far as I can tell) that it can read an app-generated connection string is by scanning a QR code. So I can't use it to receive connection strings from other apps or websites on my phone.

Finally, I tried generating a connection string and pasting it into noStrudel, but never got notified asking for signing permission. No indicators popped up in Amber. Either noStrudel never sent the event, or Amber never got it.

#nostrdev please...slow down and test stuff before putting it out. Literally every Nostr app I've tried to use today is buggy to the point of being unusable. I'd rather see slower releases that actually work than bleeding-edge apps that run like it's the 23rd hour of a red-bull-fueled hackathon.

nostr:npub15qydau2hjma6ngxkl2cyar74wzyjshvl65za5k5rl69264ar2exs5cyejr can I get some help?

I'm trying to open a proposal to Alexandria (link below), but it seems the proposal was created with a reference to a non-existent repo event. I can't figure out how to change the upstream repo event in the ngit CLI.

Alexandria:

naddr1qq9yzmr90pskuerjd9ssz9thwden5te0wp6hyurvv4ex2mrp0yhxxmmdqgs06gywary09qmcp2249ztwfq3ue8wxhl2yyp3c39thzp55plvj0sgrqsqqqauej5m80x

My proposal:

nostr:nevent1qqsvec20h56dg0hku0ngxfjna5290pzrqxpcd44j0azq38s3s08ecsqpz3mhxue69uhhyetvv9ujuerpd46hxtnfdupzquqjyy5zww7uq7hehemjt7juf0q0c9rgv6lv8r2yxcxuf0rvcx9evhcjj0

Today has been a big day with the nostr:npub1s3ht77dq4zqnya8vjun5jp3p44pr794ru36d0ltxu65chljw8xjqd975wz folks.

I've spent a bunch of the day helping to coordinate development, onboard new members, and field questions. It feels like a professional dev team, and I love it.

Plus, our members are all over the world. The sun never sets on the GitCitadel team.

Thanks nostr:npub1w4jkwspqn9svwnlrw0nfg0u2yx4cj6yfmp53ya4xp7r24k7gly4qaq30zp nostr:npub1m3xdppkd0njmrqe2ma8a6ys39zvgp5k8u22mev8xsnqp4nh80srqhqa5sf nostr:npub1qdjn8j4gwgmkj3k5un775nq6q3q7mguv5tvajstmkdsqdja2havq03fqm7 nostr:npub1m4ny6hjqzepn4rxknuq94c2gpqzr29ufkkw7ttcxyak7v43n6vvsajc2jl

Yeah we really just need git object discovery via Nostr/Blossom. That's fairly simple, since all git objects are uniquely identified by a hash. So, on some level, all we need is a table of git object IDs and where to find them.

Replying to Avatar DanConwayDev

I've been thinking about how to improve #GitViaNostr

* make it more git native experience

* reduce the role of the git server

* integrate releases

Here is a concept ngit quick start guide: https://gitworkshop.dev/concept

I'd love your feedback

I've already started to build out some of the new features

nostr:npub16r0tl8a39hhcrapa03559xahsjqj4s0y6t2n5gpdk64v06jtgekqdkz5pl nostr:npub1m4ny6hjqzepn4rxknuq94c2gpqzr29ufkkw7ttcxyak7v43n6vvsajc2jl nostr:npub1wqfzz2p880wq0tumuae9lfwyhs8uz35xd0kr34zrvrwyh3kvrzuskcqsyn nostr:npub1uplxcy63up7gx7cladkrvfqh834n7ylyp46l3e8t660l7peec8rsd2sfek nostr:npub1elta7cneng3w8p9y4dw633qzdjr4kyvaparuyuttyrx6e8xp7xnq32cume nostr:npub180cvv07tjdrrgpa0j7j7tmnyl2yr6yr7l8j4s3evf6u64th6gkwsyjh6w6

It looks like you are leaning towards wrapping/extending some core git commands. The proposal mentioned overriding the function of `git push -u` to create a proposal.

One avenue we've explored at the CLI level is to wrap and extend core git commands. To use ngit as an example, rather than using commands like `git commit`, a user would do it all via ngit, e.g. `ngit commit`.

Any features that extend or override core git functionality, such as `push` in your write-up, would do the Nostr-y bits on a higher level, but delegate the core git operation down to the underlying git API. Any commands that don't have any special meaning in a Nostr context would be blindly passed down to core git.

That is, in part, why we chose C++ as our development language. Git is largely written in C, and interfacing with C APIs from C++ is fairly natural, and would facilitate the plan of wrapping and extending core functionality.

I think you and I have slightly differing visions, which is great, as we're less likely to clash.

I've been seeing ngit and GitWorkshop heading in the direction of the distributed/patch model of project organization. Setting up a multitude of git servers to act as relays for git objects that anyone can draw from is a good idea. That model is also excellent for open-source development, where contributions are driven primarily by fork submissions.

I'm personally leaning towards fleshing out the "cathedral" model. Tight-knit or closed-source teams might prefer that, with a shared git server and contributions coming from branches rather than forks. Even there, however, I aim for our solution to avoid centralization by using the basic model of repo discovery over Nostr.

In that sense, we definitely want to seek compatibility in the core model. Someone using GitRepublic should be able to submit patch proposals to an ngit/GitWorkshop user on the distributed model, and someone using ngit should be able to at least fork and create PRs against projects using GitRepublic and the cathedral model.

My hope is that we can maintain core interoperability but avoid unnecessary competition if we are aiming to serve different sectors of the market.

Forking/collaborating is one option, but I'm also interested in parallel development on different tech stacks. If ngit is in Rust, then we can develop GitRepublic in C++, for instance. As long as we're working on lower-level tools, having multiple options in different languages out in the wild expands the space for others to build on that foundation.

Why replace git servers? Git servers are tried-and-true to the point that trying to re-implement them on a new tech stack would almost certainly be a step back. Any computer that has git installed can act as a simple git server; we should capitalize on that.

The more people use AI, the more valid the Dead Internet Theory becomes.

We ran through that exact same thought process. The first instinct is to reconstruct git commits as Nostr events. That's a dead end, because it's just redoing the same work git has done but worse.

Git is already decentralized and good at what it does. All that is really needed is a Nostr skin. We need to replace *GitHub*, not Git.

So the Nostry bits are the discovery, communication, and collaboration. Publish repos, help others find them, facilitate discussions and PRs, but *don't* try to replicate every commit to a relay; that would be foolishness.

For what it's worth, I use GitHub Desktop daily in my day job. It is really good at editing commits, resolving merge conflicts, and managing multiple repositories. My vision is to have those basics, but with more features to maximize Nostr's potential for facilitating discussions.

Can't promise when, yet. The next effort will be to work with nostr:npub1qdjn8j4gwgmkj3k5un775nq6q3q7mguv5tvajstmkdsqdja2havq03fqm7 to finish the Aedile NIP-46 implementation.

At that point, Aedile will support basic event building and signing and relay interactions, which is the springboard for everything else.

Replying to Avatar Laeserin

# The new Great Library

We have all heard tales of Amazon or other booksellers banning customers from their bookstores or censoring/editing purchased books. The famous [Project Gutenberg](https://www.gutenberg.org/), and similar organizations, are performing a good work, to help protect many of our precious books from this fate, but it is merely a centralized website and therefore not censorship resistant. Also, it mostly posts books in English or German.

So, we at nostr:npub1s3ht77dq4zqnya8vjun5jp3p44pr794ru36d0ltxu65chljw8xjqd975wz have decided to move Project Gutenberg to Nostr and house it in the most distributed way possible: on relays. Specifically, our new, public [Citadel relay](https://thecitadel.nostr1.com/) for out-of-print books (and other documents), but also on any relay, anywhere.

And, because we are a very humble group, we're naming the effort "Alexandria". And the first book to be printed on Nostr is the Bible because *obviously*.

## Why on relays?

Well, why not on relays? Relays are one of the few widely-distributed databases for documentation in existence. The relay database spans the entire globe and anyone can maintain their own relay on their personal computer or mobile phone.

That means that anyone can house *their own* books.

Which books are their own? Any books they have in their own possession. Any books someone would have to physically pry out of their cold, dead, computer.

## Notes are perfect for publishing

Once we begin generating eBooks from notes with an associated header (which will be quite easy to do, so long as they are written in markdown or similar), they will also be readable, downloadable, and storable in ePub format (see [Pandoc](https://pandoc.org/epub.html)). And it is, after all, only a matter of time until someone enterprising makes an ePaper Nostr client for calmer reading of notes, and then you can download and read them, without having to bother converting beforehand, which maintains their Nostr-navigation.

The new event kind [30040](https://wikifreedia.xyz/nkbip-01/) allows us to take any sort of note containing any sort of characters and create a type of "note collection" or "book of notes", "journal of notes", "magazine of notes". And it can be nested or embedded in other notes, creating any sort of note-combination and note-hierarchy you can think of, only limited in size by the ability of your computer to processes the relationships.

## Save the Zettels

The associated kind 30041 adds the prospect of breaking longer texts or articles up into sections or snippets (called "Zettel" in German). We can then collect or refer to particular bits of a longer text (like a chart, elegant paragraph or definition, data table), directly. Anyone can create such snippets, even of texts they didn't write, as they can add a reference to the original publication in the tags of the new event.

This means we no longer have to "copy-paste" or quote other people's works, we can simply tie them in. If we worry about them being deleted, we can fork them to create our own, digitally-linked version, and then tie that in. This means that source material can be tied to the new material, and you can trace back to the source easily (using Nostr IDs and tags, which are signed identifiers) and see who else is branching out from that source or discussing that source.

## It's gonna be HUGE!

We are making a big, beautiful library... and you are going to build it for us. Anyone, anywhere can therefore publish or republish any document they wish, with Nostr, and store it wherever they have a relay, and view it on any client willing to display it.

You will own something and be happy.

No one in the comments has mentioned this yet, but this could be the new format for publishing and maintaining specifications and docs for Nostr software.

This could even replace the NIPs repo...

IMO signing with an extension or nsecbunker would be best. I think there's a NIP for HTTP auth using Nostr.

The 2FA scheme with npub+DM makes sense to me. It's an extra step to log in, but it would work with whatever Nostr client the user is familiar with already.

Easiest flow would have the DM give a link that authenticates and redirects to the home page of nostr.build, so the user doesn't have to copy-paste or remember a one-time code.

Highbrow group?

I might just not be old enough to have the naive optimism of youth beaten out of me

It's not just genetics though, I guess is what I'm saying. Having a loving family or spouse can make you charming as you age.

Stella you basically do the same thing, the way you talk about your husband 🀣

You should set up a lightning wallet! I tried to zap you for your photo but it didn't work.

Yeah it makes sense to me too, because of the associations of knighthood with chivalry and masculine virtue.

Men tend to gravitate towards the interests of their wives as well, though, I think. We are often shaped by our relationships.

True. She's very straightforward and says what she thinks, which is great because there's rarely confusion when we talk to each other.

Like is a good foundation for love (that is, love as a choice), especially for a marriage. It's not the only one, though.

Jesus never promised life would be great.

I am allergic to Prosperity Gospel.