Mon 11 Jun 2018 5:59AM

Creating self/community-hosted replacement(s) for GitHub

DS Danyl Strype Public Seen by 137

Apologies for my lack of participation here. I have been reading ‘Ours to Hack and Own’, and following some pretty rapid developments in a range of areas relevant to the OAE, particularly the rapid fediverse evolution prompted by the formal release of the ActivityPub standard, and the reaction to the acquisition of GitHub. If you’ve been living under a rock for the last week or so, it transpires that Microsoft, a company that spent a decade or two spreading FUD about GNU-Linux, and the GNU GPL being a “viral license” and so on, has now bought GH. A lot of people have always felt conflicted about doing free code development on a proprietary platforms that locks in users in every way it can.

This announcement seems to have been the straw that broke the camel’s back for a lot of people, and it looks like there is going to be a mass exodus from GH. Already, there is an explosion of new self/community-hosted instances of GitLab and other code forges like Gogs / Gitea, and a renewed interest in creating federation between instances to allow this cluster of independent servers to form a united meta-platform to replace the convenient of GH. I propose that the OAE move any code and documentation it has stored on GH to either a self-hosted GitLab instance, or an existing community-run one, and I further propose that all apps who currently do their dev on GH consider moving it to the same instances, so we can all continue working together easily.

EDIT: updated link, fixed typos


[email protected] Mon 11 Jun 2018 8:20AM

"This announcement seems to have been the straw that broke the camel’s back for a lot of people" indeed. Here's another alternative for hosting git repositories: Phabricator. It is an Apache licensed online collaboration platform, that includes software repositories such as git, mercurial and a range of practical collaboration tools, to share passwords, make blogs, Q&As, Wikis, documents, calendars, timetracking etc. At the CommonsCloud project we have chosen this platform not even in the first place of the git repository integration, but particularly for the welldesigned selfmanagement approach. One can create groups and subgroups to emulate complex organisations while controling the visibility, editing and join rights for each object, without even relying on admins external to your project. This platform is used in WikiMedia Foundation, KDE, Blender, Apertus and several other, large communities. Let this move of GitHub be the last straw to move away to community controlled platforms! (BTW here more about the making of CommonsCloud).


Bob Haugen Mon 11 Jun 2018 9:32AM

@wouter how or where can I learn more about that OdooCoop project? [edit] Found http://odoocoop.cl/ - is that it?

Might be similar to something that Coopaname was working on. I don't think they ever finished, but they had a start. https://bitbucket.org/ccomb/rea/ and a demo https://odoorea.demo.prelab.fr/web/login


[email protected] Mon 11 Jun 2018 10:13AM

Hi Bob, OdooCoop is another project of the femProcomuns multistaekholder coop, where we also coordinate thh CommonsCloud Alliance. So the OdooCoop is an alias for "Odoo for Cooperatives" (we have no aspirations of licensing the word Odoo from the Belgium SA) and is an alliance of cooperatives in and around BCN that are co-developing, sharing costs and making replicable an Odoo-based ERP for the social and solidarity economy. You can find more info in the issues and wiki at our account at gitlab: https://gitlab.com/femprocomuns/odoo-coop/issues. We are also in contact with Valeureux (Sybille and others) who are working on the Coopaname case. Theirs is an important work to adapt Odoo, such that they have called it WeZer. So far we are learning the basic development and functional skills with a growing dev team of some 6 people between the different entities. Ultimately these efforts and yours could combine. But we have a priority to get our MVP ready of what we call "project0", that is the minimum platform to self-manage our cooperative. That ranges from keeping track of co-owners (that any cooperative needs to do for each typology of ownership and personal contribution levels), managing analytic accounting for different business units, what we call "Groups of Cooperativised Activity" (groups such as OdooCoop itself, or CommonsCloud, or our IoT community network The Things Network Catalonia to name a few), to manage SEPA debit instructions and synch them with banks (or other payment networks, but that's for MVP2).
Well, these requirements may seem very basic, but are the minimum for us to get working decently, and for other coops they are an interesting opportunity to make their operations much more efficient and self-managed (with real time data, think that most small orgs have economic insights after the end of each quarter...) Well, of course you knew all that already. I know that you guys are working on very interesting value accounting propositions. The thing is that we should get our MVP out or our fragile economy collapses. You can imagine more and more people joining the collective project and in need to make ends meet, while we're still with spreadsheets ... But that shouldn't refrain you from criticising us. Please comment...


Bob Haugen Mon 11 Jun 2018 10:33AM

I wouldn't dream of criticizing. Have you talked to Christophe at Coopaname? He's the person who was working on an Odoo project.

Also, the Mutual Aid Network has deployed a system based on Wezer and I know are looking for collaborators.

One advantage of what Christophe was doing is it's based on REA which is an appropriate accounting and economic model for networks, as opposed to single business enterprises. But I don't know how far he got and whether he still wants to work on it.

Anyway, those would be two different potential directions for collaboration: Mutual Aid Network for Wezer, or maybe Coopaname for Odoo/REA.


[email protected] Mon 11 Jun 2018 1:20PM

Bob, is that Christophe Cessetti or who is it? Will be good to be in contact. I know from Sybille that Jullien Dussart was also working on the Coopaname project IIRC (that was more than a year ago). So time to check again how their work is progressing.


Bob Haugen Mon 11 Jun 2018 2:46PM

Christophe Combelles


Josef Davies-Coates Fri 15 Jun 2018 12:07AM

@wouter I love the piece about the technical choices for CommonsCloud and I'd really love to learn more about the reasons for going with Phabricator over GitLab?

The Gnome project evaluated GitLab and Phabricator and in the end decided GitLab was best for their scenario.

Why is Phabricator better than GitLab for the CommonsCloud scenario? (I note the Gnome's evaluation doesn't mention e.g. the rudimentary slack-clone that is part of Phabricator - also seems potentially easier to be adapted/ used for non-software projects)


[email protected] Mon 25 Jun 2018 12:28PM

Time flies. Thanks for the question, Josef, about GitLab vs Phabricator. Let me first state that I haven't seen great benchmarks, i,e, profound, well documented comparisons between the various free software tools. Ours is mostly based on direct experience and that of relevant communities.
In the case of Phabricator, there are several global communities who run their instance, two that we are in direct contact with: Wikimedia and KDE. Phabricator seems to be very apropriate for supporting the software development workflow, which for the KDE community is obviously key. In Wikimedia I think the use is wider than that. https://phabricator.wikimedia.org/
For us, we were looking for a platform that could adapt to the needs of diverse community oriented teams, not only of software developers. To be honest, we have been running Phabricator now for six months, and we haven't enabled the software repos and other sw dev tools yet. And still it has been already very useful for different teams and communities. Phabricator allows you to define projects and subprojects as you like and manage tasks, use kanban workboards, share passwords, define view/edit/join policies in each task and (sub)project in such way that users can selfmanage. There's a few dozens of other applications integrated in it, such as wikis, blogs, badges, mockup designs, timetracker and we're seeing how we extend it.
There's a common line tool for the admins; and there's arcanist, a command line tool for software development, https://secure.phabricator.com/book/phabricator/article/arcanist/
WRT parallel objects and merge: Phabricator can do this in the wiki, and in the tasks, besides obviously in git for software repos. Se can have a task with parent and child tasks which are in some level coming back. The user interface intuitively depicts these relationships graphically.
BTW, if you're interested, we are working with a docker container with Phabricator in it for quick replication and deployment. And we are working on the translations to make it truely multilingual. A major challenge that we see is how to integrate Phabricator file storage with NextCloud; we haven't figured it out, but that would be a major step forward IMHO. https://projectes.commonscloud.coop/


Bob Haugen Mon 11 Jun 2018 9:41AM


I further propose that all apps who currently do their dev on GH consider moving it to the same instances,

We're working an ActivityPub-based OAE project and are watching https://github.com/git-federation/gitpub
If they can get it going, we will move there, because we would like to have all our economic activities and social interactions interconnected in one fediverse. We think that could be the start of a federated economic system.

If GitPub doesn't happen,, Phabricator via CommonsCloud looks pretty good.


Bob Haugen Mon 11 Jun 2018 9:47AM

@ivan116 has written the first draft of an overview of our OAE project, called OCE (Open Cooperative Ecosystem). The first app is called Agent, because it is an agent-oriented architecture and Agent is your agent in the fediverse.

Load More