From b51d42eaaac2cc223734ed6f1825b97523d1ffce Mon Sep 17 00:00:00 2001 From: You-Sheng Yang Date: Mon, 14 Nov 2016 14:05:24 +0800 Subject: [PATCH] Add adbd emergency shell systemd support --- debian/android-tools-adbd.start-emergency-shell | 22 ++++++++++++++++++++++ debian/rules | 1 + 2 files changed, 23 insertions(+) create mode 100644 debian/android-tools-adbd.start-emergency-shell diff --git a/debian/android-tools-adbd.start-emergency-shell b/debian/android-tools-adbd.start-emergency-shell new file mode 100644 index 0000000..801d4c6 --- /dev/null +++ b/debian/android-tools-adbd.start-emergency-shell @@ -0,0 +1,22 @@ +#!/bin/sh + +# Here we only starts adb emergency shell if adb has been previously enabled. +# However, when the android container failed to start, there is no way to +# retrieve correct property settings to determine this. So we have to read +# directly from the persistent property file. +grep -q adb /data/property/persist.sys.usb.config 2>/dev/null || exit 0 + +if [ -d /sys/class/android_usb ]; then + echo Ubuntu > /sys/class/android_usb/android0/iManufacturer + echo Touch > /sys/class/android_usb/android0/iProduct + echo 0123456789ABCDEF > /sys/class/android_usb/android0/iSerial + + echo 0 > /sys/class/android_usb/android0/enable + echo Ubuntu > /sys/class/android_usb/android0/iManufacturer + echo 18d1 > /sys/class/android_usb/android0/idVendor + echo 2d01 > /sys/class/android_usb/android0/idProduct + echo adb > /sys/class/android_usb/android0/functions + echo 1 > /sys/class/android_usb/android0/enable +fi + +systemctl start android-tools-adbd diff --git a/debian/rules b/debian/rules index 5a0c411..1e43a61 100755 --- a/debian/rules +++ b/debian/rules @@ -41,6 +41,7 @@ override_dh_install: dh_install --sourcedir=. mkdir -p debian/android-tools-adbd/usr/lib/android-tools-adbd $(INSTALL_PROGRAM) debian/android-tools-adbd.pre-start debian/android-tools-adbd/usr/lib/android-tools-adbd/pre-start + $(INSTALL_PROGRAM) debian/android-tools-adbd.start-emergency-shell debian/android-tools-adbd/usr/lib/android-tools-adbd/start-emergency-shell $(INSTALL_PROGRAM) core/libsparse/simg_dump.py debian/android-tools-fsutils/usr/bin/simg_dump $(INSTALL_PROGRAM) extras/ext4_utils/mkuserimg.sh debian/android-tools-fsutils/usr/bin/mkuserimg $(INSTALL_PROGRAM) extras/ext4_utils/mkubuntuimg.sh debian/android-tools-fsutils/usr/bin/mkubuntuimg -- 2.10.2