workshop DigiPinguïns (LUG Kortrijk)
dd 31/3/2015
Merijn Supply (ICT-verantwoordelijke)
Vormingplus MZW, Wandelweg 11, 8500 Kortrijk
CyanogenMod is een zogenaamde 'custom ROM', een besturingssysteem voor smartphones en tablets dat voortbouwt op Google's AOSP (Android Open Source Project). Android is lichtjes aangepast of 'verrijkt' met functionaliteiten die de CyanogenMod-ontwikkelaars in de standaarduitgave van Android ('stock Android') missen. CyanogenMod is er ook voor bekend een zeer groot aantal mobiele telefoons of tablets te ondersteunen. het mogelijk is de officiële software van de telefoon te vervangen door software van CyanogenMod. Om deze software te installeren heeft men roottoegang nodig. Aangezien bij het verkrijgen van deze roottoegang systeembestanden worden aangepast, is het mogelijk dat de fabrikant de garantie op het toestel laat vervallen.
DigiPinguïns is een maandelijkse bijeenkomst van Linux-gebruikers en open-source-enthousiastelingen. We starten de bijeenkomst steeds met een korte nieuwsrubriek over Linux en open-source-technologie (15'), gevolgd door een demo, lezing of workshop. Tussendoor is er steeds gelegenheid voor een losse babbel, waarbij deelnemers ervaring en kennis kunnen uitwisselen (LUG of Linux User Group).
5. Wait a minute …: nadelen van CyanogenMod
● garantie toestel vervalt
● extra veiligheidsrisico’s
○ (minieme) kans om toestel te ‘bricken’
○ root-toegang brengt grotere verantwoordelijkheid
○ custom ROM’s kunnen kwaadaardige code
bevatten > alleen van ‘trusted sources’
downloaden vb http://download.cyanogenmod.org
● stabiliteit niet gegarandeerd
○ (en al zeker niet bij Nightlies)
○ soms ontbreekt propriëtaire library/driver
○ ‘your on your own’: geen ‘soliede backing’ van
Google, Samsung of andere (vb ‘googy kernel’)
6. Android historiek
● okt 2003: °Android, Inc
○ Andy Rubin en partners
○ >< Symbian and Windows Mobile
● aug 2005: overname door Google
● nov 2007: °Open Handset Alliance
○ Google
○ HTC, Samsung, Sony
○ Sprint, T-Mobile
○ Qualcomm & Texas Instruments
● 2008:
○ Android 1.0 (eerste commerciële release)
8. CyanogenMod: basics
● 'custom ROM': mobiel
besturingssysteem voor
smartphones/tablets
● vertrekt van AOSP
(Android Open Source Project), licht
aangepast of 'verrijkt'
● zeer grote device-compatibiliteit
● roottoegang vereist (aanpassing systeem)
● gebruikte softwarelicenties: Apache License 2
+ GNU GPL v2 + enkele propriëtaire libraries
9. ● [ 2003: start XDA Developers (forum)]
● 2008: start van ‘custom ROM’ scene
nadat op HTC Dream (Android 1.0)
roottoegang is verkregen
● 2009: ‘Cyanogen’ duikt op
○ nickname van Steve Kondik (toen bij Samsung)
○ zijn ROM noemt hij ‘CyanogenMod’
● 2011: CM 7 (eerste public release)
● 2014 (juni): 12 miljoen actieve gebruikers
CyanogenMod: historiek
10. Cyanogen, Inc: het bedrijf
● Cyanogen, Inc
○ kapitaalrondes/’series’
■ A: $7 miljoen (sept 2013)
■ B: $23 miljoen (dec 2013)
■ C: $80 miljoen (mrt 2014)
○ investeerders
■ Twitter
■ chipfabrikant Qualcomm
■ mediamagnaat Rupert Murdoch
■ [Microsoft] - foutief/vals gerucht
● CyanogenOS ambitie: van Google los
○ zonder Play Services, zonder ‘google apps’
12. CyanogenMod: versiegeschiedenis
-- officieuze releases --
● CM 3-6 Android 1.5-2.2
(Cupcake/Donut/Eclair/Froyo)
-- public releases --
● CM 7 Android 2.3 (Gingerbread)
● CM 8 Android 3.x (Honeycomb)
● CM 9 Android 4.0 (Ice Cream Sandwich)
● CM 10.x Android 4.1-4.3 (Jelly Bean)
● CM 11 Android 4.4 (KitKat)
● CM 12.x Android 5.x (Lollipop)
13. Release stadia
● Stable
○ in onbruik geraakt
● Release Candidate (RC)
○ geen fatale fouten, alleen nog wat kleine fouten
○ in onbruik geraakt
● Snapshots (M Releases)
○ code freeze bij ‘t begin van de maand, M release
‘when ready’ (alleen nog kleine fouten)
○ vervangt ‘stable’ of ‘RC’ van vroeger
● Nightly Builds
○ veel fouten (niet geschikt voor dagelijks gebruik)
○ toch populair, ook voor dagelijks gebruik
17. ● opgepast: alle data wordt gewist bij
apparaat rooten en/of custom recovery
flashen en/of custom ROM installeren
● welke data?
foto’s, video’s, SMS’en, contacten, apps,
… werkelijk àlles
● apparaat wordt teruggezet op (anonieme)
fabrieksinstellingen
● microSD-kaart (external storage) in
principe buiten schot (maar let goed op!)
Backup
19. ● wat is ‘root’?
○ Android-kernel = Linux
○ gebruiker ‘root’ heeft op Linux alle rechten
○ standaard weigert Android roottoegang
● waarom ‘rooten’?
○ installatie custom recovery/ROM, ‘modding’
○ via een ‘root-app’ (vb SuperSU) kunnen alle
andere apps rootrechten krijgen
● hoe ‘rooten’?
○ Towelroot APK (tot kernel dd 3/6/14)
○ PC-software (vb ‘Kingo Android Root’)
○ of: ‘custom recovery’ flashen
Rooten
20. Rooten - niet te verwarren met...
● unlocken van SIM-lock
○ stukje code controleert of SIM-kaart van bepaalde
provider is (anders wordt kaart geweigerd)
○ provider moet SIM-lock na 1 jaar verwijderen
○ unlocken kan manueel m.b.v. IMEI-code
○ handeling op zich niet illegaal, maar contract bij
provider verbiedt het (eerste jaar) wel!
○ terzijde: tot 2007 verboodt België simlock
(bundeling/koppelverkoop), vandaag is simlock
enkel nog verboden in China, Singapore en Israel
● jailbreaken (iPhone/iPad = iOS, Apple)
○ mogelijk illegaal (niet in de UK)
25. Installatie (Linux)
manuele stappen (van hieraf moet je gaan)
1. backup (zie hoger)
2. recovery flashen (zie verder)
3. zip’s klaarzetten(*):
1/ custom ROM (vb CyanogenMod)
2/ gapps itvends.com/gapps
3/ SuperSU http://download.chainfire.eu/supersu
(*) hoe klaarzetten?
a. ‘pushen’ met behulp van ADB-tools
adb push filename.zip /sdcard/
b. op externe microSD plaatsen (via PC/laptop)
26. CWM-recovery flashen - SAMSUNG
1. CWM-image (*.img) voor jouw specifieke
(!) toestel downloaden via http:
//clockworkmod.com/rommanager
2. Linux (Ubuntu): installeer heimdall
sudo apt-get install heimdall-flash
3. boot telefoon in ‘download-modus’
a. knoppencombinatie, vb Vol down + Home +
Power
b. commando: sudo adb reboot download
4. terminalcommando uitvoeren
heimdall flash --RECOVERY
your_recovery_image.img --no-reboot
27. CWM-recovery flashen - ANDERE
1. CWM-image (*.img) downloaden zie hoger
2. Linux (Ubuntu): installeer fastboot (zie
hoger bij ‘ADB-tools’)
3. boot telefoon in ‘download-modus’
(vb Volume down + Home + Power)
4. terminalcommando’s (evt. sudo vereist)
a. fastboot devices
(je *moet* nu device serial number krijgen)
b. fastboot oem unlock
c. fastboot flash recovery
your_recovery_image.img
28. Custom ROM installeren m.b.v. CWM
1. zip’s klaarzetten (zie hoger)
2. (re)boot toestel in recovery (zie hoger)
3. neem een Nandroid backup
4. selecteer ‘wipe cache partition’
5. selecteer ‘advanced’ > ‘wipe dalvik cache’
6. selecteer ‘wipe data/factory reset’
7. selecteer ‘install zip from sdcard’ >‘choose
zip from (external) sdcard’ - volgorde:
a) custom ROM b) gapps c) SuperSU
8. selecteer ‘reboot system now’