Display a warning, if xsettingsd is not found
Needs ReviewPublic

Authored by gikari on Fri, Nov 15, 11:02 AM.
This revision needs review, but there are no reviewers specified.

Details

Reviewers
None
Summary

Since xsettingsd daemon is used to update the look of gtk applications
on a fly (D24743), distribution packagers should be noted to provide xsettingsd
as the dependency.

Test Plan
  1. Remove xsettingsd from the system.
  2. Clear CMake Cache
  3. Run CMake
  4. Similar warning should be displayed:
CMake Warning at CMakeLists.txt:17 (message):
  Cannot find xsettingsd daemon.  GTK applications will not be able to
  refresh their configuration without restarting them.  To avoid that, please
  install xsettingsd.
  1. Install xsettingsd
  2. Warning should not be displayed anymore
  3. Repeat

Diff Detail

Repository
R99 KDE Gtk Configuration Tool
Branch
warn-about-xsettingsd-dependency (branched from master)
Lint
No Linters Available
Unit
No Unit Test Coverage
Build Status
Buildable 18822
Build 18840: arc lint + arc unit
gikari created this revision.Fri, Nov 15, 11:02 AM
Restricted Application added a project: Plasma. · View Herald TranscriptFri, Nov 15, 11:02 AM
Restricted Application added a subscriber: plasma-devel. · View Herald Transcript
gikari requested review of this revision.Fri, Nov 15, 11:02 AM

I think you would want to make that a RUNTIME dependency. This stuff is mostly for packagers, telling them to install something isn't what we want.

I think you would want to make that a RUNTIME dependency.

This is probably a stupid question, but how can I do that?

I guess he refers to:

https://cmake.org/cmake/help/latest/module/FeatureSummary.html#command:set_package_properties

But seems, this only applies to dependencies checked by find_package().

But seems, this only applies to dependencies checked by find_package().

I'm confused.

Does it mean, I should create custom FindXsettingsd.cmake module for xsettingsd, then write something like this:

find_package(Xsettingsd)
set_package_properties(Xsettingsd PROPERTIES
    TYPE RUNTIME
    DESCRIPTION "Provides settings to X11 applications via the XSETTINGS specification"
    URL "https://github.com/derat/xsettingsd"
)

?