Does anyone have a gitserver we could use, so that people have an alternative clone to the one on GitHub? Gitea or Gitlab or something?

#dev #Nostr #asknostr

Reply to this note

Please Login to reply.

Discussion

it needs more work but https://mleku.net/legit

i have only patched it up a little to fix some glaring bugs but it needs a lot more work

the main thing i use it for is basically providing http git, the website is an accessory

if you are preferring to use apache or nginx there's tooling that comes with Git to do similar things, but i hate apache and legit is written in Go (git alone doesn't need anything, because it leverages ssh)

Ah, yeah we actually have a remote server and a remote webserver. 🤔

well then there is git tooling that lest you do a simple web page with all the file lists and tags and commits and stuff, just a couple of related git packages

That's probably best. People should run git locally.

yeah, to run a simple git repo, you don't have to install anything other than ssh and git itself, and you just have to add all the SSH keys of the people you want to be able to access it to the user that owns where the repos are stored (as --bare)

but as i say, Go needs http and i was sick of using gitea because it forces you to have a subdirectory after the domain and i wanted my repos to be right at the root, so legit let me do that, and i upload commits using SSH

Is it possible to combine both?

Have a simple clone interface for externals and a full git server with SSH for the team?

yeah, teh simplest, if you call running apache server simple, is git-instaweb https://www.git-scm.com/docs/git-instaweb

i went with legit because it's in Go which means i can fix and change it myself

and i run https://mleku.net right off my mini PC behind my workstation that runs a bitcoin full node

"full git server" btw just means having SSH and git installed, this was part of the genius of Linus' design, you just ssh in, and the git user you log in as has your SSH key added to authorized_keys and it runs commands to the git shell that is the user's default shell

so that part is the easy part

the hard part is when you want to give access to the public, because SSH is not designed to allow ad-hoc one-off unprivileged logins, plus in my case, i use Go which depends on git HTTP

Yeah, that's the thing.

Have you considered nostr:npub180cvv07tjdrrgpa0j7j7tmnyl2yr6yr7l8j4s3evf6u64th6gkwsyjh6w6's song for a self hosted option?

#[4] is on it.

nostr:note1f88dx4vt8lq4jgv953qw7lnmu0xell0j9g5caxct2klzsquuahaq8zd9hv

yes, i had to have some kind of HTTP git access in order to use it with Go, that was the reason, and once one person fetches a tag or commit tree from it, it's in the go mod proxy, so it wasn't worth a big effort

The guys at codeberg host a gitea instance for open source projects.

This is what I use as a git server for ngit and gitworkshop.

Would be good to have multliple clones, really. 🤔

gitea has automated mirroring, including optional authentication requirements

gitea is very nice but it doesn't let me do https://mleku.net/ratel it is instead https://mleku.dev/git/replicatr

might seem like i'm being nit-picky but if i'm not collaborating with anyone why can't i have a one user only gitea? even gitea is bloated

Git-picky 😉🤣

I'd like to make a nostr git remote helper that will update a state event and push to multiple git servers listed in the announcement event

I just zapped you my opinion on that. 😂

Your opinion hasn't arrived.

Really? It was 2700 sats at 10:01.

It was deducted. 🙈

It arrived after a few restarts of Minibits but with no other message than 'zap recieved' message. I'm sure my capping experience was better with alby.

Yes, I saw that it went to LN bits.

yes, it's possible to do that directly with a git command wrt multiple remotes, all you need to do is make it more simple, possibly can add config items in the git config for the repo, and need an nsec or signer interface to create the event

nostr:note1c0asa5rx8wwmmecny06zvaaekxetd3u5ejcng42s2tzm3zeacq2q5daf2l

Implemented in ngit v1.4

I also push to github and include in the repository announcement event.

I'm excited about the prospect of song. Push permissions are only based on whether the head commit is listed in the repo state event.

Wait, "song" is a thing? I thought you meant he was "speaking eloquently on the subject". 😂