[PROJECT][PORT] GNU CoreUtils on Android v1

Search This thread

alireza7991

Senior Member
Sep 2, 2012
772
2,318
23
Shahrekord
alirezafn.net
-> About

Busybox is a good set of common Unix utilities but the utilities are all striped down version of original ones and they provide less features ; So you may need the original utility with full features for your App or cmd-line ,therefore you should use this project !

`Core Utils on Android` project provides most GNU Core Utils for Android devices. they may be invoked from Android Apps or from command line terminal.

All utils has been compiled with Linaro GCC 4.8.1 (Hardware floating point ABI) and O3 optimizations and with Musl LibC to provide best performance.


-> Disclaimer


THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

-> Requirements

an ARM v7 processor with built-in NEON SIMD (scorpion, krait, exynose 4, exynose 5,...)

-> Installation

Be sure you meet the requirements !
Get the zip file
Flash it via recovery mod
Reboot and enjoy

-> Usage

To avoid issues of having busybox and coreutils at same time , all utils are named in form : cu.${UTIL_NAME} for example :

cu.echo "hello world!"

or

cu.chmod 644 /system/build.prop

and use this form for invoking any utility !

to see how to use utilities , take a look at GNU CoreUtil documentations.

-> Bugs

a few utils such as ls and uname are broken down till I fix them and add the correct one to repository.

some utils are missed. ( currently we have 103 applets working)

-> Download

** CoreUtils on Android v1
initial release . we have 103(working) + 2(not working) utils now

-> Source

https://github.com/alireza7991/coreutils
 
Last edited:

DexedrineXR

Senior Member
Jun 1, 2013
383
288
Since I'm in an impulsive state at the moment, I'm going to go ahead and say...

Edit: I misread the OP, I have a north American gs3.... Damn you Samsung and your favoritism with international versions.

I has a sad now.

Anyways, I really hope development flourishes for this project because this interesting..
 
Last edited:

fragargon

Senior Member
Feb 14, 2011
1,091
283
hi Alireza,

this poject sounds very interesting, I'm just surpised that there's not more incomes.
i ll spread the word and looks further to your git.


thanks :good:
 
  • Like
Reactions: alireza7991

AdamOutler

Retired Senior Recognized Developer
Feb 18, 2011
5,224
9,810
Miami, Fl̨̞̲̟̦̀̈̃͛҃҅͟orida
Really cool project. I'm taking a look. It would be nice if mfgs started encorperating GNU CU like every other Linux distro. I like the core utils.

The only problem is the CU is so big in comparison to BB. I have a project called CASUAL and for minimal space, i can include both ARM and x86 variants of busybox.

Don't get me wrong though. CU is my favorite toolset. I prefer it over all others.. Especially stock android. Thanks for your work in bringing this to Android. Hopefully AOSP takes note
 

alireza7991

Senior Member
Sep 2, 2012
772
2,318
23
Shahrekord
alirezafn.net
Really cool project. I'm taking a look. It would be nice if mfgs started encorperating GNU CU like every other Linux distro. I like the core utils.

The only problem is the CU is so big in comparison to BB. I have a project called CASUAL and for minimal space, i can include both ARM and x86 variants of busybox.

Don't get me wrong though. CU is my favorite toolset. I prefer it over all others.. Especially stock android. Thanks for your work in bringing this to Android. Hopefully AOSP takes note


I built this with eglibc first time, and it was around 50MB but with musl libc it's 8 MB now! Busybox is about 2MB while being linked with eglibc. and toolbox is 100KB :p

Busybox is smaller because it is a multi call binary so utils will share their code but in coreutils all utils are built in a single ELF. another reason is that coreutils has a special part which does some libC functions to make coreutils more compatible with different c libraries, this will increase size by 100-200 KB and there is no way to omit them however I 'm working on this


i think it is as snapdragon s800 is krait ( ARM v7 processor with built-in NEON SIMD )

exynose 5 family + exynose 4 + scorpion + krait familiy + tegra 3 are completely supported.

armv6 and tegra 2 family may fail in execution .

Sent from my GT-I9001 using Tapatalk
 

Top Liked Posts

  • There are no posts matching your filters.
  • 73
    -> About

    Busybox is a good set of common Unix utilities but the utilities are all striped down version of original ones and they provide less features ; So you may need the original utility with full features for your App or cmd-line ,therefore you should use this project !

    `Core Utils on Android` project provides most GNU Core Utils for Android devices. they may be invoked from Android Apps or from command line terminal.

    All utils has been compiled with Linaro GCC 4.8.1 (Hardware floating point ABI) and O3 optimizations and with Musl LibC to provide best performance.


    -> Disclaimer


    THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
    APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
    HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
    OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
    THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
    PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
    IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
    ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

    -> Requirements

    an ARM v7 processor with built-in NEON SIMD (scorpion, krait, exynose 4, exynose 5,...)

    -> Installation

    Be sure you meet the requirements !
    Get the zip file
    Flash it via recovery mod
    Reboot and enjoy

    -> Usage

    To avoid issues of having busybox and coreutils at same time , all utils are named in form : cu.${UTIL_NAME} for example :

    cu.echo "hello world!"

    or

    cu.chmod 644 /system/build.prop

    and use this form for invoking any utility !

    to see how to use utilities , take a look at GNU CoreUtil documentations.

    -> Bugs

    a few utils such as ls and uname are broken down till I fix them and add the correct one to repository.

    some utils are missed. ( currently we have 103 applets working)

    -> Download

    ** CoreUtils on Android v1
    initial release . we have 103(working) + 2(not working) utils now

    -> Source

    https://github.com/alireza7991/coreutils
    9
    @alireza7991, is an APP for this awesome toolset planned? ;)

    I need help of an App Developer., since I am building all of my project on my phone and I do not have access to my PC. building am App on phone is impossible (?).

    I got some good news! :

    1- I've moved to linaro gcc 4.8.2 (HF ABI)
    2- I've ported Linux Utils also, it has ~90 Utils (fdisk, m4,...) then 90+103=193 !!!!!!!!!! so we will turn our Android into a powerful linux distro!
    3- I've received a mail from the GNU coreutils maintainer!!!!

    To do:

    1-working on Aroma Installer/Android App to let users install which utils they want.
    2-Merging ls and uname utils from KlibC sources.
    7
    Very cool! I'll be keeping an eye on this project.

    (Edit: Don't want to be that guy, but... First!)

    Sent from my Nexus 10 using Tapatalk

    and maybe last .
    5
    Time to give this great project more attention :)