Skip to content

Edge distributed web engine. Part of web engine processes are offloaded to a powerful devices and only graphical results are processed in local devices. This way, we overcome both CPU limitations and memory limitations of the low-end local devices

License

BSD-3-Clause, BSD-3-Clause licenses found

Licenses found

BSD-3-Clause
LICENSE
BSD-3-Clause
LICENSE.chromium_os
Notifications You must be signed in to change notification settings

ComputerStudyBoard/Castanets

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

How to build & run castanets

Install depot_tools

Clone the depot_tools repository:

$ git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git

Add depot_tools to the end of your PATH (you will probably want to put this in your ~/.bashrc or ~/.zshrc). Assuming you cloned depot_tools to /path/to/depot_tools:

$ export PATH="$PATH:/path/to/depot_tools"

Get the code

Create a chromium directory for the checkout and change to it (you can call this whatever you like and put it wherever you like, as long as the full path has no spaces):

$ mkdir path/to/castanets && cd path/to/castanets

Download the code using the command below.

$ git clone -b castanets_69 https://github.com/Samsung/castanets src

If you did not specify the 'src' directory name at the end of the command, the source code would have been downloaded to the 'castanets' directory. In this case, change the directory name.

$ mv castanets src

Install additional build dependencies

$ build/install-build-deps.sh

Run the sync

We need a gclient configuration. To create a .gclient file, run:

$ build/create_gclient.sh

Once you've run install-build-deps at least once, you can now run the Chromium-specific sync, which will download additional binaries and other things you might need:

$ gclient sync --with_branch_head

Setting up the build

Chromium uses Ninja as its main build tool along with a tool called GN to generate .ninja files. You can create any number of build directories with different configurations. To create a build directory, run:

$ gn gen out/Default

You set build arguments on a build directory by typing:

$ gn args out/Default

This will bring up an editor. Type build args into that file like this:

enable_castanets=true
enable_nacl=false
is_debug=false

For faster builds, the below can also be added in out/Default/args.gn

remove_webcore_debug_symbols=true
is_component_build=true
use_jumbo_build=true

Build castanets

Build castanets (the “chrome” target) with Ninja using the command:

$ autoninja -C out/Default chrome

Run castanets in a local machine (test only)

Start first chrome instance: Browser Process

$ out/Default/chrome <URL>

Start second chrome instance: Utility Process (Network Service)

$ out/Default/chrome --type=utility --server-address=127.0.0.1

Start third chrome instance: Renderer Process

$ out/Default/chrome --type=renderer --server-address=127.0.0.1

Run castanets in a distributed environment

Device A: Browser Process

$ out/Default/chrome <URL>

Device B: Utility Process (Network Service)

$ out/Default/chrome --type=utility --server-address=<IP ADDR>

Device B: Renderer Process

$ out/Default/chrome --type=renderer --server-address=<IP ADDR>

About

Edge distributed web engine. Part of web engine processes are offloaded to a powerful devices and only graphical results are processed in local devices. This way, we overcome both CPU limitations and memory limitations of the low-end local devices

Resources

License

BSD-3-Clause, BSD-3-Clause licenses found

Licenses found

BSD-3-Clause
LICENSE
BSD-3-Clause
LICENSE.chromium_os

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published