Why another supervision suite ?

Supervision suites are becoming quite common. Today, we already have:

Why is s6 needed ? What does it do differently ? Here are the criteria I used.

Supervision suites should not wake up unless notified.

Supervision suites should provide a program that can run as process 1.

Supervision suites should be bug-free, lightweight and easy to understand.

Supervision suites should provide a basis for high-level service management.

Artistic considerations


All in all, I believe that s6 offers the best overall implementation of a supervision suite as it should be designed. At worst, it's just another take on daemontools with a reliable base library and a few nifty features.