An "Unofficial" Linux Rooting Guide by Kevin - HappyZ/dpt-tools GitHub Wiki
This is being run on a Devuan ASCII 2.0 distribution, up to date. Running Python 3.5. I had the thing connected via USB the entire time.
Step 0
Note that you need python3 pip installer. Devuan by default doesn't seem to install pip for python3.
sudo apt-get install python3-pip
Step 1
Connect it to wifi and get the IP address.
Note that we DO NOT use the device in access point mode.
Get the device on your own network. This is one of the most braindead things about the DPT-RP1. I have to pre-authenticate a Wifi device and this is configured ... using Wifi. Thanks assholes.
Check that you can get to it, browse to that ip address, port 8080. It should give some cryptic errors, but definitely something
Step 2
Now we follow the steps EXACTLY as given at https://github.com/HappyZ/dpt-tools/wiki/The-Ultimate-Rooting-Guide
Note: connect to the device using https://github.com/HappyZ/dpt-tools
, e.g.,
python3 dpt-tools.py -ip x.x.x.x
where x.x.x.x is the IP4 address of your DPT.
Step 3
Next go to https://github.com/HappyZ/dpt-tools/wiki/PKGs-I-Made
and grab the Boot image mod FwUpdater.pkg
.
Step 4
Run dpt-tools.py
again, with the DPT itself in normal mode.
Use the fw
tool with this pkg you just downloaded.
It will chill at Preparing for update...
for a bit, even while the fw
tool inside says Success.
Stay cool.
The DPT system will reboot, display some bars growing on the left side downward, flash a lol screen by HappyZ, and then drop you back into normal mode.
Step 5
Download and install the Android SDK on your linux box. Platform tools at a bare minimum. You need the adb tool.
Step 6
To get the damn thing easily on the network, without DPT app bullshit
adb shell am start -a android.settings.SETTINGS
And then configure your network access as you would on a normal Android device
Step 7
Make the font reasonable (reference here and top post)
adb shell wm density 200
Step 8
Now we will try the SuperSU firmware.
It will power down It will say say "Preparing for update" for about 30 seconds Then it will show vertical bars coming down the screen Then it will go blank Then it will return to the welcome screen, with the rotating arrows Then it will finish with a "Unable to update" but it will have been successful
I confirm root shell access to the DPT-RP1. Note that you do not need root to push applications to the DPT. You need root to modify the default launcher so that you can easily access your own custom launcher so that you can easily run applications. Applications can be pushed and triggered via issuing intents at the adb shell
Step 9
Get the F-Droid open-source repository package manager https://f-droid.org/en/packages/org.fdroid.fdroid/
Install it, e.g.,
adb install -r /home/myuser/Downloads/org.fdroid.fdroid_1005150.apk
(Note that you do not need root privileges on the DPT to install)
Then go into Settings/Security and "Allow unknown sources" (sounds scary, but its not ... YET)
Step 10
Trigger Fdroid it via the shell
adb shell monkey -p org.fdroid.fdroid 1
Go to repositories and enable FDroid Archive. It will refresh
Step 11
Install a launcher that you like through Fdroid (I chose relaunchx. It has on screen back navigation, which is essential. It doesn't respond to intents immediately the way I expect it to and it doesn't look very maintained. I might try to install Play Store...)
Navigating with the adb shell https://stackoverflow.com/questions/7789826/adb-shell-input-events
input keyevent 4 (go back)
Step 12
Run it to make sure you like it
Note that /data/app
will contain the list of apps.
When using monkey to invoke it, remove the trailing -1 from the name
Step 13
Follow the instructions to add the launcher to the Drawer button.
I replaced the stock Settings
, because that shit is useless and you can get it from the RelaunchX applications list.
Step 14
Get Firefox https://wiki.mozilla.org/Mobile/Platforms/Android and then install uBlock through the Add-Ons stuff in Firefox Then go into Firefox/Settings/Advanced and disable "Media autoplay" Browse to about:config Search for "mime" Note that Firefox looks for a file that is not present on the DPT. We will need to add this and point it to our writer/editor of choice
Step 15
Get Book Reader I will probably fork this and implement the writing layer, as well as remove the silly page mode flip animation and add some direct jumping features and a back button for internal links ;)
---- eventual touch event details ---
Super low level:
adb shell getevent
Low level:
adb shell getevent -lt /dev/input/event1