If you like my work, please consider donating!

SAPPHIRE 0.6.0 DROID (Froyo)

Release Information

ROM Sapphire
Device Droid
Version 0.6.0
Status Release
OS Android 2.2 (Froyo)
License Android: (GPLv2 + Apache), Sapphire: (GPLv2)
Download sapphire-0.6.0-update.zip
MD5 f0c038e8bc24b1daa5cc9abdb284dac3

License Agreement

The core of Android is released from AOSP under a combination of the Apache and GPLv2 licenses. Sapphire is released under the GPLv2 license, which can be found below:

Sapphire ROM - A custom Android OS built from AOSP
Copyright (C) 2010 Austen Dicken (CVPCS)

This program is free software; you can redistribute it and/or modify it under the terms of the
GNU General Public License as published by the Free Software Foundation; either version 2 of
the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not,
write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

Core Features

Below are a list of the core features provided by Sapphire 0.6.0 (for a list of changes since 0.5.2, view the changelog at bottom of the page):

  • Base Features
    • Built from source
    • Fully zipaligned
    • Fully deodexed
    • Adobe FLASH support Download
  • Kernel Features
    • Overclocking started automatically at boot time (regardless of whether SetCPU is there or not)
    • Proper working “modprobe” command (makes loading/unloading kernel modules easier)
  • Command-Line Tools
    • Vixie-CRON low-level task scheduler (command-line task scheduler)
    • Colored BASH shell (simply type “bash” after entering adb shell or terminal emulator shell)
    • NANO text editor with syntax highlighting (simply type “nano” using a terminal emulator [syntax highlighting for asm, c, css, html, java, php, sh, xml, and more])
    • Busybox (lots of fancy tools and stuffs)
  • Apps
    • Superuser (provides root access)
    • Spare Parts app (allows for some nice tweaking)
    • Dev Tools (good for developers)
    • App2SD works
  • ScriptyBox (scripts!)
    • adblock (turns ads on or off in the browser/apps)
    • camsounds (turns camera shutter/record sounds on or off)
    • cpuinfo (display CPU info)
    • freemem (ensure that 50, 75, or 100 mb of RAM is always available)
    • halt (shuts down the system)
    • dalvikjit (enable or disable JIT) [OBSOLETE]
    • meminfo (display memory info)
    • mtdinfo (display internal system partition info)
    • rmapk (remove various APKs, such as amazon mp3 and whatnot)
    • sysro (mounts the system partition read-only)
    • sysrw (mounts the system partition read-write)
    • swapinfo (displays swap space info)
    • switchapk (downloads and swaps between various apps, i.e. milestone and 2.1 music, without the need to put them on the sd card)
    • zipalign_apks (zipaligns ALL apks on the entire system)
  • Other Tweaks
    • Increased wireless scan time to 90 seconds (saves battery life)
    • Reboot to recovery option
    • Ability to pick colors for notification texts (in spare parts)
  • Branding
    • Custom boot animation (looks pretty slick if i say so myself)

Known Issues

There are a few issues with this release, as there are still some things to be worked out of the Froyo build. They are relatively minor and will be fixed in a future release.

  • Wifi tethering - Although wifi hotspots show up in the settings menu, it currently does not work. This is being looked into.
  • Wifi connections - Have been having some issues connecting to wifi. This is being looked into as well.
  • FLAC support - although FLAC files are supported, they are not yet tied into the changes to the media service.

Kernels

Currently I'm only supporting the base kernel, P3Droid's Low-voltage, 7-slot, 250-1000mhz kernel.

Although currently I only provide one kernel, there is no foreseeable reason that other kernels shouldn't work.

Themes

Themes will not be officially supported in this release, as it is a stock release. We will be making a new release soon (0.6.1) that will include the proper updates to framework needed to support official themes.

Screenshots

Below are some pages linking to screenshots of the system, under various themes. Enjoy!

Installation

Installation is performed using the standard update.zip installation method. The steps of which are:

  1. Download the update.zip file at the top of this page
  2. Reboot your phone into recovery mode
  3. MAKE A BACKUP OF YOUR PHONE
  4. Optionally reset phone to factory default (THIS STEP IS REQUIRED IF YOU CURRENTLY ARE RUNNING A NON-FROYO ROM)
  5. Push sapphire-0.6.0-update.zip to /sdcard/update.zip
  6. Tell your recovery to allow update.zip installation
  7. Install from /sdcard/update.zip

If you plan on installing a new kernel or theme, simply follow the same steps as above with those zip files.

The first time you boot Sapphire will also be the longest. This is because it must rebuild the dalvik cache to use the system. Please give it a fair amount of time (anywhere from 1 to 10 minutes) for this to occur.

Occasionally the system will be unstable following the initial boot of the system. This is generally caused by the dalvik cache being rebuilt, and can often be solved by simply rebooting the phone after the system has fully booted initially.

Report a Bug / Request a Feature

All bug reports and feature requests will be done through Bugzilla, an issue tracker hosted on this site. It requires a valid email to register (which is only used for tracking which users have what bugs), and provides a much better interface to report and track problems or features.

You can find the Sapphire Bugzilla here: CVPCS Sapphire Bugzilla

Donations

As a starving college student, I do this on my free time simply because I love it and want to provide something great to the community. That being said, I would love to be able to devote more time to doing this as a living. If you like the work that I do, please consider making a contribution!

Changelog

Below is the changelog for the system.

A copy of the entire changelog for the system is always included on the device itself at /system/etc/CHANGELOG-SR.

0.6.0:
    Updated to AOSP source for Froyo [cvpcs]
        this update was hell in and of itself to get going, so lots of thanks to
        Sniffle and Koush, as well as support from anyone else! :D

0.5.2:
    Modified SpareParts [cvpcs]
        added ability to customize text colors for download notifications

    Fixed MMS [cvpcs]
        provided proper carrier file (credit to cyanogen for the file itself) to
        properly connect to verizon

0.5.1:
    Added Color Picker in Spare Parts [cvpcs (modifications)]
                                      [cyanogen (base work and commit)]
        provides a method to set the various text colors in the notifcation and
        status bars

    Modified scriptybox [cvpcs]
        added commands:
            help (must invoke as "scriptybox help")
                provides an easy way to get information about the various commands
                included in scriptybox, without actually running those commands
        modified commands:
            {all}
                all commands were updated so that if you run them as:
                  [command] --help
                they will be guaranteed to print out their usage information

    Added command line knock executable [cvpcs]
        provides low-level port knocking functionality without the need for an app

    Other tweaks:
        optipng'ed the entire system [cvpcs (redone with optipng)]
                                     [cyanogen/koush (base optimizer scripts)]

0.5.0:
    Modified scriptybox [cvpcs]
        modified commands:
            mtdinfo
                added code to ensure that the proper functions actually get called
            rmapk
                added code to remove IM

    Other tweaks:
	added new Sapphire brand bootanimation [cvpcs]

0.4.6:
    Added native IM app [pete? (found in one of pete's forums)]
        app to connect to MSN, Yahoo!, and AOL messenger, originally natively included
          with android.

    Modified scriptybox [cvpcs]
	added commands:
            mtdinfo
                displays information about all of the internal system partitions

    Other tweaks:
        changed default kernel to STOCK (no overclock) [cvpcs]
        added basic support for ROMManager [cvpcs]

0.4.5:
    Modified scriptybox
        fixed sysro syncing issues [pete]

0.4.4:
    Modified scriptybox [cvpcs]
	finished changing scriptybox to be bash-based
        fixed a minor typo in the script
	fixed a problem with switchapk not getting the system to recognize the change

    Other features:
        added regular "Reboot" option [cvpcs]
        moved "Reboot into Recovery" under "Reboot" option [cvpcs]

    Other tweaks:
        re-added unknown terminfo file [cvpcs]

0.4.3:
    Modified scriptybox [cvpcs]
        switched over to the new bash shell to make scripts more sleek and managable

0.4.2:
    Added nano text editor [cvpcs]
        provides a simple text editor for use in modifying text files from
          the command line
        provides basic syntax highlighting to common source files such as:
          asm, c, css, html, java, perl, php, sh, xml, and more

    Added Bourne Again SHell (bash) [cvpcs]
        provides a bash shell with much more feature support than the native
          system shell
        is dynamically linked to reduce size, as opposed to other roms which
          use a statically linked bash shell
        provides basic color highlighting features
        set as default shell

    Modified compcache [cvpcs]
        fixed a bug where the ramzswap module would not unload on stop

    Modified scriptybox [cvpcs]
        fixed a bug where scriptybox wouldn't mount the system read-only on some occassions

    Other features:
        added native FLAC support [kruton]
        added "Reboot into recovery" option to power dialog [cvpcs]

    Other tweaks:
        moved wminput from /system/bin to /system/xbin [cvpcs]

0.4.1:
    Modified scriptybox [cvpcs]
        fixed several typos
	fixed bug in switchapk command
        changed internal structure

0.4:
    Switched to default android-omap-2.6.29-bekit_sapphire kernel [cvpcs]
                                                                  [bekit (base)]
        provides overclocking of 250-1000mhz at low-voltage, is patched for
        compcache support, and also includes the following modules:
            cifs, ext2, ext3, ext4, fuse, isofs, jfs, nfsd, nfs, ntfs,
            ramzswap, reiserfs, squashfs, tiwlan_drv, xfs
        also supports wired and wireless tether

    Replaced stock Launcher2 [sniffle]
        provides more columns in the app drawer
        based off helix launcher2

    Added vixie-cron task scheduler [cvpcs]
        ported the vixie-cron (cron) task scheduler to android.  this allows for
        system-level processes to be run periodically whenever the phone is on.
        search google for "cron" to learn more about how this works.  system
        cron tab should be placed at /data/cron/systab.

    Modified scriptybox [cvpcs]
        fixed some typos
        added new commands:
            adblock [cvpcs (speed increase for blocking)]
                    [pete (original blocklist)]
                turns ad blocking on or off
            halt [cvpcs]
                replacement for "shutdown" command
            switch [cvpcs]
                replaces certain apps with replacement versions of them (such as
                2.1 music and milestone music)
        modified commands:
            rmapk
                fixed code to remove the Amazon MP3 app
                added code to remove the AlarmClock app
                added code to remove the Music app
        removed commands:
            shutdown
                removed because it is renamed to "halt"

    Modified init process [cvpcs]
        added script to enable ondemand overclocking upon boot
        added script to start cron daemon if a systab exists

    Other features:
        added animated gif support to webkit [cyanogen]

0.3:
    Added default android-omap-2.6.29-sapphire kernel [cvpcs]
                                                      [AdamZ (base)]
        provides overclocking of 250-1000mhz at low-voltage, is patched for
        unionfs support, is patched for compcache support, and also includes
        the following modules:
            unionfs, squashfs, cifs, xfs, ext2, ext3, ext4, reiserfs, isofs,
            jfs, nfsd, nfs, ntfs, fuse, ramzswap, tiwlan_drv
        also supports wired and wireless tether

    Added scriptybox [cvpcs]
        provides a busybox-like interface to many different command scripts that
        implement a barrage of features.  these commands are:
            camsounds [pete]
                turns the camera shutter and video sounds on and off
            cpuinfo [cvpcs]
                displays information about the cpu
            freemem [cvpcs (added default setting)]
                    [pete (base)]
                ensures that stale processes are killed to keep a specific
                amount of RAM available
            dalvikjit [cvpcs]
                enables or disables JIT compiling in the Dalvik Virtual Mahcine
                (requires a reboot)
            meminfo [cvpcs]
                displays information about memory in the system
            rmapk [cvpcs (streamlined the script)]
                  [pete (idea for the scripts)]
                removes certain applications from the system if they exist
            shutdown [cvpcs]
                powers off the system without reboot
            sysro [cvpcs]
                mounts the system partition read-only and syncs the system
            sysrw [cvpcs]
                mounts the system partition read-write
            swapinfo [cvpcs]
                displays information about swap partitions in the system
            zipalign_apks [cvpcs (streamlined the process)]
                          [pete (base)]
                zipaligns all APKs on your entire system

    Added a custom init system [cvpcs (customizations)]
                               [cyanogen (base ideas)]
        provides a series of scripts that get ran upon boot
        added the following scripts:
            00 - banner: prints a banner upon boot to the syslog
            10 - sysrw: mounts the system partition read-write for the 1* 
                        script block
            11 - depmod: sets up the kernel module directory to ensure that
                         modprobe works
            19 - sysro: remounts the system read-only
            99 - ready: notifies the system that our init process is finished

    Added some tweaks:
        increased the wireless scan interval to 90 seconds [cvpcs]
        increased the default video record quality [fede]

    Other features:
        switched to ChainsDD's Superuser [chainsdd]
        added a default ringtone [cvpcs]

0.2:
    Added custom init.rc [cvpcs]
        provides a way to customize the boot process

    Other features:
        added HQ YouTube app [pete]

0.1:
    Added Superuser [cyanogen]
        provides root access via su

    Added busybox [cvpcs (removed need for modified bionic)]
                  [cyanogen (base)]
        provides a large set of command line executables

    Added libc-ext [cvpcs]
        provides syscalls not included in bionic used by busybox

    Created cvpcs vendor [cvpcs (customizations for my custom build)]
                         [cyanogen (base vendor setup)]
                         [koush (base device setup)]
        removed the need for koush's motorola/sholes-open device or cyanogen's
        vendor/cyanogen vendor setup.

    Customized build setup [cvpcs]
                           [cyanogen (used his ideas for build.prop overrides)]
        modified the build setup from scratch to support some extra features.

    Added CWiid library [cvpcs]
        provides support for connecting wiimotes to the phone via bluetooth

    Other features:
        added custom boot animation [cvpcs]
 
releases/sapphire-0.6.0.txt · Last modified: 2010/08/04 23:54 by Austen Dicken
 
Except where otherwise noted, content on this wiki is licensed under the following license:GNU Free Documentation License 1.2
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki