Garuda Default Top Panel not showing on primary monitor after restart

I have had a minor quirk after updating to Plasma 6.

The Garuda Default Top Panel is moving away from primary screen to secondary screen. After restart the secondary screen has 2 Top panels.

I wonder, If it might be related to some old KDE configuration files… Or it is forgetting which Monitor the panel should be displayed for some other reason.

I’ll do some digging on it today.

System:
  Kernel: 6.7.9-zen1-1-zen arch: x86_64 bits: 64 compiler: gcc v: 13.2.1
    clocksource: tsc avail: hpet,acpi_pm
    parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
    root=UUID=4e384f16-0b74-4432-bb6f-69659831f5f9 rw rootflags=subvol=@
    quiet loglevel=3 ibt=off
  Desktop: KDE Plasma v: 6.0.1 tk: Qt v: N/A info: frameworks v: 6.0.0
    wm: kwin_wayland vt: 1 dm: SDDM Distro: Garuda base: Arch Linux
Machine:
  Type: Desktop Mobo: ASUSTeK model: PRIME B450M-A v: Rev X.0x
    serial: <superuser required> part-nu: SKU uuid: <superuser required>
    UEFI: American Megatrends v: 3604 date: 02/25/2022
CPU:
  Info: model: AMD Ryzen 7 2700X bits: 64 type: MT MCP arch: Zen+ gen: 2
    level: v3 note: check built: 2018-21 process: GF 12nm family: 0x17 (23)
    model-id: 8 stepping: 2 microcode: 0x800820D
  Topology: cpus: 1x cores: 8 tpc: 2 threads: 16 smt: enabled cache:
    L1: 768 KiB desc: d-8x32 KiB; i-8x64 KiB L2: 4 MiB desc: 8x512 KiB
    L3: 16 MiB desc: 2x8 MiB
  Speed (MHz): avg: 2635 high: 3702 min/max: 2200/3700 boost: disabled
    scaling: driver: acpi-cpufreq governor: schedutil cores: 1: 2200 2: 3700
    3: 2116 4: 2114 5: 2200 6: 2114 7: 2114 8: 3695 9: 2014 10: 3697 11: 2115
    12: 2114 13: 3200 14: 2959 15: 2114 16: 3702 bogomips: 118388
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
  Vulnerabilities: <filter>
Graphics:
  Device-1: AMD Navi 23 [Radeon RX 6600/6600 XT/6600M] vendor: ASUSTeK
    driver: amdgpu v: kernel arch: RDNA-2 code: Navi-2x process: TSMC n7 (7nm)
    built: 2020-22 pcie: gen: 4 speed: 16 GT/s lanes: 16 ports:
    active: DP-1,DP-3 empty: DP-2,HDMI-A-1 bus-ID: 0b:00.0 chip-ID: 1002:73ff
    class-ID: 0300
  Device-2: Logitech Webcam C270 driver: snd-usb-audio,uvcvideo type: USB
    rev: 2.0 speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 3-3:4 chip-ID: 046d:0825
    class-ID: 0102 serial: <filter>
  Display: wayland server: X.org v: 1.21.1.11 with: Xwayland v: 23.2.4
    compositor: kwin_wayland driver: X: loaded: amdgpu
    unloaded: modesetting,radeon alternate: fbdev,vesa dri: radeonsi
    gpu: amdgpu d-rect: 3840x1200 display-ID: 0
  Monitor-1: DP-1 pos: primary,left res: 1920x1200 size: N/A modes: N/A
  Monitor-2: DP-3 pos: right res: 1920x1200 size: N/A modes: N/A
  API: EGL v: 1.5 hw: drv: amd radeonsi platforms: device: 0 drv: radeonsi
    device: 1 drv: swrast surfaceless: drv: radeonsi wayland: drv: radeonsi x11:
    drv: radeonsi inactive: gbm
  API: OpenGL v: 4.6 compat-v: 4.5 vendor: amd mesa v: 24.0.2-arch1.2
    glx-v: 1.4 direct-render: yes renderer: AMD Radeon RX 6600 (radeonsi navi23
    LLVM 17.0.6 DRM 3.57 6.7.9-zen1-1-zen) device-ID: 1002:73ff
    memory: 7.81 GiB unified: no display-ID: :1.0
  API: Vulkan v: 1.3.279 layers: 9 device: 0 type: discrete-gpu name: AMD
    Radeon RX 6600 (RADV NAVI23) driver: mesa radv v: 24.0.2-arch1.2
    device-ID: 1002:73ff surfaces: xcb,xlib,wayland device: 1 type: cpu
    name: llvmpipe (LLVM 17.0.6 256 bits) driver: mesa llvmpipe
    v: 24.0.2-arch1.2 (LLVM 17.0.6) device-ID: 10005:0000
    surfaces: xcb,xlib,wayland
Audio:
  Device-1: AMD Navi 21/23 HDMI/DP Audio driver: snd_hda_intel v: kernel pcie:
    gen: 4 speed: 16 GT/s lanes: 16 bus-ID: 0b:00.1 chip-ID: 1002:ab28
    class-ID: 0403
  Device-2: AMD Family 17h HD Audio vendor: ASUSTeK driver: snd_hda_intel
    v: kernel pcie: gen: 3 speed: 8 GT/s lanes: 16 bus-ID: 0d:00.3
    chip-ID: 1022:1457 class-ID: 0403
  Device-3: C-Media CM6631A Audio Processor
    driver: hid-generic,snd-usb-audio,usbhid type: USB rev: 2.0 speed: 480 Mb/s
    lanes: 1 mode: 2.0 bus-ID: 1-8:3 chip-ID: 0d8c:0004 class-ID: 0300
  Device-4: Logitech Webcam C270 driver: snd-usb-audio,uvcvideo type: USB
    rev: 2.0 speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 3-3:4 chip-ID: 046d:0825
    class-ID: 0102 serial: <filter>
  API: ALSA v: k6.7.9-zen1-1-zen status: kernel-api tools: N/A
  Server-1: PipeWire v: 1.0.3 status: active with: 1: pipewire-pulse
    status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
    4: pw-jack type: plugin tools: pactl,pw-cat,pw-cli,wpctl
Network:
  Device-1: Realtek RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet
    vendor: ASUSTeK PRIME B450M-A driver: r8169 v: kernel pcie: gen: 1
    speed: 2.5 GT/s lanes: 1 port: f000 bus-ID: 08:00.0 chip-ID: 10ec:8168
    class-ID: 0200
  IF: enp8s0 state: up speed: 1000 Mbps duplex: full mac: <filter>
  Info: services: NetworkManager,systemd-timesyncd
Drives:
  Local Storage: total: 3.44 TiB used: 695.12 GiB (19.7%)
  SMART Message: Unable to run smartctl. Root privileges required.
  ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Silicon Power
    model: SPCC M.2 PCIe SSD size: 476.94 GiB block-size: physical: 512 B
    logical: 512 B speed: 31.6 Gb/s lanes: 4 tech: SSD serial: <filter>
    fw-rev: H211011a temp: 41.9 C scheme: GPT
  ID-2: /dev/sda maj-min: 8:0 vendor: Western Digital
    model: WD20EARX-00PASB0 size: 1.82 TiB block-size: physical: 4096 B
    logical: 512 B speed: 6.0 Gb/s tech: N/A serial: <filter> fw-rev: AB51
    scheme: MBR
  ID-3: /dev/sdb maj-min: 8:16 vendor: Crucial model: CT1000MX500SSD1
    size: 931.51 GiB block-size: physical: 4096 B logical: 512 B speed: 6.0 Gb/s
    tech: SSD serial: <filter> fw-rev: 046 scheme: GPT
  ID-4: /dev/sdc maj-min: 8:32 vendor: Kingston model: SUV400S37240G
    size: 223.57 GiB block-size: physical: 4096 B logical: 512 B speed: 6.0 Gb/s
    tech: SSD serial: <filter> fw-rev: 96R9 scheme: GPT
  ID-5: /dev/sdd maj-min: 8:48 vendor: Wilk model: USB DISK 3.0
    size: 28.91 GiB block-size: physical: 512 B logical: 512 B type: USB
    rev: 3.2 spd: 5 Gb/s lanes: 1 mode: 3.2 gen-1x1 tech: N/A serial: <filter>
    fw-rev: PMAP scheme: MBR
  SMART Message: Unknown USB bridge. Flash drive/Unsupported enclosure?
Partition:
  ID-1: / raw-size: 476.64 GiB size: 476.64 GiB (100.00%)
    used: 308.47 GiB (64.7%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
  ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
    used: 27.1 MiB (9.1%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:1
  ID-3: /home raw-size: 476.64 GiB size: 476.64 GiB (100.00%)
    used: 308.47 GiB (64.7%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
  ID-4: /var/log raw-size: 476.64 GiB size: 476.64 GiB (100.00%)
    used: 308.47 GiB (64.7%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
  ID-5: /var/tmp raw-size: 476.64 GiB size: 476.64 GiB (100.00%)
    used: 308.47 GiB (64.7%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
Swap:
  Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default) zswap: no
  ID-1: swap-1 type: zram size: 15.53 GiB used: 0 KiB (0.0%) priority: 100
    comp: zstd avail: lzo,lzo-rle,lz4,lz4hc,842 max-streams: 16 dev: /dev/zram0
Sensors:
  System Temperatures: cpu: 38.6 C mobo: N/A gpu: amdgpu temp: 40.0 C
    mem: 38.0 C
  Fan Speeds (rpm): N/A gpu: amdgpu fan: 0
Info:
  Memory: total: 16 GiB available: 15.53 GiB used: 5.8 GiB (37.3%)
  Processes: 382 Power: uptime: 1h 29m states: freeze,mem,disk suspend: deep
    avail: s2idle wakeups: 0 hibernate: platform avail: shutdown, reboot,
    suspend, test_resume image: 6.2 GiB services: upowerd Init: systemd v: 255
    default: graphical tool: systemctl
  Packages: 1682 pm: pacman pkgs: 1677 libs: 516
    tools: octopi,pacseek,paru,yay pm: flatpak pkgs: 5 Compilers: clang: 17.0.6
    gcc: 13.2.1 Shell: garuda-inxi default: Bash v: 5.2.26 running-in: kitty
    inxi: 3.3.33
Garuda (2.6.23-1):
  System install date:     2023-12-25
  Last full system update: 2024-03-12
  Is partially upgraded:   No
  Relevant software:       snapper NetworkManager dracut
  Windows dual boot:       Probably (Run as root to verify)
  Failed units:            mx500.service 

2 Likes

That seems to be a common KDE bug right now, I’m affected by it too and @FGD as well as far as I know :frowning:

The funny thing about this is that it seems to be using the right location, but displayed on the wrong monitor - which you can notice when trying to move one of the bars :upside_down_face:

4 Likes

I got the problem too and I’ve noticed it is in the “right” location, but wrong monitor and still has the width of the correct monitor (32x9). so it goes across multiple monitors since it starts on a portrait monitor in my case. :smiley:

There does not seem to be a bug report yet, the closest I could find is this one:

https://bugs.kde.org/show_bug.cgi?id=462076

Edit: filed a bug report here: 483405 – Top bar gets rendered at the wrong window after screen being turned off

9 Likes

5 posts were split to a new topic: Turning one of the monitors as primary ended up moving the top panel

In ~/.config/plasma-org.kde.plasma.desktop-appletsrc

there is a line:

[Containments][130]
activityId=
formfactor=2
immutability=1
lastScreen=1
location=4
plugin=org.kde.panel
wallpaperplugin=org.kde.image

This seems to describe only one panel and its location. Maybe there needs to be additional entry here. Not sure.

I read it has location 4… So it is definitely describing one instance of a panel.

Edit. NB! The following is not relevant for the solution.
I created a new panel with the nr 131, it created the panel where on primary screen but I can’t figure out where the Garuda panels are supposed to be… Its kinda confusing. Maybe they have different name than “panel” ?

1 Like

LOL. I think i fixed the issue.

Ok. So the fix for me is changing the parameter lastScreen to 0. (Read above code block)

Now by doing this, for some reason, it might scramble your Garuda Docks on the primary screen. What you do now is delete one of the extra docks. When you add your one dock in the proper location, your panel problems should go away.

Let me know if this worked for you!

4 Likes

Will you report this to the KDE bugtracker or shall I? Very cool that you found it! :slight_smile:

1 Like

Can you give me feedback on it? Does it work for you?

Yes of course. You should add this to the KDE bug report / Fix or what have you.


NB! Update on the current fix is (the earlier one did not stick):

  1. Remove second Garuda top panel, so now you have 1 panel where they use to spawn 2.

  2. Build the second panel from the Default panel. I copied all the functionality from the garuda panel.

I can’t confirm whether this is a permanent solution. Let’s see if it stick for couple of days and over couple of updates.

I had this problem too after the update, but it fixed after I switched back to X11 from Wayland.

It’s ok, but we want that Wayland working. Otherwise Plasma 6 seems to be super smooth.

It works for me on Wayland, so can’t complain atm.

Hey! Thanks a for for tracking this down. I also have this issue and was super confused that it only impacted the top bar, and not the dock. Everyone said to switch to x11, but I didn’t want to since I was already running wayland fine for months.

I’ll try this out and see if it sticks.

2 Likes

So, I’ve finally looked into this solution and I don’t have the same issue as you. I did have a duplicate system tray, which I’ve removed.

For me, the lastScreen of the topbar has the correct value. If I set its position to 4 (bottom), it appears below the dock as expected. What I noticed is that the screen is offset by -1 on the initial load. If I set a lastScreen of 2, it loads on screen “1”. I’m going to continue playing with this and come back here if I find something.

EDIT: Ok! I think I managed to fix it. In my case, the order that the containments are declared was what did the trick. In the config file, you can see a set of containements for the plasma.folder plugin. You should have one of those per monitor. Making sure the top bar is declared before those containments was the key.

3 Likes

Ok. Interesting.

I only now realized that for each Panel a separate containment exists. Meaning there are 4 containments, 1 for each panel.

It is starting to make sense… I read that the containments are a fundamental way that the Plasma displays elements. Each applet and widget should have their own containment.

The declaration order does not make a lot of sense… I mean, system tray is declared before panels.

1 Like

A simple workaround I found to keep my panels in their proper place was to give each one on my three monitors a different alignment. Left, Center, and Right respectively. My docks seemed to be unaffected by this bug.

1 Like

LOOOLLLLL
This should go in this thread

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.