<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.kde.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.6"
          urlbase="https://bugs.kde.org/"
          
          maintainer="sysadmin@kde.org"
>

    <bug>
          <bug_id>483136</bug_id>
          
          <creation_ts>2024-03-10 17:07:57 +0000</creation_ts>
          <short_desc>plasmashell doesn&apos;t wait for kconf_update</short_desc>
          <delta_ts>2025-08-28 21:09:21 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Plasma</classification>
          <product>plasmashell</product>
          <component>Startup process</component>
          <version>master</version>
          <rep_platform>Other</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CONFIRMED</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>NOR</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>1.0</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Fabian Vogt">fabian</reporter>
          <assigned_to name="Plasma Bugs List">plasma-bugs-null</assigned_to>
          <cc>kde</cc>
    
    <cc>kilgore.trout</cc>
    
    <cc>nate</cc>
          
          <cf_commitlink></cf_commitlink>
          <cf_versionfixedin></cf_versionfixedin>
          <cf_sentryurl></cf_sentryurl>
          <votes>0</votes>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2298411</commentid>
    <comment_count>0</comment_count>
    <who name="Fabian Vogt">fabian</who>
    <bug_when>2024-03-10 17:07:57 +0000</bug_when>
    <thetext>openQA found that after upgraing from Plasma 5, the panel becomes floating: https://openqa.opensuse.org/tests/4003016#step/opensuse_welcome/17

One part of the issue was fixed by https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/4030. However, openQA was still unhappy. Looking at the journalctl output shows that kconf_update was still busy even after plasmashell launched.
While various other processes like kwin handle this, plasmashell does not: It neither waits for kconf_update nor is capable of handling runtime changes.

In this particular case it ended up reading plasmashellrc pre kconf_update (no &quot;floating=&quot; setting) and writing updated settings back (including &quot;floating=1&quot;). Depending on when kconf_update runs, three possible series of events can happen:

a) kconf_update completes, writing floating=0 and plasmashell ends up reading that -&gt; success. Very unlikely to happen.
b) plasmashell reads plasmashellrc, then kconf_update runs and writes floating=0, then plasmashell ends up overwriting that with its internal default
c) b) plasmashell reads plasmashellrc, then plasmashell overwrites it with internal defaults (floating=1), then kconf_update runs an does nothing because floating is already present

FWICT plasmashell should be serialized to start only after kded is up. Calling KConfig::checkUpdate would probably result in more races (see kconfig documentation...). Using qdbus worked in my tests:

/usr/lib/systemd/user/plasma-plasmashell.service.d/waitforkded.conf:
[Service]
ExecStartPre=/usr/bin/qdbus6 org.kde.kded6 /kded org.kde.kded6.loadedModules:</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>