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 142 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
153 ``` | 153 ``` |
154 | 154 |
155 Then to run for example the headless platform: | 155 Then to run for example the headless platform: |
156 | 156 |
157 ``` shell | 157 ``` shell |
158 ./out/OzoneEmbedded/content_shell --disable-setuid-sandbox \ | 158 ./out/OzoneEmbedded/content_shell --disable-setuid-sandbox \ |
159 --ozone-platform=headless \ | 159 --ozone-platform=headless \ |
160 --ozone-dump-file=/tmp/ | 160 --ozone-dump-file=/tmp/ |
161 ``` | 161 ``` |
162 | 162 |
163 ### Linux Desktop - ([bug](http://crbug.com/295089)) | 163 ### Linux Desktop - ([waterfall](https://build.chromium.org/p/chromium.fyi/build ers/Ozone%20Linux/)) |
164 Support for Linux Desktop is currently [in-progress](http://crbug.com/295089). | |
164 | 165 |
165 This is not supported by any of the in-tree platforms. Please see above and try | 166 The following targets are currently working: |
166 a ChromeOS or embedded build for now. | 167 |
168 * various unit tests | |
169 * `content_shell` | |
tonikitoo
2016/11/08 13:09:21
lets omit content_shell for now, since it is build
fwang
2016/11/08 13:12:18
OK
| |
170 * `chrome` | |
171 | |
172 To build `chrome`, do this from the `src` directory: | |
173 | |
174 ``` shell | |
175 gn args out/OzoneLinuxDesktop --args="use_ozone=true enable_package_mash_service s=true" | |
176 ninja -C out/OzoneLinuxDesktop chrome | |
177 ``` | |
178 Then to run for example the X11 platform: | |
179 | |
180 ``` shell | |
181 ./out/OzoneLinuxDesktop/chrome --ozone-platform=x11 \ | |
182 --disable-setuid-sandbox \ | |
183 --mash | |
184 ``` | |
185 | |
186 Note: You may need to apply [this patch](https://codereview.chromium.org/2485673 002/) to avoid missing ash resources during chrome execution. | |
167 | 187 |
168 ### GN Configuration notes | 188 ### GN Configuration notes |
169 | 189 |
170 You can turn properly implemented ozone platforms on and off by setting the | 190 You can turn properly implemented ozone platforms on and off by setting the |
171 corresponding flags in your GN configuration. For example | 191 corresponding flags in your GN configuration. For example |
172 `ozone_platform_headless=false ozone_platform_gbm=false` will turn off the | 192 `ozone_platform_headless=false ozone_platform_gbm=false` will turn off the |
173 headless and DRM/GBM platforms. | 193 headless and DRM/GBM platforms. |
174 This will result in a smaller binary and faster builds. To turn ALL platforms | 194 This will result in a smaller binary and faster builds. To turn ALL platforms |
175 off by default, set `ozone_auto_platforms=false`. | 195 off by default, set `ozone_auto_platforms=false`. |
176 | 196 |
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
235 ### Wayland | 255 ### Wayland |
236 | 256 |
237 This platform provides support for the | 257 This platform provides support for the |
238 [Wayland](http://wayland.freedesktop.org/) display protocol. It was | 258 [Wayland](http://wayland.freedesktop.org/) display protocol. It was |
239 initially developed by Intel as | 259 initially developed by Intel as |
240 [a fork of chromium](https://github.com/01org/ozone-wayland) | 260 [a fork of chromium](https://github.com/01org/ozone-wayland) |
241 and then partially upstreamed. | 261 and then partially upstreamed. |
242 It is still actively being developed in the chromium tree, feel free to discuss | 262 It is still actively being developed in the chromium tree, feel free to discuss |
243 with us on freenode.net, `#ozone-wayland` channel or on `ozone-dev`. | 263 with us on freenode.net, `#ozone-wayland` channel or on `ozone-dev`. |
244 | 264 |
245 In order to run an Ozone build of `chrome`, you currently (2016/10/28) | 265 Below are some quick build & run instructions. It is assumed that you are |
246 need to compile it for ChromeOS, where software rendering is not allowed. | 266 launching `chrome` from a Wayland environment such as `weston`. Apply |
247 Also, accelerated rendering only works in Ozone/Wayland when the UI and GPU | 267 [this patch](https://codereview.chromium.org/2485673002/) and execute the |
248 components are running in the same process. Below are some quick build & run | 268 following commands: |
249 instructions. It is assumed that you are launching `chrome` from a Wayland | |
250 environment such as `weston`. | |
251 | 269 |
252 ``` shell | 270 ``` shell |
253 gn args out/OzoneWayland --args="use_ozone=true ozone_platform_wayland=true targ et_os=\"chromeos\"" | 271 gn args out/OzoneWayland --args="use_ozone=true enable_package_mash_services=tru e" |
254 ninja -C out/OzoneWayland chrome | 272 ninja -C out/OzoneWayland chrome |
255 ./out/OzoneWayland/chrome --ozone-platform=wayland \ | 273 ./out/OzoneWayland/chrome --ozone-platform=wayland \ |
256 --in-process-gpu \ | 274 --mash \ |
257 --disable-setuid-sandbox | 275 --disable-setuid-sandbox |
tonikitoo
2016/11/08 13:09:21
can we launch with it, if we build the 'chrome_san
fwang
2016/11/08 13:12:18
I guess so. But I think the sandbox and all these
| |
258 ``` | 276 ``` |
259 | 277 |
260 ### Caca | 278 ### Caca |
261 | 279 |
262 This platform | 280 This platform |
263 draws graphical output to text using | 281 draws graphical output to text using |
264 [libcaca](http://caca.zoy.org/wiki/libcaca) | 282 [libcaca](http://caca.zoy.org/wiki/libcaca) |
265 (no GPU support; software | 283 (no GPU support; software |
266 rendering only). In case you ever wanted to test embedded content shell on | 284 rendering only). In case you ever wanted to test embedded content shell on |
267 tty. | 285 tty. |
(...skipping 16 matching lines...) Expand all Loading... | |
284 ./out/OzoneCaca/content_shell --disable-setuid-sandbox | 302 ./out/OzoneCaca/content_shell --disable-setuid-sandbox |
285 ``` | 303 ``` |
286 | 304 |
287 Note: traditional TTYs are not the ideal browsing experience.<br/> | 305 Note: traditional TTYs are not the ideal browsing experience.<br/> |
288 [![Picture of a workstation using Ozone/caca to display the Google home page i n a text terminal](https://www.chromium.org/_/rsrc/1396307876689/developers/desi gn-documents/ozone/IMG_20140331_151619.jpg?height=240&width=320)](https://ww w.chromium.org/developers/design-documents/ozone/IMG_20140331_151619.jpg?attredi rects=0) | 306 [![Picture of a workstation using Ozone/caca to display the Google home page i n a text terminal](https://www.chromium.org/_/rsrc/1396307876689/developers/desi gn-documents/ozone/IMG_20140331_151619.jpg?height=240&width=320)](https://ww w.chromium.org/developers/design-documents/ozone/IMG_20140331_151619.jpg?attredi rects=0) |
289 | 307 |
290 ## Communication | 308 ## Communication |
291 | 309 |
292 There is a public mailing list: | 310 There is a public mailing list: |
293 [ozone-dev@chromium.org](https://groups.google.com/a/chromium.org/forum/#!forum/ ozone-dev) | 311 [ozone-dev@chromium.org](https://groups.google.com/a/chromium.org/forum/#!forum/ ozone-dev) |
OLD | NEW |