Skip to content
JelinaJelina DocumentationTechnical documentation
Back to website

Development and production modes

JelinaOS is designed for production devices that can recover themselves in the field. Understanding the difference between development and production avoids a common misunderstanding: directly changing files on a running system changes only the writable layer. Those changes are not included in the next image build and disappear after a factory reset.

Key differences between development and production

Section titled “Key differences between development and production”
Scenario Recommended approach Reason
Development / fixes Integrate changes into the system build framework and rebuild an image for validation Changes become part of the image, making them reproducible and deliverable
Production / operations Deliver changes through update packages and target state Preserves rollback and state recovery
  • Direct changes to running files, such as replacing programs or editing configuration, exist only in the device’s writable layer.
  • These changes are not protected by the A/B and overlay rollback mechanisms and are lost after device recovery or upgrades.
  • Use update channels for production device changes to retain rollback capability.

The system provides persistent operating-mode settings stored in the system configuration directory:

Setting Default Description
Production mode Off When enabled, devices communicate with the cloud only through secure channels
GUI master switch On Controls whether the user interface system is enabled
Storage monitoring mode Prompt Action on storage alerts: alert only / prompt for restart / force restart

When production mode is enabled, all device management and access use secure channels. See security and data isolation.

  • Prefer temporary directories for short-term diagnostic tools; verify their source and checksum before use and remove them afterward.
  • Prefer update packages or test environments for deploying changes rather than directly replacing installed programs on devices.
  • If direct replacement is necessary on a development device, record the original file information, retain a rollback copy, and submit the validated fix back to the build framework.
  • Do not directly replace files on production devices. Without a change plan, directly replaced artifacts are not protected by rollback mechanisms.

JelinaOS offers two system variants, selected at build time:

Variant Boot target Display manager Description
Desktop Graphical interface LightDM Includes the XFCE4 desktop environment
Command line Multi-user command line None Command line only, with minimal resource usage

The desktop variant includes XFCE4 with the xfwm4 window manager, a default user (jelina), audio (PulseAudio), network management (NetworkManager), and a built-in interface system consisting of a GUI renderer and control CLI. The interface system provides first-boot welcome screens, update progress, storage alerts, and other interactions.