mirror of
				https://github.com/flynx/ImageGrid.git
				synced 2025-11-04 05:10:07 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			82 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			82 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
Basic build
 | 
						|
-----------
 | 
						|
 | 
						|
Default desktop electron app build (modifying the electron dist in-place):
 | 
						|
 | 
						|
	make
 | 
						|
 | 
						|
 | 
						|
Build desktop electron app with full repack: 
 | 
						|
 | 
						|
	(export BUILD_MODE=repack && make)
 | 
						|
 | 
						|
 | 
						|
Build package files for web:
 | 
						|
 | 
						|
	make web
 | 
						|
 | 
						|
 | 
						|
 | 
						|
Sharp and other native modules for nw/electron
 | 
						|
----------------------------------------------
 | 
						|
 | 
						|
To build sharp for a specific version of node and nwjs:
 | 
						|
 | 
						|
	cd ./node_modules/sharp/
 | 
						|
	nw-gyp rebuild --target=0.17.4 --arch=x64
 | 
						|
 | 
						|
 | 
						|
And for electron (done by make):
 | 
						|
 | 
						|
	electron-rebuild
 | 
						|
 | 
						|
 | 
						|
 | 
						|
Chromium flicker issue (nw)
 | 
						|
---------------------------
 | 
						|
 | 
						|
The UI sometimes flickers -- at first blanks out to black then re-draws,
 | 
						|
this is most noticeable on white or gray backgrounds. 
 | 
						|
 | 
						|
This appears to be GPU related.
 | 
						|
 | 
						|
package.json:
 | 
						|
	"chromium-args": "--disable-gpu-compositing",
 | 
						|
 | 
						|
This will fix the issue temporarily, but we still need a better solution.
 | 
						|
 | 
						|
 | 
						|
 | 
						|
Remote debugging via DevTools (nw)
 | 
						|
----------------------------------
 | 
						|
 | 
						|
Set this in package.json:
 | 
						|
  "chromium-args": "--remote-debugging-port=9222",
 | 
						|
 | 
						|
Then open http://localhost:9222 in chrome.
 | 
						|
	
 | 
						|
 | 
						|
 | 
						|
Speedup loading of app (nw)
 | 
						|
---------------------------
 | 
						|
 | 
						|
One of the ways to speed up the load times when packed is to store Node's
 | 
						|
modules ./node_modules in a separate location, outside of the app.zip
 | 
						|
or package.nw
 | 
						|
To enable require(..) to find them:
 | 
						|
	- > npm install --save app-module-path
 | 
						|
	- when building the zip move all the modules out to a new location
 | 
						|
	  *except* app-module-path
 | 
						|
	- add this line to all root js modules *before* any other 
 | 
						|
	  require(..) is called:
 | 
						|
	  	if(process.__nwjs){
 | 
						|
			var path = require('path')
 | 
						|
			require('app-module-path')
 | 
						|
				.addPath(path.dirname(process.execPath) 
 | 
						|
					+ '/node_modules/')
 | 
						|
		}
 | 
						|
 | 
						|
 | 
						|
 | 
						|
 |