Skip to content

Automatically restart xworkspaces module when it fails to start #1915

@jonhoo

Description

@jonhoo

Describe the issue

I'm using xmonad, and starting polybar directly from xmonad when it starts up. This used to work fine, but recently (I suspect after #882) my list of workspaces is now shown as entirely empty. If I restart polybar shortly after, the workspaces appear as normal.

Was it working before?
I never experienced this issue with my previous build, which was gfe7dc28b, but am seeing it now with g2b31a3f1.

To Reproduce

It is surprisingly hard to reproduce this, as it only happens very occasionally at boot. I believe this config is sufficient to reproduce, but have yet to confirm. Otherwise, my full config is this one. Note that I do overwrite monitor, but not sure whether that would affect any of this.

[bar/main]
monitor = ${env:MONITOR:eDP-1}
modules-left = ewmh

[module/ewmh]
type = internal/xworkspaces
pin-workspaces = false

[settings]
screenchange-reload = true

Essentially, have your WM run polybar on boot with:

$ env "MONITOR=$m" polybar --reload main

where $m is the monitor you want to use (again, not sure if the monitor part is relevant, but including it for completeness). Reboot and observe the bar. Every few boots, the list of workspaces will be empty. If you then restart polybar, it will be populated again.

Polybar Log

I forgot to copy the log last time this happened, and am having a hard time reproducing it reliably. Will post the log next time it happens.

Environment:

  • WM: xmonad
  • Distro: Arch Linux
  • Output of polybar -vvv:
polybar 3.4.0-24-g2b31a3f1

Features: +alsa +curl +i3 +mpd +network(libnl) +pulseaudio +xkeyboard

X extensions: +randr (+monitors) +composite +xkb +xrm +xcursor

Build type: Release
Compiler: /usr/bin/c++
Compiler flags: -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -Wall -Wextra -Wpedantic -O3 -DNDEBUG
Linker flags: -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions