Projects we have participated in around the free software ecosystem

SourceHut's contributions to free software

Table of contents

SourceHut employs a staff with an extensive background in free software philosophy and practice, and we routinely contribute to thousands of free software projects around the ecosystem. We write exclusively free software at SourceHut. This page summarizes some of our work in the broader ecosystem.

SourceHut is free software

The SourceHut platform is itself free software. You can browse the source code here, or check out some specific projects from this list:

Projects maintained by SourceHut staff

Free software projects primarily developed and maintained by SourceHut staff:

Ares

Ares, based on the Helios micro-kernel, is a research operating system designed and implemented by SourceHut staff using the Hare programming language.

Various email-related libraries for the Go programming language have been developed and maintained by SourceHut staff:

  • go-ical: An iCalendar library for Go
  • go-imap: An IMAP library for clients and servers
  • go-maildir: A maildir library for Go
  • go-mbox: Package mbox parses the mbox file format into messages and formats messages into mbox files
  • go-message: A streaming Go library for the Internet Message Format and mail messages
  • go-milter: Go library to write mail filters
  • go-msgauth: A Go library and tools for DKIM, DMARC and Authentication-Results
  • go-pgpmail: PGP-encrypted email library for Go
  • go-smtp: An SMTP client & server library written in Go
  • go-vcard: A Go library to parse and format vCard
  • go-webdav: A Go library for WebDAV, CalDAV and CardDAV

A number of other email-related projects were developed and maintained by SourceHut:

  • aerc: a pretty good email client
  • alps: A simple and extensible webmail software
  • hydroxide: A third-party, open-source ProtonMail CardDAV, IMAP and SMTP bridge
  • tokidoki: A small and robust calendar & contacts server

The Hare programming language

Hare is a systems programming language designed to be simple, stable, and robust. Hare uses a static type system, manual memory management, and a minimal runtime. It is well-suited to writing operating systems, system tools, compilers, networking software, and other low-level, high performance tasks.

We design, develop, and maintain the Hare programming language in collaboration with the broader Hare community. We also maintain a number of Hare libraries:

Himitsu

Himitsu is a secret storage manager and password manager designed and implemented by SourceHut staff.

Internet Relay Chat

SourceHut has made several investments in free software related to IRC:

  • gamja: Simple IRC web client
  • go-sasl: A SASL library written in Go
  • goguma: An IRC client for mobile devices
  • soju: A user-friendly IRC bouncer

SourceHut also participates in the IRCv3 working group.

scdoc

scdoc is a simple language and tool for writing Unix manual pages, and enjoys relatively strong adoption throughout the free software ecosystem.

Wayland

SourceHut staff have designed, built, and maintained many Wayland-related projects, including:

  • The Wayland Protocol: Comprehensive introduction to the Wayland protocol
  • grim: Grab images from a Wayland compositor
  • kanshi: Dynamic display configuration
  • mako: A lightweight Wayland notification daemon
  • slurp: Select a region in a Wayland compositor
  • sway: i3-compatible Wayland compositor
  • wev: Wayland event viewer
  • wlr-randr: Output configuration for wlroots
  • wlroots: A modular Wayland compositor library
  • wxrc: VR-native Wayland compositor

Contributions by SourceHut staff to other projects

SourceHut staff contribute to thousands of free software projects as a matter of course; one or two small patches from SourceHut staff likely appears in a substantial portion of the software you depend on.

We also make larger contributions to many projects. A selection of projects with major contributions from SourceHut staff:

  • 9front: Fork of the Plan 9 operating system
  • Alpine Linux: A security-oriented, lightweight Linux distribution
  • Cage: Kiosk-mode Wayland compositor
  • Gemini: The small internet protocol
  • Git: A distributed version control system
  • Godot: Free cross-platform game engine
  • KDE: The next generation desktop for Linux
  • Linux: Free software operating system kernel
  • Mesa: Mesa 3D graphics library
  • OpenGL: OpenGL specifications
  • OpenXR: OpenXR specifications
  • PipeWire: A/V routing for Linux
  • QEMU: A generic and open source machine emulator and virtualizer
  • UnifiedPush: Free software for mobile push notifications
  • Vulkan: Vulkan specifications
  • Wayland: Core Wayland window system code and protocol
  • Weston: A lightweight and functional Wayland compositor
  • X.org: X server
  • gamescope: SteamOS session compositing window manager
  • libgit2: A cross-platform, linkable library implementation of Git
  • libva: Video Acceleration API
  • mpv: Cross-platform media player
  • musl libc: C standard library implementation
  • postmarketOS: A Linux distribution for phones
  • pygit2: Python bindings for libgit2
  • qbe: Compiler backend