in my config file exists…

exec-once = zsh -c 'sleep 1' && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar && waybar

Why? Because waybar crashes sometimes when I turn my monitor off/on, I documented this here: https://github.com/Alexays/Waybar/issues/3047

…this opens waybar if it crashes… and if that crashes, it opens another waybar, and you’ll notice, if that one crashes, it opens another one… now you may have seen the pattern here but in case you didn’t, that one will then lead to another waybar…

Is there a less ridiculous way of making waybar open every time when waybar crashes, giving me better fault tolerance?

  • communism@lemmy.ml
    3·
    1 year ago

    Ok firstly that’s hilarious. Secondly I’m pretty sure && means “execute the second thing if the first thing exits with code 0” so if waybar is segfaulting it shouldn’t execute any of the other waybars; if you were to do it this way (while true or a systemd service as suggested in the comments makes more sense) a semicolon would probably make sense?

    • Communist@lemmy.mlOPEnglish
      1·
      1 year ago

      Yeah I noticed it wasn’t actually working and for some reason assumed that it was because it crashed so many times that I ran out of waybars, so I added a million after that, and you’re totally right, I know better than that, thanks!

  • mvirts@lemmy.world
    3·
    1 year ago

    I thought && only proceeded to the next statement if the first did not crash

  • x3i@kbin.social
    2·
    1 year ago

    Same problem here, this is my solution:

    exec-once = bash -c 'until waybar; do echo "Waybar crashed with exit code $?.  Respawning..." >&2; done'
    
    
  • d3Xt3r@lemmy.nzM
    2·
    1 year ago

    Have you tried using the latest git version of Waybar? They fixed a segfault a few days ago which might be the same one you’re facing.

  • Eevoltic [she/her]@lemmy.dbzer0.comEnglish
    1·
    1 year ago

    This is so ridiculous, I fucking love it. I just have waybar bound to a hotkey, but this solution is truly amazing

  • just_another_person@lemmy.world
    1·
    1 year ago

    Just make a user systemd unit if one doesn’t already exist, set to relaunch on failure, then all set.