Transcript:
Two panel meme.
Top panel: Woman in the front seat of a car screaming at a child in the rear seat. She’s saying “Why can’t you just shutdown?”
Bottom panel: A child screaming “A stop job is running for Session c2 of user … (1:30 / no limit)”


You didn’t solve the problem. You only ignored it. Systemd does exactly what it’s instructed to do. If a program takes longer it waits if it’s instructed to do so. It’s well defined and predictable. Much better than a random assortment of bash scripts. And it’s incredibly customizable. If the defaults don’t fit you, you can easily override them without touching the main unit itself.