För några veckor sedan meddelade Google att Chrome OS kommer att vara klart för utgåva i höst. Som många Google-produkter är Chrome OS utformat för att vara en spelväxlare. Det finns inga skrivbordsapplikationer, som vi brukar tänka på dem. I stället händer hela användarupplevelsen i webbläsaren. Naturligtvis tycker vissa att det här är löjligt medan andra ser det som den naturliga utvecklingen av teknik. Succesen eller misslyckandet av Chrome OS kan till och med vara en viktig faktor för att bestämma huruvida den utvecklingen sker eller ej. Om du vill ta reda på dig själv här är hur du bygger Chrome OS-bilden.

Tekniskt sett sammanställer vi Chromium OS, men de två termerna är utbytbara inom ramen för denna guide.

Vad du kan förvänta

Vi bygger ett helt operativsystem, inte bara en enskild applikation, så du kan förvänta dig mer när det gäller steg som är involverade och tid till dess att du är klar. Det sagt är det inte en väldigt svår process, och det mesta av tiden kommer att vänta på att nedladdningar ska slutföras och kodas för att kompilera. Det skulle vara till hjälp att ha tidigare erfarenhet av att kompilera programvara på Linux, som vad som beskrivs här. Beroende på Internet- och CPU-hastighet kan processen ta var som helst från 1-4 timmar, men återigen används det mesta av att vänta på nedladdningar och kompilering.

förutsättningar

För att utföra byggnaden korrekt måste du köra en 64-bitars Linux-installation. 32 bitar stöds inte för närvarande som en byggmiljö, men det kan ändras i framtiden. Google rekommenderar Ubuntu för detta ändamål, så det är det operativsystem som antas av resten av den här guiden.

För att installera all programvara som behövs för att bygga Chrome OS korrekt, kör bara följande från en terminal:

 sudo apt-get install bison fakeroot flex g ++ g ++ - multilib gperf libapache2-mod-php5 libas2-dev libbz2-dev libcairo2-dev libdbus-glib-1-dev libgconf2-dev libgl1-mesa-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 subversion libcupsys2-dev libgnome-keyring-dev git-core-subversion 

En sak som inte finns i Ubuntus repositories är Googles depot-tools-paket, men det är en enkel nedladdning och extraktion bort. Klicka här för att få tar.gz-filen och extrahera den till din hemkatalog. Du borde nu ha en katalog som heter depot_tools i ditt hem.

Lägg bara till den platsen på din kommandosti med:

 # Lägg till detta till din ~ / .bashrc-fil för att göra det permanent export PATH = $ PATH: ~ / depot_tools 

Få källkoden

Vi ska skapa en krommapp i ditt hem för att hålla alla filer för den här byggnaden, ladda ner källkoden. Det kommer att hämtas några hundra megabyte, så det här kommer förmodligen att ta ett tag.

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

Bygga källan

I dessa nästa steg ska vi starta skript som faktiskt bygger koden i användbara binärer. Följande kommandon kommer att kompilera källan till en generell x86-processor, något som borde fungera ganska bra på din genomsnittliga CPU, men inte optimerad för någon speciell.

 cd ~ / krom / kromos.git / src / scripts ./make_chroot #Detta skapar grundmiljön, tar några minuter ./enter_chroot.sh #Enters basmiljö 

Vid denna tidpunkt bör du snabbt prata om följande:

Och nu för att utföra det verkliga köttet i denna process, bygga den faktiska.

 ./setup_board - board = x86-generic #Define arkitektur ./build_packages --board = x86-generic #Detta är den verkliga byggnaden. Kommer att ta några minuter åtminstone. 

Om allt gick bra är du redo för det sista steget ...

Generera bilden

Slutligen måste vi skapa en bild av det här systemet som vi kan använda på våra enheter eller virtuella maskiner. För att bygga basbilden, återvänd till ditt skal och skriv in ...

 ./build_image - board = x86-generic 

... och sitta ner för lite te medan du väntar.

När du är klar får du lite information om exakt var bildfilen placerades, tillsammans med några praktiska detaljer om hur du automatiskt skapar en mer specifik bildtyp för dina behov, till exempel USB, VMWare eller Virtualbox.

Innan du kan köra dessa skript måste du lämna chroot-miljön genom att skriva

 utgång 

I det här exemplet kommer vi att bygga för Virtualbox. Se till att du byter katalogplatsen med den på din dator.

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

Problem?

VMWare / Virtualbox : Tyvärr verkar det finnas en bugg i vissa versioner av image_to_vmware-skriptet som också påverkar image_to_virtualbox-skriptet. Om du får ett fel om "Kan inte öppna / usr / lib / shflags" måste du göra en snabb redigering av image_to_vmware.sh och ändra linjen

 sudo "$ TEMP_MNT" / postinst / dev / sda3 

till

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

.
USB : Det verkar att bilden_to_usb-skriptet inte gillar att ha en tilde (~) i flaggan. Om du får fel att säga att den inte kan hitta bilden, se till att du använder hela sökvägen i flaggan.

Kommer Chrome OS att bli nästa stora sak eller är det ett steg i fel riktning?