Controller for PlayOS systems.
PlayOS controller is an OCaml application that manages various system tasks for the PlayOS system (such as updating, health monitoring, offering a unified interface for configuration). Consult the PlayOS Architecture documentation for more information.
bindings/: bindings to various thingsgui/: static gui assetsserver/: main application codebin/: binaries to start a dev server
Since the controller uses Connman for managing networks, it must be configured on your host if you want to run the controller directly.
You should be able to build and run the controller on any Linux system, using the Nix package manager.
If you are on NixOS, a minimal setup can be achieved as follows (remember to fill in <your-host-name>):
{ pkgs, config, ... }:
{
networking = {
hostName = <your-hostname>;
wireless.enable = true;
networkmanager.enable = false;
};
services.connman = {
enable = true;
networkInterfaceBlacklist = [ "vboxnet" "zt" ];
};
}Note the networkmanager.enable = false and check for any conflicting existing configuration.
Run nix-shell to create a suitable development environment.
Then, start the the controller with bin/dev-server.
- To define which DNS-SD service types are used to label networks, set
PLAYOS_ANNOTATE_DISCOVERED_SERVICESto a semicolon-separated list of service types.
- Author CSS according to the BEM methodology in the format
d-Block__Element--Modifier.
Many ideas have been taken from the logarion project.