mirror of
https://github.com/MetaCubeX/meta-rules-dat.git
synced 2026-04-02 19:17:44 +08:00
自定义 geosite
This commit is contained in:
16
.github/workflows/delete.yml
vendored
Normal file
16
.github/workflows/delete.yml
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
name: Delete old workflow runs
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 0 * * 0'
|
||||
# Run monthly, at 00:00 on the 1st day of month.
|
||||
|
||||
jobs:
|
||||
del_runs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Delete workflow runs
|
||||
uses: GitRML/delete-workflow-runs@main
|
||||
with:
|
||||
token: ${{ secrets.AUTH_PAT }}
|
||||
repository: ${{ github.repository }}
|
||||
retain_days: 7
|
||||
52
.github/workflows/run.yml
vendored
52
.github/workflows/run.yml
vendored
@@ -1,4 +1,4 @@
|
||||
name: Build V2Ray rules dat files
|
||||
name: Build rules dat files
|
||||
on:
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
@@ -21,7 +21,7 @@ jobs:
|
||||
run: |
|
||||
echo "RELEASE_NAME=Released on $(date +%Y%m%d%H%M)" >> $GITHUB_ENV
|
||||
echo "TAG_NAME=$(date +%Y%m%d%H%M)" >> $GITHUB_ENV
|
||||
echo "CHINA_DOMAINS_URL=https://raw.githubusercontent.com/felixonmars/dnsmasq-china-list/master/accelerated-domains.china.conf" >> $GITHUB_ENV
|
||||
echo "CHINA_DOMAINS_URL=https://raw.githubusercontent.com/blackmatrix7/ios_rule_script/master/rule/Clash/ChinaMax/ChinaMax_Domain.txt" >> $GITHUB_ENV
|
||||
echo "GOOGLE_DOMAINS_URL=https://raw.githubusercontent.com/felixonmars/dnsmasq-china-list/master/google.china.conf" >> $GITHUB_ENV
|
||||
echo "APPLE_DOMAINS_URL=https://raw.githubusercontent.com/felixonmars/dnsmasq-china-list/master/apple.china.conf" >> $GITHUB_ENV
|
||||
echo "EASYLISTCHINA_EASYLIST_REJECT_URL=https://easylist-downloads.adblockplus.org/easylistchina+easylist.txt" >> $GITHUB_ENV
|
||||
@@ -73,7 +73,7 @@ jobs:
|
||||
|
||||
- name: Get and add direct domains into temp-direct.txt file
|
||||
run: |
|
||||
curl -sSL $CHINA_DOMAINS_URL | perl -ne '/^server=\/([^\/]+)\// && print "$1\n"' > temp-direct.txt
|
||||
curl -sSL ${CHINA_DOMAINS_URL} | sed '/^[^\.]/d' | sed '/^\s*#/d' | sed 's/^\.\([^\.]*\)\./\1\./g' > temp-direct.txt
|
||||
curl -sSL ${CUSTOM_DIRECT} | perl -ne '/^(domain):([^:]+)(\n$|:@.+)/ && print "$2\n"' >> temp-direct.txt
|
||||
|
||||
- name: Get and add proxy domains into temp-proxy.txt file
|
||||
@@ -153,27 +153,29 @@ jobs:
|
||||
- name: Create `google-cn`、`apple-cn`、`gfw` lists
|
||||
run: |
|
||||
curl -sSL $GOOGLE_DOMAINS_URL | perl -ne '/^server=\/([^\/]+)\// && print "full:$1\n"' > ./community/data/google-cn
|
||||
curl -sSL $GOOGLE_DOMAINS_URL | perl -ne '/^server=\/([^\/]+)\// && print "full:$1\n"' > google-cn.txt
|
||||
curl -sSL $APPLE_DOMAINS_URL | perl -ne '/^server=\/([^\/]+)\// && print "full:$1\n"' > ./community/data/apple-cn
|
||||
curl -sSL $APPLE_DOMAINS_URL | perl -ne '/^server=\/([^\/]+)\// && print "full:$1\n"' > apple-cn.txt
|
||||
cat ./gfwlist2dnsmasq/temp-gfwlist.txt | perl -ne '/^((?=^.{3,255})[a-zA-Z0-9][-_a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-_a-zA-Z0-9]{0,62})+)/ && print "$1\n"' >> ./community/data/gfw
|
||||
cat ./community/data/gfw | sort --ignore-case -u > gfw.txt
|
||||
curl -sSL $WIN_SPY | grep "0.0.0.0" | awk '{print $2}' > ./community/data/win-spy
|
||||
curl -sSL $WIN_SPY | grep "0.0.0.0" | awk '{print $2}' > win-spy.txt
|
||||
curl -sSL $WIN_UPDATE | grep "0.0.0.0" | awk '{print $2}' > ./community/data/win-update
|
||||
curl -sSL $WIN_UPDATE | grep "0.0.0.0" | awk '{print $2}' > win-update.txt
|
||||
curl -sSL $WIN_EXTRA | grep "0.0.0.0" | awk '{print $2}' > ./community/data/win-extra
|
||||
curl -sSL $WIN_EXTRA | grep "0.0.0.0" | awk '{print $2}' > win-extra.txt
|
||||
|
||||
- name: Add `meta` modification
|
||||
env:
|
||||
SED: sed '/^\s*#/d' | sed 's/DOMAIN,//g' | sed 's/DOMAIN-SUFFIX,//g' | sed 's/DOMAIN-KEYWORD,/keyword:/g'
|
||||
run: |
|
||||
curl -sSL https://raw.githubusercontent.com/xishang0128/rules/main/biliintl.list > ./community/data/biliintl
|
||||
curl -sSL https://raw.githubusercontent.com/blackmatrix7/ios_rule_script/master/rule/Clash/SteamCN/SteamCN.list | ${{ env.SED }} > ./community/data/steam-cn
|
||||
curl -sSL https://raw.githubusercontent.com/blackmatrix7/ios_rule_script/master/rule/Clash/PrivateTracker/PrivateTracker.list | ${{ env.SED }} > ./community/data/tracker
|
||||
|
||||
- name: Build geosite.dat file
|
||||
run: |
|
||||
cd custom || exit 1
|
||||
go run ./ --datapath=../community/data
|
||||
|
||||
- name: Checkout CHIZI-0618/sing-geosite
|
||||
- name: Checkout SagerNet/sing-geosite
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
repository: CHIZI-0618/sing-geosite
|
||||
repository: SagerNet/sing-geosite
|
||||
path: sing-geosite
|
||||
|
||||
- name: Build geosite.db file
|
||||
@@ -181,8 +183,10 @@ jobs:
|
||||
NO_SKIP: true
|
||||
run: |
|
||||
cd sing-geosite || exit 1
|
||||
cp ../custom/publish/geosite.dat ./
|
||||
go run -v . geosite.dat geosite.db
|
||||
sed -i 's/geosite-v2fly\.db/geosite.db/g' main.go
|
||||
sed -i 's/v2fly\/domain-list-community/Loyalsoldier\/v2ray-rules-dat/g' main.go
|
||||
sed -i 's/dlc/geosite/g' main.go
|
||||
go run -v .
|
||||
|
||||
- name: Checkout SagerNet/sing-geoip
|
||||
uses: actions/checkout@v3
|
||||
@@ -198,29 +202,29 @@ jobs:
|
||||
sed -i 's/Dreamacro\/maxmind-geoip/Loyalsoldier\/geoip/g' main.go
|
||||
go run -v .
|
||||
|
||||
- name: Move and zip files and generate sha256 hash
|
||||
- name: Move and zip files
|
||||
run: |
|
||||
mkdir -p ./publish/
|
||||
wget https://raw.githubusercontent.com/Loyalsoldier/geoip/release/Country.mmdb -O ./publish/Country.mmdb
|
||||
wget https://raw.githubusercontent.com/Loyalsoldier/geoip/release/Country.mmdb -O ./publish/country.mmdb
|
||||
install -Dp ./geoip.dat ./publish/
|
||||
install -Dp ./geoip.dat.sha256sum ./publish/
|
||||
install -Dp ./custom/publish/geosite.dat ./publish/
|
||||
install -Dp ./sing-geosite/geosite.db ./publish/
|
||||
install -Dp ./sing-geosite/geosite-v2fly.db ./publish/
|
||||
install -Dp ./sing-geoip/geoip.db ./publish/
|
||||
install -p {proxy,direct,reject}-tld-list.txt ./publish/
|
||||
install -p {proxy,direct,reject}-list.txt ./publish/
|
||||
install -p hosts ./publish/
|
||||
install -p apple-cn.txt ./publish/
|
||||
cd ./publish || exit 1
|
||||
zip rules.zip {proxy,direct,reject}-list.txt geoip.dat geosite.dat geosite.db geosite-v2fly.db geoip.db
|
||||
|
||||
|
||||
- name: Delete current release assets
|
||||
uses: andreaswilli/delete-release-assets-action@v2.0.0
|
||||
with:
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
tag: latest
|
||||
deleteOnlyFromDrafts: false
|
||||
|
||||
- name: Release and upload assets
|
||||
uses: softprops/action-gh-release@v0.1.6
|
||||
with:
|
||||
name: ${{ env.RELEASE_NAME }}
|
||||
tag_name: ${{ env.TAG_NAME }}
|
||||
name: latest
|
||||
tag_name: latest
|
||||
draft: false
|
||||
prerelease: false
|
||||
files: |
|
||||
|
||||
Reference in New Issue
Block a user