使用宝塔搭建教程

上传解压源码
新建站点,根目录设置为解压后的路径
设置伪静态:
rewrite ^/debs/([^/]+) /downloads.php?request=$1; rewrite ^/(Release)$ /lists.php?request=Release; rewrite ^/(Packages)$ /lists.php?request=Packages; rewrite ^/(Packages\.gz)$ /lists.php?request=Packages.gz; rewrite ^/(Packages\.bz2)$ /lists.php?request=Packages.bz2; rewrite ^/(rewritetest)$ /robots.txt; rewrite ^/view/([0-9]+)(.*) /index.php?method=view&pid=$1; rewrite ^/view/([0-9]+)/nohistory /index.php?method=view&pid=$1&addr=nohistory; rewrite ^/screenshot/([0-9]+)(.*) /index.php?method=screenshot&pid=$1; rewrite ^/history/([0-9]+)(.*) /index.php?method=history&pid=$1; rewrite ^/contact/([0-9]+)(.*) /index.php?method=contact&pid=$1; rewrite ^/section/([0-9]+)(.*) /index.php?method=section&pid=$1; rewrite ^/report/([0-9]+)/([0-9]+)(.*) /index.php?method=report&pid=$1&support=$2; rewrite ^/report/([0-9]+)(.*) /index.php?method=report&pid=$1; rewrite ^/more/([0-9]+)/([0-9]+)(.*) /index.php?method=more&pid=$1&offset=$2; rewrite ^/more/([0-9]+)(.*) /index.php?method=more&pid=$1; rewrite ^/more/([0-9]+)(.*) /index.php?method=more&pid=$1; rewrite ^/(misc)$ /misc.php;Copy
访问域名/ip/install
根据提示配置数据库,安装即可

使用Github自建

除了有点慢,维护有亿点点麻烦,其他完全没得问题
我会将格式上传到GitHub,可以自己修改使用:https://github.com/zsbai/cydia/
首先要知道一个越狱源需要什么东西:
  1. Release文件里面写了关于你源的所有信息,名称,描述,种类
  1. *Packages文件
  • *里面记录了所有软件包的信息,相当于把每个deb的control文件合在一起
  1. Packages的压缩包
  1. debs文件夹存放deb的地方
  1. CydiaIcon.png源图标
  1. sileo-featured.json sileo上面的一排软件包展示(可有可无

Release文件

格式为:
Origin: 源名称 Label: 源名称 Suite: stable Version: 1.0 ##版本号,随便填一个就行 Architectures: iphoneos-arm Components: main Description: 源的描述Copy
直接在我的模板中修改即可使用

Packages文件

Packages文件长度取决于软件包的多少,我们并不需要手动创建
新建一个后缀为sh的文件,格式如下:
#!/bin/sh dpkg-scanpackages -m ./debs > Packages ##将/debs/路径下所有deb打包成packages文件 rm -r -f /源路径/repo/Packages.bz2 ##删除旧的packages压缩包 bzip2 Packages ##生成新的packages压缩包 dpkg-scanpackages -m ./debs > Packages ##打包生成packagesCopy
之后每次添加软件包后,只要运行就可以生成和打包packages文件
就是那个名为重新生成packages的文件,拖进终端运行

添加软件包

进入到debs文件夹,我们所有软件包都会放在此路径下
我们需要修改软件包内的control文件,control文件包含此软件包的所有信息,包括软件包标示,版本,作者等
解压和打包deb也不需要我们手动操作,新建两个sh后缀文件,名称分别为解包.sh,打包.sh
解包.sh格式如下:
#!/bin/sh mkdir 1 ##创建名称为“1“的文件夹 dpkg -x a.deb 1 ##将a.deb解包到“1“文件夹内 dpkg -e a.deb 1/DEBIAN ##将a.deb软件包control等文件解压到1/DEBIAN内 chmod -R a+wr 1/DEBIAN ##给予1/DEBIAN可读写权限Copy
我们要修改的control文件就在1/DEBIAN/下
运行此文件前,请将需要解包的软件包名称改为a.deb

control文件格式如下:

Package: 软件包标识符 Section: 软件包的分类 Maintainer: 维护者 Architecture: iphoneos-arm Version: 版本号 Depends: mobilesubstrate, firmware (>= 13.0) Description: 描述 SileoDepiction: sileo下看到的描述页面 Depiction: cydia下看到的描述页面 Name: 软件包名称 Author: 作者名称Copy
基本上不需要修改,可以根据自己的需求来
打包.sh文件格式如下
#!/bin/sh chmod 0755 1/DEBIAN ##修改权限,不然会报错 chmod 0555 1/DEBIAN/postinst ##修改权限,不然会报错 chmod 0555 1/DEBIAN/postrm ##修改权限,不然会报错 rm -f 1/.DS_Store ##移除mac下的缓存文件 rm -f 1/DEBIAN/.DS_Store dpkg -b 1 ./ ##打包 rm -rf 1 ##删除1文件夹 rm -f a.deb ##删除旧软件包Copy

教程:

把需要修改的deb文件名称改为a.deb,运行解包,deb的文件就会被解压到1这个文件夹内
打包直接运行打包.sh即可,每次修改deb都需要重新生成packages文件
基本上教程到这里就结束了,但是我更想让我的源好看一些怎么办呢!

修改描述界面

如果要添加批量修改的东西,比如添加是否支持a12,请修改两个文件中的样本文件,然后运行两次即可看到修改结果

Sileo:

Sileo的描述为json后缀的文件,创建一个文件夹用于存储描述界面的文件夹,我这里是/ms/msxp/路径
有sileo样本.json,sileo副本.json两个文件,两个文件内写入一个东西,下面是我的格式,可以参考一下:
{ "headerImage":"https://cdn.jsdelivr.net/gh/zsbai/CDN/img/luotianyi.JPG", "tintColor":"#FE3644", "tabs":[ { "tabname":"详情描述", "views":[ { "text":"源内插件均为搬运,仅供自己备份使用", "action":"", "tintColor":"", "class":"DepictionButtonView" }, { "useBoldText":true, "title":"简介", "useBottomMargin":false, "class":"DepictionHeaderView" }, { "useSpacing":true, "class":"DepictionMarkdownView", "markdown":"插件的描述文字" }, { "class":"DepictionSeparatorView" }, { "title":"版本描述","class":"DepictionHeaderView" }, { "title":"系统支持", "text":"---", "class":"DepictionTableTextView" }, { "title":"作者", "text":"bailu", "class":"DepictionTableTextView" }, { "title":"更新日期", "text":"2019-01-21", "class":"DepictionTableTextView" }, { "title":"当前版本", "text":"1.0.0", "class":"DepictionTableTextView" }, { "class":"DepictionMarkdownView", "useRawFormat":true, "markdown":"<small style=\"color: #aaa; font-size: 8pt;\">白鹭©2020</small><style>body { text-align: center; }</style>" } ], "class":"DepictionStackView" }, { "tabname":"预览截图", "class":"DepictionStackView", "views":[ { "spacing":8, "class":"DepictionSpacerView" }, { "screenshots":[ { "accessibilityText":"Screenshot", "url":"https://cdn.jsdelivr.net/gh/zsbai/CDN/img/yulanjietu.PNG" }, { "accessibilityText":"Screenshot", "url":"https://cdn.jsdelivr.net/gh/zsbai/CDN/img/2.png" }, { "accessibilityText":"Screenshot", "url":"https://cdn.jsdelivr.net/gh/zsbai/CDN/img/3.png" }, { "accessibilityText":"Screenshot", "url":"https://cdn.jsdelivr.net/gh/zsbai/CDN/img/4.png" } ], "class":"DepictionScreenshotsView", "itemCornerRadius":6, "itemSize":"{170, 350.4533333333333}" }, { "class":"DepictionSeparatorView" }, { "class":"DepictionMarkdownView", "markdown":"<small style=\"color: #aaa; font-size: 8pt;\">白鹭@2020</small><style>body { text-align: center; }</style>", "useRawFormat":true } ] } ], "class":"DepictionTabView","minVersion":"0.1" }Copy
只需要在control文件内修改SileoDepiction那一行,修改此json的文件路径即可

Cydia

首先需要一个html文件,因为cydia内描述页面就是一个网址
我的在/ms/路径下,名称为cydia.html :(可以自己写,刚开始学html,大佬轻点喷
然后需要一个名为description的js文件
之后只要访问下面这个链接
他就会自动把Filza软件包的信息填入cydia.html文件内
在/ms/msxq/路径下会有cydia副本,cydia样本两个文件,格式如下:
{ "name": "插件名字", "desc_short": "插件的描述文字", "desc_version": "1.0.0", "compatitle": "IOS:11-12", "author": "bailu", "updatetime": "2019-01-21", "changelog": "<strong>历史变跟</strong><br>暂时没有历史版本<br>", "screenshot": "<div style='text-align:center;'><img width=95% src='图片链接'/></a><br></div>", "open": true, }Copy
之后只需要修改/ms/msxq/里面的 描述文件编辑.sh,然后运行就会生成对应的cydia,sileo描述文件
之后在control文件里修改/添加即可
Done
badge