The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги ]



"Раздел полезных советов: Сборка ChromiumOS из исходных текст..."
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Раздел полезных советов: Сборка ChromiumOS из исходных текст..."  +/
Сообщение от auto_tips (??) on 05-Дек-17, 04:35 
Доступный в исходных текстах ChromiumOS главным образом отличается отсутствием элементов брендинга ChromeOS и компонентов DRM для просмотра защищённого контента.

Для сборки вначале нужно клонировать репозиторий с инструментарием:

   git clone https://chromium.googlesource.com/chromium/tools/depot_tools...
   export PATH=$PATH:$PWD/depot_tools

После чего можно приступить к загрузке и сборки исходных текстов ChromiumOS (сборку осуществляем для целевой платформы amd64-generic, при низкой скорости сети или недосаточном свободном дисковом пространстве в "repo init" также можно указать опцию "-g minilayout" для загрузки минимально необходимого набора кода):

   mkdir chromiumos
   cd chromiumos
   repo init -u https://chromium.googlesource.com/chromiumos/manifest.git --repo-url https://chromium.googlesource.com/external/repo.git -g minilayout
   repo sync -j75
   cros_sdk
   export BOARD=amd64-generic
   ./setup_board --board=${BOARD}
   ./build_packages --board=${BOARD}
   ./build_image --board=${BOARD} --boot_args "earlyprintk=serial,keep console=tty0" --noenable_rootfs_verification test
   ./image_to_vm.sh --board=${BOARD} --test_image


Для запуска окружения  ChromiumOS  можно воспользоваться командной cros_start_vm:
cros_sdk

   ./bin/cros_start_vm --image_path=../build/images/${BOARD}/latest/chromiumos_qemu_image.bin --board=${BOARD}

но при использовании cros_start_vm наблюдаются мешающие полноценной работе ограничения, такие как невозможность перенаправить графический вывод через VNC. Поэтому будем запускать ChromiumOS при помощи QEMU и виртуального GPU Virglrenderer.

Установим сборочные зависимости (список для Ubuntu 17.10):

    sudo apt install autoconf libaio-dev libbluetooth-dev libbrlapi-dev \
    libbz2-dev libcap-dev libcap-ng-dev libcurl4-gnutls-dev libepoxy-dev \
    libfdt-dev \
    libgbm-dev libgles2-mesa-dev libglib2.0-dev libgtk-3-dev libibverbs-dev \
    libjpeg8-dev liblzo2-dev libncurses5-dev libnuma-dev librbd-dev librdmacm-dev \
    libsasl2-dev libsdl1.2-dev libsdl2-dev libseccomp-dev libsnappy-dev l\
    ibssh2-1-dev libspice-server-dev libspice-server1 libtool libusb-1.0-0 \
    libusb-1.0-0-dev libvde-dev libvdeplug-dev libvte-dev libxen-dev valgrind \
    xfslibs-dev xutils-dev zlib1g-dev libusbredirhost-dev usbredirserver

Соберём Virglrenderer, который позволяет задействовать виртуальный GPU и использовать из гостевой системы графические возможности хост-системы, в том числе аппаратное ускорение для OpenGL. Virglrenderer является не обязательным, если не нужно ускорение вывода графики можно обойтись без сборки  Virglrenderer и убрать из строки запуска QEMU "virgl".

   git clone git://git.freedesktop.org/git/virglrenderer
   cd virglrenderer
   ./autogen.sh
   make -j7
   sudo make install

Собираем QEMU для целевой платформы x86_64:

   git clone git://git.qemu-project.org/qemu.git
   mkdir -p qemu/build
   cd qemu/build
   ../configure --target-list=x86_64-softmmu --enable-gtk --with-gtkabi=3.0 \
   --enable-kvm --enable-spice --enable-usb-redir --enable-libusb --enable-virglrenderer --enable-opengl
   make -j7
   sudo make install

Запускаем ChromiumOS в QEMU с использованием драйверов virtio (Linux-ядро хост-системы должно быть собрано с опциями CONFIG_DRM_VIRTIO, CONFIG_VIRT_DRIVERS и CONFIG_VIRTIO_XXXX):

   cd chromiumos
   /usr/local/bin/qemu-system-x86_64 \
     -enable-kvm \
     -m 2G \
     -smp 4 \
     -hda src/build/images/amd64-generic/latest/chromiumos_qemu_image.bin \
     -vga virtio \
     -net nic,model=virtio \
     -net user,hostfwd=tcp:127.0.0.1:9222-:22 \
     -usb -usbdevice keyboard \
     -usbdevice mouse \
     -device virtio-gpu-pci,virgl \
     -display gtk,gl=on

URL: https://www.collabora.com/news-and-blog/blog/2017/12/01/buil.../
Обсуждается: http://www.opennet.ru/tips/info/3040.shtml

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Сборка ChromiumOS из исходных текстов для запуска в QEMU"  +/
Сообщение от Аноним (??) on 05-Дек-17, 04:35 
А для чего нужна хромось в QEMU?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Сборка ChromiumOS из исходных текстов для запуска в QEMU"  +/
Сообщение от Аноним (??) on 05-Дек-17, 13:58 
Правильный вопрос: зачем вообще нужна хромось?
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

4. "Сборка ChromiumOS из исходных текстов для запуска в QEMU"  +/
Сообщение от kamiram on 09-Дек-17, 03:43 
да нет. для чегота мелкого легкого а ля нетбук - очень даже.
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

5. "Сборка ChromiumOS из исходных текстов для запуска в QEMU"  +/
Сообщение от Anonimous on 09-Дек-17, 04:07 
Флудеры! я вполне конкретный вопрос задал, мне интересны юзкейсы для QEMU. Ну кроме "на посмотреть" и "потому что могу!". Подозреваю, что в qemu будут проблемы с ускорением графики, ютуб да и просто веб-приложения будут ощутимо лагать по сравнению с голым железом. Собственно отсюда и вопрос, м.б. её можно использовать для чего-то ещё...
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

8. "Сборка ChromiumOS из исходных текстов для запуска в QEMU"  +/
Сообщение от EHLO on 11-Дек-17, 10:01 
> Флудеры! я вполне конкретный вопрос задал, мне интересны юзкейсы для QEMU.

На наброс похоже потому что.
Для разработки и тестирования, _очевидно_.
Но можно и терминалы и бездисковые киоски всякие.
Ускорение в QEMU есть, SPICE и QXL драйвер в ядре и иксах, будет virgl еще для 3D.

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

3. "Сборка ChromiumOS из исходных текстов для запуска в QEMU"  +/
Сообщение от foobar (??) on 08-Дек-17, 08:39 
Зря наговариваете. Популярность этой ОС идет вверх, особенно в корпоративном секторе.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема


  Закладки на сайте
  Проследить за страницей
Created 1996-2017 by Maxim Chirkov  
ДобавитьРекламаВебмастеруГИД  
Hosting by Ihor