# GitKraken_Krack **Repository Path**: repok/GitKraken_Krack ## Basic Information - **Project Name**: GitKraken_Krack - **Description**: https://gitcode.net/pubx/GitKraken_Krack.git - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-06-15 - **Last Updated**: 2024-09-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # gitkraken 版本列表 > [gitkraken 版本列表](https://wiki.linsakura.com/doku.php?id=wiki:software:gitkraken:dl) # krack环境 - `Node.js` v12 LTS 及以上 - `yarn` - `GitKraken v6.5.2 to v7.5.5` ```bash mkdir -p /app/nodejs/18.15.0/ bash /app/bash-simplify/nodejs_script/new_PrjNodejsEnv_by_nodeenv.sh /app/nodejs/18.15.0/ 18.15.0 source /app/nodejs/18.15.0/PrjNodeJsEnvActivate.sh which node #/app/nodejs/18.15.0//.node_env_v18.15.0/bin/node which npm #/app/nodejs/18.15.0//.node_env_v18.15.0/bin/npm which pnpm #/app/nodejs/18.15.0//.node_env_v18.15.0/bin/pnpm node --version #v18.15.0 npm --version #9.5.0 pnpm --version #9.9.0 ``` # win10 ## 删除原有的 ```bat @rem 删除以下三个目录 rmdir /s /q %userprofile%\AppData\Local\gitkraken\ rmdir /s /q %userprofile%\AppData\Roaming\.gitkraken\ rmdir /s /q %userprofile%\AppData\Roaming\GitKraken\ ``` ## 步骤1. win10下 安装gitkraken > 下载、安装[GitKrakenSetup-7.5.0.exe](https://release.axocdn.com/win64/GitKrakenSetup-7.5.0.exe) ```shell md5sum.exe GitKrakenSetup-7.5.0.exe #1081233439ba0e91d41a9a14549e1bb8 *GitKrakenSetup-7.5.0.exe ``` ## 步骤1续. 启动gitkraken后立即关闭gitkraken >> 原因是 步骤2 中 krack目标app.asar 是 需要 gitkraken第一次启动时 释放出的 >> 如果win10也有解压版(免安装)形如 GitKraken-v7.0.0.zip, 则不需要 这一操作(启动gitkraken后理解关闭) ## 步骤2. win10下 krack过程 msys2下执行: ```bash git clone git@gitcode.net:pubx/GitKraken_Krack.git /d/GitKraken_Krack #新建nodejs项目环境 bash /app/bash-simplify/nodejs_script/new_PrjNodejsEnv_by_nodeenv.sh d:\\GitKraken_Krack 18.20.4 #d:\\GitKraken_Krack 被junction.exe链接到 /app2/GitKraken_Krack (微软win路径 d:\msys64\app2\GitKraken_Krack) cd /app2/GitKraken_Krack/ #npm install yarn -g #nvm npm 安装参考 https://blog.csdn.net/hfcaoguilin/article/details/124598084 yarn install#or : pnpm install yarn build node ./dist/bin/gitcracken.js patcher --asar $( cygpath --unix $USERPROFILE)/AppData/Local/gitkraken/app-7.5.0/resources/app.asar #等价的 cmd.exe 下的命令为: #node dist\bin\gitcracken.js patcher --asar %userprofile%\AppData\Local\gitkraken\app-7.5.0\resources\app.asar #删除更新文件 rm -v $( cygpath --unix $USERPROFILE)/AppData/Local/gitkraken/Update.exe #运行gitkraken $( cygpath --unix $USERPROFILE)/AppData/Local/gitkraken/app-7.5.0/gitkraken.exe ``` [GitKrakenSetup-7.0.0.exe](https://release.axocdn.com/win64/GitKrakenSetup-7.0.0.exe)在步骤```node ...\gitcraken.js ...\app.asar```报错: ```Error: ENOENT: no such file or directory, open '%userprofile%\AppData\Local\gitkraken\app-7.0.0\resources\app\src\render\static\entryPoints\main\index.js'```, 用 [GitKrakenSetup-7.5.0.exe](https://release.axocdn.com/win64/GitKrakenSetup-7.5.0.exe) 则正常 若有报错```npm ERR! request to https://registry.npm.taobao.org/yarn failed, reason: certificate has expired```, 解决办法是禁用ssl: ```npm config set strict-ssl false``` ## 步骤3. 放开域名, 正常启动gitkraken 以登陆 0. 确保此时域名(release.gitkraken.com api.gitkraken)是放开的(不要禁用域名,否则下面登陆不了gitkraken账号) 1. 正常启动gitkraken, 2. 用gitkaraken账号登陆 3. 此时打开一个私有仓库,打开后应该是提示要购买 才能打开私有仓库 ## 步骤4. 已登陆gitkraken账号后 ,禁用域名,可正常打开私有仓库 4. 禁用域名,如下: ```bash #win10: 添加一行文本 127.0.0.1 release.gitkraken.com api.gitkraken 到文件 c:/Windows/System/driver/etc/hosts # ``` 记录现象: ### 依然FREE gitkraken-7.5.0 win10x64 正常破解后,禁用域名 依然显示"FREE", 关闭gitkraken, 放开域名 再次打开gitkraken 显示"PRO" 5. 打开gitkraken, 已登陆 此时无需再次登陆了 6. 能正常打开私有仓库了(由于此时域名被禁用了) # ubuntu 22.04 压缩包 安装、krack https://release.axocdn.com/linux/GitKraken-v7.5.5.tar.gz ## 步骤1. [ubuntu 22.04下 gitkraken 下载、解压、启动卡住解决(安装openssl-1.1.1o.tar.gz)、gitkraken版本列表](https://gitcode.net/pubx/GitKraken_pan13640612207/-/blob/master/gitkraken6to8_startup_stuck_at_ubuntu22.04_need_openssl-1.1.1o.sh) > 注意 步骤1 只包括: 1. 安装openssl-1.1.1o.tar.gz、 2. 下载GitKraken-v7.0.0.tar.gz并解压 (但不要启动解压后的可执行文件/app/gitkraken/gitkraken,否则下一步krack会失败) > 若已经启动过gitkraken, 执行以下命令 以 消除影响: ```bash #此目录是 gitkraken第一次启动时产生的. rm -fr ~/.gitkraken ~/.config/GitKraken/ #这是解压目标目录,一道删除. rm -fr /app/gitkraken #重新解压 tar -zxvf /app/GitKraken-v7.5.0.tar.gz -C /app/ ``` ## 步骤1续. 无 > 由于这里用的是免安装包GitKraken-v7.0.0.tar.gz, 因此不需要启动gitkraken后理解关闭 > 详细理由是: 步骤2 中的 krack目标app.asar 是 解压后的产物, 不需要 第一次启动gitkraken以产生 krack目标app.asar ## 步骤2. ubuntu22.04 gitkraken krack过程 > 注意 linux下 用 > npm install ref: [nodejs nvm 环境安装踩坑记录](https://gitcode.net/pubx/GitKraken_Krack/-/blob/master/nodejs%20nvm%20%E7%8E%AF%E5%A2%83%E5%AE%89%E8%A3%85%E8%B8%A9%E5%9D%91%E8%AE%B0%E5%BD%95.md) ```bash git clone git@gitcode.net:pubx/GitKraken_Krack.git cd GitKraken_Krack/ #npm install yarn -g yarn install#or : pnpm install yarn build # /app/gitkraken/ 是gitkraken安装包GitKraken-v7.0.0.tar.gz 解压后的目录 #dist/bin/gitcracken.js能正常运行的最后一个gitkraken版本是8.1.1 node dist/bin/gitcracken.js patcher --asar /app/gitkraken/resources/app.asar ##dist/bin/gitcracken.js基本上是对app.asar中的某些文件应用 patches/*.diff , 这是破解的产物,破解过程是要知道要对哪些文件进行什么样的修改 #patches/*.diff的*应该就是app.asar中需要被应用diff修改的文件们 #也就是说 gitkraken 6.5.1~8.1.1 中 app.asar 关于序列号的逻辑都是一样的, 所以可以应用同样的 patches/*.diff #结论: #1. 本仓库 patcher --asar 对 gitkraken 6.5.1~8.1.1 能正常运行, 高于8.1.1的由于app.asar内文件结构变了而报错不了. #2. 经验证 对禁止打开私有仓库问题: 本仓库 能解决 gitkraken 6.5.1~7.5.5, 而 本仓库 不能解决 7.6.*~8.1.* 的禁止打开私有仓库问题 #最终解决: 本仓库 能 正常破解并解决禁止打开私有仓库问题 的版本范围: gitkraken 6.5.1~7.5.5 ``` > 步骤1 中 GitKraken-v7.0.0.tar.gz 解压后的可执行文件 是 /app/gitkraken/gitkraken ## 步骤3. 放开域名, 正常启动gitkraken 以登陆 > 同 [win10中的步骤3](https://gitcode.net/pubx/GitKraken_Krack/-/blob/master/README.md#%E6%AD%A5%E9%AA%A43-%E6%94%BE%E5%BC%80%E5%9F%9F%E5%90%8D-%E6%AD%A3%E5%B8%B8%E5%90%AF%E5%8A%A8gitkraken-%E4%BB%A5%E7%99%BB%E9%99%86) ## 步骤4. 已登陆gitkraken账号后 ,禁用域名,可正常打开私有仓库 ```bash #linux: echo "127.0.0.1 release.gitkraken.com api.gitkraken" >> /etc/hosts ``` 记录现象 ### 第一次运行gitkranken登陆后提示 这是免费版本 不允许打开私有仓库,关掉,重开即可 此时 , 即 , 破解完gitkraken 第一次运行gitkranken 并已登陆 https://app.gitkraken.com 后 , 打开私有仓库 若弹窗提示付费版才能打开私有仓库, 则 点击窗口右上角叉叉关闭 以立即关闭此gitkraken, 再重新运行gitkraken, 不再有此弹窗提示 且 可以正常打开私有仓库 # 问题记录 ## 报错 GPU process isn't usable. Goodbye ubuntu22下运行```/app/gitkraken/gitcracken```, 若遇到报错```[15365:0212/112446.466244:FATAL:gpu_data_manager_impl_private.cc(442)] GPU process isn't usable. Goodbye.```, 增加 ```--no-sandbox```参数 即可, 即运行 ```/app/gitkraken/gitcracken --no-sandbox``` 不会报错, 参考:https://github.com/Automattic/simplenote-electron/issues/3096#issuecomment-1152224083 报错场景: ```shell sudo prime-select nvidia #切换到nvidia独立显卡后, 外接显示器插上正常, 但运行gitkraken报错如下 /app/gitkraken/gitcracken #[15365:0212/112446.466244:FATAL:gpu_data_manager_impl_private.cc(442)] GPU process isn't usable. Goodbye. ``` 正常场景: ```shell sudo prime-select intel #切换到intel集成显卡后,正常运行gitkraken, 但是外接显示器插上没反应 /app/gitkraken/gitcracken #正常运行 ```