Suggestion: Create a toolchain for flatpak

There seems to be significant interest and potential for developing desktop applications for Linux using Swift. This makes sense, since Swift is already used by a large number of developers to build apps for Apple platforms. However, this potential is currently limiting by the difficulties in distributing Swift binaries on Linux. There are many Linux distributions in use, which bundle different versions of several key dependencies, complicating compatibility. Standard C and C++ libraries seem to be a particular issue for Swift applications.

Fortunately, there have been several efforts to simplify packaging of Linux applications. Flatpak is one such solution that has gained a significant traction. Flatpak runs applications using a sandbox runtime which consistent dependencies, allowing a single package to run across a wide variety of linux distributions.

In order to ease building applications, Flatpak uses an extensible Sdk runtime that can be used to build apps for Flatpak. Languages can offer extensions to this Sdk that allow their build tools to be run in within this runtime. In order to make it easier to package Swift apps as Flatpaks, I would like to suggest the Swift community create a version of the swift runtime that can be packaged in such an extension.

5 Likes