Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Thrust v0.7 #161

Closed
9 of 11 tasks
spolu opened this issue Jul 25, 2014 · 40 comments
Closed
9 of 11 tasks

Thrust v0.7 #161

spolu opened this issue Jul 25, 2014 · 40 comments
Assignees

Comments

@spolu
Copy link
Member

spolu commented Jul 25, 2014

ExoBrowser will undego a major overhaul to reach version v0.7. The changes include:

TODOS

  • move exo_browser to brightray [@spolu]
  • remove nodeJS event loop and expose API over unix domain sockets [@spolu]
  • move to <webview> support instead of ExoFrames [@spolu]
  • Mac OS X version (fix build errors)
  • Windows version (fix build errors & add code needed)
  • Add Menu Items API Expose Menu / Menu Item API #157
    • OSX
    • Aura
  • Add support for webkit draggable and frameless
  • Add support for TopBar Status Icon
  • Update UI to Aura Port ExoBrowser to Aura #142
@spolu
Copy link
Member Author

spolu commented Jul 25, 2014

The following branch is tracking the changes: https://github.com/breach/exo_browser/tree/wip-0.7

@miketheprogrammer
Copy link
Contributor

@spolu I am seeing some great code :). I however need to get a linux development environment set up. The build currently does not work on Mac, and my linux VM has too many errors trying to open the browser. (mostly due to lack of opengl support).

Gonna try to get my exo building on my Kali Linux box later. Its a very crappy machine that could not handle the full chromium build, but should def be able to handle the new brightray build.

@spolu
Copy link
Member Author

spolu commented Jul 30, 2014

Awesome! I'll try make it work on OSX before the end of the week! :)

@nearsyh
Copy link
Contributor

nearsyh commented Aug 4, 2014

There is no DEPS in this branch. So we use the latest chromium or the version in the master branch? Or we use brightray instead of chromium now?

@spolu
Copy link
Member Author

spolu commented Aug 4, 2014

See scripts/bootstrap.py it uses libchromiumcontent. No more long builds ;-)

@nearsyh
Copy link
Contributor

nearsyh commented Aug 4, 2014

Great! So how to build it now on mac?

@spolu
Copy link
Member Author

spolu commented Aug 5, 2014

First run the boostrap script:

./scripts/bootstrap.py 

Then generate build files with:

GYP_GENERATORS=ninja gyp --depth . exo_shell.gyp

Finally run ninja:

ninja -C out/Debug exo_shell

@spolu
Copy link
Member Author

spolu commented Aug 5, 2014

There are still some build errors on OSX. I'll try to fix them today

@spolu
Copy link
Member Author

spolu commented Aug 5, 2014

@nearsyh should build now. Still some errors when running... Some .gyp file tweaking is still required (frameworks and resources are not properly found by the app at runtime)

@nearsyh
Copy link
Contributor

nearsyh commented Aug 8, 2014

When I run on mac with the following command

open ExoShell.app

it outputs

LSOpenURLsWithRole() failed with error -10810
.

And -10810 is referenced as unknown error in Apple's document. Does anyone have any idea about how to fix this?
Also, if I run the executable in the app directory directly, it will print this :

[0808/203848:FATAL:content_main_runner.cc(751)] Check failed: base::i18n::InitializeICU().

@spolu
Copy link
Member Author

spolu commented Aug 9, 2014

The later error needs to be addressed first. It is related to the fact that the executable can't find icutl.dat in its resources... Probably due to some erroneous build config ATM since the file is in the Resources directory of the bundle.

@spolu
Copy link
Member Author

spolu commented Aug 9, 2014

Anybody willibg to take a stab at it (I'm on holidays and I only have a machine on Linux with me)

@deepak1556
Copy link

@spolu was able to build this branch successfully on linux, but have to run exo_shell with --disable-setuid-sanbox ATM . any idea how atom-shell is able to run without this problem ?

@morganrallen
Copy link
Contributor

Sorry if this is a terrible question.. but did you try running exo_shell --disable-setuid-sandbox? I also have a shared library path problem so my full command line is

LD_LIBRARY_PATH=out/Debug/ ./out/Debug/exo_shell --disable-setuid-sandbox

@deepak1556
Copy link

@morganrallen i just run exo_shell from /out/Debug with that flag

@morganrallen
Copy link
Contributor

Get any output?

@morganrallen
Copy link
Contributor

Another thought. If it appears to be running but doing nothing. From another tab or shell run node test.js

@morganrallen
Copy link
Contributor

test.js will be in the root project directory

@spolu
Copy link
Member Author

spolu commented Aug 14, 2014

Well exoshell will be used as a library in other projects

@deepak1556
Copy link

@morganrallen 👍

@miketheprogrammer
Copy link
Contributor

Latest version of wip0.7 finally builds and runs for me on OSX.

@miketheprogrammer
Copy link
Contributor

@spolu I know we have alot of work to do but have you given any thought to security. Exposing ExoBrowser over rpc, with a simple JSON protocol that is open source breaks opens Exo up to a variety of attacks.

I examined a bunch of different ideas however none really seem to pan out from a useability perspective.

Let me know if you feel this is a concern for the short term, or if this is more of a concern for the long term. Security for an Alpha version, developer oriented browser, that will probably not be useable by the general public for at least another year, seems a waste of time, but I feel at least thought should be put in to understanding how we will and can secure it.

@spolu
Copy link
Member Author

spolu commented Aug 23, 2014

Which kind of attacks do you have in mind? Listening on a local socket with the proper rights set should be rather secure, no?

@miketheprogrammer
Copy link
Contributor

I am no security expert. I assume you are correct, if we lock it down to local unix sockets, with proper rights then yes, we have delegated the problem to the user. I simply was considering the case that the User downloads some software, that software happens to have a detection for whether or not the user has exobrowser installed. Iterates of each of the available sockets and tries to execute an exobrowser command against it.

@spolu
Copy link
Member Author

spolu commented Aug 27, 2014

Well in that case, the program can also erase the entire user home directory :)

@miketheprogrammer
Copy link
Contributor

@spolu :) yea true.

@nearsyh
Copy link
Contributor

nearsyh commented Oct 7, 2014

I tried to build the new version of Mac and found two kinds of errors.

One is "content/public/content/web_contents_view.h" is not found. This error can be fixed after removing related include statements. Will this header be used later?

The other one is caused by '-Werror' and some unused variable warnings. I cannot find where the flag is introduced, but removing this flag from out/Debug/obj/exo_shell_lib.ninja works.

@spolu
Copy link
Member Author

spolu commented Oct 7, 2014

Hey, working on it as we speak!

@miketheprogrammer
Copy link
Contributor

Sounds good. I will get back on to menus asap however I think having your
core code done first will be essential.
On Oct 7, 2014 12:22 PM, "Stanislas Polu" notifications@github.com wrote:

Hey, working on it as we speak!


Reply to this email directly or view it on GitHub
#161 (comment).

@spolu
Copy link
Member Author

spolu commented Oct 10, 2014

WiP implementation of Menus available here: https://github.com/breach/exo_shell/tree/wip-0.7
(cc @miketheprogrammer)

@spolu spolu changed the title ExoBrowser v0.7 Thrust v0.7 Oct 10, 2014
@spolu
Copy link
Member Author

spolu commented Oct 10, 2014

Renaming issue as "Thrust v0.7"
Will probably merge v0.7 branch before this issue is entirely resolved

@ken-okabe
Copy link

Currently, the project name confusion occurs, so please allow me to confirm.

This repo is breach.thrust and the README.md titles ExoShell now.

I tried breach.core today, and found exo-browser side by side.

Did you change the project name

ExoBrowser -> ExoShell -> thrust ??

Thanks.

@spolu
Copy link
Member Author

spolu commented Oct 13, 2014

As mentioned above. All work related to v0.7 now renamed thrust is happening here: https://github.com/breach/thrust/tree/wip-0.7

@spolu
Copy link
Member Author

spolu commented Oct 13, 2014

Yes. The project name went from ExoBrowser to ExoShell to Thrust.

@ken-okabe
Copy link

Thanks spolu, now everything is clear to me.

@spolu
Copy link
Member Author

spolu commented Oct 13, 2014

No problem! happy to help you @kenokabe. I know that things are a little unclear now with names, etc... It will eventually get better :)

@spolu
Copy link
Member Author

spolu commented Oct 14, 2014

wip-0.7 was merged with updated README.md and overall renaming to make things clearer.

@spolu
Copy link
Member Author

spolu commented Oct 21, 2014

Intial windows support! Yay! 👍
screenshot from 2014-10-21 07 42 44

@miketheprogrammer
Copy link
Contributor

Yayyyyy
On Oct 21, 2014 10:43 AM, "Stanislas Polu" notifications@github.com wrote:

Intial windows support! Yay! [image: 👍]
[image: screenshot from 2014-10-21 07 42 44]
https://cloud.githubusercontent.com/assets/15067/4720366/9e04c118-5930-11e4-98b8-af34c567533e.png


Reply to this email directly or view it on GitHub
#161 (comment).

@spolu
Copy link
Member Author

spolu commented Oct 27, 2014

All remaining items have been added to the Roadmap (https://github.com/breach/thrust#roadmap)
Issues will be created if not already existing

@spolu spolu closed this as completed Oct 27, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants