OLD | NEW |
1 # Ozone Overview | 1 # Ozone Overview |
2 | 2 |
3 Ozone is a platform abstraction layer beneath the Aura window system that is | 3 Ozone is a platform abstraction layer beneath the Aura window system that is |
4 used for low level input and graphics. Once complete, the abstraction will | 4 used for low level input and graphics. Once complete, the abstraction will |
5 support underlying systems ranging from embedded SoC targets to new | 5 support underlying systems ranging from embedded SoC targets to new |
6 X11-alternative window systems on Linux such as Wayland or Mir to bring up Aura | 6 X11-alternative window systems on Linux such as Wayland or Mir to bring up Aura |
7 Chromium by providing an implementation of the platform interface. | 7 Chromium by providing an implementation of the platform interface. |
8 | 8 |
9 ## Guiding Principles | 9 ## Guiding Principles |
10 | 10 |
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
111 | 111 |
112 The recommended way to add your platform to the build is as follows. This walks | 112 The recommended way to add your platform to the build is as follows. This walks |
113 through creating a new ozone platform called `foo`. | 113 through creating a new ozone platform called `foo`. |
114 | 114 |
115 1. Fork `chromium/src.git`. | 115 1. Fork `chromium/src.git`. |
116 2. Add your implementation in `ui/ozone/platform/` alongside internal platforms. | 116 2. Add your implementation in `ui/ozone/platform/` alongside internal platforms. |
117 3. Patch `ui/ozone/ozone_extra.gni` to add your `foo` platform. | 117 3. Patch `ui/ozone/ozone_extra.gni` to add your `foo` platform. |
118 | 118 |
119 ## Building with Ozone | 119 ## Building with Ozone |
120 | 120 |
121 ### ChromeOS - ([waterfall](https://build.chromium.org/p/chromium.chromiumos/wat
erfall?builder=Linux+ChromiumOS+Ozone+Builder&builder=Linux+ChromiumOS+Ozone+Tes
ts+%281%29&builder=Linux+ChromiumOS+Ozone+Tests+%282%29&reload=none)) | 121 ### Chrome OS - ([waterfall](https://build.chromium.org/p/chromium.chromiumos/wa
terfall?builder=Linux+ChromiumOS+Ozone+Builder&builder=Linux+ChromiumOS+Ozone+Te
sts+%281%29&builder=Linux+ChromiumOS+Ozone+Tests+%282%29&reload=none)) |
122 | 122 |
123 To build `chrome`, do this from the `src` directory: | 123 To build `chrome`, do this from the `src` directory: |
124 | 124 |
125 ``` shell | 125 ``` shell |
126 gn args out/OzoneChromeOS --args="use_ozone=true target_os=\"chromeos\"" | 126 gn args out/OzoneChromeOS --args="use_ozone=true target_os=\"chromeos\"" |
127 ninja -C out/OzoneChromeOS chrome | 127 ninja -C out/OzoneChromeOS chrome |
128 ``` | 128 ``` |
129 | 129 |
130 Then to run for example the X11 platform: | 130 Then to run for example the X11 platform: |
131 | 131 |
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
217 | 217 |
218 ``` shell | 218 ``` shell |
219 content_shell --ozone-platform=headless \ | 219 content_shell --ozone-platform=headless \ |
220 --ozone-dump-file=/tmp/ | 220 --ozone-dump-file=/tmp/ |
221 ``` | 221 ``` |
222 | 222 |
223 ### DRM/GBM | 223 ### DRM/GBM |
224 | 224 |
225 This is Linux direct rending with acceleration via mesa GBM & linux DRM/KMS | 225 This is Linux direct rending with acceleration via mesa GBM & linux DRM/KMS |
226 (EGL/GLES2 accelerated rendering & modesetting in GPU process) and is in | 226 (EGL/GLES2 accelerated rendering & modesetting in GPU process) and is in |
227 production use on [ChromeOS](https://www.chromium.org/chromium-os). | 227 production use on [Chrome OS](https://www.chromium.org/chromium-os). |
228 | 228 |
229 Note that all ChromeOS builds of Chrome will compile and attempt to use this. | 229 Note that all Chrome OS builds of Chrome will compile and attempt to use this. |
230 See [Building Chromium for Chromium OS](https://www.chromium.org/chromium-os/how
-tos-and-troubleshooting/building-chromium-browser) for build instructions. | 230 See [Building Chromium for Chromium OS](https://www.chromium.org/chromium-os/how
-tos-and-troubleshooting/building-chromium-browser) for build instructions. |
231 | 231 |
232 ### Cast | 232 ### Cast |
233 | 233 |
234 This platform is used for | 234 This platform is used for |
235 [Chromecast](https://www.google.com/intl/en_us/chromecast/). | 235 [Chromecast](https://www.google.com/intl/en_us/chromecast/). |
236 | 236 |
237 ### X11 | 237 ### X11 |
238 | 238 |
239 This platform provides support for the [X window system](https://www.x.org/). | 239 This platform provides support for the [X window system](https://www.x.org/). |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
287 ./out/OzoneCaca/content_shell | 287 ./out/OzoneCaca/content_shell |
288 ``` | 288 ``` |
289 | 289 |
290 Note: traditional TTYs are not the ideal browsing experience.<br/> | 290 Note: traditional TTYs are not the ideal browsing experience.<br/> |
291 ![Picture of a workstation using Ozone/caca to display the Google home page in
a text terminal](./images/ozone_caca.jpg) | 291 ![Picture of a workstation using Ozone/caca to display the Google home page in
a text terminal](./images/ozone_caca.jpg) |
292 | 292 |
293 ## Communication | 293 ## Communication |
294 | 294 |
295 There is a public mailing list: | 295 There is a public mailing list: |
296 [ozone-dev@chromium.org](https://groups.google.com/a/chromium.org/forum/#!forum/
ozone-dev) | 296 [ozone-dev@chromium.org](https://groups.google.com/a/chromium.org/forum/#!forum/
ozone-dev) |
OLD | NEW |