nwjs / chromium.src Goto Github PK
View Code? Open in Web Editor NEWChromium codebase with NW.js modifications. Based on https://chromium.googlesource.com/chromium/src.git
License: BSD 3-Clause "New" or "Revised" License
Chromium codebase with NW.js modifications. Based on https://chromium.googlesource.com/chromium/src.git
License: BSD 3-Clause "New" or "Revised" License
Why do we maintain this src repo and not move everything into nwjs/patches is there a reason for that ? else i would start bisecting this and move the patches over so we can more easy sync with electron and chromium it self without maintaining a repo that contains edited source.
please explain your internal workflow so that we can discuess alternatives i want a single source for chromium electron nwjs nodejs.
If you should not find the time i will simply start the bisect effort and port the patches over and hardfork nwjs as prototype and will create a PR once Electron and Chromium NodeJS are in sync.
Thank
Hello, I want to make ffmpeg with HEVC support and have tried to make it with this super old documentation:https://docs.nwjs.io/en/latest/For%20Developers/Enable%20Proprietary%20Codecs/
Can someone give me steps to make ffmpeg for nwjs. PS : I have prerequsitories installed
I've documented this issue in the mailing list. I opened an issue since I believe there could be a bug.
Node compiles for me but fails at the SOLINK stage.
[1720/1720] SOLINK lib/libnode.so
FAILED: lib/libnode.so lib/libnode.so.TOC
if [ ! -e lib/libnode.so -o ! -e lib/libnode.so.TOC ]; then /home/ayushmxn/nw/nwjs/src/third_party/llvm-build/Release+Asserts/bin/clang++ -shared -pthread -rdynamic -m64 --sysroot=/home/ayushmxn/nw/nwjs/src/build/linux/debian_sid_amd64-sysroot -nostdlib++ -L../nw/lib/ -lnw -Wl,--whole-archive ../nw/obj/buildtools/third_party/libc++abi/libc++abi.a ../nw/obj/buildtools/third_party/libc++/libc++.a -Wl,--no-whole-archive -Wl,-z,relro -Wl,-z,now -Wl,--gc-sections -pthread -o lib/libnode.so -Wl,-soname=libnode.so @lib/libnode.so.rsp && { readelf -d lib/libnode.so | grep SONAME ; nm -gD -f p lib/libnode.so | cut -f1-2 -d' '; } > lib/libnode.so.TOC; else /home/ayushmxn/nw/nwjs/src/third_party/llvm-build/Release+Asserts/bin/clang++ -shared -pthread -rdynamic -m64 --sysroot=/home/ayushmxn/nw/nwjs/src/build/linux/debian_sid_amd64-sysroot -nostdlib++ -L../nw/lib/ -lnw -Wl,--whole-archive ../nw/obj/buildtools/third_party/libc++abi/libc++abi.a ../nw/obj/buildtools/third_party/libc++/libc++.a -Wl,--no-whole-archive -Wl,-z,relro -Wl,-z,now -Wl,--gc-sections -pthread -o lib/libnode.so -Wl,-soname=libnode.so @lib/libnode.so.rsp && { readelf -d lib/libnode.so | grep SONAME ; nm -gD -f p lib/libnode.so | cut -f1-2 -d' '; } > lib/libnode.so.tmp && if ! cmp -s lib/libnode.so.tmp lib/libnode.so.TOC; then mv lib/libnode.so.tmp lib/libnode.so.TOC ; fi; fi
clang: error: no such file or directory: '../nw/obj/buildtools/third_party/libc++/libc++.a'
ninja: build stopped: subcommand failed.
According to the error message, the static library libc++.a
is not being built. Directly trying to build it also does not work.
cd $HOME/nwjs/src && ninja -C out/nw/obj/buildtools/third_party/libc++ -f libc++.ninja
ninja: Entering directory `out/nw/obj/buildtools/third_party/libc++'
ninja: error: libc++.ninja:9: unknown build rule 'cxx'
build obj/buildtools/third_party/libc++/libc++/algorithm.o: cxx ../../bu...
^ near here
That leads to me to conclude that there may be an error in the BUILD.gn
file but I haven't been able to pinpoint it yet.
UPDATE: also noticed that libcpp.lib is not being built which seems to be required for Node.
cc @rogerwang
i want to build nw of v0.14.7 for window xp use. so i listen the document of https://nwjs-docs.readthedocs.io/en/latest/For%20Developers/Building%20NW.js/.
I opened out/nw/build.ninja, actually not found nwjs. am i need to modify src/BUILD.gn,and how to do? I found that
the project nwjs/nw.js at branch of nw14, still use gyp not gn to build. does it matter?
Hello,
Wanted to contact to ask how you were able to push the whole chromium source folder to github. I am trying to do a similar thing and I am constantly getting:
Counting objects: 8369830, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (1299652/1299652), done.
remote: fatal: pack exceeds maximum allowed size
fatal: The remote end hung up unexpectedly.00 GiB | 1.31 MiB/s
fatal: The remote end hung up unexpectedly
I know that I should not use issues for a question but I did not know how to contact you otherwise.
Thank you very much in advance.
Regards,
Iker.
Hope this is the proper place for this issue.
I've been using an app built on nwjs 0.36.4 for macos, which listened to alt + meta(cmd) + left/right arrow keydown events. I updated to the 0.49.1 framework, and the events are no longer fired on listeners attached to the window object, neither in capturing or bubbling mode.
Suspecting it is a Chromium issue, I tested on the latest Chrome browser and observe those events are captured by the browser and used for switching tabs.
Can the capturing of those events be removed? It seems it serves no purpose to capture those events in the nwjs context.
While trying to build FFmpeg with a script supplied by nwjs-ffmpeg-prebuilt I've noticed, that tags for this repository stop at nw-v0.34.0-beta0. The script is looking for the tag accompanying the newest NW.js release nw-v0.35.5, but it's missing. Is there another way to find the corresponding nwjs/chromium.src version to the latest NW.js release?
as the title,i want to build a chromium with nodejs,but not nw.js. it's just a browser. do have the options to build base on this code?
When configured with gn gen "out/nw" '--args=is_debug=false is_component_ffmpeg=true target_cpu="x64" symbol_level=1 is_component_build=false nwjs_sdk=false ffmpeg_branding="Chromium"'
(taken directly from this nw44_linux64 buildbot step), building the chrome/browser:resources_grit
results in the following error:
/data/nwjs/src$ ninja -C out/nw 'chrome/browser:resources_grit'
ninja: Entering directory `out/nw'
[1/2] ACTION //chrome/browser:resources_grit(//build/toolchain/linux:clang_x64)
FAILED: gen/chrome/resources_stamp.d.stamp gen/chrome/grit/browser_resources.h gen/chrome/browser_resources.pak gen/chrome/browser_resources.pak.info
python ../../tools/grit/grit.py -i ../../chrome/browser/nwjs_resources.grd build -o gen/chrome --depdir . --depfile gen/chrome/resources_stamp.d --write-only-new=1 --depend-on-stamp -D scale_factors=2x -D _chromium -E CHROMIUM_BUILD=chromium -D desktop_linux -D toolkit_views -D use_aura -D use_nss_certs --brotli brotli -D enable_arcore=false -D enable_background_mode=true -D enable_background_contents=true -D enable_extensions=true -D enable_hangout_services_extension=false -D enable_plugins=true -D enable_print_preview=true -D enable_printing=true -D enable_service_discovery=true -D enable_supervised_users=false -D enable_vr=true -D enable_webui_tab_strip=false -D safe_browsing_mode=0 -D optimize_webui=true -E additional_modules_list_file=gen/chrome/browser/internal/additional_modules_list.txt -E root_gen_dir=gen -f ../../tools/gritsettings/resource_ids --assert-file-list=obj/chrome/browser/resources_expected_outputs.txt
Error processing node <?xml version="1.0" encoding="UTF-8"?>
<include allowexternalscript="true" compress="gzip" file="${root_gen_dir}\chrome\browser\resources\discards\graph_tab.html" name="IDR_DISCARDS_GRAPH_TAB_HTML" type="BINDATA" use_base_dir="false" />: [Errno 2] No such file or directory: u'../../out/nw/gen/chrome/browser/resources/discards/graph_tab.html'
Traceback (most recent call last):
File "../../tools/grit/grit.py", line 23, in <module>
sys.exit(grit.grit_runner.Main(sys.argv[1:]))
File "/data/nwjs/src/tools/grit/grit/grit_runner.py", line 310, in Main
return toolobject.Run(options, args[1:])
File "/data/nwjs/src/tools/grit/grit/tool/build.py", line 272, in Run
self.Process()
File "/data/nwjs/src/tools/grit/grit/tool/build.py", line 404, in Process
self.ProcessNode(self.res, output, outfile)
File "/data/nwjs/src/tools/grit/grit/tool/build.py", line 331, in ProcessNode
formatted = formatter(node, output_node.GetLanguage(), output_dir=base_dir)
File "/data/nwjs/src/tools/grit/grit/format/data_pack.py", line 88, in Format
value = node.GetDataPackValue(lang, UTF8)
File "/data/nwjs/src/tools/grit/grit/node/include.py", line 107, in GetDataPackValue
data = util.ReadFile(filename, util.BINARY)
File "/data/nwjs/src/tools/grit/grit/util.py", line 210, in ReadFile
with open(filename, mode) as f:
IOError: [Errno 2] No such file or directory: u'../../out/nw/gen/chrome/browser/resources/discards/graph_tab.html'
ninja: build stopped: subcommand failed.
This was done from a clean working environment building off of the nw44 branch.
@LeonardLaszlo was encountering a similar grit-related error as well.
The cause seems to be that the nwjs_sdk
flag causes a different set of resources to be build. This is taken from chrome/browser/BUILD.gn
:
grit("resources") {
if (nwjs_sdk) {
source = "browser_resources.grd"
} else {
source = "nwjs_resources.grd"
}
The specific case regarding graph_tab.html
seems to stem from the commit updating to Chromium 80.0.3987.0. It removes the graph_tab.html
output from chrome/browser/resources/discards/BUILD.gn
in favor of graph_tab.js
instead.
Again, I think the reason this isn't an issue for nwjs_sdk=true
builds is because browser_resources.grd
only requires graph_tab.js
, but nwjs_resources.grd
requires graph_tab.js
and graph_tab.html
. I haven't done much digging aside from that, but it wouldn't surprise me if other resources are missing as well.
We're using a GCM enabled Web Application with NWJS. With the latest commit dd4bccf the application fails to start. Return code of the process is 3221225477. In hex 0xC0000005 so I'm guessing there is an access violation.
Many PTSN gateways still only have iLBC as their only low-bandwidth gateway. WebRTC supports iLBC but Chrome has it switched off in an attempt to force everyone to move to Opus. While this is admirable its not practical.
Switching iLBC on is very simple and has no impact on Opus being the preferred codec. I've made the changes and we have tested the codec. Pull request will follow.
@rogerwang I am experiencing crash issue with Windows DEBUG build, on this line:
if I disable the ::HeapFree and just use "free", everything looks fine
any reason why you are using HeapFree? I can't find the correspondent HeapCreate
when I run ninja -C out/nw nwjs
in branch nw83, it throw error like
ninja: error: '../../headless/app/headless_shell_switches.cc', needed by 'obj/headless/headless_shell_lib/headless_shell_switches.o', missing and no known rule to make it
I found the headless_shell_switches.cc was deleted in branch nw73
I want to run this chromium.src using nwjs. how can I run with nwjs.
Give me a link or something. I create a remote desktop application using chromium code so can you tell me how can i start with nwjs.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.