Skip to content

Manually setting dark mode setting is tricky.

darkman-set-dark dinit user service runs darkman set dark and depends on darkman dinit user service which runs darkman run.

It turns out that dinit starts darkman-set-dark user service as soon as darkman user service starts up. That means darkman set dark is run before darkman run creates its presence in session dbus. Somehow, session dbus gives priority to darkman run triggered by darkman set dark. Thus, darkman user service yields to darkman run started by session dbus.

I found two workarounds.

  • darkman-set-dark user service runs sh -c 'sleep 1; darkman set dark'. This allows darkman user service to establish presence in session dbus before darkman set dark is run.
  • Start darkman dinit user service before sway is run. Run darkman set dark in sway configuration.

If darkman dies with session dbus, I perhaps don't need darkman user service.

Edited by kenji amano
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information