Logo it.androidermagazine.com
Logo it.androidermagazine.com

Progetto per il weekend: costruisci lo stivale di mozilla su geco per il tuo smartphone Android

Sommario:

Anonim

Non sono un programmatore. Conosco a malapena G it da G ot, e non ricordo quante volte mi sono chiesto perché adb non funzionasse, solo per scoprire di aver dimenticato di attivare il debug USB - di nuovo. Ho Linux su una scatola qui, ma lo uso sempre e solo quando sono dell'umore giusto per fare una mezza dozzina di domande a Jerry nell'arco di cinque minuti.

Inoltre, non ho la barba.

Quindi cosa sto facendo nell'ampio e ampio mondo dello sport scaricando Xcode sul mio MacBook Air (non importa che fino a questa primavera ero stato un ragazzo di Windows per tutta la vita), sincronizzato dai repository Git, compilando codice e facendo lampeggiare un sistema operativo Fino ad ora ho consapevolmente ignorato - soprattutto dato che ho trascorso 24 ore a trattare con un bambino malato, preoccupandomi di un amico malato, e preparandomi per un probabile uragano, ignorando in gran parte il mio vero lavoro?

Apparentemente, ho un problema con il flashing. Ed è così che di recente mi sono ritrovato a mettere il nascente sistema operativo Mozilla, noto anche come "Gecko", sul Samsung Nexus S.

Benvenuti nel progetto Boot to Gecko.

Come ho detto, non sono un programmatore. Ma mi piace scherzare con le cose. E sono riuscito a farlo, come piace dire alle mie giovani figlie, tutte … da … il mio … io. E anche tu puoi.

Aspetta, perché diavolo lo stai facendo?

Questo è il primo di una serie che chiameremo i nostri progetti per il weekend. Cose che altrimenti non potresti tentare. Ma se possiamo farlo, anche tu.

Detto questo, ci sono un paio di cose che non ho intenzione di fare per te qui. Questo non sarà uno sguardo dettagliato su come compilare e eseguire il flashing del progetto Boot to Gecko. Ti darò i tratti ampi della mia esperienza. Mozilla ha una documentazione eccellente, e dovresti davvero leggerlo se vuoi provarlo. (Probabilmente anche non riuscirei a ottenere tutto bene nella traduzione.)

L'altra cosa che non ho intenzione di fare è indicarti la costruzione di qualcun altro, infiammabile tramite ClockworkMod. Puoi cercarlo da solo. Quello che volevo fare era in realtà compilare questo build sulla mia inflessione sul telefono da solo.

Ed è quello che ho fatto.

Link di cui avrai bisogno

Google è tuo amico. Una semplice ricerca di "B2G" ha trovato tutto ciò di cui avevo bisogno.

  • Mozilla - Boot to Gecko (per la spiegazione non nerd di B2G)
  • B2G sulla rete di sviluppatori Mozilla (è qui che inizia il vero lavoro)
  • Creazione e installazione di Boot to Gecko

OK - ora che diavolo stai facendo?

Per costruire da zero, secondo Mozilla, hai bisogno di un computer Mac o Linux. Ho entrambi qui. Ma le istruzioni per Mac sembravano semplicemente più facili. (Non c'è da vergognarsi, vero?) Ma anche questo ha senso. È probabile che se usi Linux, puoi facilmente installare tutti gli strumenti elencati da Mozilla. Me? Non così tanto. Quindi era Mac.

Per me è stato davvero semplice: installa Xcode dal Mac App Store, quindi avvia Terminal ed esegui alcuni comandi. Ho fatto abbastanza armeggi su Android per essere d'accordo. Mozilla ha un ottimo script che installa tutto ciò di cui hai bisogno. Quindi sincronizzare il repository git, compilare il codice e inviarlo sul dispositivo Android come qualsiasi altra ROM personalizzata. (E Mozilla ha anche una sceneggiatura per quest'ultima parte, che rende le cose ancora più facili.)

Per quanto riguarda il dispositivo di destinazione per cui stai costruendo, hai opzioni. Mozilla li ha divisi in tre livelli:

  • Livello 1: Otoro (una sorta di dispositivo di sviluppo che Mozilla sta usando); PandaBoard; un emulatore ARM o x86; o il desktop. Non quello che stavo cercando.
  • Livello 2: Samsung Nexus S e Nexus S 4G. Sento un tema comune qui. Telefoni facilmente sbloccabili e Mozilla afferma che questi stanno rilevando le modifiche "secondariamente". Ho un Nexus S in giro, quindi è quello che cercavo.
  • Livello 3: Samsung Galaxy S2 e Galaxy Nexus. La gente sta armeggiando, ma il livello 2 è il tuo colpo migliore.

Quindi questa è metà della battaglia. Ora per scaricare, compilare e flash B2G.

C'erano anche un paio di scelte lì. Uno è costruire su un box Linux. Mozilla spiega tutti gli strumenti necessari di cui hai bisogno, ma non ti mostra dove trovarli. Essendo un Linux n00b, è una brutta cosa. Per la maggior parte del resto dei secchioni che usano una distro o l'altra, dovrebbe essere meno di una cosa.

L'altra opzione è costruire su un Mac. E Mozilla lo ha reso stupidamente semplice.

Quindi come hai fatto?

Ancora una volta, l'ho fatto su un Mac. E c'erano davvero solo alcuni passaggi di base che persino il mio collo senza barba era in grado di seguire.

  1. Ho dovuto installare Xcode, che è l'ambiente di sviluppo per Mac.
  2. Ho installato Homebrew per Mac.
  3. Ho eseguito uno script fornito da Mozilla, che ha verificato gli altri prerequisiti e mi ha richiesto di installarli se necessario.

A questo punto noterò che le istruzioni di Mozilla sembravano indicare che tutto ciò che dovevo fare era installare Xcode e quindi eseguire lo script; il resto si sarebbe preso cura di se stesso. Ma ho dovuto installare Homebrew da solo. Non sono sicuro se ciò sia dovuto a qualcosa che ho fatto (o non ho fatto) o cosa. Ma è così che ha funzionato per me.

Successivo: recupera tutto il codice da Git. Era semplice come copiare e incollare altre poche righe nel Terminale. Freddo.

Quindi: compila.

Ora, questi ultimi due passi hanno richiesto un po 'di tempo. Non sono sicuro di quanto tempo. Sono andato via e ho fatto cose. Fatto del caffè. Ho fatto delle commissioni. Ha scritto un libro. Ci è voluto del tempo sul mio MacBook Air. Me lo aspettavo. Questo non è un progetto troppo difficile, ma non è nemmeno troppo veloce. Ho lasciato che le cose seguissero il loro corso e ho finito con un'immagine flashable nella nuova directory "B2G" del mio MBA.

È ora di lampeggiare

Così. È ora di afferrare Nexus S. Dovrà disporre di un bootloader sbloccato, ovviamente, e deve eseguire Android 4.0 Ice Cream Sandwich. (Mozilla non dice nulla su Jelly Bean, ma ho anche avuto modo di lavorare con esso. Non troppo sorprendente.)

Attiva il telefono in modalità fastboot e collegalo. Nulla di ciò che non abbiamo mai fatto prima con Android, giusto /

Ora, ancora una volta, Mozilla ha reso tutto molto semplice. Non mi sono preoccupato di correggere le variabili del mio percorso, quindi adb e fastboot normalmente vivono in una cartella del mio SDK Android, e basta. Posso occuparmene. Mozilla ha incluso in modo intelligente tutto ciò. Ma ancora meglio è che ha realizzato una piccola sceneggiatura che fa tutto. Verifica se il bootloader è sbloccato. Cancella tutte le partizioni che deve cancellare. Quindi lampeggia le nuove immagini. Completamente pratico. Non è niente che non avrei potuto fare da solo, ma non sono nulla se non occasionalmente pigro. Saluti, Mozilla.

Riavviare e, boom. Abbiamo avviato a Gecko.

Mettilo insieme e cosa hai?

E ora, per i frutti del nostro lavoro.

La linea di fondo

Quindi questo è Mozilla's Boot to Gecko su un Samsung Nexus S. Non è un brutto piccolo progetto, in realtà. Ci vollero un paio d'ore, un Nexus S funzionante e un po 'di spazio sul disco rigido, ma non era troppo faticoso per il cervello. Una volta che hai eseguito il flashing sul telefono, puoi eseguirne il backup utilizzando i recuperi Android personalizzati, quindi vai e vai come preferisci.

Darei un 6 su 10 nella scala di difficoltà, solo perché non so davvero cosa sto facendo quando si tratta di compilare il codice. Ma seguo le indicazioni abbastanza bene e Mozilla ha reso le cose belle e facili. Questo è uno che puoi provare tu stesso.

Potremmo guadagnare una commissione per gli acquisti utilizzando i nostri link. Per saperne di più.