on boot
    # Allow bugreports access to eMMC 5.0 stats
    chown root mount /sys/kernel/debug/mmc0/mmc0:0001/ext_csd
    chmod 0440 /sys/kernel/debug/mmc0/mmc0:0001/ext_csd

service dumpstate /system/bin/dumpstate -s
    class main
    socket dumpstate stream 0660 shell log
    disabled
    oneshot

# dumpstatez generates a zipped bugreport but also uses a socket to print the file location once
# it is finished.
service dumpstatez /system/bin/dumpstate -S -d -z \
        -o /data/user_de/0/com.android.shell/files/bugreports/bugreport
    socket dumpstate stream 0660 shell log
    class main
    disabled
    oneshot

# bugreportplus is an enhanced version of bugreport that provides a better
# user interface (like displaying progress and allowing user to enter details).
# It's typically triggered by the power button or developer settings.
service bugreportplus /system/bin/dumpstate -d -B -P -z \
        -o /data/user_de/0/com.android.shell/files/bugreports/bugreport
    class main
    disabled
    oneshot

# bugreportremote is an altered version of bugreport that is supposed to be
# called not by human user of the device, but by DevicePolicyManagerService only when the
# Device Owner explicitly requests it, and shared with the Device Policy Controller (DPC) app only
# if the user consents
# it will disable vibrations, screenshot taking and will not track progress or
# allow user to enter any details
service bugreportremote /system/bin/dumpstate -d -q -B -R -z \
        -o /data/user_de/0/com.android.shell/files/bugreports/remote/bugreport
    class main
    disabled
    oneshot

# bugreportwear is a wearable version of bugreport that displays progress and takes early
# screenshot.
service bugreportwear /system/bin/dumpstate -d -B -P -p -z \
        -o /data/user_de/0/com.android.shell/files/bugreports/bugreport
    class main
    disabled
    oneshot