DeveloperTips - open-eid/chrome-token-signing GitHub Wiki
Want to develop the extension?
You arrived here because you loaded the extension in developer mode. The manifest in the source code does not contain the necessary public key (rejected by chrome web store), you need to manually add the following key to extension/manifest.json
and reload the extension.
"key": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAyt8re1RtbobElTNUxQIO9RnOV2JTtzCSMNSfTPAIOONRcOi9WET9NcwoVtplQYjbFiBXHMtI/A0agm/GHY70o4d8HxCSJOm1zuPc+PQ2hS9oxzuPfAUqXGpZQLdm1Lub7NGlFALyfaUzqg193TojMGF7cBPWoMAj7mnDq5LiHEI3vanAQQ3gG8CHO1oXMlpJCj8CpxLozYOA+iFw+B1qRSiBLGPaPwyF27DGVkgH+Ue30faRgO2EstePFC6crSzGALFRmftNUR1N+6imtMJzx7EbTsMbiqd7hCN+EzRVkvE3hHGaSvcC0tRe3jOgbqQEp4bCpxIHg1QsGmtWDyKWaQIDAQAB"
NB! If you enable "developer mode" extensions do not get automatically updated!
Normally, extensions get updated every 5 hours. If you enable developer mode, you need to update extensions yourself by clicking "update extensions" in the configuration pane.
Building the native components
- Assumes the presence of:
- Git
- Python (Windows note: install both with "add executable to Path" option!)
- Windows
- Install Git ("set in Path")
- Install Python ("set in Path")
- Install VS Community Edition (or better)
- check out:
git checkout --recursive ...
- build:
make
- test:
make test
- Linux
- Have Qt5 development packages installed
- check out:
git checkout --recursive ...
- build:
make
- test:
make test
- OSX
- Have Xcode installed
- check out:
git checkout --recursive ...
- build:
make
- test:
make test
Logging
Debuging Chrome extension loading/updating
- /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --vmodule=extension_updater=2 --enable-logging
- ~/Library/Application\ Support/Google/Chrome/chrome_debug.log
Native host starts logging if chrome-signing.log file exists in the user's home temporary directory.
- Windows
- Create file %TEMP%\chrome-signing.log (for example C:\Users[user]\AppData\Local\Temp\chrome-signing.log)
- Linux
- Create file ~/tmp/chrome-signing.log (mkdir ~/tmp and touch ~/tmp/chrome-signing.log)
- tail -f ~/tmp/chrome-signing.log
- OSX
- Similar to Linux
- If you are using signed binaries, then the log file location is different:
- mkdir ~/Library/Containers/ee.ria.chrome-token-signing/Data/tmp
- touch ~/Library/Containers/ee.ria.chrome-token-signing/Data/tmp/chrome-signing.log
- tail -f ~/Library/Containers/ee.ria.chrome-token-signing/Data/tmp/chrome-signing.log