Ok some or most ipa’s can be turned into a deb file.
I’ll use the eJuice app as an example.
1.) Rename eJuice.ipa to eJuice.zip
2.) Extract eJuice.zip then look for AppName.app inside the extracted files. Mine will be eJuice.app. You could use “BetterZip”to extract AppName.app folder.
3.) Create a folder called “eJuiceApp_deb” and inside that create 2 directories – DEBIAN and Applications
4.) Drag the extracted eJuice.app into the newly created Applications folder. (NOTE: .DS_Store will be created automatically there, you need to remove it)
5.) Go to the DEBIAN folder and create a new text document and name it control (no .txt extention, please remove it). For some text format or line break character problems, you should better create this “control” file with vim in the macOS.
Inside the control file: it needs to look like this:
Package: com.company.appname Version: Version Here # 1.0, 2.0, 0.22.1 Name: App Name # can be Chinese or any other name Section: Section Name Here # game category such as 'Game', 'Tool', 'Theme' Description: App Description. Architecture: iphoneos-arm Author: Jhone <jhone@gmail.com> Maintainer: Jhone <Jhone@qq.com> Icon: file:///Applications/eJuice.app/AppIcon.png
6.) You should chmod the file 755
chmod 755 control
7) Now package the .deb file
dpkg-deb -Z gzip -b ./eJuiceApp_deb eJuiceApp.deb
And you will then have a File called eJuiceApp.deb and there.
Connect to the device via SSH, Install your app from .deb file, login, rebuild the UI cache, and re-spring the device:
# dpkg –install eJuiceapp.deb # uicache # killall backboardd
Now you can distribute this .deb file into cydia repo.
NOTE:
Add “-Z gzip”to build the .deb is nessesory, otherwise it cydia will not decompress .deb successfully. Currently i am using dpkg-deb version 1.20.x on macOS, but the iphone device cydia was using 1.18.x. There may be some mis-match bugs or something error. Some tutorial that teaching you do the convertion work will not tell you to set up the compress format. Such methods may work some days ago, but it will not work now.
.DS_Store should be removed before run dpkg-deb. In macOS, you could run ls -al to find such hidden file.
ls –al
After all deb files created, you could run dpkg-scanPackages to collect all deb information. The following command assume that your put serveral .deb files under the current folder.
dpkg-scanPackages ./ > Packages
Ref: https://k2designlab.wordpress.com/2015/05/13/convert-ipa-file-into-deb-file-for-cydia-repo-distribution/
Ref: https://www.weibo.com/p/1001603866345308587102?from=page_100505_profile&wvr=6&mod=wenzhangmod