Build Padavan #4
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#JDC-1 | |
name: Build Padavan | |
on: | |
release: | |
types: [published] | |
push: | |
tags: | |
- 'v*' | |
# branches: | |
# - master | |
# schedule: | |
# - cron: 0 8 * * 5 | |
watch: | |
types: [started] | |
jobs: | |
build: | |
runs-on: ubuntu-20.04 | |
if: github.event.repository.owner.id == github.event.sender.id | |
steps: | |
- name: Checkout | |
uses: actions/checkout@master | |
- name: Initialization environment | |
env: | |
DEBIAN_FRONTEND: noninteractive | |
run: | | |
sudo apt-get update | |
sudo apt-get -y install unzip libtool-bin curl cmake gperf gawk flex bison nano xxd fakeroot \ | |
cpio git python-docutils gettext automake autopoint texinfo build-essential help2man \ | |
pkg-config zlib1g-dev libgmp3-dev libmpc-dev libmpfr-dev libncurses5-dev libltdl-dev wget | |
- name: Clone source code | |
run: | | |
git clone --depth=1 https://github.com/Qin0919/Padavan.git /opt/padavan | |
cd /opt/padavan/toolchain-mipsel | |
sh dl_toolchain.sh | |
mkdir -p /opt/images/ | |
- name: Build Firmware | |
env: | |
TNAME: JDC-1 | |
run: | | |
cd /opt/padavan/trunk | |
if [ ! -f configs/templates/$TNAME.config ] ; then | |
echo "configs/templates/$TNAME.config not found " | |
exit 1 | |
fi | |
cp -f configs/templates/$TNAME.config .config | |
sed -i 's/CONFIG_FIRMWARE_INCLUDE_OPENSSL_EXE=n/CONFIG_FIRMWARE_INCLUDE_OPENSSL_EXE=y/g' .config | |
################################################################################################ | |
#因不同型号配置功能不一样,所以先把配置项删除,如果你自己要添加其他的,也要写上删除这一条,切记!!! | |
################################################################################################ | |
sed -i '/CONFIG_FIRMWARE_INCLUDE_MENTOHUST/d' .config #删除配置项MENTOHUST | |
sed -i '/CONFIG_FIRMWARE_INCLUDE_SCUTCLIENT/d' .config #删除配置项SCUTCLIENT | |
sed -i '/CONFIG_FIRMWARE_INCLUDE_SHADOWSOCKS/d' .config #删除配置项SS plus+ | |
sed -i '/CONFIG_FIRMWARE_INCLUDE_SSSERVER/d' .config #删除配置项SS server | |
sed -i '/CONFIG_FIRMWARE_INCLUDE_DNSFORWARDER/d' .config #删除配置项DNSFORWARDER | |
sed -i '/CONFIG_FIRMWARE_INCLUDE_ADBYBY/d' .config #删除配置项adbyby plus+ | |
sed -i '/CONFIG_FIRMWARE_INCLUDE_FRPC/d' .config #删除配置项内网穿透FRPC | |
sed -i '/CONFIG_FIRMWARE_INCLUDE_FRPS/d' .config #删除配置项内网穿透FRPS | |
sed -i '/CONFIG_FIRMWARE_INCLUDE_TUNSAFE/d' .config #删除配置项TUNSAFE | |
sed -i '/CONFIG_FIRMWARE_INCLUDE_ALIDDNS/d' .config #删除配置项阿里DDNS | |
sed -i '/CONFIG_FIRMWARE_INCLUDE_TRANSMISSION/d' .config #删除配置项TRANSMISSION | |
sed -i '/CONFIG_FIRMWARE_INCLUDE_TRANSMISSION_WEB_CONTROL/d' .config #删除配置项TRANSMISSION_WEB_CONTROL | |
sed -i '/CONFIG_FIRMWARE_INCLUDE_ARIA/d' .config #删除配置项Aria | |
sed -i '/CONFIG_FIRMWARE_INCLUDE_ARIA_WEB_CONTROL/d' .config #删除配置项Aria的网页配置 | |
sed -i '/CONFIG_FIRMWARE_INCLUDE_SERIAL/d' .config #删除配置项 | |
sed -i '/CONFIG_FIRMWARE_INCLUDE_AUDIO/d' .config #删除配置项 | |
sed -i '/CONFIG_FIRMWARE_INCLUDE_TTYD/d' .config #删除配置项 | |
sed -i '/CONFIG_FIRMWARE_INCLUDE_XUPNPD/d' .config #删除用于 IPTV 的 XUPNP配置项 | |
sed -i '/CONFIG_FIRMWARE_INCLUDE_DOGCOM/d' .config #删除用于 Drcom 的工具配置项 | |
sed -i '/CONFIG_FIRMWARE_INCLUDE_MINIEAP/d' .config #删除可用于锐捷的 eap 客户端配置项 | |
sed -i '/CONFIG_FIRMWARE_INCLUDE_NJIT_CLIENT/d' .config #删除南工网络客户端配置项 | |
sed -i '/CONFIG_FIRMWARE_INCLUDE_SMARTDNS/d' .config | |
sed -i '/CONFIG_FIRMWARE_INCLUDE_SRELAY/d' .config | |
sed -i 's/CONFIG_FIRMWARE_INCLUDE_OPENSSL_EXE=n/CONFIG_FIRMWARE_INCLUDE_OPENSSL_EXE=y/g' .config | |
###################################################################### | |
#以下选项是定义你需要的功能(y=集成,n=忽略),重新写入到.config文件 | |
###################################################################### | |
echo "CONFIG_FIRMWARE_INCLUDE_MENTOHUST=y" >> .config #MENTOHUST | |
echo "CONFIG_FIRMWARE_INCLUDE_SCUTCLIENT=n" >> .config #SCUTCLIENT | |
echo "CONFIG_FIRMWARE_INCLUDE_SHADOWSOCKS=y" >> .config #SS plus+ | |
echo "CONFIG_FIRMWARE_INCLUDE_SSOBFS=y" >> .config # simple-obfs混淆插件 | |
echo "CONFIG_FIRMWARE_INCLUDE_SSSERVER=y" >> .config #SS server | |
echo "CONFIG_FIRMWARE_INCLUDE_DNSFORWARDER=y" >> .config #DNSFORWARDER | |
echo "CONFIG_FIRMWARE_INCLUDE_ADBYBY=n" >> .config #adbyby plus+ | |
echo "CONFIG_FIRMWARE_INCLUDE_FRPC=n" >> .config #内网穿透FRPC | |
echo "CONFIG_FIRMWARE_INCLUDE_FRPS=n" >> .config #内网穿透FRPS | |
echo "CONFIG_FIRMWARE_INCLUDE_TUNSAFE=n" >> .config #TUNSAFE | |
echo "CONFIG_FIRMWARE_INCLUDE_ALIDDNS=n" >> .config #阿里DDNS | |
echo "CONFIG_FIRMWARE_INCLUDE_SMARTDNS=y" >> .config #smartdns | |
echo "CONFIG_FIRMWARE_INCLUDE_SMARTDNSBIN=n" >> .config #smartdns二进制文件 | |
echo "CONFIG_FIRMWARE_INCLUDE_V2RAY=n" >> .config #集成v2ray执行文件(3.8M左右),如果不集成,会从网上下载下来执行,不影响正常使用 | |
echo "CONFIG_FIRMWARE_INCLUDE_TROJAN=n" >> .config #集成trojan执行文件(1.1M左右),如果不集成,会从网上下载下来执行,不影响正常使用 | |
echo "CONFIG_FIRMWARE_INCLUDE_KOOLPROXY=n" >> .config #KP广告过滤 | |
echo "CONFIG_FIRMWARE_INCLUDE_CADDY=y" >> .config #在线文件管理服务 | |
echo "CONFIG_FIRMWARE_INCLUDE_CADDYBIN=n" >> .config #集成caddy执行文件,此文件有13M,请注意固件大小。如果不集成,会从网上下载下来执行,不影响正常使用 | |
echo "CONFIG_FIRMWARE_INCLUDE_ADGUARDHOME=n" >> .config | |
echo "CONFIG_FIRMWARE_INCLUDE_SRELAY=y" >> .config #可以不集成 | |
echo "CONFIG_FIRMWARE_INCLUDE_SERIAL=y" >> .config #可以不集成 | |
echo "CONFIG_FIRMWARE_INCLUDE_AUDIO=y" >> .config #可以不集成 | |
echo "CONFIG_FIRMWARE_INCLUDE_TTYD=y" >> .config #可以不集成 | |
echo "CONFIG_FIRMWARE_INCLUDE_WYY=y" >> .config #网易云解锁 | |
echo "CONFIG_FIRMWARE_INCLUDE_WYYBIN=n" >> .config #网易云解锁GO版本执行文件(4M多)注意固件超大小,不集成会自动下载 | |
echo "CONFIG_FIRMWARE_INCLUDE_TRANSMISSION=n" >> .config #集成远程下载 | |
echo "CONFIG_FIRMWARE_INCLUDE_TRANSMISSION_WEB_CONTROL=n" >> .config #集成远程下载的配置网页 | |
echo "CONFIG_FIRMWARE_INCLUDE_ARIA=y" >> .config #Aria | |
echo "CONFIG_FIRMWARE_INCLUDE_ARIA_WEB_CONTROL=y" >> .config #Aria的网页控制 | |
echo "CONFIG_FIRMWARE_INCLUDE_XUPNPD=y" >> .config #去除用于 IPTV 的 XUPNP | |
echo "CONFIG_FIRMWARE_INCLUDE_DOGCOM=n" >> .config #去除用于 Drcom 的工具 | |
echo "CONFIG_FIRMWARE_INCLUDE_MINIEAP=n" >> .config #去除可用于锐捷的 eap 客户端 | |
echo "CONFIG_FIRMWARE_INCLUDE_NJIT_CLIENT=n" >> .config #去除南工网络客户端 | |
echo "CONFIG_FIRMWARE_INCLUDE_ZEROTIER=y" >> .config #zerotier ~1.3M | |
######################################################################################### | |
#自定义添加其它功能请参考源码configs/templates/目录下的config文件。按照上面的格式添加即可 | |
#格式如下: | |
#sed -i '/自定义项/d' .config | |
#echo "自定义项=y" >> .config | |
######################################################################################### | |
sudo ./clear_tree | |
sudo ./build_firmware_modify $TNAME 0 | |
sudo mv -f images/*.trx /opt/images/ | |
- name : Upload packages | |
uses: actions/upload-artifact@master | |
if: always() | |
with: | |
name: Padavan-packages | |
path: /opt/images |