<commit_before>Buildozer
=========

This tool is currently in alpha.

Buildozer is a tool for creating application packages easily.

The goal is to have one "buildozer.spec" file in your app directory, describing
your application requirements and settings such as title, icon, included modules
etc. Buildozer will use that spec to create a package for Android, iOS, Windows,
OSX and/or Linux.

Buildozer currently supports packaging for Android via the `python-for-android
<http://github.com/kivy/python-for-android/>`_
project, and for iOS via the kivy-ios project. Support for other operating systems
is intended in the future.

Note that this tool has nothing to do with the eponymous online build service
`buildozer.io <http://buildozer.io />`_.

Installing Buildozer with python2 support:
------------------------------------------

#. Install buildozer:: 

    # via pip (latest stable, recommended)
    sudo pip install buildozer

    # latest dev version
    sudo pip install https://github.com/kivy/buildozer/archive/master.zip

    # git clone, for working on buildozer
    git clone https://github.com/kivy/buildozer
    cd buildozer
    python setup.py build
    sudo pip install -e .

#. Go into your application directory and run::

    buildozer init
    # edit the buildozer.spec, then
    buildozer android_new debug deploy run

Installing Buildozer with python3 support:
------------------------------------------

The pip package does not yet support python3.

#. Install buildozer from source::

    git clone https://github.com/kivy/buildozer
    cd buildozer
    python setup.py build
    sudo pip install -e 

#. Download and extract the crystax ndk somewhere (~/.buildozer/crystax-ndk is one option): https://www.crystax.net/en/download
#. Go into your application directory and execute::

    buildozer init

#. Edit the buildozer.spec file to fit your application
#. Edit the "requirements" line of buildozer.spec so it starts with at least the following::

    requirements = python3crystax,kivy

#. Edit the buildozer.spec andriod.ndk line to point to the directory where you extracted the crystax-ndk::

    android.ndk_path = ~/.buildozer/crystax-ndk

#. Finally, build, deploy and run the app on your phone::

    buildozer android_new debug deploy run

#.  Please note the "android_new" buildozer target, and use that for any and all buildozer commands you run (even if the docs just say "android").  Python3 only works with the **android_new** toolchain.
    

    
Examples of Buildozer commands:
--------------------------------

::

    # buildozer target command
    buildozer android_new clean
    buildozer android_new update
    buildozer android_new deploy
    buildozer android_new debug
    buildozer android_new release

    # or all in one (compile in debug, deploy on device)
    buildozer android_new debug deploy

    # set the default command if nothing set
    buildozer setdefault android_new debug deploy run<commit_msg>Moving some README text to a quote instead of code section.<commit_after>Buildozer
=========

This tool is currently in alpha.

Buildozer is a tool for creating application packages easily.

The goal is to have one "buildozer.spec" file in your app directory, describing
your application requirements and settings such as title, icon, included modules
etc. Buildozer will use that spec to create a package for Android, iOS, Windows,
OSX and/or Linux.

Buildozer currently supports packaging for Android via the `python-for-android
<http://github.com/kivy/python-for-android/>`_
project, and for iOS via the kivy-ios project. Support for other operating systems
is intended in the future.

Note that this tool has nothing to do with the eponymous online build service
`buildozer.io <http://buildozer.io />`_.

Installing Buildozer with python2 support:
------------------------------------------

#. Install buildozer:: 

    # via pip (latest stable, recommended)
    sudo pip install buildozer

    # latest dev version
    sudo pip install https://github.com/kivy/buildozer/archive/master.zip

    # git clone, for working on buildozer
    git clone https://github.com/kivy/buildozer
    cd buildozer
    python setup.py build
    sudo pip install -e .

#. Go into your application directory and run::

    buildozer init
    # edit the buildozer.spec, then
    buildozer android_new debug deploy run

Installing Buildozer with python3 support:
------------------------------------------

The pip package does not yet support python3.

#. Install buildozer from source::

    git clone https://github.com/kivy/buildozer
    cd buildozer
    python setup.py build
    sudo pip install -e 

#. Download and extract the crystax ndk somewhere (~/.buildozer/crystax-ndk is one option): https://www.crystax.net/en/download
#. Go into your application directory and execute::

    buildozer init

#. Edit the buildozer.spec file to fit your application
#. Edit the "requirements" line of buildozer.spec so it starts with at least the following:

    requirements = python3crystax,kivy

#. Edit the buildozer.spec andriod.ndk line to point to the directory where you extracted the crystax-ndk:

    android.ndk_path = ~/.buildozer/crystax-ndk

#. Finally, build, deploy and run the app on your phone::

    buildozer android_new debug deploy run

#.  Please note the "android_new" buildozer target, and use that for any and all buildozer commands you run (even if the docs just say "android").  Python3 only works with the **android_new** toolchain.
    

    
Examples of Buildozer commands:
--------------------------------

::

    # buildozer target command
    buildozer android_new clean
    buildozer android_new update
    buildozer android_new deploy
    buildozer android_new debug
    buildozer android_new release

    # or all in one (compile in debug, deploy on device)
    buildozer android_new debug deploy

    # set the default command if nothing set
    buildozer setdefault android_new debug deploy run
{'fraction_non_alphanumeric': 0.10003340013360053, 'fraction_numerical': 0.0016700066800267202, 'mean_word_length': 3.0520974289580516, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 8, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 4, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2785890', 'n_tokens_mistral': 1687, 'n_tokens_neox': 1611, 'n_words': 701}