summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authormsojocs2022-02-22 21:03:43 +0800
committermsojocs2022-02-22 21:03:43 +0800
commit6ba0e90d3b71641cc4f9fb119aebdd50dfd03110 (patch)
tree3224f6b181c73b5490696455d0b742814faa8a05
parent4cec68978b53b0d907d7576109d4eb8a96e8efdc (diff)
downloadaur-6ba0e90d3b71641cc4f9fb119aebdd50dfd03110.tar.gz
update: 替换编译器,删除wine依赖
-rw-r--r--.SRCINFO13
-rw-r--r--.gitignore2
-rw-r--r--PKGBUILD19
-rwxr-xr-xfix-core.sh44
-rwxr-xr-xfix-other.sh32
-rwxr-xr-xfix-package-name-node2
-rw-r--r--logo.svg488
-rw-r--r--wechat-devtools.desktop4
8 files changed, 193 insertions, 411 deletions
diff --git a/.SRCINFO b/.SRCINFO
index b3fbf6798722..61ab3d6d7414 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,21 +1,20 @@
pkgbase = wechat-devtools
pkgdesc = WeChat Devtools Linux version.
pkgver = 1.05.2201240
- pkgrel = 11
+ pkgrel = 12
epoch = 2
- url = https://github.com/msojocs/wechat-devtools-linux
+ url = https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html
arch = x86_64
license = unknown
makedepends = p7zip
makedepends = python2
- depends = wine
depends = gconf
depends = libxkbfile
options = !strip
source = nwjs-v0.53.1.tar.gz::https://npm.taobao.org/mirrors/nwjs/v0.53.1/nwjs-sdk-v0.53.1-linux-x64.tar.gz
source = wechat_devtools_1.05.2201240_x64.exe::https://dldir1.qq.com/WechatWebDev/release/p-ae42ee2cde4d42ee80ac60b35f183a99/wechat_devtools_1.05.2201240_x64.exe
source = node-v16.1.0.tar.gz::https://npm.taobao.org/mirrors/node/v16.1.0/node-v16.1.0-linux-x64.tar.gz
- source = compiler.tar.xz::https://download.fastgit.org/msojocs/wechat-devtools-linux/releases/download/v0.6/compiler.tar.xz
+ source = compiler.tar.gz::https://download.fastgit.org/msojocs/wechat-devtools-linux/releases/download/v0.14/compiler.tar.gz
source = wechat-devtools.desktop
source = logo.svg
source = fix-cli.sh
@@ -29,9 +28,9 @@ pkgbase = wechat-devtools
md5sums = b6f49803c51d0abacca2d1e566c7fe19
md5sums = 85552bae33e98eb186c5068419efce03
md5sums = 2280bfbbf29981fd5adce334f40146ff
- md5sums = c638ccefe09941372903c08ce70420c3
- md5sums = baf0db59fb340793854ac1ef23f68594
- md5sums = 88e0efe5d58444b3d39695d4fb16d61b
+ md5sums = 43cc0fabc8e37fe9cea1fff89989938a
+ md5sums = 6f64dd5f4bf7a395b0241d8ac1c93ab5
+ md5sums = 0f4353664123320280ea4d6bb295dce2
md5sums = SKIP
md5sums = SKIP
md5sums = SKIP
diff --git a/.gitignore b/.gitignore
index 6b96f8c19eaa..701f325c8724 100644
--- a/.gitignore
+++ b/.gitignore
@@ -5,6 +5,6 @@ node*.tar.gz
pkg/
src/
-compiler.tar.xz
+compiler.tar.gz
wechat-devtools-*.pkg.tar.xz
wechat-devtools-*.pkg.tar.zst
diff --git a/PKGBUILD b/PKGBUILD
index a13f469266f6..a4594f0e76f7 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -18,19 +18,19 @@ _node_version="16.1.0"
pkgname=wechat-devtools
pkgver="${_wechat_devtools_ver}" # 主版本号
-pkgrel=11 # 次版本号release
+pkgrel=12 # 次版本号release
epoch=2 # 大版本迭代强制更新(维护者变更,尽量不用)
pkgdesc="WeChat Devtools Linux version. "
arch=("x86_64")
-url="https://github.com/msojocs/wechat-devtools-linux"
+url="https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html"
license=('unknown')
-depends=('wine' 'gconf' 'libxkbfile')
+depends=('gconf' 'libxkbfile')
makedepends=('p7zip' 'python2')
# 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.xz::https://download.fastgit.org/msojocs/wechat-devtools-linux/releases/download/v0.6/compiler.tar.xz"
+ "compiler.tar.gz::https://download.fastgit.org/msojocs/wechat-devtools-linux/releases/download/v0.14/compiler.tar.gz"
"wechat-devtools.desktop"
"logo.svg"
"fix-cli.sh"
@@ -41,12 +41,12 @@ source=("nwjs-v${_nwjs_ver}.tar.gz::https://npm.taobao.org/mirrors/nwjs/v${_nwjs
"wxvpkg_pack"
"wxvpkg_unpack"
"fix-other.sh")
-md5sums=(b6f49803c51d0abacca2d1e566c7fe19
+md5sums=(b6f49803c51d0abacca2d1e566c7fe19 # nwjs
"${_wechat_devtools_md5}"
- 2280bfbbf29981fd5adce334f40146ff
- c638ccefe09941372903c08ce70420c3
- baf0db59fb340793854ac1ef23f68594
- 88e0efe5d58444b3d39695d4fb16d61b
+ 2280bfbbf29981fd5adce334f40146ff # nodejs
+ 43cc0fabc8e37fe9cea1fff89989938a # compiler
+ 6f64dd5f4bf7a395b0241d8ac1c93ab5 # desktop
+ 0f4353664123320280ea4d6bb295dce2 # svg
"SKIP"
"SKIP"
"SKIP"
@@ -83,6 +83,7 @@ build() {
export NW_PACKAGE_DIR="${srcdir}/wechat_devtools/code/package.nw"
export NW_VERSION=$_nwjs_ver
export srcdir=$srcdir
+ export NO_WINE=true
for script in fix-package-name-node fix-cli.sh fix-other.sh fix-menu.sh fix-core.sh rebuild-modules.sh; do
_log "run ${script}"
diff --git a/fix-core.sh b/fix-core.sh
index a53b724e269d..3f70c50bc192 100755
--- a/fix-core.sh
+++ b/fix-core.sh
@@ -1,5 +1,5 @@
#!/bin/bash
-echo "Fix Cloud Console"
+echo "Fix Core"
package_dir="$srcdir/wechat_devtools/code/package.nw"
tmp_dir=$(mktemp -d)
@@ -15,23 +15,47 @@ node "$srcdir/wxvpkg_unpack" "$package_dir/core.wxvpkg" "$tmp_dir/core.wxvpkg"
#
# find
-open_find_result=$( grep -lr "this.props.onWindowOpenFail());" "$tmp_dir/core.wxvpkg" )
+open_find_result=$( grep -lr "this.props.onWindowOpenFail());if" "$tmp_dir/core.wxvpkg" )
echo "云开发控制台启动点: $open_find_result"
-# replace
-new_cb_handle="this.props.onWindowOpenFail());Object.keys(window).forEach(key=>{if(!e.window[key]){try{e.window[key]=window[key];}catch(e){console.error(e);}}});"
-sed -i "s/this.props.onWindowOpenFail());/$new_cb_handle/g" $open_find_result
+if [[ ! -z $open_find_result ]];then
+ # replace
+ new_cb_handle="this.props.onWindowOpenFail());Object.keys(window).forEach(key=>{if(!e.window[key]){try{e.window[key]=window[key];}catch(e){console.error(e);}}});"
+ sed -i "s/this.props.onWindowOpenFail());/$new_cb_handle/g" $open_find_result
+fi
token_find_result=$( grep -lr "constructor(){this._sessionToken=\"\",this._tokenMap={}}" "$tmp_dir/core.wxvpkg" )
echo "WebSocket token存储对象位置: $token_find_result"
-new_constructor="constructor(){if(window.tokenData){/*有就直接用*/this._sessionToken=window.tokenData._sessionToken;this._tokenMap=window.tokenData._tokenMap;}else{/*没有就新建*/this._sessionToken=\"\",this._tokenMap={};window.tokenData=this;/*新建完要给中间人*/}}"
-sed -i "s#constructor(){this._sessionToken=\"\",this._tokenMap={}}#$new_constructor#g" "$token_find_result"
+if [[ ! -z $token_find_result ]];then
+ new_constructor="constructor(){if(window.tokenData){/*有就直接用*/this._sessionToken=window.tokenData._sessionToken;this._tokenMap=window.tokenData._tokenMap;}else{/*没有就新建*/this._sessionToken=\"\",this._tokenMap={};window.tokenData=this;/*新建完要给中间人*/}}"
+ sed -i "s#constructor(){this._sessionToken=\"\",this._tokenMap={}}#$new_constructor#g" "$token_find_result"
+fi
# open -a Terminal "`pwd`" --> gnome-terminal
find_result=$( grep -lr 'open -a Terminal "`pwd`"' "$tmp_dir/core.wxvpkg" )
-echo "Terminal启动位置: $find_result"
-new_str="gnome-terminal"
-sed -i "s#open -a Terminal \"\`pwd\`\"#$new_str#g" "$find_result"
+if [[ ! -z $find_result ]];then
+ echo "Terminal启动位置: $find_result"
+ new_str="gnome-terminal"
+ sed -i "s#open -a Terminal \"\`pwd\`\"#$new_str#g" "$find_result"
+fi
+
+# wcc、wcsc处理,设置NO_WINE=true环境变量生效
+if [[ $NO_WINE == 'true' ]];then
+ # "wcc.exe":!0,"wcsc.exe":!0
+ find_result=$( grep -lr '{wcc:!0,wcsc:!0,DevToolProtector:!0}' "$tmp_dir/core.wxvpkg" )
+ if [[ ! -z $find_result ]];then
+ echo "wcc: $find_result"
+ new_str='{"wcc.bin":!0,"wcsc.bin":!0,wcc:!0,wcsc:!0,DevToolProtector:!0}'
+ sed -i "s#{wcc:!0,wcsc:!0,DevToolProtector:!0}#$new_str#g" "$find_result"
+ new_str='"linux"===process.platform'
+ sed -i "s#\"darwin\"===process.platform#$new_str#g" "$find_result"
+ fi
+
+ current=`date "+%Y-%m-%d %H:%M:%S"`
+ timeStamp=`date -d "$current" +%s`
+ echo $timeStamp > "${package_dir}/.build_time"
+fi
# pack 路径 到 文件
+echo "pack"
node "$srcdir/wxvpkg_pack" "$tmp_dir/core.wxvpkg" "$package_dir/core.wxvpkg"
rm -rf "$tmp_dir" \ No newline at end of file
diff --git a/fix-other.sh b/fix-other.sh
index 8f4f80b33714..c179ca689d51 100755
--- a/fix-other.sh
+++ b/fix-other.sh
@@ -12,20 +12,11 @@ sed -i 's#module.exports = createWebviewManager;#module.exports = createWebviewM
# 修复:可视化用的wcc,wcsc
echo "fix: wcc,wcsc"
-mkdir "$tmp_dir/node_modules"
+if [[ ! -d "$tmp_dir/node_modules" ]];then
+ mkdir "$tmp_dir/node_modules"
+fi
cd $tmp_dir && npm install miniprogram-compiler
# wcc wcsc
-# 预览编译
-# cd "${package_dir}/js/vendor/" && rm -rf "wcc.exe"
-# cp "${package_dir}/node_modules_tmp/node_modules/miniprogram-compiler/bin/linux/wcc" "${package_dir}/js/vendor/wcc.exe"
-# wcc_md5=$( md5sum wcc.exe|cut -d ' ' -f1 ) && \
-# sed -i 's/wcc.exe": ".*"/wcc.exe": "'"${wcc_md5}"'"/g' "config.json"
-# cd "${package_dir}/js/vendor/" && rm -rf "wcsc.exe"
-# cp "${package_dir}/node_modules_tmp/node_modules/miniprogram-compiler/bin/linux/wcsc" "${package_dir}/js/vendor/wcsc.exe"
-# cd "${package_dir}/js/vendor" && \
-# wcsc_md5=$( md5sum wcsc.exe|cut -d ' ' -f1 ) && \
-# sed -i 's/wcsc.exe": ".*"/wcsc.exe": "'"${wcsc_md5}"'"/g' "config.json"
-
# 可视化编译
(cd "${package_dir}/node_modules/" \
&& rm -rf wcc wcsc \
@@ -36,4 +27,19 @@ cd $tmp_dir && npm install miniprogram-compiler
&& cp -r "${srcdir}/compiler/wcsc_node"/* "wcsc"
)
-rm -rf $tmp_dir \ No newline at end of file
+# 预览编译,设置NO_WINE=true环境变量生效
+# 如果是mac执行wcc,否则wcc.exe
+if [[ $NO_WINE == 'true' ]];then
+ \cp -rf "${srcdir}/compiler/generatemd5.js" "${package_dir}/js/vendor/generatemd5.js"
+ \cp -rf "${srcdir}/compiler/nodejs/wcc" "${package_dir}/js/vendor/wcc"
+ \cp -rf "${srcdir}/compiler/nodejs/wcsc" "${package_dir}/js/vendor/wcsc"
+ \cp -rf "${tmp_dir}/node_modules/miniprogram-compiler/bin/linux/wcc" "${package_dir}/js/vendor/wcc.bin"
+ \cp -rf "${tmp_dir}/node_modules/miniprogram-compiler/bin/linux/wcsc" "${package_dir}/js/vendor/wcsc.bin"
+ node "${package_dir}/js/vendor/generatemd5.js"
+
+ current=`date "+%Y-%m-%d %H:%M:%S"`
+ timeStamp=`date -d "$current" +%s`
+ echo $timeStamp > "${package_dir}/.build_time"
+fi
+
+rm -rf "$tmp_dir/node_modules" \ No newline at end of file
diff --git a/fix-package-name-node b/fix-package-name-node
index c8d1a0c2499c..a37f59efb41d 100755
--- a/fix-package-name-node
+++ b/fix-package-name-node
@@ -4,11 +4,9 @@ const fs = require("fs");
const parseFile = function (path) {
- console.log("fix start")
if (!fs.existsSync(path)) {
return;
}
- console.log("content")
let content = JSON.parse(fs.readFileSync(path, "utf8"));
content.name = "wechat_devtools";
diff --git a/logo.svg b/logo.svg
index 0137621b3a60..1dc031c50ef3 100644
--- a/logo.svg
+++ b/logo.svg
@@ -1,369 +1,123 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- width="56"
- height="56"
- viewBox="0 0 56 56"
- version="1.1"
- id="svg119"
- sodipodi:docname="wechat-devtools.svg"
- inkscape:version="0.92.4 5da689c313, 2019-01-14">
- <metadata
- id="metadata123">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <sodipodi:namedview
- pagecolor="#ffffff"
- bordercolor="#666666"
- borderopacity="1"
- objecttolerance="10"
- gridtolerance="10"
- guidetolerance="10"
- inkscape:pageopacity="0"
- inkscape:pageshadow="2"
- inkscape:window-width="1920"
- inkscape:window-height="1052"
- id="namedview121"
- showgrid="false"
- inkscape:zoom="8.4285714"
- inkscape:cx="26.298508"
- inkscape:cy="38.5634"
- inkscape:window-x="0"
- inkscape:window-y="28"
- inkscape:window-maximized="1"
- inkscape:current-layer="g113" />
- <title
- id="title2">Group</title>
- <defs
- id="defs91">
- <linearGradient
- x1="50%"
- y1="0%"
- x2="50%"
- y2="100%"
- id="c">
- <stop
- stop-color="#7283D8"
- offset="3.611%"
- id="stop4" />
- <stop
- stop-color="#7081D5"
- offset="100%"
- id="stop6" />
- </linearGradient>
- <circle
- id="b"
- cx="24"
- cy="24"
- r="24" />
- <filter
- x="-16.7%"
- y="-10.4%"
- width="133.3%"
- height="133.3%"
- filterUnits="objectBoundingBox"
- id="a">
- <feMorphology
- radius="1.5"
- operator="dilate"
- in="SourceAlpha"
- result="shadowSpreadOuter1"
- id="feMorphology10" />
- <feOffset
- dy="2"
- in="shadowSpreadOuter1"
- result="shadowOffsetOuter1"
- id="feOffset12" />
- <feGaussianBlur
- stdDeviation="1.5"
- in="shadowOffsetOuter1"
- result="shadowBlurOuter1"
- id="feGaussianBlur14" />
- <feComposite
- in="shadowBlurOuter1"
- in2="SourceAlpha"
- operator="out"
- result="shadowBlurOuter1"
- id="feComposite16" />
- <feColorMatrix
- values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.04 0"
- in="shadowBlurOuter1"
- result="shadowMatrixOuter1"
- id="feColorMatrix18" />
- <feMorphology
- radius="1.5"
- operator="dilate"
- in="SourceAlpha"
- result="shadowSpreadOuter2"
- id="feMorphology20" />
- <feOffset
- dy="1"
- in="shadowSpreadOuter2"
- result="shadowOffsetOuter2"
- id="feOffset22" />
- <feGaussianBlur
- stdDeviation=".5"
- in="shadowOffsetOuter2"
- result="shadowBlurOuter2"
- id="feGaussianBlur24" />
- <feComposite
- in="shadowBlurOuter2"
- in2="SourceAlpha"
- operator="out"
- result="shadowBlurOuter2"
- id="feComposite26" />
- <feColorMatrix
- values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.06 0"
- in="shadowBlurOuter2"
- result="shadowMatrixOuter2"
- id="feColorMatrix28" />
- <feMerge
- id="feMerge34">
- <feMergeNode
- in="shadowMatrixOuter1"
- id="feMergeNode30" />
- <feMergeNode
- in="shadowMatrixOuter2"
- id="feMergeNode32" />
- </feMerge>
- </filter>
- <filter
- x="-11.5%"
- y="-5.2%"
- width="122.9%"
- height="122.9%"
- filterUnits="objectBoundingBox"
- id="d">
- <feOffset
- in="SourceAlpha"
- result="shadowOffsetInner1"
- id="feOffset37" />
- <feComposite
- in="shadowOffsetInner1"
- in2="SourceAlpha"
- operator="arithmetic"
- k2="-1"
- k3="1"
- result="shadowInnerInner1"
- id="feComposite39" />
- <feColorMatrix
- values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.197322237 0"
- in="shadowInnerInner1"
- id="feColorMatrix41" />
- </filter>
- <linearGradient
- x1="50%"
- y1="0%"
- x2="50%"
- y2="100%"
- id="g">
- <stop
- stop-color="#FFF"
- offset="0%"
- id="stop44" />
- <stop
- stop-color="#F5F8FD"
- offset="100%"
- id="stop46" />
- </linearGradient>
- <circle
- id="f"
- cx="24"
- cy="24"
- r="22.5" />
- <filter
- x="-15.6%"
- y="-8.9%"
- width="131.1%"
- height="131.1%"
- filterUnits="objectBoundingBox"
- id="e">
- <feMorphology
- radius=".5"
- operator="dilate"
- in="SourceAlpha"
- result="shadowSpreadOuter1"
- id="feMorphology50" />
- <feOffset
- dy="2"
- in="shadowSpreadOuter1"
- result="shadowOffsetOuter1"
- id="feOffset52" />
- <feGaussianBlur
- stdDeviation="1.5"
- in="shadowOffsetOuter1"
- result="shadowBlurOuter1"
- id="feGaussianBlur54" />
- <feComposite
- in="shadowBlurOuter1"
- in2="SourceAlpha"
- operator="out"
- result="shadowBlurOuter1"
- id="feComposite56" />
- <feColorMatrix
- values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.04 0"
- in="shadowBlurOuter1"
- result="shadowMatrixOuter1"
- id="feColorMatrix58" />
- <feMorphology
- radius=".5"
- operator="dilate"
- in="SourceAlpha"
- result="shadowSpreadOuter2"
- id="feMorphology60" />
- <feOffset
- dy="1"
- in="shadowSpreadOuter2"
- result="shadowOffsetOuter2"
- id="feOffset62" />
- <feGaussianBlur
- stdDeviation=".5"
- in="shadowOffsetOuter2"
- result="shadowBlurOuter2"
- id="feGaussianBlur64" />
- <feComposite
- in="shadowBlurOuter2"
- in2="SourceAlpha"
- operator="out"
- result="shadowBlurOuter2"
- id="feComposite66" />
- <feColorMatrix
- values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.06 0"
- in="shadowBlurOuter2"
- result="shadowMatrixOuter2"
- id="feColorMatrix68" />
- <feMerge
- id="feMerge74">
- <feMergeNode
- in="shadowMatrixOuter1"
- id="feMergeNode70" />
- <feMergeNode
- in="shadowMatrixOuter2"
- id="feMergeNode72" />
- </feMerge>
- </filter>
- <filter
- x="-12.2%"
- y="-5.6%"
- width="124.4%"
- height="124.4%"
- filterUnits="objectBoundingBox"
- id="h">
- <feGaussianBlur
- stdDeviation=".5"
- in="SourceAlpha"
- result="shadowBlurInner1"
- id="feGaussianBlur77" />
- <feOffset
- dy="1"
- in="shadowBlurInner1"
- result="shadowOffsetInner1"
- id="feOffset79" />
- <feComposite
- in="shadowOffsetInner1"
- in2="SourceAlpha"
- operator="arithmetic"
- k2="-1"
- k3="1"
- result="shadowInnerInner1"
- id="feComposite81" />
- <feColorMatrix
- values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0"
- in="shadowInnerInner1"
- id="feColorMatrix83" />
- </filter>
- <linearGradient
- x1="50%"
- y1="0%"
- x2="50%"
- y2="100%"
- id="i">
- <stop
- stop-color="#7586DB"
- offset="0%"
- id="stop86" />
- <stop
- stop-color="#697ACD"
- offset="100%"
- id="stop88" />
- </linearGradient>
- </defs>
- <g
- id="g117"
- fill-rule="evenodd"
- fill="none">
- <g
- transform="translate(4 2)"
- id="g103">
- <use
- xlink:href="#b"
- id="use93"
- filter="url(#a)"
- fill="#000" />
- <use
- xlink:href="#b"
- id="use95"
- fill="url(#c)" />
- <use
- xlink:href="#b"
- id="use97"
- filter="url(#d)"
- fill="#000" />
- <circle
- cx="24"
- cy="24"
- r="24.75"
- id="circle99"
- stroke-width="1.5"
- stroke="#FFF" />
- <circle
- cx="24"
- cy="24"
- r="24.25"
- id="circle101"
- stroke-opacity=".595"
- stroke-width=".5"
- stroke="#232A50" />
- </g>
- <g
- transform="translate(4 2)"
- id="g113">
- <use
- xlink:href="#f"
- id="use105"
- filter="url(#e)"
- fill="#000" />
- <use
- xlink:href="#f"
- id="use107"
- fill="url(#g)" />
- <circle
- cx="24"
- cy="24"
- r="22.75"
- id="circle111"
- stroke-opacity=".178"
- stroke-width=".5"
- stroke="#272E50" />
- </g>
- <path
- d="M27.687 15.75a5.753 5.753 0 0 0-2.812.726c-1.499.838-2.5 2.32-2.5 4.01v7.028c0 1.266-1.26 2.292-2.812 2.292-1.554 0-2.813-1.026-2.813-2.292 0-.9.64-1.678 1.567-2.053.067-.027.135-.052.205-.075.584-.229 1.085-.66 1.27-1.159.275-.737-.236-1.335-1.141-1.335-.226 0-.454.037-.675.104l-.003.001c-1.309.368-2.4 1.173-3.056 2.225a4.312 4.312 0 0 0-.667 2.292c0 2.611 2.383 4.736 5.313 4.736a5.754 5.754 0 0 0 2.812-.726c1.498-.838 2.5-2.32 2.5-4.01v-7.028c0-1.266 1.26-2.292 2.812-2.292 1.554 0 2.813 1.026 2.813 2.292 0 .94-.694 1.747-1.686 2.1-.64.21-1.165.664-1.365 1.2-.273.735.235 1.33 1.136 1.33.204 0 .41-.035.612-.09l.098-.028c1.3-.37 2.386-1.173 3.038-2.22.424-.68.667-1.46.667-2.292 0-2.611-2.383-4.736-5.313-4.736"
- transform="translate(4 2)"
- id="path115"
- fill="url(#i)" />
- </g>
+<!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,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
+rkJggg==" />
</svg>
diff --git a/wechat-devtools.desktop b/wechat-devtools.desktop
index ded5c0500388..c559d58bc391 100644
--- a/wechat-devtools.desktop
+++ b/wechat-devtools.desktop
@@ -3,10 +3,10 @@ Name=WeChat Devtools
Name[zh_CN]=微信web开发者工具
Comment=The development tools for wechat web develop
Categories=Development;WebDevelopment;IDE;
-Exec=env APPDATA=/opt/wechat-devtools/ USERPROFILE=~ /opt/wechat-devtools/nw --load-extension=~/.config/wechat_devtools/WeappPlugin --custom-devtools-frontend=file:///opt/wechat-devtools/package.nw/js/ideplugin/inspector %U
+Exec=env APPDATA=~/.config/wechat_devtools USERPROFILE=~ bash -c ' current=`date "+%Y-%m-%d %H:%M:%S"`; timeStamp=`date -d "$current" +%s`; if [[ -f "$APPDATA/.run_time" ]];then run_time=`cat "$APPDATA/.run_time"`; else run_time=0; fi; if [[ -f "$root_dir/package.nw/.build_time" ]];then build_time=`cat "$root_dir/package.nw/.build_time"`; else build_time=timeStamp; fi; if [[ ! $build_time < $run_time ]];then echo $timeStamp > "$APPDATA/.run_time"; rm -rf "$APPDATA/WeappCache"; rm -rf "$APPDATA/WeappVendor"; 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
+MimeType=x-scheme-handler/wechatide \ No newline at end of file