Tag Archives: android

Compile busybox (Magisk) for Android with ndk

Credits

All the credits to topjohnwu and osm0sis.

Prerequisites

I’m working on Ubuntu 21.10, so

$ apt install git google-android-ndk-installer

Instructions

Clone the repository

git clone https://github.com/topjohnwu/ndk-box-kitchen.git

Follow the instruction, as today are

git clone https://git.busybox.net/busybox/
git clone https://github.com/SELinuxProject/selinux.git jni/selinux
git clone https://android.googlesource.com/platform/external/pcre jni/pcre

Choose the supported busybox version

cd busybox
git checkout 1_34_1
cd ..

Build

/usr/lib/android-ndk/ndk-build all

Push on a device and test

adb push ./obj/local/armeabi-v7a/busybox /data/local/tmp
adb shell chmod 775 /data/local/tmp/busybox
adb shell /data/local/tmp/busybox date
Mon Nov 21 21:08:47 CET 2021

Install as you want, for example

adb shell
cd /data/local/tmp/
mkdir xbin
cd xbin
../busybox --install .
export PATH="$(pwd):$PATH"

Override DNS v5.5.0 released

Changelog for v5.4.1 and v5.5.0.

  • User facing improvements:

    • bugfix start service/enable app Android N
    • added fine location request on O+ to get SSID
    • MainActivity improved
    • bugfix automatic DNS change in Android N
    • Removed Cisco predefined DNS, does not work
    • Added log message when updating SSID list
    • Adaptive icon
    • Added test button when possible
    • Added a dedicated service for Oreo+ versions and a persistent notification (can be switched off)
    • Added “always use iptables” option for N+ Android versions
    • Improved logging: added autoscroll, timestamp, failure reasons, live messages, persistance
    • Fixed rotation problems, ProgressBar, layout for small screens, buttons layout
    • Improved: notifications, app load time, root detection
    • removed Showcaseview library
  • Internal improvements:

    • Better LiveMessage dispatching
    • enable NetworkMonitorService for N+
    • use my setools-android fork as submodule
    • Makefile: use full path for adb
    • Cleanup iptables rules switching to unsupported network
    • Preparing for my DNS tester service
    • Fixed: SELinux detection, Magisk detection, restore button, network disconnections detection
    • Improved: Wi-Fi SSID detection, code style
    • Reduced preferences size, source code, compilation time
    • Simplified mantainability with command templates
    • Disabled StrictMode in release versions
    • Introduced: Gson, ButterKnife

Override DNS v5.4.3 released

Changelog for v5.4.1 and v5.4.3.

  • User facing improvements:

    • bugfix automatic DNS change in Android N
    • Removed Cisco predefined DNS, does not work
    • Added log message when updating SSID list
    • Adaptive icon
    • Added test button when possible
    • Added a dedicated service for Oreo+ versions and a persistent notification (can be switched off)
    • Added “always use iptables” option for N+ Android versions
    • Improved logging: added autoscroll, timestamp, failure reasons, live messages, persistance
    • Fixed rotation problems, ProgressBar, layout for small screens, buttons layout
    • Improved: notifications, app load time, root detection
    • removed Showcaseview library
  • Internal improvements:

    • enable NetworkMonitorService for N+
    • use my setools-android fork as submodule
    • Makefile: use full path for adb
    • Cleanup iptables rules switching to unsupported network
    • Preparing for my DNS tester service
    • Fixed: SELinux detection, Magisk detection, restore button, network disconnections detection
    • Improved: Wi-Fi SSID detection, code style
    • Reduced preferences size, source code, compilation time
    • Simplified mantainability with command templates
    • Disabled StrictMode in release versions
    • Introduced: Gson, ButterKnife

Override DNS v5.4.2 released

Changelog for v5.4.1 and v5.4.2.

  • User facing improvements:

    • Removed Cisco predefined DNS, does not work
    • Added log message when updating SSID list
    • Adaptive icon
    • Added test button when possible
    • Added a dedicated service for Oreo+ versions and a persistent notification (can be switched off)
    • Added “always use iptables” option for N+ Android versions
    • Improved logging: added autoscroll, timestamp, failure reasons, live messages, persistance
    • Fixed rotation problems, ProgressBar, layout for small screens, buttons layout
    • Improved: notifications, app load time, root detection
    • removed Showcaseview library
  • Internal improvements:

    • Cleanup iptables rules switching to unsupported network
    • Preparing for my DNS tester service
    • Fixed: SELinux detection, Magisk detection, restore button, network disconnections detection
    • Improved: Wi-Fi SSID detection, code style
    • Reduced preferences size, source code, compilation time
    • Simplified mantainability with command templates
    • Disabled StrictMode in release versions
    • Introduced: Gson, ButterKnife

Override DNS v5.4.1 released

  • User facing improvements:

    • Adaptive icon
    • Added test button when possible
    • Added a dedicated service for Oreo+ versions and a persistent notification (can be switched off)
    • Added “always use iptables” option for N+ Android versions
    • Improved logging: added autoscroll, timestamp, failure reasons, live messages, persistance
    • Fixed rotation problems, ProgressBar, layout for small screens, buttons layout
    • Improved: notifications, app load time, root detection
    • removed Showcaseview library
  • Internal improvements:

    • Fixed: SELinux detection, Magisk detection, restore button, network disconnections detection
    • Improved: Wi-Fi SSID detection, code style
    • Reduced preferences size, source code, compilation time
    • Simplified mantainability with command templates
    • Disabled StrictMode in release versions
    • Introduced: Gson, ButterKnife