Giter VIP home page Giter VIP logo

busybox-android's Introduction

Busybox for Android the Easy Way (just a quick hack)

This little package is designed to make your life easier if you are using the shell under an Android device. It includes a full-fledged Busybox environment that should make a fair replacement for the poor toolbox that comes with Android by default.

You can install it in two ways: if you are compiling Android yourself, then you can add this package to your repository and Busybox will replace the default Toolbox whenever possible. If you already have a deployed (and rooted!) Android device, you can deploy busybox on it.

Installing in your Android source tree

Simply add a 'local_manifest.xml' file (or edit the existing one) in the .repo directory located at the root of your Android source tree with the following lines:

<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remote name="busybox-android"
        fetch="git://github.com/Gnurou/"/>
<project path="busybox-android"
         name="busybox-android"
         remote="busybox-android"
         revision="master"/>
</manifest>

Then run "repo sync" and build your images normally.

Installing on an already-deployed Android device

Run the 'android-install.sh' script while your device is connected. This will remount the system partition read-write, copy busybox, and make the appropriate symlinks on your device. You will need adb in your path for this to work.

Misc

The files busybox-android.patch and busybox-android.config are a patch that allows ash history to work on Android and the configuration used to build Busybox, respectively. The busybox binary has been built statically against glibc - unfortunately, it seems impossible to build it against Android NDK.

Non-executable .sh scripts are not meant to be run directly by the user.

Compiling yourself

It should be pretty easy to recompile the binary yourself by following these steps:

  1. Get and install the latest GNU/Linux toolchain from [here] (http://www.codesourcery.com/sgpp/lite/arm/portal/subscription?@template=lite) (unless you already have a working toolchain installed). Make sure the binaries directory is in your PATH.
  2. Get and unpack the latest source for Busybox.
  3. Apply busybox-android.patch from the git repo to Busybox source if you want to be able to use the profile and history under Android.
  4. Copy busybox-android.config from the git into Busybox's source root and rename it to .config. Edit it and make sure CONFIG_CROSS_COMPILER_PREFIX is correctly set to your compiler's name.
  5. Run make and you should obtain the busybox binary.

TODO

Cleanup, proper configuration options and upstream integration, maybe?

Feedback & contact

Alexandre Courbot [email protected]

busybox-android's People

Contributors

gnurou avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.