Content Shell for Linux

3,353 views
Skip to first unread message

Elliot Glaysher (Chromium)

unread,
Jan 20, 2012, 3:55:48 PM1/20/12
to Chromium-dev
I'm pleased to announce the linux content shell is now in a usable state for day to day webkit and content work. You can now build and execute the content_shell target.

image.png

It does not yet support the web inspector, though the devtools people have expressed interest in adding that feature. There are probably other things I've forgotten. Please file bugs on things I might have overlooked to erg@.

This shell uses the entire multiprocess content/ stack without depending on chrome/ and should be suitable for development on our web platform. Not only does it launch quickly, it takes three to four minutes less to do a clean build compared to chrome. When doing an n+1 build modifying a webkit source file, it takes five seconds less to build+link (24s vs 30s, both ninja shared library debug builds).

As part of an optional test protocol, we are pleased to present an amusing fact: a clean build of the content shell built with ninja takes two full minutes more than a full build of chrome from a year ago built with Makefiles and static linking.

-- Elliot
image.png

Jói Sigurðsson

unread,
Jan 23, 2012, 6:50:49 AM1/23/12
to e...@chromium.org, Chromium-dev
Very cool.  Content shell FTW!!

--
Chromium Developers mailing list: chromi...@chromium.org
View archives, change email options, or unsubscribe:
http://groups.google.com/a/chromium.org/group/chromium-dev

image.png

markc

unread,
Jan 24, 2012, 10:11:36 AM1/24/12
to Chromium-dev
Any links to build hints and how to us?

John Abd-El-Malek

unread,
Jan 24, 2012, 12:30:39 PM1/24/12
to ad...@opensrc.org, Chromium-dev, Jochen Eisinger
It's a standard chrome checkout and build. Just build the "content_shell" target instead of "chrome".

Another benefit of this is that Jochen is working on getting content_shell to run layout tests. This will allow us to run layout tests through multi-process chrome on webkit builders. Apart from letting us test what we actually ship, it'll let us avoid having to run layouttests in browser_tests and having to checkout the layout tests files there, as well as catch regressions _before_ webkit rolls. This will be helpful for tests which exercise non-sandbox compliant code (i.e. pass on webkit builders, fail in chrome) or web platform features which have part of their implementation in chrome (i.e. shared worker, appcache, indexeddb..).

On Tue, Jan 24, 2012 at 7:11 AM, markc <ad...@opensrc.org> wrote:
Any links to build hints and how to us?

Pavel Feldman

unread,
Jan 27, 2012, 9:27:54 AM1/27/12
to Chromium-dev, Elliot Glaysher (Chromium)
> It does not yet support the web inspector, though the devtools people have
> expressed interest in adding that feature. There are probably other things
> I've forgotten. Please file bugs on things I might have overlooked to erg@.

Just landed a patch that enables devtools in remote debugging mode
with content shell:

1) Run content shell as "content_shell --remote-debugging-port=9222"
2) Navigate your Chrome instance to localhost:9222, click the page
link
3) Enjoy remote debugging

--
Pavel

Jochen Eisinger

unread,
Jan 30, 2012, 5:36:36 PM1/30/12
to Chromium-dev
And I just landed a first version of a layoutTestController implementation. You can enable it with the command line flag --dump-render-tree. It supports dumpAsText, dumpChildFramesAsText, waitUntilDone, and notifyDone

-jochen
 

--
Pavel

Victoria Kirst

unread,
Feb 2, 2012, 1:59:26 PM2/2/12
to joc...@chromium.org, Chromium-dev
Very exciting!!

Can you elaborate on the plan for using content_shell with layout tests? Is the idea that content_shell will entirely replace DumpRenderTree (for Chromium's purposes), and if so are there target dates in mind for the switch?

Victoria

Jochen Eisinger

unread,
Feb 2, 2012, 2:18:33 PM2/2/12
to Victoria Kirst, Chromium-dev
On Thu, Feb 2, 2012 at 7:59 PM, Victoria Kirst <v...@chromium.org> wrote:
Very exciting!!

Can you elaborate on the plan for using content_shell with layout tests? Is the idea that content_shell will entirely replace DumpRenderTree (for Chromium's purposes), and if so are there target dates in mind for the switch?

In the end, I'd like to be able to run all layout tests on top of content_shell. I don't think replacing DRT with content_shell is the goal, however, I think eventually it could be upstreamed and running on one of the faster bots in parallel to DRT.

For Q1, I'm trying to get as many of the text only tests to pass as possible

-jochen

Dirk Pranke

unread,
Feb 2, 2012, 2:59:29 PM2/2/12
to joc...@chromium.org, Victoria Kirst, Chromium-dev
On Thu, Feb 2, 2012 at 11:18 AM, Jochen Eisinger <joc...@chromium.org> wrote:
>
>
> On Thu, Feb 2, 2012 at 7:59 PM, Victoria Kirst <v...@chromium.org> wrote:
>>
>> Very exciting!!
>>
>> Can you elaborate on the plan for using content_shell with layout tests?
>> Is the idea that content_shell will entirely replace DumpRenderTree (for
>> Chromium's purposes), and if so are there target dates in mind for the
>> switch?
>
>
> In the end, I'd like to be able to run all layout tests on top of
> content_shell. I don't think replacing DRT with content_shell is the goal,
> however, I think eventually it could be upstreamed and running on one of the
> faster bots in parallel to DRT.
>
> For Q1, I'm trying to get as many of the text only tests to pass as possible
>

I think it is likely that we will want to run both DRT and
content_shell for a long time; it'll be roughly analogous to webkit
and webkit2 on the other ports.

-- Dirk

Arunprasad Rajkumar

unread,
Nov 12, 2012, 9:50:33 AM11/12/12
to chromi...@chromium.org
Any idea to release it as a library work?.

Jochen Eisinger

unread,
Nov 12, 2012, 9:54:43 AM11/12/12
to ararun...@gmail.com, chromi...@chromium.org
Can you give a bit more context? I'm not sure I understand your question

-jochen

On Mon, Nov 12, 2012 at 3:50 PM, Arunprasad Rajkumar <ararun...@gmail.com> wrote:
Any idea to release it as a library work?.

Arunprasad Rajkumar

unread,
Nov 12, 2012, 11:33:46 AM11/12/12
to chromi...@chromium.org
Sorry for my unclear question.I mean to ask like is there any plan to release content shell as a library work like WebKit. So anyone can make use of chromium's robust splitter process browser architecture and can be embedded with in their application.

Jochen Eisinger

unread,
Nov 12, 2012, 1:37:32 PM11/12/12
to ararun...@gmail.com, chromi...@chromium.org
No, we don't plan to release such a library. There are, however, other
projects that might be suitable, such as CEF.

best
-jochen

On Mon, Nov 12, 2012 at 5:33 PM, Arunprasad Rajkumar
<ararun...@gmail.com> wrote:
> Sorry for my unclear question.I mean to ask like is there any plan to release content shell as a library work like WebKit. So anyone can make use of chromium's robust splitter process browser architecture and can be embedded with in their application.
>

Simon Hong

unread,
Nov 12, 2012, 1:44:30 PM11/12/12
to joc...@chromium.org, ararun...@gmail.com, chromi...@chromium.org
node webkit project will be a good reference for you.
https://github.com/rogerwang/node-webkit

kapil kumar

unread,
Oct 25, 2013, 9:58:35 AM10/25/13
to chromi...@chromium.org
Hi guys.
This is really helpful to start understanding and debugging Chromium basics flow.
On Ubuntu Linux i could build and run with/without dump-render-tree option and it works perfectly fine :)  (+1 for this)

But when i try to cross compile for ARM target and run on hardware it gives error : (i set +x bit also)

   ./content_shell: line 1: syntax error: unexpected word (expecting ")")

Is ARM build is not supported for Content Shell ? or problem with final linking of executable ?

FYI : i build chrome also, and its giving missing so libraries, which i am trying to figure out. But atleast it takes as executable.
Please provide your valuable inputs, let me know if misunderstood something.

TIA,
Kapil Kumar
Reply all
Reply to author
Forward
0 new messages