Why I Use Sourcehut

A lot of people asked why I started moving away from platforms such as GitHub or GitLab, while there is a multitude of reasons, one of the biggest ones is I want to begin moving away from corporate / big entity services. There’s plenty of forges out there, such as Codeberg, for example. However, the “big corporate scary” mindset is not really what has brought me specifically to Sourcehut. So let’s discuss why I chose it.

The first major reason is probably the one I listed above, I was originally using GitHub for all of my projects, including private ones, while initially I was perfectly fine with this, later on I began to have the opinion that a site that is not only closed source but ran by a corporate entity, hosting open-source projects and code seems rather hypocritical in the long run. After coming to this conclusion I tried many different forges, such as Codeberg, GitLab, Hosting my own Gitea/Gogs instance, so on and so forth, until I found one that I was happy with. I had been using Sourcehut for personal projects for a while at this point, using things like the build service through supplimentary credit given for contributing to the platform and as a nice deed. At this point I am now paying for the service, and while it is not mandatory now, it will be later on.

The second reason would be I personally prefer it’s user interface, which while some people may think the exact opposite, as some people have said it seems “confusing”, “convoluted”, or “too minimal” for example, I personally like it, it is honestly quite refreshing to use a software forge that doesn’t follow the seemingly prevalent “let’s copy how GitHub looks!” approach. Sourcehut in specific seems to follow more closely with software such as cgit or stagit. While some people may not prefer this look or rather basic functionality, I do.

The third major reason would probably be the simplicity in it’s continuous integration implementation, GitHub uses, in essence, as reskin of Azure Pipelines, which while may work for use cases where azure pipeline’s convoluted workflow works, in my case it just makes it more annoying to use when all I really need is a simple workflow to setup an SDK, build my project, and push any artifacts that may have built during the pipeline. On top of this, GitHub actions only supports 3 operating systems officially, Windows, Ubuntu, and MacOS. While these options are certainly enough for most people, I do quite like the fact that Sourcehut provides a multitude of options standard CIs usually do not offer, such as: 9front, FreeBSD, OpenBSD, Guix/Nix, and others, all the supported operating systems can be seen here.

I would like to think the last major reason would probably be the people behind it. While Drew Devault is not the greatest person in some cases. I do think that some of the stuff he has made and worked on are pretty great, and in a some cases he does make really good points in my opinion. However he is not the only person who works on Sourcehut, and it’s developed and maintained not only by a group of people enthusiastic about the platform, but by the community as well.