pid1 0.1.6

pid1 handling library for proper signal and zombie reaping of the PID1 process
Documentation
use std::time::Duration;

use pid1::Pid1Settings;
use signal_hook::consts::SIGTERM;
use signal_hook::iterator::Signals;

// This program handles sigterm and exits
fn main() {
    Pid1Settings::new()
        .enable_log(true)
        .timeout(Duration::from_secs(2))
        .launch()
        .expect("Launch failed");
    println!("This APP can be killed by SIGTERM (15)");
    let mut signals = Signals::new([SIGTERM]).unwrap();
    for signal in signals.forever() {
        println!("App got SIGTERM {signal}, going to exit");
        std::process::exit(0);
    }
}