תוכן עניינים:
- רגע - למה לעזאזל אתה עושה את זה?
- קישורים שתצטרך
- אוקיי - עכשיו מה לעזאזל אתה עושה את זה?
- אז איך עשית את זה?
- זמן להבהב
- הרכיבו את זה ומה יש לכם?
- בשורה התחתונה
אני לא מקודד. אני בקושי מכיר את זה מ- G ot, ואני לא זוכר כמה פעמים תהיתי מדוע adb לא יעבוד, רק כדי לגלות ששכחתי להפעיל ניפוי USB - שוב. יש לי לינוקס על קופסה כאן, אבל אני משתמש בה רק פעם כשאני במצב רוח לזרוק חצי-תריסר שאלות על ג'רי בפרק זמן של חמש דקות.
כמו כן, אין לי ציפור צוואר.
אז מה בעולם הספורט הרחב והרחב אני מבצע הורדת Xcode ב- MacBook Air שלי (לא חשוב שלא עד שהאביב הזה הייתי בחור של חלונות כל חיי), מסנכרן ממחזורי Git, אוסף קוד והבהבתי מערכת הפעלה. עד כה התעלמתי במודע - במיוחד בהתחשב בכך שביליתי 24 שעות בהתמודדות עם ילד חולה, בדאגה לחבר חולה, והכנות לקראת הוריקן מסתבר, תוך התעלמות מרובה ממקום עבודתי?
כנראה שיש לי בעיה עם הברקה. וכך, כך מצאתי את עצמי לאחרונה מניח את מערכת ההפעלה הנהדרת של מוזילה, המכונה גם "Gecko", על סמסונג Nexus S.
ברוך הבא לפרויקט Boot to Gecko.
כמו שאמרתי, אני לא מקודד. אבל אני כן אוהב להתעסק עם דברים. והצלחתי לעשות זאת, כמו שבנותיי הצעירות אוהבות לומר, הכל … על ידי … העצמי שלי. וגם אתה יכול.
רגע - למה לעזאזל אתה עושה את זה?
זו הראשונה בסדרה שאנחנו הולכים לקרוא לפרויקטים של סוף השבוע שלנו. דברים שאולי לא תנסו אחרת. אבל אם נוכל לעשות זאת, גם אתה יכול.
עם זאת, יש כמה דברים שאני לא מתכוון לעשות למענכם כאן. זו לא תהיה מבט מפורט כיצד לבנות ולהביז את פרויקט Boot to Gecko. אני הולך לתת לך את המכות הרחבות של החוויה שלי. למוזילה יש תיעוד מצוין, ואתה באמת צריך לקרוא את זה אם אתה מתכוון לנסות זאת. (סביר להניח שגם אני לא אשיג את הכל נכון בתרגום.)
הדבר האחר שאני לא מתכוון לעשות הוא להצביע על הבנייה של מישהו אחר, מהבהב למרות ClockworkMod. אתה יכול לחפש זאת בעצמך. מה שרציתי לעשות זה בעצם להרכיב את זה לבנות את עצמי כנגד הטלפון שלי בעצמי.
וכך זה מה שעשיתי.
קישורים שתצטרך
הגוגל הוא החבר שלך. חיפוש פשוט אחר "B2G" מצא את כל מה שהייתי צריך.
- מוזילה - אתחול Gecko (להסבר שאינו nerd של B2G)
- B2G ברשת המפתחים של מוזילה (כאן מתחילה העבודה האמיתית)
- בנייה והתקנה של Boot ל- Gecko
אוקיי - עכשיו מה לעזאזל אתה עושה את זה?
כדי לבנות מאפס, לדברי מוזילה, אתה צריך Mac או מחשב לינוקס. יש לי את שניהם כאן. אבל הוראות ה- Mac פשוט נראו קלות יותר. (אין בזה שום בושה, נכון?) אבל גם זה הגיוני. רוב הסיכויים שאם אתה מפעיל לינוקס, אתה יכול להתקין בקלות את כל הכלים המוצגים של מוזילה. אני? לא כל כך. אז מק זה היה.
זה באמת היה פשוט כמו זה בשבילי: התקן את Xcode מחנות האפליקציות של מק, ואז הפעל את המסוף והפעל כמה פקודות. עשיתי מספיק התעסקות באנדרואיד כדי להיות בסדר עם זה. ל- Mozilla יש סקריפט מעולה שמתקין את כל מה שאתה צריך. לאחר מכן אתה מסנכרן את מאגר ה- git, אוסף את הקוד ומבהק אותו למכשיר ה- Android שלך כמו כל ROM מותאם אישית אחר. (וגם של מוזילה יש תסריט לחלק האחרון הזה, מה שמקל על הדברים.)
מבחינת מכשיר היעד שעבורו אתה בונה, יש לך אפשרויות. מוזילה חילקה אותם לשלושה שכבות:
- דרגה 1: Otoro (סוג של מכשיר dev שמשתמש במוזילה); פנדבוארד; אמולטור ARM או x86; או בשולחן העבודה. לא מה שחיפשתי.
- רובד 2: Nexus S של סמסונג ו- Nexus S 4G. אני חש כאן נושא נפוץ. טלפונים הניתנים לניתוק בקלות, ומוצ'ילה טוענת כי אלה מרימים שינויים "באופן שניוני". יש לי Nexus S בשכיבה, אז בשביל זה הלכתי.
- נדבך 3: גלקסי S2 של סמסונג וגלקסי נקסוס. אנשים מתעסקים, אבל דרגה 2 היא הצילום הטוב ביותר שלך.
אז זה חצי מהקרב. עכשיו כדי להוריד, לקמפל ולהבהב B2G.
היו שם גם כמה אפשרויות. האחת היא לבנות על תיבת לינוקס. מוזילה מפרשת את כל הכלים הדרושים שתצטרך, אך היא לא מראה לך היכן להשיג אותם. אני להיות n00b לינוקס, זה דבר רע. עבור רוב שאר החנונים המשתמשים בהפגנה כזו או אחרת, זה צריך להיות פחות חשוב.
האפשרות האחרת היא לבנות על מק. ומוזילה הפכה את זה לפשוט בטיפשות.
אז איך עשית את זה?
שוב, עשיתי זאת ב- Mac. ובאמת היו רק כמה צעדים בסיסיים שאפילו הצוואר הלא מזוקן שלי הצליח לעקוב.
- הייתי צריך להתקין את Xcode, שהיא סביבת הפיתוח של מק.
- התקנתי את Homebrew עבור Mac.
- הפעלתי סקריפט שמוצילה סיפקה, שבדקה את שאר התנאים המוקדמים והבקשתי להתקין אותם במידת הצורך.
בשלב זה אציין כי נראה שההוראות של מוזילה מצביעות על כך שכל מה שנותר לי לעשות היה להתקין את Xcode ואז להריץ את הסקריפט; השאר ידאגו לעצמה. אבל הייתי צריך להתקין את Homebrew בכוחות עצמו. אני לא בטוח אם זה בגלל משהו שעשיתי (או לא) עשיתי, או מה. אבל ככה זה עבד בשבילי.
הבא: הבא את כל הקוד מגית. זה היה פשוט כמו להעתיק ולהדביק עוד כמה שורות לטרמינל. מגניב.
ואז: הידור.
עכשיו, כמה צעדים אחרונים לקח זמן. אני לא בטוח כמה זמן. הלכתי משם ועשיתי דברים. הכין קצת קפה. רץ כמה סידורים. כתב ספר. לקח זמן מה ב- MacBook Air הקטן שלי. ציפיתי לזה. זה לא פרויקט קשה מדי, אך הוא גם לא מהיר מדי. נתתי לדברים לנהל את מסלולם וסיימתי עם תמונה מהבהבת בספריית ה- B2G החדשה של ה- MBA שלי.
זמן להבהב
לכן. הגיע הזמן לתפוס את Nexus S. זה יצטרך כמובן לטעון אתחול לא נעול, והוא צריך להריץ כריך גלידת אנדרואיד 4.0. (מוזילה לא אומרת כלום על ג'לי בין, אבל גם אני צריך לעבוד איתו. לא מפתיע מדי.)
כבה את הטלפון למצב מהיר של fastboot וחבר אותו לחיבור. שום דבר שלא עשינו לפני כן עם אנדרואיד, מימין /
עכשיו, שוב, Mozilla's הפכו את זה ממש קל. לא טרחתי לתקן את משתני הנתיב שלי, כך ש- adb ו- fastboot בדרך כלל חיים בתוך תיקיה אחת ב- SDK אנדרואיד שלי, וזהו. אני יכול להתמודד עם זה. המוזילה כללה בצורה חכמה את כל זה. אבל אפילו טוב יותר הוא שזה יצר תסריט קטן שעושה הכל. הוא בודק אם טעינת האתחול אינה נעולה. זה מוחק את כל המחיצות שהוא צריך למחוק. ואז זה מהבהב את התמונות החדשות. לגמרי דיבורית. זה דבר שלא יכולתי לעשות בעצמי, אבל אני כלום אם לא לפעמים עצלן. לחיים, מוזילה.
אתחל מחדש, ובום. אנחנו התחלנו לגקו.
הרכיבו את זה ומה יש לכם?
ועכשיו, לפירות עמלנו.
בשורה התחתונה
אז זהו האתחול של מוזילה למוצ'ו של סמסונג נקסוס ס. למעשה, פרויקט לא רע. זה לקח כמה שעות, Nexus S עובד וקצת שטח בכונן הקשיח, אבל זה לא היה מסים יותר מדי על המוח. ברגע שיש לך הבזק לטלפון, אתה יכול לגבות אותו באמצעות התאוששות אנדרואיד בהתאמה אישית, ואז לבוא וללכת כרצונך.
הייתי נותן לזה 6 מתוך 10 בסולם הקושי, רק מכיוון שאני באמת לא יודע מה אני עושה בכל מה שקשור להרכבת קוד. אבל אני עוקב אחר ההוראות די טוב, ומוזילה עשתה דברים נחמדים וקלים. זה אחד שאתה יכול לנסות בעצמך.
אנו עשויים להרוויח עמלה לרכישות באמצעות הקישורים שלנו. למד עוד.