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 136 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
147 | 147 |
148 Then to run for example the headless platform: | 148 Then to run for example the headless platform: |
149 | 149 |
150 ``` shell | 150 ``` shell |
151 ./out/OzoneEmbedded/content_shell --ozone-platform=headless \ | 151 ./out/OzoneEmbedded/content_shell --ozone-platform=headless \ |
152 --ozone-dump-file=/tmp/ | 152 --ozone-dump-file=/tmp/ |
153 ``` | 153 ``` |
154 | 154 |
155 ### Linux Desktop - ([waterfall](https://build.chromium.org/p/chromium.fyi/build
ers/Ozone%20Linux/)) | 155 ### Linux Desktop - ([waterfall](https://build.chromium.org/p/chromium.fyi/build
ers/Ozone%20Linux/)) |
156 | 156 |
157 **Warning: Experimental support for Linux Desktop is available since m57 | 157 **Warning: Experimental support for Linux Desktop is available since m57 but |
158 but this is still [in development](https://crbug.com/295089) and currently has | 158 upstream support has always been a bit fragile. For now, development |
159 many bugs.** | 159 continues on the |
| 160 [ozone-wayland-dev](https://github.com/Igalia/chromium/tree/ozone-wayland-dev) |
| 161 branch.** |
160 | 162 |
161 To build `chrome`, do this from the `src` directory: | 163 To build `chrome`, do this from the `src` directory: |
162 | 164 |
163 ``` shell | 165 ``` shell |
164 gn args out/OzoneLinuxDesktop --args="use_ozone=true enable_package_mash_service
s=true" | 166 gn args out/OzoneLinuxDesktop --args="use_ozone=true enable_package_mash_service
s=true" |
165 ninja -C out/OzoneLinuxDesktop chrome | 167 ninja -C out/OzoneLinuxDesktop chrome |
166 ``` | 168 ``` |
167 Then to run for example the X11 platform: | 169 Then to run for example the X11 platform: |
168 | 170 |
169 ``` shell | 171 ``` shell |
170 ./out/OzoneLinuxDesktop/chrome --ozone-platform=x11 \ | 172 ./out/OzoneLinuxDesktop/chrome --ozone-platform=x11 --mus |
171 --mash \ | |
172 --window-manager=simple_wm | |
173 ``` | 173 ``` |
174 | 174 |
175 ### GN Configuration notes | 175 ### GN Configuration notes |
176 | 176 |
177 You can turn properly implemented ozone platforms on and off by setting the | 177 You can turn properly implemented ozone platforms on and off by setting the |
178 corresponding flags in your GN configuration. For example | 178 corresponding flags in your GN configuration. For example |
179 `ozone_platform_headless=false ozone_platform_gbm=false` will turn off the | 179 `ozone_platform_headless=false ozone_platform_gbm=false` will turn off the |
180 headless and DRM/GBM platforms. | 180 headless and DRM/GBM platforms. |
181 This will result in a smaller binary and faster builds. To turn ALL platforms | 181 This will result in a smaller binary and faster builds. To turn ALL platforms |
182 off by default, set `ozone_auto_platforms=false`. | 182 off by default, set `ozone_auto_platforms=false`. |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
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/). |
240 | 240 |
241 ### Wayland | 241 ### Wayland |
242 | 242 |
243 This platform provides support for the | 243 This platform provides support for the |
244 [Wayland](http://wayland.freedesktop.org/) display protocol. It was | 244 [Wayland](http://wayland.freedesktop.org/) display protocol. It was |
245 initially developed by Intel as | 245 initially developed by Intel as |
246 [a fork of chromium](https://github.com/01org/ozone-wayland) | 246 [a fork of chromium](https://github.com/01org/ozone-wayland) |
247 and then partially upstreamed. | 247 and then partially upstreamed. |
248 It is still actively being developed in the chromium tree, feel free to discuss | 248 It is still actively being developed on the |
| 249 [ozone-wayland-dev](https://github.com/Igalia/chromium/tree/ozone-wayland-dev) |
| 250 branch, feel free to discuss |
249 with us on freenode.net, `#ozone-wayland` channel or on `ozone-dev`. | 251 with us on freenode.net, `#ozone-wayland` channel or on `ozone-dev`. |
250 | 252 |
251 Below are some quick build & run instructions. It is assumed that you are | 253 Below are some quick build & run instructions. It is assumed that you are |
252 launching `chrome` from a Wayland environment such as `weston`. Execute the | 254 launching `chrome` from a Wayland environment such as `weston`. Execute the |
253 following commands: | 255 following commands: |
254 | 256 |
255 ``` shell | 257 ``` shell |
256 gn args out/OzoneWayland --args="use_ozone=true enable_package_mash_services=tru
e" | 258 gn args out/OzoneWayland --args="use_ozone=true enable_package_mash_services=tru
e" |
257 ninja -C out/OzoneWayland chrome | 259 ninja -C out/OzoneWayland chrome |
258 ./out/OzoneWayland/chrome --ozone-platform=wayland \ | 260 ./out/OzoneWayland/chrome --ozone-platform=wayland --mus |
259 --mash \ | |
260 --window-manager=simple_wm | |
261 ``` | 261 ``` |
262 | 262 |
263 ### Caca | 263 ### Caca |
264 | 264 |
265 This platform | 265 This platform |
266 draws graphical output to text using | 266 draws graphical output to text using |
267 [libcaca](http://caca.zoy.org/wiki/libcaca) | 267 [libcaca](http://caca.zoy.org/wiki/libcaca) |
268 (no GPU support; software | 268 (no GPU support; software |
269 rendering only). In case you ever wanted to test embedded content shell on | 269 rendering only). In case you ever wanted to test embedded content shell on |
270 tty. | 270 tty. |
(...skipping 16 matching lines...) Expand all 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 |