GitKraken utils for non-commercial use
Working on GNU/Linux (without snap), Windows and macOS.
Author: PMExtra, forked from KillWolfVlad at GitKraken-AUR
✔ Verified with GitKraken v7.7.0 ~ v9.7.1
It should support any newer version of GitKraken, unless the entrypoint code (src/main/static/startMainProcess.js of GitKraken source) is modified.
Requirements
Node.jsv12 LTS or lateryarn
Quick start
git clone https://github.com/PMExtra/GitCracken.gitcd GitCracken/GitCracken/yarn installyarn buildyarn gitcracken patcher
Notice
It need to refresh the GitKraken account information after this patch
This patch will modify your license while GitKraken fetching your profile. So if you still got free edition, you should re-login your GitKraken account.
Please ensure the communication with GitKraken server. Somebody may blocked the GitKraken server by the DNS or hosts file, please comment out or remove it temporarily.
If you still got free edition after re-login. Deleting the local profile might help. (Usually the path is %appdata%\.gitkraken for Windows, or ~/.gitkraken for Linux or macOS)
On macOS you should patch GitKraken after first launch.
There is a quarantine flag while downloading an App from Internet. If you changed it before the first launch, macOS will think the App was broken.
If you already do that, you can execute sudo xattr -rd com.apple.quarantine /Application/GitKraken.app to remove quarantine flag.
Search macos quarantine for more details.
This patch only works with GitKraken 7.7.0 and later
If you really want to use an older version, you can ref the commit 011e42e for 7.6.x.
Usage
git clone https://github.com/PMExtra/GitCracken.gitcd GitCracken/GitCracken/yarn installyarn buildnode dist/bin/gitcracken.js --helpfor more usage information
Patcher
1 | $ yarn run gitcracken patcher [options] [actions...] |
actions - array of values (any order, any count)
If
actionsis empty, will be usedautomode (ideal for beginners)
| Action | Description |
|---|---|
backup |
Backup app.asar file |
unpack |
Unpack app.asar file into app directory |
patch |
Patch app directory |
pack |
Pack app directory to app.asar file |
remove |
Remove app directory |
| Option | Description (if not defined, will be used auto value) |
|---|---|
-a, --asar |
Path to app.asar file |
-d, --dir |
Path to app directory |
-f, --feature |
Patcher feature (from patches dir) |
You can invoke
-f,--featureseveral times to apply all patches!
Examples
Auto patch installed GitKraken (maybe require sudo privileges on GNU/Linux)
1 | $ yarn run gitcracken patcher |
Use custom path to app.asar
1 | $ yarn run gitcracken patcher --asar ~/Downloads/gitkraken/resources/app.asar |
Use custom actions (backup, unpack and patch)
1 | $ yarn run gitcracken patcher backup unpack patch |
Mac from sudo
1 | sh-3.2# cd /.../Projects\ From\ GIT/GitCracken/GitCracken/dist/bin |
Disable Automatic Update
The patch will be overwrite after each GitKraken update. So you should patch again after each update.
If you don’t want any update, you can block the update server. Just add this content to your hosts file:
1 | 0.0.0.0 release.gitkraken.com |