How can I install Google Apps on Cyanogenmod for the Samsung Galaxy S2 (i9100)?


Question

When I try to install the latest version of Open GApps onto my phone using adb sideload, and the default CM Recovery that comes with CM 13 for the Samsung Galaxy SII (i9100). However, I get the error message, "Failed to set up busybox." The suggested solution, which is to use TWRP recovery instead of CM, I have no idea how to do because I don't know where to find a kernel, with TWRP recovery, that is compatible with CM13. I can't find kernels for CM12, since many of the download links on sites like xda-developers.com are dead.



I tried to install with CM12 and CM13 and I get the same result.



I successfully installed a copy of busybox onto /system/bin. I first tried installing Open GApps via adb sideload however, this failed. Running adb shell, I saw that perhaps busybox was runnable, so I ran chmod +x, and ran busybox, after which I saw busybox's help message. Surprisingly, Open GApps still didn't install for the same reason.



How can I install the Google Apps onto my phone?


Answer

Rahul is right, but I might contribute to this (I also got the i9100 and ran into the same problem). I had the problem that my google apps were already bricked so i could not install any helper apps.



TAKE CARE: This may brick your system if you are not sure what you are doing.



When upgrading CM12.X to 13 you have to install a new gapps version. The problem is, that with CM13 the old recovery system (which you need to install gapps) is being replacedby a new one which lacks the busybox. My solution so far: flash back the old recovery system using Odin (I used clockworkmod as recovery system which has busybox). Download the gapps and latest cyanogenmod on your sd card (zip files) and insert it in your phone. Boot into the recovery. Clean and wipe your system. Install cyanogenmod from zip file and directly afterwards the gapps zip file. This might take some time. Then reboot your system.



CRITICAL NOTES:
- When installing cyanogenmod from sd card, your recovery will again be overwritten with the new embedded recovery system cyanogenmod (that one that is lacking the busybox).
- If you haven't resized your partitioning, installation of gapps (I used the smallest version called pico) will fail because of insufficient storage. If this is the case, you also have to flash new pit files and format sdcard0 (vfat), system, data, preload and emmc (vfat). Then you may install your custom rom and gapps from recovery.



Links:
Pit files different sizings: forum.xda-developers.com/showpost.php?p=60473209&postcount=1106 (pick one with 512MB preload (!) just to be sure)
CWM Recovery: http://galaxys2root.com/cwmtwrp-recovery/
Philz Recovery for flashing pit files and formatting filesystems: http://d-h.st/SvM



Unfortunately this procedure have to be repeated once you have to upgrade your gapps. I found no better solution so far...


Topics


2D Engines   3D Engines   9-Patch   Action Bars   Activities   ADB   Advertisements   Analytics   Animations   ANR   AOP   API   APK   APT   Architecture   Audio   Autocomplete   Background Processing   Backward Compatibility   Badges   Bar Codes   Benchmarking   Bitmaps   Bluetooth   Blur Effects   Bread Crumbs   BRMS   Browser Extensions   Build Systems   Bundles   Buttons   Caching   Camera   Canvas   Cards   Carousels   Changelog   Checkboxes   Cloud Storages   Color Analysis   Color Pickers   Colors   Comet/Push   Compass Sensors   Conferences   Content Providers   Continuous Integration   Crash Reports   Credit Cards   Credits   CSV   Curl/Flip   Data Binding   Data Generators   Data Structures   Database   Database Browsers   Date &   Debugging   Decompilers   Deep Links   Dependency Injections   Design   Design Patterns   Dex   Dialogs   Distributed Computing   Distribution Platforms   Download Managers   Drawables   Emoji   Emulators   EPUB   Equalizers &   Event Buses   Exception Handling   Face Recognition   Feedback &   File System   File/Directory   Fingerprint   Floating Action   Fonts   Forms   Fragments   FRP   FSM   Functional Programming   Gamepads   Games   Geocaching   Gestures   GIF   Glow Pad   Gradle Plugins   Graphics   Grid Views   Highlighting   HTML   HTTP Mocking   Icons   IDE   IDE Plugins   Image Croppers   Image Loaders   Image Pickers   Image Processing   Image Views   Instrumentation   Intents   Job Schedulers   JSON   Keyboard   Kotlin   Layouts   Library Demos   List View   List Views   Localization   Location   Lock Patterns   Logcat   Logging   Mails   Maps   Markdown   Mathematics   Maven Plugins   MBaaS   Media   Menus   Messaging   MIME   Mobile Web   Native Image   Navigation   NDK   Networking   NFC   NoSQL   Number Pickers   OAuth   Object Mocking   OCR Engines   OpenGL   ORM   Other Pickers   Parallax List   Parcelables   Particle Systems   Password Inputs   PDF   Permissions   Physics Engines   Platforms   Plugin Frameworks   Preferences   Progress Indicators   ProGuard   Properties   Protocol Buffer   Pull To   Purchases   Push/Pull   QR Codes   Quick Return   Radio Buttons   Range Bars   Ratings   Recycler Views   Resources   REST   Ripple Effects   RSS   Screenshots   Scripting   Scroll Views   SDK   Search Inputs   Security   Sensors   Services   Showcase Views   Signatures   Sliding Panels   Snackbars   SOAP   Social Networks   Spannable   Spinners   Splash Screens   SSH   Static Analysis   Status Bars   Styling   SVG   System   Tags   Task Managers   TDD &   Template Engines   Testing   Testing Tools   Text Formatting   Text Views   Text Watchers   Text-to   Toasts   Toolkits For   Tools   Tooltips   Trainings   TV   Twitter   Updaters   USB   User Stories   Utils   Validation   Video   View Adapters   View Pagers   Views   Watch Face   Wearable Data   Wearables   Weather   Web Tools   Web Views   WebRTC   WebSockets   Wheel Widgets   Wi-Fi   Widgets   Windows   Wizards   XML   XMPP   YAML   ZIP Codes