art | ||
experiments | ||
notes | ||
packaging | ||
protocols | ||
scripts | ||
synit-pid1 | ||
.gitignore | ||
dirty-upload-synit-config.sh | ||
MILESTONES.md | ||
README.md | ||
run-scratch-system.sh | ||
TODO.md |
SYNIT: A Reactive Operating System
- Homepage: https://synit.org/
- See also: https://syndicate-lang.org/projects/2021/system-layer/
Synit is an experiment in applying pervasive reactivity and object capabilities to the System Layer of an operating system for personal computers, including laptops, desktops, and mobile phones. Its architecture follows the principles of the Syndicated Actor Model.
Synit builds upon the Linux kernel, but replaces many pieces of
familiar Linux software, including systemd
, NetworkManager
,
D-Bus
, and so on. It makes use of many concepts that will be
familiar to Linux users, but also incorporates many ideas drawn from
programming languages and operating systems not closely connected with
Linux's Unix heritage.
Quickstart
If you have a mobile phone or computer capable of running PostmarketOS, then you can install the software to try it out. You can also run Synit inside a virtual machine.
See the installation instructions for a list of supported devices.
Documentation
See the Synit Manual.
Repository contents
-
synit-pid1/
is a small, simple Rust program implementing a minimal PID1 for the Synit system. -
protocols/schemas/
contains schema definitions for the protocols used among the components of the system. -
packaging/
contains Alpine (PostmarketOS) packaging scripts and supporting files for Synit components. The packages themselves live inpackaging/packages/
. A particularly interesting package issynit-config
. -
scripts/
contains support scripts for uploading and installing Synit packages on a target device.