Is there any SDK for developers?

I am a developer and I am amazed to see the Endless OS project.

I want to know if there is or there will be a SDK for developing applications for Endless OS.

Hi! I might be able to answer your question. I work on the team that’s working on making it possible to develop applications for Endless OS.

The answer is that you can already do so by writing an application that works on the GNOME platform. These will run on Endless OS. For more information about developing for GNOME, check here:

However, there is a problem: publishing your app. At the moment, even if you have written an app, there is no way to publish it in our app center. Your best bet would be to contact us and tell us why you think it would make a good addition to Endless OS, but I couldn’t make any guarantees. :cry: In the future, we would like to make our app center support installing Flatpak apps and Flatpak runtimes from other sources, so that publishing becomes a lot easier.

As for an SDK, our SDK is pretty much the GNOME SDK. However, we have recently open-sourced some of our libraries for building apps that work on top of GNOME. There is not much documentation or examples yet so you can only use them if you are very adventurous :slight_smile: but making it possible for other people to use them to build apps is part of what I’ll be working on in the coming while.

Check them out at our Github page:

  • eos-sdk - a C library with some extra GTK widgets in it
  • eos-knowledge-lib - with this library you can build apps like the offline content apps that we have in Endless OS

You need to be especially adventurous for the latter one since it’ll be difficult to gather offline content into the form that we expect, but as I said more tools and documentation are coming… in fact I would start from this branch because it already has a better README.

Great! Well, would it be possible to use a private repository for apps? I am a web developer, and I would want to use Endless OS for building web applications. Maybe I could deliver and install packages in a Docker similar style into Endless OS?

I know that you are developing Endless OS for educational purposes, but I would very much like to use it as a development environment. And I really think that the cloud based OSes are the way to go. We are already using it for infrastructure, why not use it on our own environments… What do you think about it? Maybe a fork from Endless OS should be considered for this?

BTW, The interface improvements in the Gnome3 your are developing are great! I am considering moving away from MacOS, as it’s devices are so much expensive right now, specially in Brazil where I live.

It’s hard to use Endless OS as a development environment right now unless you are willing to compile some of the development tools yourself. This is something we hope to improve with Flatpak; it allows us to release a runtime with developer tools installed. Flatpak would allow you to develop in the “Docker style”.

I’m afraid I don’t understand what you mean by using a private repository for apps?

You can use flatpak to install 3rd party SDKs like GNOME and even an IDEs like Builder - the instructions on will work on the command line on Endless systems to add extra repositories. (The apps available in those 3rd party repositories will appear in the Endless App Center as well.) You can follow the developer steps on the same page to make your own Flatpak apps, and you can find some existing apps at If you create your own Flatpaks you can create a local repo and use it to install your own apps from, or you can publish it on a web server, then you and other people can install the apps. The longer term idea is that Endless doesn’t need to be responsible for creating Flatpaks of all apps that can be used on the system, and instead we make it easier to access 3rd party open source repositories such as the GNOME apps (or other community app repos that appear), and over time we may move to our own app store kind of model where people can upload their apps for Endless users to download.