I dared not modify the original generic script's functions (maybe_die, create_default_dir, etc). I also dared not ask why they check $? even though the generic init script runs with `-e`