Squashed commit of the following:

commit 1d759c8858788d11b4958a005c9f255612e25a66
Author: msojocs <jiyecafe@gmail.com>
Date:   Tue Mar 1 16:13:26 2022 +0800

    feat: AUR Build
This commit is contained in:
msojocs 2022-03-01 16:15:47 +08:00
parent 5908cdf9dc
commit 7f2112e7af
6 changed files with 465 additions and 10 deletions

View File

@ -1,7 +1,7 @@
# This workflow will do a clean installation of node dependencies, cache/restore them, build the source code and run tests across different versions of node
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
name: Node.js CI
name: Build Packages
on:
release:
@ -9,7 +9,7 @@ on:
push:
tags:
- v*
branches: [ master, actions-dev]
branches: [ master, aur]
pull_request:
branches: [ master ]
# # Allows you to run this workflow manually from the Actions tab
@ -17,7 +17,7 @@ on:
jobs:
build:
name: Build
name: Build tar.gz AppImage
runs-on: ubuntu-latest
strategy:
@ -43,7 +43,8 @@ jobs:
npm install node-gyp nw-gyp npm -g
node-gyp install
- id: Tag
- name: Generate TAG
id: Tag
run: |
tag='continuous'
name='Continuous Build'
@ -54,10 +55,13 @@ jobs:
echo "tag result: $tag - $name"
echo "::set-output name=tag::$tag"
echo "::set-output name=name::$name"
- name: Build
run: |
# docker-compose up
export ACTION=true
# tar.gz AppImage
ls -l
tools/setup-wechat-devtools-bash
sudo chmod -R 755 package.nw
bash tools/build-release.sh ${{ steps.tag.outputs.tag }} ${{ matrix.ARCH }}
@ -78,15 +82,187 @@ jobs:
run: |
ls -l
- name: Upload artifact
uses: actions/upload-artifact@v2.3.1
with:
# Artifact name
name: wechat-devtools-${{ matrix.ARCH }}.build
path: tmp/build
build-deb:
name: Build Deb Package
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [16.x]
ARCH: ['x86_64']
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/
steps:
- uses: actions/checkout@v2
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v2
with:
node-version: ${{ matrix.node-version }}
cache: 'npm'
- name: Prepare
run: |
pwd
ls -l
export ACTION_MODE=true
sudo apt-get install -y libx11-dev libxkbfile-dev p7zip-full python2 python3 libkrb5-dev gcc openssl libssh2-1-dev g++ make
npm install node-gyp nw-gyp npm -g
node-gyp install
# https://docs.makedeb.org/home/installing/apt-repository/
wget -qO - 'https://proget.hunterwittenborn.com/debian-feeds/makedeb.pub' | \
gpg --dearmor | \
sudo tee /usr/share/keyrings/makedeb-archive-keyring.gpg &> /dev/null
echo 'deb [signed-by=/usr/share/keyrings/makedeb-archive-keyring.gpg arch=all] https://proget.hunterwittenborn.com/ makedeb main' | \
sudo tee /etc/apt/sources.list.d/makedeb.list
sudo apt update
sudo apt-get install -y makedeb gconf2
- name: Generate TAG
id: Tag
run: |
tag='continuous'
name='Continuous Build'
if [ 'true' == ${{ startsWith(github.ref, 'refs/tags/') }} ];then
tag='${{ github.ref_name }}'
name='${{ github.ref_name }}'
fi
echo "tag result: $tag - $name"
echo "::set-output name=tag::$tag"
echo "::set-output name=name::$name"
- name: Build Deb Package
run: |
tools/build-aur.sh deb
# deb
cd tmp/AUR
makedeb
cd ../
# ./tmp
ls -l AUR
mkdir -p build
mv AUR/*.deb build
rm -rf AUR/pkg AUR/src
ls -l build
- name: Upload artifact
uses: actions/upload-artifact@v2.3.1
with:
# Artifact name
name: wechat-devtools-${{ matrix.ARCH }}.build
path: tmp/build
build-arch:
name: Build ArchLinux Package
runs-on: ubuntu-latest
timeout-minutes: 30
strategy:
matrix:
node-version: [16.x]
ARCH: ['x86_64']
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/
steps:
- uses: actions/checkout@v2
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v2
with:
node-version: ${{ matrix.node-version }}
cache: 'npm'
- name: Prepare
run: |
npm install node-gyp nw-gyp npm -g
node-gyp install
cat /etc/passwd
- name: Generate TAG
id: Tag
run: |
tag='continuous'
name='Continuous Build'
if [ 'true' == ${{ startsWith(github.ref, 'refs/tags/') }} ];then
tag='${{ github.ref_name }}'
name='${{ github.ref_name }}'
fi
echo "tag result: $tag - $name"
echo "::set-output name=tag::$tag"
echo "::set-output name=name::$name"
- name: Build ArchLinux Package
uses: countstarlight/arch-makepkg-action@master
with:
repos: >
archlinuxcn=https://mirrors.tuna.tsinghua.edu.cn/archlinuxcn/$arch
before: "tools/build-aur.sh && sudo pacman -S --noconfirm archlinuxcn-keyring"
packages: >
gconf
p7zip
libxkbfile
python2
openssl
gcc
make
libssh2
krb5
scripts: "cd tmp/AUR && makepkg && ls -l && cd ../../"
- name: Fix Permissions
run: |
sudo chmod -R 0777 tmp
mkdir -p tmp/build
mv tmp/AUR/*.pkg.* tmp/build
cd tmp/build
for file in `ls *.pkg.*`;do mv $file `echo $file|sed 's/:/-/g'`;done;
ls -l
- name: Upload artifact
uses: actions/upload-artifact@v2.3.1
with:
# Artifact name
name: wechat-devtools-${{ matrix.ARCH }}.build
path: tmp/build
upload:
name: Create release and upload artifacts
needs:
- build
- build-deb
- build-arch
runs-on: ubuntu-latest
steps:
- name: Download artifacts
uses: actions/download-artifact@v2
- name: Inspect directory after downloading artifacts
run: ls -alFR
- name: Generate TAG
id: Tag
run: |
tag='continuous'
name='Continuous Build'
if [ 'true' == ${{ startsWith(github.ref, 'refs/tags/') }} ];then
tag='${{ github.ref_name }}'
name='${{ github.ref_name }}'
fi
echo "tag result: $tag - $name"
echo "::set-output name=tag::$tag"
echo "::set-output name=name::$name"
- name: Create release and upload artifacts
if: startsWith(github.ref, 'refs/heads/')
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
cd tmp/build
wget -q https://github.com/TheAssassin/pyuploadtool/releases/download/continuous/pyuploadtool-x86_64.AppImage
chmod +x pyuploadtool-x86_64.AppImage
./pyuploadtool-x86_64.AppImage WeChat*.AppImage *.tar.gz
./pyuploadtool-x86_64.AppImage **/WeChat*.AppImage **/*.tar.gz **/*.deb **/*.pkg.*
- name: Release
uses: softprops/action-gh-release@v1
@ -97,5 +273,7 @@ jobs:
name: ${{ steps.tag.outputs.name }}
tag_name: ${{ steps.tag.outputs.tag }}
files: |
tmp/build/*.tar.gz
tmp/build/*.AppImage
**/WeChat*.AppImage
**/*.tar.gz
**/*.deb
**/*.pkg.*

119
res/aur/PKGBUILD Executable file
View File

@ -0,0 +1,119 @@
# Maintainer: msojocs <jiyecafe@gmail.com>
# Contributor: ccat3z <c0ldcat3z@gmail.com>
# Contributor: bruceutut <zttt183525594@gmail.com>
# 方法参考
# https://github.com/jiyeme/wechat-devtools
# https://github.com/dragonation/wechat-devtools
# https://github.com/cytle/wechat_web_devtools
_wechat_devtools_ver="1.05.2201240"
_wechat_devtools_url="https://dldir1.qq.com/WechatWebDev/release/p-ae42ee2cde4d42ee80ac60b35f183a99/wechat_devtools_1.05.2201240_x64.exe"
_wechat_devtools_md5="85552bae33e98eb186c5068419efce03"
_wechat_devtools_exe="wechat_devtools_${_wechat_devtools_ver}_x64.exe"
_nwjs_ver="0.53.1"
_install_dir="/opt/wechat-devtools"
_node_version="16.1.0"
pkgname=wechat-devtools
pkgver="${_wechat_devtools_ver}" # 主版本号
pkgrel=15 # 次版本号release
epoch=2 # 大版本迭代强制更新(维护者变更,尽量不用)
pkgdesc="WeChat Devtools For Linux. "
arch=("x86_64")
url="https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html"
license=('unknown')
depends=('gconf' 'libxkbfile')
makedepends=('p7zip' 'python2' 'openssl' 'gcc' 'make' 'libssh2' 'krb5')
# compiler 用于可视化,以及编译
source=("nwjs-v${_nwjs_ver}.tar.gz::https://npm.taobao.org/mirrors/nwjs/v${_nwjs_ver}/nwjs-sdk-v${_nwjs_ver}-linux-x64.tar.gz"
"${_wechat_devtools_exe}::${_wechat_devtools_url}"
"node-v${_node_version}.tar.gz::https://npm.taobao.org/mirrors/node/v${_node_version}/node-v${_node_version}-linux-x64.tar.gz"
"compiler.tar.gz::https://download.fastgit.org/msojocs/wechat-devtools-linux/releases/download/v0.19/compiler.tar.gz"
"wechat-devtools.desktop"
"logo.svg"
"fix-cli.sh"
"fix-menu.sh"
"fix-core.sh"
"rebuild-node-modules.sh"
"fix-package-name.js"
"wxvpkg_pack.js"
"wxvpkg_unpack.js"
"fix-other.sh")
md5sums=(b6f49803c51d0abacca2d1e566c7fe19 # nwjs
"${_wechat_devtools_md5}"
2280bfbbf29981fd5adce334f40146ff # nodejs
a9e061c97afbbc295b5664a2d8065492 # compiler
1abd6b4ebbbb918f601a6c5dbad55a05 # desktop
0f4353664123320280ea4d6bb295dce2 # svg
"SKIP"
"SKIP"
"SKIP"
"SKIP"
"SKIP"
"SKIP"
"SKIP"
"SKIP")
options=('!strip')
prepare() {
7z x -owechat_devtools ${_wechat_devtools_exe} code/package.nw
mv wechat_devtools/code/package.nw package.nw
rm -rf wechat_devtools
ls | grep node-*linux* | xargs -I{} mv {} node
ls | grep nwjs-*linux* | xargs -I{} mv {} nwjs
mkdir tools
for file in *.js *.sh; do
mv $file tools;
done
}
_log() {
echo -e "\e[1;34m$@\e[0m"
}
build() {
# prepare node
_log "prepare node v${_node_version}"
export PATH="$srcdir/node/bin:$PATH"
# prepare nw-gyp
_log "prepare nw-gyp"
npm uninstall node-gyp -g
npm install nw-gyp node-gyp -g
# node bin
_log "copy node exectuable"
cp "$(which node)" "${srcdir}/node.${_node_version}"
# run fix scripts
export NW_PACKAGE_DIR="${srcdir}/package.nw"
export NW_VERSION=$_nwjs_ver
export srcdir=$srcdir
export NO_WINE=true
for script in fix-package-name.js fix-cli.sh fix-other.sh fix-menu.sh fix-core.sh rebuild-node-modules.sh; do
_log "run ${script}"
"${srcdir}/tools/${script}"
done
# cleanup
_log "done"
}
package() {
mkdir -p "${pkgdir}${_install_dir}"
cd "${pkgdir}${_install_dir}"
cp -r "${srcdir}/nwjs/"* ./
cp -r "${srcdir}/package.nw" ./package.nw
find ./package.nw -type d | xargs -I {} chmod -R a+rx {}
cp ${srcdir}/node.${_node_version} node
ln -s node node.exe
install -Dm644 "${srcdir}/wechat-devtools.desktop" "${pkgdir}/usr/share/applications/wechat-devtools.desktop"
install -Dm644 "${srcdir}/logo.svg" "${pkgdir}/usr/share/icons/hicolor/scalable/apps/wechat-devtools.svg"
}

123
res/aur/logo.svg Executable file
View File

@ -0,0 +1,123 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="256px" height="256px" viewBox="0 0 256 256" enable-background="new 0 0 256 256" xml:space="preserve"> <image id="image0" width="256" height="256" x="0" y="0"
href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAAABGdBTUEAALGPC/xhBQAAACBjSFJN
AAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAABmJLR0QA/wD/AP+gvaeTAAAZ
YUlEQVR42u3deXycVb3H8c+TpumWmUy6JLMkE5CyXAuIVJaCZS1FvAiIKHIRFRdQ8UULCEXleq9e
L4pXcLkgXAQLL0CqIigWkK2tyk5B1tJSCmm2blkmM+maNOf+8Uy3kDTLzDNnnpnv+/WaV9Nm5nm+
Z5rzy5lnOQdERERERERERERERERERERERERERERERERERERERCRPObYDSHZ1dXWNAyYCIaACCADj
0l+XAMFBNpEEeoFOYDOQSn+dANrLy8s3226jZI8KgI90dXVFgH3Sj3j6EQXC6UcVMN7jGJuA9cDa
9KMZaAQagHqgvry8fI3t90qGRgUgz3R1dZUCBwCHAB8EDgIOBKYCE2znG6KNwDvACmA5sAx4HXi7
vLy8x3Y42UUFwKKurq7RwKHAR4Dp6cc0YIztbB7ZCrwJvJR+LAVeKy8v77YdrFipAORQV1dXEJgJ
fDT9mI77+byYbcYtBk+lH/8oLy9P2g5VLFQAPJQ+IPdR4BTgRODDwCjbufLcduCfwGLgceApHXj0
jgpAlnV1de0DfAI4DTgB/YbP1GZgCfAwsLC8vLzedqBCogKQBalU6kPAp4AzHcc51HaeQmaMeQ34
M3BfIBB4zXYev1MBGKFUKjUN+CxwHrCf7TxFahVwL7AgEAi8aTuMH6kADEMqlaoGPgdcAHzIdh7Z
w6vAXcDdgUBgne0wfqECMIhUKlUK/CvwZdzP9aW2M8le9QCPALcDDwUCAV13sBcqAANIpVJR4CLg
q7hX24n/tAC3Ar8OBAIttsPkIxWAPlKp1AxgLnA2+m1fKLqB+4FfBAKBZ22HyScqAEAqlSoBPgl8
Czjadh7x1HPAT4EHAoFAr+0wthV1AUilUmW4B/TmAfvbziM5tRK4DrgrEAhssx3GlqIsAOmOfyHw
Hdw76qR4NQDXAvOLsRAUVQFIH9H/AvA91PFlTw3AD4A7i+nMQVEUgFQq5eAe1LsW91ZbkYG8jTsy
vD8QCBjbYbxW8AUgfVT/emCG7SziK88CVxT6WYOCLQDJZLIG+InjOJ8t5HaKp4wxZgFwZTAYbLYd
xgsF1zGSyWQZ7um87+CfGXQkv20E/gv4WTAYLKgDhQVVAJLJ5AnAzbjTaIlk23Lg68FgcIntINlS
EAUgmUxW4n7O/2KhtEnylgHmA1cEg8GE7TCZ8n1nSSaTZwK34M6KK5Ira4GvBYPBP9sOkgnfFoBk
MhkCbgTOt51Fito9wDf9OhrwZQFIJpMnA3cCMdtZRHDXRvh8MBhcZDvIcPmqAKSP8P8Q9yi/r7JL
wTO4Nxld46czBb7pRMlk8gPAAuAI21lE9uIF4NxgMFhvO8hQlNgOMBTpA31LUeeX/Hck8HL6Zzbv
5fUIIJlMjsId8s/L96wifRjc242vCQaD222HGUjedqrOzs5Kx3EWALNtZxHJwGPGmHMrKioStoP0
Jy8LQGdn50HAg47jaJIO8T1jzErgExUVFStsZ+kr7wpAZ2fnLOAPuOvbixSKBPDpioqKJ2wH2V1e
HQTs7Oy8EHcJqJDtLCJZFgIeTv+M5428KQCdnZ3fA34DjLadRcQjo4Hb0z/recH6R4DOzs5RwC+A
S2xnEcmhm4A5FRUVVs8QWC0AnZ2dZbi/9XU9vxSje4ALKyoqum0FsFYA0p3/D8AZtjKI5IEHcQ8O
Wrl82EoBUOcX2YO1IpDzAqDOL9IvK0UgpwUgfcDvftT5RfrzIHB2Lg8M5uw0YGdnp4N7D786v0j/
zgDuSPeVnMhZATDG/Bwd7RcZzOfSfSUnclIAEonEtx3HuTRXjRLxM8dxLk0kElfnZF9e7yCRSJwP
3JWLfYkUEANcEAqF7vFyJ552ykQi8VHgSaDMy/2IFKhtwMmhUOgpr3bgWQFIJBL7AC8Ck73ah0gR
aAWOCIVC9V5s3JNjAIlEYgLwF9T5RTI1GXgw3aeyLusFIJFIOLgrpxzs8RsjUiwOAean+1ZWeTEC
uAz4tOdviUhx+TQwN9sbzWpFSSQSM4C/oXv6RbzQDRwXCoWey9YGs1YAEolEJfAKEM/9+yJSNBqA
w0KhUEc2NpbNjwC3os4v4rU4bl/LiqwUgEQicSFwjq13RKTInJPucxnL+CNAR0dH3HGc14Gg7XdF
pIgkjTEHV1ZWNmaykYxGAB0dHTtO+anzi+RWEJif7oMjVpphiC8BJxljbL8ZIsXoZNw+ePtINzDi
6tHR0VENLEdz+IvYlAAOqqysXDeSF2fyEeBnqPOL2BbC7YsjMqIRQEdHx4nAItstF5GdTqqsrFw8
3BcNuwB0dHSU4l7wM812i0VkpzeBwyorK3uG86KRfAS4CHV+625r/Tuvb26yHUPyxzTcvjkswyoA
HR0dFcD3bbdU4KmulcxeeQNfb7iL97ZusB1H8sP3Ozo6hnVKfrgjgKvQPf55w2B4IPEyM1f8mHlN
f2Bdd9J2JLFrMm4fHbIhF4COjo4wMMd2C+X9eujlzvZnOGr5D/nhmoV0bt9sO5LYMzfdV4dkOCOA
eYAns5JIdmwx3dy44UmOeOsH/HL9E2zutbLcnNg1AbevDsmQCkB7e3sYuNh2y2Rokr1buHbtQxy1
/L+5o+1puo3VFagl9y5O99lBDXUE8C1gnO1WyfCs70lydfN9zFzxY+7veIle02s7kuTGOOCKoTxx
0OsA2tvbQ0AjUG67VbLLhat/w1+TbwzrNdPGRrk6/HFmBT5oO754rwuonThxYmJvTxrKCODrqPMX
hDe3tHBB/W2ctep/eX7ju7bjiLfKcfvuXu21ALS3t5cBl9huiWTX85ve46x3b+Tz9bexbHOL7Tji
nUvSfXhAg40AzgZitlsh3ng8tYxZ71zPNxvvoX5rq+04kn0x4JN7e8JgBeAbtlsg3jIY/ph4ieNW
Xse3m/+oi4kKz15H8AMWgPb29n8BZtpOL/0LlmT3pEy32c4d7U8zY8W1/GjtQ7qYqHDMTPflfg14
FqC9vf164HLb6aV/vaaXBztf5RfrH2f51rVZ335o1Hi+OeUkvjRpJuNKinOZh/9o+RNPb3zHk23f
Ev88U8dU5aopN0ycOLHf04L9FoD29vbRuKf+qnOVUEbGGMNfU29ww7rHeGNLc9a3X10a5Iqq2Zw3
8ShKnVG2m5tTIznVOlSPT72Cg8fl7PDaOtxTgt19vzHQR4BZqPP7guM4nBY8hMemXs5v97mIw8fV
ZXX763qSXNVyHzPfvo4/Jf6J5n/0pWrcPv0+AxWA82wnluFxHIcTAwfx0NQ5LNjnYmZM2C+r26/f
1srXG+9i9js3sCj1lu3myvD126ffVwDa2trGAGfYTisjd3zgQO7/wCX8cd9vcEL5gVnd9htbmjm/
/tec/e5NLN1Yb7upMnRnpPv2HvobAZwCVNhOK5k7pnwq9+57MQv3u5STAv+S+QZ38+zGVXzi3V/y
xfrbWb5lje2myuAqcPv2HvpbF+BMfc4rLIePq+Puuq/wxuZmrl//GI+msndg69HUmzyWWsanQtP5
VtWpxMsm2m5u9njZDYyxcTzlTGDh7v+wxwigra3NAU7PdSrJjYPHxZhfdyGLp17JmRWH4WRpcWiD
4b7EUmau/DHfbXmADT0p202V/p2e7uM79f0IcBgw5NlExJ8OHBvm5toLWLL/lXwm9BFGZWmR6G6z
nfntTzHj7Wv5ybpHSOpionwTxu3jO/X9nz/VdkLJnf3HVPPzmvP4+/7z+LfKoxidpfP8m3q38fMN
T/CIR+fQJSN79PG+BeBk2+kk9/YdM5mfxj7DM/t/mwsmzmCsU5xX/hWJPfr4zgLQ1tZWBhxjO53Y
Eyur5LroOTx7wHf4yqSZKgSF6Zh0Xwf2HAF8GBhvO53YVz06yA8iZ/HigddwyeSTGF9SlvlGJV+M
x+3rwJ4FQL/9ZQ+TSsv5bvhfeeGAa/h48BDbcSR7dvb13a8DONJ2Ksk/K7eu41cbFvN4apntKJI9
O/v67gXgI7ZTSf54edNqbtywiEdTb2I8vSJGLJi+44tSgNbW1iCQ3btHxJeWpJZzU+tiz+6Dl7ww
tbW1NTh58uTkjhHAwYxgqXApDL2ml4XJ17hxwyJP5hTwK0+vBLbbNAe3zz+zowB8UNf/F59tpoff
dyzl5rbF1G9ry+q2HRxCo8b5fP4Ab0uA5ffmg+xWAA6ymURyq2v7Fu7qeI5b2/7Geg+u2z81MI3L
p8zO5Yw3MnwHwa6DgFNtpxHvtfV0cVvbP7ij/WmSvVuyvv0Tyg/k6qrTOGRcje2myuCmwq4CoAOA
BaxxWzs3ty3hdx0vsMX0ZH37x06Yyryq05g+PrvTkYmn9oNdBUD/cwXorS1r+FXrYv7c+Qrbyf7C
oDPG78flVbM5JsvTj0lO1AE46VOAnbbTSPa8uOk9btywiCe6vJm77/BxcS6fMpsTA4V96GhT7zbP
llYvLxnDKCc7t2FnoKIUiNhOIZkzxvBk13Jual3EC5ve82Qf08ZGuarqY0WzunAR3AMRKQUm204h
I9djtvOXzle5qXUxb231Zm6+A8ZUM6/qNE4NTMNxdLlIAZlcCkyxnUKGb0tvN79LvMjNrUto7G73
ZB/7j6nmsimn8IngoZTYH65K9k0pNcZUqKr7z5zmBSxMvurJtvcpm8ScybM4O3R40a0GVEyMMRWl
QMh2EBm+bg9O50VHh5g7ZRbnho5Qxy8OoVJgvL8v15RMVZUGmDvlFM4LHblzXkD9TBSF8aVAwR/q
lP5NGRXgkskn8rnKoxlbpCsAF7my0sy3IX5TOWo8X5t0PF+ceCwTSsZkvkHxLRWAIhIsGctXJs3k
4knHq+MLQIkKQBEY75Rx0aTj+Oqk46gYNc52HMkfvSoABWycU8aXJh7LxZOOZ2LpBNtxJA+pABSg
sU4p51cezTcmnUj16KDtOJLHSoGk7RCSHaOdUZwbOoK5k2cRHq0V3mVQyVJgk+0UkplRlPDp0HQu
m3IKsdGVtuOIf2wuRbcC+5aDwzkV07l0ysnsW6Z7umTYOkuNMe26F8B/Tio/iHlVp3HAmGrbUcSn
jDHtpUCr7SAyfOdXHm07gvhfWymwVtd9ixSllhJgHeDNvEcikq+2A+tLqqqqtgNaDkakuKypqqrq
2THNS73tNCKSU/UAOwrAKttpRCSnVsGuArDCdhoRyakVsKsALLOdRkRyajnsKgBv2E4jIjn1Ouwq
APXopiCRYtEFvAvpAlBVVWWAf9pOJSI58WpVVVUv7DYfgDHmecdxjredTApLe89GVmxdazvGoCaO
msCBY8O2Y+SEMeaFHV/vPiHIc7aDSeF5cXM9X2m603aMQZ1aPo3bar9gO0au7OzruxeAp3VPgGSb
X36mDMY3WbPgqR1f7Fzwrbq6ej3pUwMiUrDeqa6ubtnxl74rPi6ynU5EPLVk97/0LQCP204nIp56
Yve/9C0ATwLdthOKiCe20+eX/B4FoLq6OgX83XZKEfHEc9XV1e27/0NJP0960HZKEfHE+/p2fwXg
AaBozoeIFJEH+v7D+wpAdXV1I/C87aQiklWvV1dXr+z7jyUDPHmB7bQiklW/7e8f+y0AxpgFaKJQ
kUJhjDH39veNAVcEWbt27UOO43zcdnLxt26znc2922zHGFSpM4rxJWW2Y3jCGLMkHA6f2G+79/K6
240xKgCSkVJKCJSMtR1jSAr4XoDfDPSNkr28aCHumgEi4l8J4I8DfXPAAhAOh7cBt9lOLyIZuSMc
Dg+4AnjJIC++Geix3QIRGZFe4Fd7e8JeC0A4HG5mL8MHEclrj4TD4ZV7e8JgIwCAn9puhYiMyA2D
PWHQAhAOh5eieQJE/GZpOBwetN8OZQQAcK3t1ojIsPxwKE8aUgEIh8NPoklDRfzinwzxrt6hjgAw
xnzXdqtEZHDGmO+Hw+EhXdU05AIQiUQWGWN0LEAkjxljljKMOT1Kh/rEtHnpRQWcYb5ORHLj6kgk
MuRrmoc8AgCIRCJLgd/ZbqGI9OvhSCTy5HBeMKwCkHY1sNl2S0VkDz3AlcN90bALQCQSWQ38xHZr
RWQPN0UikWXDfdFIRgAA1wHv2W6xiADuXbvfG8kLR1QAIpHIZuAS260WEQCuiEQiyZG8MKOj+WvW
rFkAnGu79SJF7PFIJDJ7pC8e6UeAHS4F2my/AyJFqgu4KJMNZFQAIpHIetwiICK5Ny8SidRnsoFM
RwBEIpHfAvfZfidEisyTuBP2ZCTjAgBgjLnYGNOS+ZZEZAg6jDFfGM4VfwPJSgGIRqPtwBdwpyAS
EQ8ZYy6KRqPN2dhWVq/pb2lp+RHulYIi4o3/i0ajX8vWxrIyAtjNvwP/yO37IVI0XgHmZnODWb+r
r6WlJQK8DIRz8paIFIcE8JFoNLoqmxvN9giAaDS6BvgMkP/rQYn4Qy/wuWx3fvCgAABEo9F/AHO8
fldEisT3otHoQ15s2JMCABCNRm9hkEUJRGRQ9+LhpLyeFYC0S4G/erwPkUL1NPClaDTq2aqlnk/t
1dLSEgD+Dhzm9b5ECshK4JhoNNrq5U5yMrdf+szAM8A+udifiM+tB2ZEo9F3vd6R1x8BgJ1nBmYD
G3KxPxEf6wROzUXnhxwVAIBoNLrSGDM73UAReb9NxpjTo9HoK7naYc4KAEAsFntFRUCkX1uMMafH
YrGncrlTK/P7Nzc3nwA8BIy3sX+RPLMNOCcWi/0l1zvO6Qhgh1gstgT4GBoJiGwCPmmj84PlFX6a
m5uPBB4DKmzmELFkE3B6LBZbbCuA9SW+mpubDwWeAKbYziKSQwngY7FY7HmbIax8BNhdLBZ7DZgB
5OS0h0geaAZm2u78kAcFACAWi60CjsVd11ykkL0FHBOLxd6wHQTypAAAxGKxtcBxwMO2s4h4ZDFu
52+wHWSHvCkAALFYrAs4A7jJdhaRLJuP+5k/YTvI7qwfBBxIc3Pz14BfAqNtZxHJwHbgqlgsdoPt
IP3J2wIA0NzcfBzwe6DadhaREWgHPhuLxR63HWQgeV0AAJqbm2PGmPscxznadhaRoTLGvAR8qqam
ZrXtLHuT9wUAoKmpqQx3SfI5fsksRe0W4LKampottoMMxledqamp6SzgdmCi7Swi/egELqqpqfm9
7SBD5asCANDU1FQLLAQOtZ1FZDdPA+fn+5C/r7w6DTgUNTU1jcBJwNu2s4gA3cA1wPF+6/zgwxHA
Dk1NTdOBF/BhEZOC8QrwxZqamldtBxkp33aempqal9Cy5GLHVuA/gSP93PkBSm0HyNB83FWIRHLl
adwDfctsB8kG344A0nI6fZIUtVbgq8DMQun84ONjADs0NTV1ACHbOaRgbQd+DXynpqamw3aYbPP7
RwCAUbYDSMFajHtBj68/5++NrwtAY2PjZCBgO4cUnLeAq2pqahbaDuI1vx8DmGk7gBQOY0yDMebL
wKHF0PnB5yMAYJYxnq2bKMVjDe69JrfU1tZutR0ml/xeAGbbDiC+1gDcANxaW1u72XYYG3x7FqCx
sbEOqLedQ3xpOfA/wN21tbXbbIexyc8jgFNsBxDfWQJcDzxcW1vbaztMPlABkEK3CbgX+GVtbe1r
tsPkG19+BGhsbCwB1gGTbWeRvLUMuBW4s7a2NmE7TL7y6wjgMNT55f06gd8B82tra5+zHcYP/FoA
ZtkOIHljK/AocA/wl2I9mj9Sfi0AOv1X3LYCi3BvB3+gtra24K7RzxXfHQNobGwchzvd8ljbWYAe
4HVgJe7BplKgBvgQUGk7XIHpAP4KPIh7FD9pO1Ah8N0IwBhzrOM4tjv/YtwDTAtra2u7+n4zfZDy
w8DHcc9WzMCH77VlvbhrRT6K2/Gfra2t7bEdqtD4bgTQ0NDwE8dxrrSxb2PMc8Dl8Xj82eG8rrGx
sRw43hhzAjDTcZzpqCD01WuMeRP4m+M4S4BFGtp7z48F4GXc36651Ax8G7g7Ho9nfPNBQ0PDBOBI
4Oj040ggnOM22dYOLAWeB54BnovH4wnboYqNrwpAQ0PDZNzz/7m6i3EL7pVjP4rH4xs9blsUOBz3
FOehwCHAVPw/UujFvWT7deA14FXg5Xg8/p7tYOK/AnAusCBHu7sPuDIej9dbbG8ZbhE4ADgQ2A/Y
F9gHiANltrL10YM7SqoH3gNW4U7bvgJYGY/HN9kOKP3z22+XXFz++yowJx6P/812Y+Px+DbcK9re
NwddQ0ODg7toaiz9ZxT34qjJwCTcsxAV6cd4YEz6awf3/728zya7cDsyQAJ3vvuN6a+T6T/bcOfG
awXWph9NwLp4PL7d9vslw+e3EUA9UOfR5jfgLvBwu36YpVj4ZgTQ0NCwP950/m7gRuD78Xi803Y7
RXLJNwUAb4b/jwBz4/G4lhmTouSnApDN6/9XAJfF4/FHbDdKxCZfHANoaGgYhXvgKZThphLAD4Ab
4/F4t+12idjmixGAMeYox3FCGWxiO3Ab8O/xeHyD7faI5AtfFADgYyN9oTFmieM4c+PxeMEu7iAy
Un4pAEeOYPrv94Cr6urqtIKwyAD8UgDGD+O5G4FrgZ/V1dVpcgiRvfBLAXiZwVcBMsDdwNV1dXUt
tgOL+IEvzgKsXr16P9xLdCcM8JTngTl1dXXP284q4ie+WBuwrq5uFXAWsL7Pt5qBzwMz1PlFhs8X
I4AdVq9ePQF3lp0o7rJOj9TV1W2xnUtEREREREREREREREREREREREREREREREREREREREQky/4f
fZiQb28wgo4AAAAldEVYdGRhdGU6Y3JlYXRlADIwMjItMDItMTdUMDk6MDQ6MjkrMDA6MDB15HKJ
AAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTAyLTE3VDA5OjA0OjMwKzAwOjAwXYuPeAAAAABJRU5E
rkJggg==" />
</svg>

After

Width:  |  Height:  |  Size: 9.4 KiB

12
res/aur/wechat-devtools.desktop Executable file
View File

@ -0,0 +1,12 @@
[Desktop Entry]
Name=WeChat Devtools
Name[zh_CN]=web
Comment=The development tools for wechat web develop
Categories=Development;WebDevelopment;IDE;
Exec=env APPDATA=~/.config/wechat_devtools USERPROFILE=~ bash -c ' clean_cache(){ echo ""; rm -rf "$APPDATA/WeappCache"; rm -rf "$APPDATA/WeappVendor";}; if [[ -f "$APPDATA/.build_time" ]];then diff "$APPDATA/.build_time" "/opt/wechat-devtools/package.nw/.build_time" >/dev/null; if [ ! "$?" == "0" ];then \cp -f "/opt/wechat-devtools/package.nw/.build_time" "$APPDATA/.build_time";clean_cache; fi; else \cp -f "/opt/wechat-devtools/package.nw/.build_time" "$APPDATA/.build_time"; clean_cache; fi; /opt/wechat-devtools/nw --load-extension=~/.config/wechat_devtools/WeappPlugin --custom-devtools-frontend=file:///opt/wechat-devtools/package.nw/js/ideplugin/inspector %U'
Path=/opt/wechat-devtools
Icon=wechat-devtools
Type=Application
Terminal=false
StartupWMClass=nwjs_mbeenbnhnmdhkbicabncjghgnikfbgjh
MimeType=x-scheme-handler/wechatide

21
tools/build-aur.sh Executable file
View File

@ -0,0 +1,21 @@
#!/bin/bash
root_dir=$(cd `dirname $0`/.. && pwd -P)
tmp_dir="$root_dir/tmp"
build_dir="$root_dir/tmp/AUR"
rm -rf $build_dir
mkdir -p $build_dir
cp "$root_dir/tools"/*.sh "$build_dir"
cp "$root_dir/tools"/*.js "$build_dir"
cp "$root_dir/res/aur"/* "$build_dir"
sed -i 's/download.fastgit.org/github.com/' "$build_dir/PKGBUILD"
if [[ $1 == 'deb' ]];then
sed -i 's/libssh2/libssh2-1-dev/' "$build_dir/PKGBUILD"
sed -i 's/libxkbfile/libxkbfile-dev/' "$build_dir/PKGBUILD"
sed -i 's/gconf/gconf2/' "$build_dir/PKGBUILD"
sed -i 's/krb5/libkrb5-dev/' "$build_dir/PKGBUILD"
fi
cd $build_dir
# makepkg

View File

@ -10,7 +10,9 @@ const download = function () {
return new Promise((resolve, reject) => {
try {
fs.mkdirSync(path.resolve(__dirname, "../cache"));
} catch (error) {}
} catch (error) {
console.error(error)
}
let url = process.env['ACTION'] === 'true'?nodeConfig["url-global"]:nodeConfig.url
url = url.replace("${version}", nodeConfig.version)