Giter Club home page Giter Club logo

andbot's Introduction

AndBot Bacon Jelly Bean Maker

Overview

This is a chroot environment for building CyanogenMod 10 from source for the Barnes & Noble NOOK Color. There are a couple of features that enhance the user experience

  1. the command prompt is prefixed with AndBot:, making it easy to distinguish between the usual interface and the development environment
  2. the prefix changes color depending on the success of the previous command: green symbolizes success and red symbolizes failure
  3. there is an andbot command within easy reach, providing shortcuts to several common activities
  4. most andbot commands support autocompletion -- just press tab

First Run

To use a prebuilt chroot, download it and run

chmod +x andbot.run
./andbot.run

If you have sudo installed, you should be asked for your password at the end, and then dropped into the chroot environment.

To exit, type exit or logout, or press ^D.

Alternatively, you could make the chroot yourself using scons debian package=andbot; scons debian package=andbot-git-repo; sudo scons andbotfs.

To enter the environment again, simply do

./andbotfs/andbot

Now, you are ready to start. For your convenience, the andbot commands provide shortcuts to things that you would be doing often. To set up, run

andbot init
andbot manifest

To download the source code for building CyanogenMod, do

andbot sync -j16

It might take a while to download ~6gb of source code, and the sync might fail with an error like

error: Cannot fetch CyanogenMod/android_prebuilt

To work around this, run andbot github-https and retry.

Next, you must copy proprietary files from your NOOK Color. To do this, plug the device into your computer and run

andbot prebuilt

If the previous command malfunctions, you might need to tinker with adb a bit to make it recognize your device. Alternatively, you could just get these files from an existing update.zip

andbot prebuilt path/to/update.zip

Finally, to start the build, run

andbot brunch encore

This might take a few hours depending on your hardware specs, so go rest or be productive. If you see errors regarding signapk.jar, you might not have sufficient memory; run andbot release-512 and retry. When it's done, you should find an update package in ~/android/system/out/target/product/encore -- enjoy! nb: You might want to access this update package from outside the chroot. Look for it in andbotfs/out/tar get/product/encore.

Updating

Keeping your source and binaries up-to-date is as easy as

andbot sync
andbot brunch encore

Remember to check FatTire's tutorial periodically to see if anything's changed. If you want, you could add these changes to /andbot yourself, or you could ask someone to do it for you. You might also find an updated /andbot within this very repository.

Compatibility

This should be totally compatible with the "standard" method of building CyanogenMod, except everything is contained within a directory. You don't even have to use the andbot commands, or you could use them only for some tasks.

andbot's People

Contributors

jyio avatar

Stargazers

 avatar Jon Hannah avatar

Watchers

 avatar  avatar

andbot's Issues

error running it from NTFS disk

Hi,

Because of partition size restraints I have to run it from my NFTS partition instead of from my linux one.
I'm able to chmod + X it,
sudo ./andbot.run it
but then I stumble upon the following problem:
XXXXXX@XXXXXX-NBLB2:/compile/temp/test$ sudo ./andbotfs/andbot
Mounting /proc, /sys, /dev, and /dev/pts
error: device not found
Welcome to AndBot
AndBot:andbot@XXXXXX-NBLB2:
/android/system$ andbot init

  • cd /home/andbot/android/system
  • repo init -u git://github.com/CyanogenMod/android.git -b ics
    gpg: WARNING: unsafe ownership on homedir /home/andbot/.repoconfig/gnupg' gpg: lock not made: link() failed: Operation not permitted gpg: can't lock/home/andbot/.repoconfig/gnupg/secring.gpg'
    gpg: DBG: oops, /home/andbot/.repoconfig/gnupg/secring.gpg.lock' is not locked gpg: keyblock resource/home/andbot/.repoconfig/gnupg/secring.gpg': general error
    gpg: lock not made: link() failed: Operation not permitted
    gpg: can't lock /home/andbot/.repoconfig/gnupg/pubring.gpg' gpg: DBG: oops,/home/andbot/.repoconfig/gnupg/pubring.gpg.lock' is not locked
    gpg: keyblock resource /home/andbot/.repoconfig/gnupg/pubring.gpg': general error gpg: no writable keyring found: eof gpg: error reading[stdin]': general error
    gpg: import from `[stdin]' failed: general error
    gpg: Total number processed: 0
    fatal: registering repo maintainer keys failed
    AndBot:andbot@XXXXXX-NBLB2:~/android/system$

Is there any way to fix this?
also: I can't sudo in the chroot:
~/android/system$ sudo ping google.com
sudo: must be setuid root

what is the current password?
(then I can use "passwd" and maybe get sudo to work?)

I'm running the latest Ubuntu (fresh install)
Linux XXXXXX-NBLB2 3.0.0-14-generic #23-Ubuntu SMP Mon Nov 21 20:28:43 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux

I would very much appreciated if you could helm me out or point me in the right direction.

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.