<!-- SPDX-FileCopyrightText: 2026 Marco Allegretti -->
<!-- SPDX-License-Identifier: EUPL-1.2 -->

# Preview-only QML stubs

These stub modules satisfy QML imports that **upstream Plasma Mobile expects**
but that are not provided by the QML packages shipped on the host distro used
for preview/development.

They are installed only for local preview prefixes by default:
`SHIFT_INSTALL_PREVIEW_QML_STUBS=AUTO` enables installation when
`CMAKE_INSTALL_PREFIX` ends in `.prefix`. Set it to `ON` to force installation
for another prefix, or `OFF` to disable it. Production installs using normal
system prefixes leave these stubs out.

## Current stubs

- `org/kde/plasma/networkmanagement/cellular/` — `CellularModemList`,
  `CellularModem`. Required by
  `components/mobileshell/qml/dataproviders/SignalStrengthInfo.qml`.
  openSUSE Tumbleweed's `plasma6-nm 6.6.4` package does not ship this
  QML submodule (only the cellular KCM `.so`). Without the stub the
  entire MobileShell QML namespace fails to load and the homescreen
  is blank.

When the host distro starts providing a real module at the same import path,
disable the local fallback by configuring with `SHIFT_INSTALL_PREVIEW_QML_STUBS=OFF`
before comparing against the system module.
