Developers
Open source philosophy
Endless is a strong proponent of Free and Open Source Software (FOSS) and acknowledges that open, public access to technology is a key part of our mission. We embrace the principles of free and open-source software and acknowledge a great debt to it. In line with our strategy to maximize the reach and impact of our work, we work upstream and contribute back to open source whenever possible. Many members of our core team have a long history with open source projects, and continue to be an active part of those communities. Endless has made notable contributions to projects such as GNOME, Kolibri, Flatpak, Flathub, OSTree, the Linux kernel, and others.
​
You can browse our organisation on GitHub to view software repositories maintained by Endless. You might notice that we maintain forks of some upstream packages. In most cases, this is due to ongoing development towards upstream acceptance, or backporting already-upstream contributions into stable versions that we ship.
​
Endless OS
Many of our technologies are distributed together within Endless OS. This is not your typical Linux distribution. We don’t use rpm, apt, or any other packaging system. In our quest for simplicity and robustness, we use a read-only root file system managed by OSTree with application bundles overlaid on top. Most desktop Linux distributions are oriented towards tech-savvy users and developers, but we have a different target user.
​
The base OS is freely redistributable for personal and non-commercial use and is now almost entirely open source. Only two non-free components remain due to third-party restrictions: the NVIDIA graphics driver and a management system for our affordable laptop program which uses a third-party library. These components will be replaced with open source equivalents in due course.
Those who wish to work with the nuts and bolts of the base OS can access our Debian package repository, and the endlessm GitHub organisation which is the home for our custom components. We anticipate providing an open source OS build tool in future, please let us know if this would be useful to you.
​
For installations, the base OS is typically combined with apps, content, and any applicable context-specific customizations such as branding and default settings, forming an "Endless OS image". Such images can be created using our open-source Endless OS Image Builder.
​
Please see our Endless OS developers documentation for further technical content.
​
Design Constraints
At Endless, our developers and engineers face some unique challenges through our goals to meet the needs of those in under-served communities who lack access to technology. Ground research has led us to the conclusion that extreme simplicity is key, and that mantra has become the basis of our design ethos.
​
Most of our users live in places where access to information is restricted, and computers are prohibitively expensive. The technology industry rarely considers new solutions to address this market’s needs. Imagine designing a music player for someone who doesn’t know that a right-pointing triangle means Play, nor know what a ‘playlist’ is. Perhaps the only music-playing equipment that person has ever owned is a radio. Or nothing at all. We aim to solve these challenges throughout the technology that we provide.
​
See also