110 lines
4.2 KiB
YAML
110 lines
4.2 KiB
YAML
name: r1s Lienol版openwrt
|
|
|
|
on:
|
|
#schedule:
|
|
# - cron: 0 20 * * *
|
|
push:
|
|
paths:
|
|
- '.github/workflows/r1s_lienol.yml'
|
|
|
|
jobs:
|
|
|
|
build:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout
|
|
uses: actions/checkout@master
|
|
with:
|
|
ref: master
|
|
|
|
- name: Initialization Environment
|
|
env:
|
|
DEBIAN_FRONTEND: noninteractive
|
|
run: |
|
|
sudo rm -rf /etc/apt/sources.list.d
|
|
sudo apt-get update
|
|
sudo apt-get -y install bc build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch unzip zlib1g-dev lib32gcc1 libc6-dev-i386 subversion flex uglifyjs git-core gcc-multilib p7zip p7zip-full msmtp libssl-dev texinfo libglib2.0-dev xmlto qemu-utils upx libelf-dev autoconf automake libtool autopoint device-tree-compiler
|
|
wget -O - https://raw.githubusercontent.com/friendlyarm/build-env-on-ubuntu-bionic/master/install.sh | bash
|
|
sudo rm -rf /usr/share/dotnet /usr/local/lib/android/sdk
|
|
|
|
- name: Install Repo
|
|
run: |
|
|
git clone https://github.com/friendlyarm/repo
|
|
sudo cp repo/repo /usr/bin/
|
|
|
|
- name: Init Source
|
|
run: |
|
|
mkdir friendlywrt-h5
|
|
cd friendlywrt-h5
|
|
repo init -u https://github.com/friendlyarm/friendlywrt_manifests -b master -m h5.xml --repo-url=https://github.com/friendlyarm/repo --no-clone-bundle
|
|
repo sync -c --no-clone-bundle
|
|
|
|
- name: Mods
|
|
run: |
|
|
cd friendlywrt-h5
|
|
. ../remove_used_config.sh
|
|
sed -i '/CONFIG_KERNEL_CGROUP_PERF/i\CONFIG_KERNEL_CGROUPS=y' configs/config_h5
|
|
echo >> configs/config_h5 && echo '
|
|
CONFIG_OPENSSL_ENGINE_BUILTIN=y
|
|
CONFIG_OPENSSL_ENGINE_BUILTIN_DEVCRYPTO=y
|
|
CONFIG_OPENSSL_OPTIMIZE_SPEED=y
|
|
CONFIG_OPENSSL_WITH_DTLS=y
|
|
CONFIG_OPENSSL_WITH_EC2M=y
|
|
CONFIG_OPENSSL_WITH_NPN=y
|
|
CONFIG_PACKAGE_ca-bundle=y
|
|
CONFIG_PACKAGE_curl=y
|
|
# CONFIG_PACKAGE_dns2socks is not set
|
|
CONFIG_PACKAGE_kmod-crypto-authenc=y
|
|
CONFIG_PACKAGE_kmod-cryptodev=y
|
|
CONFIG_PACKAGE_libcurl=y
|
|
CONFIG_PACKAGE_libopenssl-conf=y
|
|
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_dns2socks is not set
|
|
CONFIG_PACKAGE_luci-app-smartdns=y
|
|
CONFIG_PACKAGE_luci-i18n-smartdns-zh-cn=y
|
|
CONFIG_PACKAGE_luci-theme-argon-dark-mod=y
|
|
CONFIG_PACKAGE_luci-theme-argon-light-mod=y
|
|
CONFIG_PACKAGE_luci-theme-freifunk-generic=y
|
|
CONFIG_PACKAGE_luci-theme-material=y
|
|
CONFIG_PACKAGE_luci-theme-netgear-mc=y
|
|
CONFIG_PACKAGE_luci-theme-openwrt=y
|
|
CONFIG_PACKAGE_smartdns=y' >> configs/config_h5
|
|
cd friendlywrt
|
|
git config --local user.email "action@github.com" && git config --local user.name "GitHub Action"
|
|
git remote add upstream https://github.com/Lienol/openwrt && git fetch upstream
|
|
git checkout upstream/dev-19.07 -b tmp
|
|
git revert --no-edit 2202533d29c1494ad5645f87a7429e70f85a0110
|
|
git mv README.md README && git commit -m 'undo rename readme for rebasing'
|
|
git checkout origin/master
|
|
git rebase 90bb1cf9c33e73de5019686b8bd495f689e675a4^ --onto tmp -X theirs
|
|
git checkout upstream/dev-19.07 -- feeds.conf.default
|
|
sed -i '/exit/i\echo "iptables -t nat -I POSTROUTING -j MASQUERADE" >> /etc/firewall.user' package/default-settings/files/zzz-default-settings
|
|
|
|
- name: Clean Feeds
|
|
run: |
|
|
cd friendlywrt-h5/friendlywrt
|
|
./scripts/feeds clean -a
|
|
|
|
- name: Build FriendlyWrt
|
|
run: |
|
|
cd friendlywrt-h5
|
|
sed -i 's/set -eu/set -u/' scripts/mk-friendlywrt.sh
|
|
./build.sh nanopi_r1s.mk
|
|
|
|
- name: Zip Files
|
|
run: |
|
|
gzip friendlywrt-h5/out/*.img
|
|
- name: Assemble Artifact
|
|
run: |
|
|
rm -rf ./artifact/
|
|
mkdir -p ./artifact/
|
|
mv friendlywrt-h5/out/*img* ./artifact/
|
|
cp friendlywrt-h5/friendlywrt/.config ./artifact/
|
|
- name: Upload Artifact
|
|
uses: actions/upload-artifact@master
|
|
with:
|
|
name: FriendlyWrt_NanoPi-R1S
|
|
path: ./artifact/
|