quine-linux/patches/kickoff/CMakeLists.txt
Philip Peterson a6b5a836b7
All checks were successful
Image, disk image and live ISO / iso (push) Successful in 32m17s
Kickoff fork: an update bar in the start menu
When a newer image is on the forge, Kickoff shows "A system update is
available" with Update Now (Aurora's System Update); once one is
downloaded, "Restart to finish updating" with Restart. Hidden otherwise.

- patches/kickoff/: Kickoff's QML plus UpdateBar.qml as its footer. The
  kickoff-builder stage rebuilds just that plugin from the image's own
  plasma-desktop version (KDE's source, via the forge's
  mirror-kde-plasma-desktop) and the final stage swaps it in.
- quine-update-check (root; bootc needs it): bootc upgrade --check, then
  writes /run/quine-linux/update-status.json for the bar. At boot, every
  4 hours, and after uupd's nightly update.

Tested in a VM from a disk image of this tree: up to date (hidden),
available and staged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-01 22:34:41 -09:00

19 lines
822 B
CMake

# Builds Kickoff on its own, outside plasma-desktop's tree: the Containerfile's
# kickoff-builder stage puts plasma-desktop's applets/kickoff/ next to this
# file as kickoff/. The rest of plasma-desktop's top-level CMakeLists.txt
# isn't needed for this one applet.
cmake_minimum_required(VERSION 3.16)
project(kickoff)
# ECM's QML helpers otherwise pick their Qt5 variant.
set(QT_MAJOR_VERSION 6)
find_package(ECM REQUIRED NO_MODULE)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH})
find_package(Qt6 REQUIRED COMPONENTS Core Quick Qml)
include(KDEInstallDirs)
include(KDECMakeSettings)
include(KDECompilerSettings NO_POLICY_SCOPE)
include(ECMQmlModule)
# Plasma's CMake package needs these found first.
find_package(KF6 REQUIRED COMPONENTS Config CoreAddons Package I18n)
find_package(Plasma REQUIRED)
add_subdirectory(kickoff)