Skip to content
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cydiarepor

a python cydia repo parse tool to list and search deb to download

List cydia repo

$ python cydiarepor.py https://xia0z.github.io -l
-------------------------------------------------------------------
| N |           package            |             name             |
-------------------------------------------------------------------
|0  |       com.xia0.bloard        |            Bloard            |
|1  |      com.xia0.faketime       |           fakeTime           |
|2  |       com.xia0.fkiqyad       |           fkiqyad            |
|3  |     com.xia0.fkwatermark     |         fkwatermark          |
|4  |     com.xia0.fkwechatzan     |         fkwechatzan          |
|5  |     com.xia0.volume2home     |         volume2home          |
-------------------------------------------------------------------

Download deb by given search string

$ python cydiarepor.py https://xia0z.github.io -s "fk"
-------------------------------------------------------------------
| N |           package            |             name             |
-------------------------------------------------------------------
|0  |       com.xia0.fkiqyad       |           fkiqyad            |
|1  |     com.xia0.fkwatermark     |         fkwatermark          |
|2  |     com.xia0.fkwechatzan     |         fkwechatzan          |
-------------------------------------------------------------------
>> input number of deb want to download:0
[*] you choose 0 deb:"fkiqyad"
[*] start to download:fkiqyad
[+] download deb done
# Automation: make it download a preselected result.
# Passing --preselection 1 will download the middle package without
# waiting for user input.
$ python cydiarepor.py https://xia0z.github.io -s "fk" --preselection 1
-------------------------------------------------------------------
| N |           package            |             name             |
-------------------------------------------------------------------
|0  |       com.xia0.fkiqyad       |           fkiqyad            |
|1  |     com.xia0.fkwatermark     |         fkwatermark          |
|2  |     com.xia0.fkwechatzan     |         fkwechatzan          |
-------------------------------------------------------------------
[*] start to download:fkwatermark
[+] download deb done

Automation, Batch & Others

# Batch download by passing "all" instead of an index
$ python cydiarepor.py https://xia0z.github.io -s "fk" --preselection all
-------------------------------------------------------------------
| N |           package            |             name             |
-------------------------------------------------------------------
|0  |       com.xia0.fkiqyad       |           fkiqyad            |
|1  |     com.xia0.fkwatermark     |         fkwatermark          |
|2  |     com.xia0.fkwechatzan     |         fkwechatzan          |
-------------------------------------------------------------------
[*] ... # will download all the above packages
[+] download deb done   

Example command explained

# - Passing option -s will try to download packages containing "fk".
#     If you want to display all the packages, you can pass -s ''
#     since every package contains the empty string.
# - Option -d will use default sources to search for deb packages
# - The specified source (https://xia0z.github.io) will be parsed too
# - By passing "--preselection <an_index>", you will not be asked
#     for any input once the command is launched, and the package at
#     the selected index will be downloaded.
#     Thus, you could even integrate it in a script or other workflow.
#     Passing "all" to "--preselection" will download all the packages
#     matching the search term -s.
$ python cydiarepor.py https://xia0z.github.io -d -s "fk" --preselection all

List or search deb by given search string in default cydia repo

here is the default cydia repo :

Repo URL
BigBoss https://repounclutter.coolstar.org
Chimera Repo https://repo.chimera.sh
Frida https://build.frida.re
CoolStar's Repo https://coolstar.org/publicrepo
xia0Repo https://xia0z.github.io
Bingner https://apt.bingner.com

try python cydiarepor.py -d -l or python cydiarepor.py -d -s "Frida"

Notes

  • Use of HTTP instead of HTTPS: sometimes using a repo with httpS will result in an error, such as with repo httpS://apt.saurik.com/ An error message would be printed if there was an error, and in that case you may prefer re-running your command using http instead.

Roadmap

Done

  • Listing deb files of several repositories
  • Searching for specific packages
  • Batch download of deb files

To do

  • Source management (caching of repo packages and loading)
    • Adding a new source
    • Updating one source at a time
    • Updating all sources at once
    • Saving downloaded package files
    • Using the cached sources

Compatibility

The original work by xia0@2019 was using Python2. See the original repo here.

It has been update to use Python 3.6. (It would be possible to make compatible with lower versions than 3.6 with a little more dev time though).

Enjoy it~

About

Cydia repo cloner, batch deb file downloader and repo parser (to list and search deb to download)

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages