the end result here is that the technical deficiencies in git create a barrier to non-experts which has led us to grant an american corporation exclusive control of vast swathes of the FOSS commons. This will not end well.
2/2
what's the solution? open source git hosting like gitlab-ce? gitea?
@notclacke @sungo @catonano oooooo huh
alrighty then. makes more sense now!
@ben @catonano @sungo Not OP, but git itself is the problem - to do things that are a course of normal operation, you have to be an expert in git. That's not feasible for many people - people who should be able to use version control. So, they "need" to use an interface to do things which frankly shouldn't need one.
oof that sounds like a lot of work
Yep... It's easy and everything is already there.
What about gitlab? They're open source!
@ben @sungo Apparently it already works. https://ipfs.io/docs/examples/example-viewer/example#../git/readme.md
@sungo @ben I'll just throw it onto the pile of projects I want to do someday... https://lgbt.io/media/i0hl6HckQdbHti_b0zw
Ha, yes the ever-lengthening list!
@slashzero @ben I was just saying that I need to refrain from ranting about that. But it's difficult.
Lol yeah its hard!
Those are some *ugly* URLs lol.
I haven't found a compelling use case for ipfs yet...
@ben @sungo yeah, the ugly URLs are why I have "Look into how to deploy a git repo to IPFS under a static human usable name.
OSS projects would likely have to register a domain to point to an IPNS entry.
So let's say I have a domain`slashzero.name` I'd point `git.slashzero.name` to the IPNS entry. then someone would `git clone https://git.slashzero.name/events-rs`
theoretically, we don't even need IPFS to federate projects, just DNS and a HTTPS server.
@slashzero @ben "just"
@sungo @ben It isn't that hard to point a domain to a host. I just pointed git.slashzero.name to github's ip and was able to clone my repo: https://lgbt.io/media/DskPQ3PAoDCdRivjLR0
And that works with ipfs addresses too?
hmm that could be a nice stopgap between current DNS and ipfs
@notclacke @ben @slashzero Y'all mind untagging me? :)
@ben @sungo With a domain I control, I can point it to somewhere else if my host (in this case github.com) goes away.
That's how Assembly Four was able to fix the censorship of Switter. https://assemblyfour.com/switter/cloudflare-fosta-sesta
Fortunately for them Cloud Flare just deleted their DNS entry to block them.
@slashzero @ben The internet is owned by a few large corporations who can afford to maintain the wires. The web is increasingly centralized too. It's all very depressing.
unfortunately so :/
@ben @sungo What needs to happen is a federation of git instances like Mastodon and constant domains to those servers.
Smaller projects could use their instance's URL. So https://git.social.coop/slashzero/rs-events could be a gitlab instance for the social.coop community.
Big projects should buy their own domain and CNAME it. https://git.labstack.com/echo would be aliased to https://git.social.coop/labstack/echo
If git.social.coop kills their git hosting, labstack would point the domain at a new instance and forget about it
i think there would need to be some kind of persistence for those domain records. it's the same problem of having a dependency from github and them being down.
@ben @sungo Hmm? What do you mean by that? DNS is already a distributed system. If my domain server host vanishes, I can move my domain somewhere else.
If my git host vanishes, I can point the domain somewhere else.
For public instances like my git.social.coop example. Small projects make the trade-off of ease of use vs a static project URL. If that instance vanishes, we're still breaking all dependents.
It breaks some projects and not nearly all projects like github.com vanishing.
that's true. i'm just concerned about renaming and moving things around.
sounds about right. having control of the domains and dns zones is super important.
@sungo In my opinion, ActivityPub support needs to be implemented in GitLab & Gogs/Gitea to effectively allow for the GitHub workflow in a distributed manner.
Sadly, nor Gitea or Gogs, nor GitLab seem actively interested in the idea, GitLab probably just wants you to use GitLab.com, but then you're just moving the single point of failure under a different umbrella, even if perhaps a more friendly one than GitHub, (since at least GitLab CE is FOSS and they run the company fairly transparently).
@MatejLach I took a look, and ActivityPub would work for this. Pull requests are straightforward: SCM url / branch / revision and some text, with notes replying to it (can add a file/line for specific feedback). Issues are easy. Forking is trivial, though most of it isn't covered by ActivityPub.
@sungo Fortunately, the code and history at least won't disappear when Github does unless no one has a local copy... but it's definitely not an optimal situation.
@sungo
Hooray for monocultures/centralization! Gotta love putting your trust in a single entity that isn't yourself