Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
dev:client_coding:building_the_standalone_client [2018/04/27 00:14]
rmzelle Update CSL style MIME type
dev:client_coding:building_the_standalone_client [2019/10/10 13:48] (current)
dstillman [Packaging]
Line 44: Line 44:
 ==== Command-line Flags ==== ==== Command-line Flags ====
  
-You'll need to rebuild the client each time you make code changes by running ''​npm run build''​ in ''​zotero-client''​ followed by ''​scripts/​dir_build''​ in ''​zotero-standalone-build''​. ​For rapid iterationwe recommend combining these commands into a separate script. (We plan to optimize this process in the future.)+You'll need to rebuild the client each time you make code changes by running ''​npm run build''​ in ''​zotero-client''​ followed by ''​scripts/​dir_build''​ in ''​zotero-standalone-build''​. ​In most casesyou'll want to use the helper script below.
  
 You can pass ''​-ZoteroDebugText''​ or ''​-ZoteroDebug''​ to the executable for real-time debug output, and ''​-jsconsole''​ to open the Error Console. If you're working on something that doesn'​t require styles or translators,​ the ''​-ZoteroSkipBundledFiles''​ flag can speed up startup time after rebuilding. You can pass ''​-ZoteroDebugText''​ or ''​-ZoteroDebug''​ to the executable for real-time debug output, and ''​-jsconsole''​ to open the Error Console. If you're working on something that doesn'​t require styles or translators,​ the ''​-ZoteroSkipBundledFiles''​ flag can speed up startup time after rebuilding.
Line 65: Line 65:
  
 Zotero can run Firefox extensions as plugins. You can run Firefox extensions from source code in Zotero the same way you could in Firefox. Create an ''​extensions''​ directory in the [[kb:​profile_directory|Zotero profile directory]] and create a file named after the id in the extension'​s install.rdf (e.g. ''​zotplugin@example.com''​) containing the path to the extension source code. The extension will then be automatically installed when you start Zotero. Zotero can run Firefox extensions as plugins. You can run Firefox extensions from source code in Zotero the same way you could in Firefox. Create an ''​extensions''​ directory in the [[kb:​profile_directory|Zotero profile directory]] and create a file named after the id in the extension'​s install.rdf (e.g. ''​zotplugin@example.com''​) containing the path to the extension source code. The extension will then be automatically installed when you start Zotero.
-===== Packaging ​on Windows ​=====+===== Packaging =====
  
-==== Prerequisites == +==== Mac ==== 
 + 
 +  * In Keychain Access, create ''​build''​ keychain with password 
 +  * Import Developer ID certificate,​ public key, and private key 
 +  * Set up app-specific password for Apple developer account 
 +  * Create a ''​config-custom.sh''​ file: <code sh> 
 +SIGN=1 
 +KEYCHAIN=build 
 +KEYCHAIN_PASSWORD=<​keychain password>​ 
 +NOTARIZATION_BUNDLE_ID=<​bundle id (e.g., org.foo.App) — only used for notification emails>​ 
 +NOTARIZATION_USER="<​username of Apple developer account>"​ 
 +NOTARIZATION_PASSWORD="<​app-specific password for Apple developer account>"​ 
 +BUILD_PLATFORMS=m 
 +</​code>​ 
 + 
 +==== Windows ==== 
 + 
 +=== Prerequisites ​===
  
   * Build requirements as indicated by ''​scripts/​check_requirements''​   * Build requirements as indicated by ''​scripts/​check_requirements''​
-  * [[http://​www.scratchpaper.com/​|Unicode NSIS]] and install the following (Unicode!) plugins by copying the .dll files to ''​NSIS\Unicode\Plugins''​ folder+  * [[http://​www.scratchpaper.com/​|Unicode NSIS 2.46.5]] and install the following (Unicode!) plugins by copying the .dll files to ''​NSIS\Unicode\Plugins''​ folder
     * [[https://​github.com/​mozilla/​gecko-dev/​tree/​master/​other-licenses/​nsis/​Plugins|AppAssocReg,​ ApplicationID,​ InvokeShellVerb,​ ShellLink, and UAC]]     * [[https://​github.com/​mozilla/​gecko-dev/​tree/​master/​other-licenses/​nsis/​Plugins|AppAssocReg,​ ApplicationID,​ InvokeShellVerb,​ ShellLink, and UAC]]
     * To install all at once, ''​cd''​ to the plugins folder and run the following commands: <code sh>wget https://​github.com/​mozilla/​gecko-dev/​raw/​master/​other-licenses/​nsis/​Plugins/​AppAssocReg.dll     * To install all at once, ''​cd''​ to the plugins folder and run the following commands: <code sh>wget https://​github.com/​mozilla/​gecko-dev/​raw/​master/​other-licenses/​nsis/​Plugins/​AppAssocReg.dll
Line 79: Line 96:
   * The [[http://​www.microsoft.com/​en-us/​download/​details.aspx?​id=8279|Windows SDK]] is needed for the included signtool.exe utility. Only the main Windows SDK component is required. If you experience errors with the installer, [[http://​stackoverflow.com/​questions/​19366006/​error-when-installing-windows-sdk-7-1|try uninstalling Microsoft Visual C++ 2010 Redistributable from your computer first]].   * The [[http://​www.microsoft.com/​en-us/​download/​details.aspx?​id=8279|Windows SDK]] is needed for the included signtool.exe utility. Only the main Windows SDK component is required. If you experience errors with the installer, [[http://​stackoverflow.com/​questions/​19366006/​error-when-installing-windows-sdk-7-1|try uninstalling Microsoft Visual C++ 2010 Redistributable from your computer first]].
  
-==== Building ​====+=== Building ===
  
   - Verify that git is set to check out files without modifying line endings.<​code>​   - Verify that git is set to check out files without modifying line endings.<​code>​
dev/client_coding/building_the_standalone_client.1524802499.txt.gz · Last modified: 2018/04/27 00:14 by rmzelle