MonkeyDev打包无根越狱deb

随着 ios 15 越狱的稳定, 无根越狱的使用频率也越来越高, 而原来的MonkeyDev已多年没有更新,现在将MonkeyDev修改并支持无根越狱环境编译打包

更新Theos

安装最新版本的theos, 注意如果原来的theos有自行添加运行时头文件,请自行在复制到新版本的theos里面

git clone --recursive https://github.com/theos/theos.git
更新本仓库的MonkeyDev
下载最新的MonkeyDev的代码放到原来的旧MonkeyDev路径即可,注意保持路径不变
或者
只需要将项目 bin/md 文件替换到 本地MonkeyDev/bin目录下即可,注意可执行权限
修改项目模板
~/Library/Developer/Xcode/Templates/MonkeyDev/ 指向就是 MonkeyDev安装目录下的/templates

是否要使用sudo提权,根本自己MonkeyDev安装目录来来决定

执行以下命令

sudo /usr/libexec/PlistBuddy -c “Add :Targets:0:SharedSettings:MonkeyDevRootless string YES” ~/Library/Developer/Xcode/Templates/MonkeyDev/Base.xctemplate/TemplateInfo.plist
sudo /usr/libexec/PlistBuddy -c “Add :Targets:0:SharedSettings:CODE_SIGNING_ALLOWED string NO” ~/Library/Developer/Xcode/Templates/MonkeyDev/Base.xctemplate/TemplateInfo.plist
sudo /usr/libexec/PlistBuddy -c “Set :Targets:0:SharedSettings:MonkeyDevDeviceIP localhost” ~/Library/Developer/Xcode/Templates/MonkeyDev/Base.xctemplate/TemplateInfo.plist
sudo /usr/libexec/PlistBuddy -c “Set :Targets:0:SharedSettings:MonkeyDevDevicePassword alpine” ~/Library/Developer/Xcode/Templates/MonkeyDev/Base.xctemplate/TemplateInfo.plist
sudo /usr/libexec/PlistBuddy -c “Set :Targets:0:SharedSettings:MonkeyDevDevicePort 2222” ~/Library/Developer/Xcode/Templates/MonkeyDev/Base.xctemplate/TemplateInfo.plist
sudo /usr/libexec/PlistBuddy -c "Set :Targets:0:SharedSettings:MonkeyDevkillProcessOnInstall " ~/Library/Developer/Xcode/Templates/MonkeyDev/Base.xctemplate/TemplateInfo.plist
编译DEB
根据自己的手机是否是rootless越狱设置Build Setting里的MonekDevRootless为 YES 或 NO 即可
更新后的源:
https://github.com/BigCatGit/MonkeyDev

感谢MonkeyDev原作者的分享
引用 https://github.com/AloneMonkey/MonkeyDev
————————————————

5 个赞

大佬,修改以后,编译后有dylib库生成,本地没deb包生成,没添加支持无根环境的时候,有deb包生成,咋回事啊?

报错日志发出来看看

更新了一下 sshpass 就有了,谢谢!! :grinning:

有空能把编译roothide 多包也加进去吗?roothide参考: roothide · GitHub

怎么开发插件了,class-dump没法用,某音的

Xcode 16.1
新建一个logos空项目编译报错:

Preparing to run Xcode Build Phase...
安装目录: .../Package/Library/MobileSubstrate/DynamicLibraries
use default localhost
Environment variable MonkeyDevRootless is not set or is empty
Command PhaseScriptExecution failed with a nonzero exit code

大哥这里

根据自己的手机是否是rootless越狱设置Build Setting里的MonekDevRootless为 YES 或 NO 即可 

MonkeyDevRootless拼错了

大佬请教一个,MonkeyDev是否可以做到debug,并且打印出一些局部变量的?类似这样。

Unable to install package on device since build setting MonkeyDevDeviceIP is not set or is empty and it is not exported in your Bash personal initialization file

请问 我配置完 打包提示这个需要怎么解决呢
MonkeyDevDeviceIP 已经填写了

这个编译出来的dylib里的链接库好像不是@rpath开头的,是要哪里改吗