Een paar weken geleden heeft Google aangekondigd dat Chrome OS dit najaar beschikbaar zal zijn voor de release. Net als veel Google-producten is Chrome OS ontworpen om een ​​game-wisselaar te worden. Er zijn geen desktoptoepassingen, zoals we ze gewoonlijk denken. In plaats daarvan gebeurt de volledige gebruikerservaring binnen de browser. Natuurlijk denken sommige mensen dat dit belachelijk is, terwijl anderen het zien als de natuurlijke evolutie van technologie. Het succes of falen van Chrome OS kan zelfs een belangrijke factor zijn bij het bepalen of die evolutie zich voordoet. Als u het zelf wilt weten, kunt u het volgende doen om de Chrome OS-afbeelding te maken.

Technisch gezien zijn we bezig met het samenstellen van Chromium OS, maar de twee termen zijn uitwisselbaar binnen het bereik van deze handleiding.

Wat te verwachten

We bouwen een volledig besturingssysteem, niet alleen een individuele toepassing, dus u kunt meer verwachten in termen van betrokken stappen en tijd tot voltooiing. Dat gezegd hebbende, het is geen erg moeilijk proces, en meestal zal het wachten zijn op het voltooien van downloads en het coderen om te compileren. Het zou nuttig zijn om eerdere ervaring met het compileren van software op Linux te hebben, zoals wat hier wordt beschreven. Afhankelijk van het internet en de CPU-snelheid kan dit proces 1-4 uur duren, maar nogmaals, het grootste deel van die tijd wordt besteed aan het wachten op downloads en compilatie.

voorwaarden

Om de build correct uit te voeren, moet u een 64-bits Linux-installatie uitvoeren. 32-bits wordt momenteel niet ondersteund als een build-omgeving, maar dat kan in de toekomst veranderen. Google beveelt Ubuntu voor dit doel aan, dus dat is het besturingssysteem dat door de rest van deze handleiding wordt verondersteld.

Om alle software te installeren die nodig is om Chrome OS correct te bouwen, voert u gewoon het volgende uit vanaf een terminal:

 sudo apt-get installeren bison fakeroot flex g ++ g ++ - multilib gperf libapache2-mod-php5 libasound2-dev libbz2-dev libcairo2-dev libdbus-glib-1-dev libgconf2-dev libglibas-dev libglu1-mesa-dev libglib2.0 -dev libgtk2.0-dev libjpeg62-dev libnspr4-dev libnss3-dev libpam0g-dev libsqlite3-dev libxslt1-dev libxss-dev mesa-common-dev msttcorefonts patch perl pkg-config python python2.6-dev rpm subversie libcupsys2-dev libgnome-keyring-dev git-core subversion 

Een ding dat niet in de repositories van Ubuntu staat, is het depot-tools-pakket van Google, maar dat is een eenvoudige download en extractie. Klik hier om het bestand tar.gz te downloaden en het uit te pakken in je thuismap. U zou nu een directory met de naam depot_tools bij u thuis moeten hebben.

Voeg deze locatie nu gewoon toe aan uw opdrachtpad met:

 #Voeg dit toe aan je ~ / .bashrc-bestand om het permanent te exporteren. PATH = $ PATH: ~ / depot_tools 

De broncode verkrijgen

We gaan een Chrome- map maken in uw huis om alle bestanden voor deze build te bewaren en vervolgens de broncode downloaden. Het zal een paar honderd megabytes downloaden, dus dit zal waarschijnlijk een tijdje duren.

 mkdir ~ / chrome cd ~ / chrome gclient config http://src.chromium.org/git/chromiumos.git gclient sync 

De bron opbouwen

In deze volgende stappen gaan we de scripts starten die de code daadwerkelijk in bruikbare binaries zullen bouwen. De volgende opdrachten zullen de bron compileren voor een generieke x86-processor, iets dat redelijk goed zou moeten werken op je gemiddelde CPU, maar niet geoptimaliseerd voor een bepaalde CPU.

 cd ~ / chrome / chromiumos.git / src / scripts ./make_chroot #Dit maakt de basisomgeving, zal een paar minuten duren ./enter_chroot.sh #Enters base environment 

Op dit punt zou u een prompt moeten hebben die lijkt op het volgende:

En nu om het echte vlees van dit proces uit te voeren, de feitelijke build.

 ./setup_board --board = x86-generic #Define architecture ./build_packages --board = x86-generic #Dit is de echte build. Zal in ieder geval een paar minuten duren. 

Als alles goed is gegaan, ben je klaar voor de laatste stap ...

De afbeelding genereren

Ten slotte moeten we een afbeelding van dit systeem maken die we kunnen gebruiken op onze apparaten of virtuele machines. Om de basisafbeelding te bouwen, keer je terug naar je shell en voer je ...

 ./build_image --board = x86-generiek 

... en wacht een moment op thee.

Als u klaar bent, krijgt u informatie over waar het beeldbestand precies is geplaatst, plus enkele handige details over hoe u automatisch een specifieker beeldtype voor uw behoeften kunt genereren, zoals USB, VMWare of Virtualbox.

Voordat u die scripts kunt uitvoeren, moet u de chroot-omgeving afsluiten door te typen

 Uitgang 

In dit voorbeeld gaan we bouwen voor Virtualbox. Zorg ervoor dat u de directorylocatie vervangt door die op uw systeem.

 ./image_to_virtualbox.sh \ --from = ~ / chrome / chromiumos.git / src / build / images / x86-generic / YOURIMAGELOCATION \ --to = ~ / chromeOS.vdi 

Problemen?

VMWare / Virtualbox : Helaas lijkt er een bug te zijn in sommige versies van het image_to_vmware script dat ook van invloed is op het script image_to_virtualbox. Als u een foutmelding krijgt over "Can not open / usr / lib / shflags", dan moet u een snelle bewerking van image_to_vmware.sh uitvoeren en de regel wijzigen

 sudo "$ TEMP_MNT" / postinst / dev / sda3 

naar

 sudo "$ TEMP_MNT" / postinst / dev / sda3 -postcommit 

.
USB : Het lijkt erop dat het script image_to_usb niet graag een tilde (~) heeft in de van- vlag. Als u fouten tegenkomt die zeggen dat het de afbeelding niet kan vinden, zorg er dan voor dat u het volledige pad in de van- vlag gebruikt.

Zal Chrome OS het volgende grote ding zijn of is het een stap in de verkeerde richting?