diff --git a/changelog.md b/changelog.md index da10e66..0405d43 100644 --- a/changelog.md +++ b/changelog.md @@ -1,5 +1,6 @@ # 1.05.2203070-7 / 2022-03-19 - fix: cli +- 兼容ubuntu16.04 # 1.05.2203070-6 / 2022-03-19 - feat: wcc node模块支持wxml引用 diff --git a/docker/entrypoint b/docker/entrypoint index 6658962..777e6b7 100755 --- a/docker/entrypoint +++ b/docker/entrypoint @@ -29,5 +29,5 @@ rm -rf node nwjs package.nw # exec ./tools/rebuild-node-modules 0.53.1 ./tools/setup-wechat-devtools-bash -chmod -R 777 tmp node nwjs package.nw -ls -l package.nw +# chmod -R 777 tmp node nwjs package.nw +# ls -l package.nw diff --git a/res/deepin/DEBIAN/control b/res/deepin/DEBIAN/control deleted file mode 100644 index de2ac60..0000000 --- a/res/deepin/DEBIAN/control +++ /dev/null @@ -1,7 +0,0 @@ -Package: io.github.msojocs.wechat-devtools -Version: BUILD_VERSION -Section: utils -Priority: optional -Architecture: amd64 -Maintainer: msojocs -Description: WeChat Devtools For Linux. diff --git a/res/deepin/debian/changelog b/res/deepin/debian/changelog new file mode 100644 index 0000000..1f0725b --- /dev/null +++ b/res/deepin/debian/changelog @@ -0,0 +1,8 @@ +io.github.msojocs.wechat-devtools-no-wine (1.05.2203070-7) unstable; urgency=medium + + * fix: + - cli + * 兼容 + - ubuntu16.04 + + -- msojocs Wed, 23 Mar 2022 14:56:04 +0800 diff --git a/res/deepin/debian/compat b/res/deepin/debian/compat new file mode 100644 index 0000000..9a03714 --- /dev/null +++ b/res/deepin/debian/compat @@ -0,0 +1 @@ +10 \ No newline at end of file diff --git a/res/deepin/debian/control b/res/deepin/debian/control new file mode 100644 index 0000000..ac4c781 --- /dev/null +++ b/res/deepin/debian/control @@ -0,0 +1,13 @@ +Source: io.github.msojocs.wechat-devtools +Maintainer: msojocs +Standards-Version: BUILD_VERSION +Priority: optional +Section: application + +Package: io.github.msojocs.wechat-devtools +Architecture: amd64 +Description: WeChat Devtools For Linux. + To help developers develop and debug Weixin Mini Programs more simply and efficiently, + Tencent have launched the new Weixin DevTools based on the original Official Account + web debugging tools. Therefore, we now have two developer modes (Official Account web + debugging) and (Mini Program debugging). This version is unofficial. diff --git a/res/deepin/debian/install b/res/deepin/debian/install new file mode 100644 index 0000000..1f1e5db --- /dev/null +++ b/res/deepin/debian/install @@ -0,0 +1,2 @@ +opt . +usr . \ No newline at end of file diff --git a/res/deepin/debian/rules b/res/deepin/debian/rules new file mode 100755 index 0000000..007a364 --- /dev/null +++ b/res/deepin/debian/rules @@ -0,0 +1,21 @@ +#!/usr/bin/make -f +# See debhelper(7) (uncomment to enable) +# output every command that modifies files on the build system. +DH_VERBOSE = 1 + +# see FEATURE AREAS in dpkg-buildflags(1) +#export DEB_BUILD_MAINT_OPTIONS = hardening=+all + +# see ENVIRONMENT in dpkg-buildflags(1) +# package maintainers to append CFLAGS +#export DEB_CFLAGS_MAINT_APPEND = -Wall -pedantic +# package maintainers to append LDFLAGS +#export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed + +override_dh_strip_nondeterminism: + +override_dh_shlibdeps: + dh_shlibdeps --dpkg-shlibdeps-params=--ignore-missing-info + +%: + dh "$@" diff --git a/res/deepin/debian/shlibs.local b/res/deepin/debian/shlibs.local new file mode 100644 index 0000000..e69de29 diff --git a/tools/build-deepin copy.sh b/tools/build-deepin copy.sh new file mode 100755 index 0000000..258f92c --- /dev/null +++ b/tools/build-deepin copy.sh @@ -0,0 +1,93 @@ +#!/bin/bash +set -e +notice() { + echo -e "\033[36m $1 \033[0m " +} +fail() { + echo -e "\033[41;37m 失败 \033[0m $1" +} + + +root_dir=$(cd `dirname $0`/.. && pwd -P) +DEVTOOLS_VERSION=$( cat "$root_dir/package.nw/package.json" | grep -m 1 -Eo "\"[0-9]{1}\.[0-9]{2}\.[0-9]+" ) +DEVTOOLS_VERSION="${DEVTOOLS_VERSION//\"/}" +echo $BUILD_VERSION +if [ -n "$1" ];then + export BUILD_VERSION=$1 +fi +if [ -z "$BUILD_VERSION" ];then + export BUILD_VERSION='continuous' +fi +if [ "$BUILD_VERSION" == "continuous" ];then + export BUILD_VERSION="v${DEVTOOLS_VERSION}-continuous" +fi + +notice "检查版本号 -> $BUILD_VERSION" +INPUT_VERSION=$( echo $BUILD_VERSION | sed 's/v//' | sed 's/-.*//' ) +if [[ "$INPUT_VERSION" != "$DEVTOOLS_VERSION" ]];then + fail "传入版本号与实际版本号不一致!" + exit 1 +fi + +############ 准备构建deb包所需的文件及结构 ################ +package_name="io.github.msojocs.wechat-devtools" +if [[ $NO_WINE == 'true' ]];then + BUILD_MARK='no_wine' + package_name="${package_name}-no-wine" +else + BUILD_MARK='wine' + NAME_SUFFIX=" (wine)" + package_name="${package_name}-wine" +fi + +echo "root_dir: $root_dir" +tmp_dir="$root_dir/tmp" +build_dir="$root_dir/tmp/$package_name" +base_dir="$build_dir/opt/apps/$package_name" + +# Remove any previous build +rm -rf $build_dir +# Make usr and icons dirs +notice "Make Dirs" +mkdir -p $base_dir/{entries,files} +mkdir -p $base_dir/entries/{applications,icons/hicolor/scalable/apps/,mime,plugins,services} +mkdir -p $base_dir/files/{bin/bin,doc,lib} + +notice "COPY Files" +cp -r "$root_dir/res/deepin"/* $build_dir +mv "$build_dir/opt/apps/io.github.msojocs.wechat-devtools"/* $base_dir +rm -r "$build_dir/opt/apps/io.github.msojocs.wechat-devtools" +sed -i "s/BUILD_VERSION/${BUILD_VERSION//v/}/" "$build_dir/debian/control" "$base_dir/info" +sed -i "s/io.github.msojocs.wechat-devtools/$package_name/g" "$base_dir/info" "$build_dir/debian/control" +\cp -rf "$root_dir/bin/wechat-devtools" "$base_dir/files/bin/bin/wechat-devtools" + +# desktop +\cp -rf "$root_dir/res/template.desktop" "$base_dir/entries/applications/$package_name.desktop" +sed -i "s#Icon=dir/res/icons/wechat-devtools.svg#Icon=$package_name#" "$base_dir/entries/applications/$package_name.desktop" +sed -i "s#dir#/opt/apps/$package_name/files/bin#" "$base_dir/entries/applications/$package_name.desktop" +sed -i "s/WeChat Dev Tools/WeChat Dev Tools$NAME_SUFFIX/g" "$base_dir/info" "$base_dir/entries/applications/$package_name.desktop" +sed -i "s/微信开发者工具/微信开发者工具$NAME_SUFFIX/g" "$base_dir/entries/applications/$package_name.desktop" + +\cp -rf "$root_dir/res/icons/wechat-devtools.svg" "$base_dir/entries/icons/hicolor/scalable/apps/$package_name.svg" + +# 主体文件 +cp -r "$root_dir/package.nw" "$base_dir/files/bin/package.nw" +cp -r "$root_dir/nwjs" "$base_dir/files/bin/nwjs" +if [ -f "$root_dir/node/bin/node" ];then + rm -rf "$base_dir/files/bin/nwjs"/{node,node.exe} + cp "$root_dir/node/bin/node" "$base_dir/files/bin/nwjs/node" + cd "$base_dir/files/bin/nwjs/" && ln -s "node" "node.exe" +fi +# chown -R root:root "$base_dir" + +notice "BUILD DEB Package" +cd "$build_dir" +ls -l "$build_dir" +mkdir -p "$root_dir/tmp/build" + +if [[ ! $NO_WINE -eq 'true' ]];then + echo "Depends: wine, wine-binfmt" >> "$build_dir/debian/control" +fi + +# dpkg-deb -b . "$root_dir/tmp/build/WeChat_Dev_Tools_${BUILD_VERSION}_amd64_${BUILD_MARK}_deepin.deb" +debuild \ No newline at end of file diff --git a/tools/build-deepin.sh b/tools/build-deepin.sh index 13ed69a..94d203c 100755 --- a/tools/build-deepin.sh +++ b/tools/build-deepin.sh @@ -21,7 +21,6 @@ fi if [ "$BUILD_VERSION" == "continuous" ];then export BUILD_VERSION="v${DEVTOOLS_VERSION}-continuous" fi -echo $BUILD_VERSION notice "检查版本号 -> $BUILD_VERSION" INPUT_VERSION=$( echo $BUILD_VERSION | sed 's/v//' | sed 's/-.*//' ) @@ -41,10 +40,9 @@ else package_name="${package_name}-wine" fi -root_dir=$(cd `dirname $0`/.. && pwd -P) echo "root_dir: $root_dir" tmp_dir="$root_dir/tmp" -build_dir="$root_dir/tmp/deepin" +build_dir="$root_dir/tmp/$package_name" base_dir="$build_dir/opt/apps/$package_name" # Remove any previous build @@ -59,8 +57,8 @@ notice "COPY Files" cp -r "$root_dir/res/deepin"/* $build_dir mv "$build_dir/opt/apps/io.github.msojocs.wechat-devtools"/* $base_dir rm -r "$build_dir/opt/apps/io.github.msojocs.wechat-devtools" -sed -i "s/BUILD_VERSION/${BUILD_VERSION//v/}/" "$build_dir/DEBIAN/control" "$base_dir/info" -sed -i "s/io.github.msojocs.wechat-devtools/$package_name/g" "$base_dir/info" "$build_dir/DEBIAN/control" +sed -i "s/BUILD_VERSION/${BUILD_VERSION//v/}/" "$build_dir/debian/control" "$base_dir/info" +sed -i "s/io.github.msojocs.wechat-devtools/$package_name/g" "$base_dir/info" "$build_dir/debian/control" \cp -rf "$root_dir/bin/wechat-devtools" "$base_dir/files/bin/bin/wechat-devtools" # desktop @@ -72,6 +70,11 @@ sed -i "s/微信开发者工具/微信开发者工具$NAME_SUFFIX/g" "$base_dir/ \cp -rf "$root_dir/res/icons/wechat-devtools.svg" "$base_dir/entries/icons/hicolor/scalable/apps/$package_name.svg" +# 兼容普通deb +mkdir -p "$build_dir/usr/share/applications" "$build_dir/usr/share/icons/hicolor/scalable/apps" +\cp -rf "$base_dir/entries/applications/$package_name.desktop" "$build_dir/usr/share/applications/$package_name.desktop" +\cp -rf "$base_dir/entries/icons/hicolor/scalable/apps/$package_name.svg" "$build_dir/usr/share/icons/hicolor/scalable/apps/$package_name.svg" + # 主体文件 cp -r "$root_dir/package.nw" "$base_dir/files/bin/package.nw" cp -r "$root_dir/nwjs" "$base_dir/files/bin/nwjs" @@ -80,7 +83,7 @@ if [ -f "$root_dir/node/bin/node" ];then cp "$root_dir/node/bin/node" "$base_dir/files/bin/nwjs/node" cd "$base_dir/files/bin/nwjs/" && ln -s "node" "node.exe" fi -chown -R root:root "$base_dir" +# chown -R root:root "$base_dir" notice "BUILD DEB Package" cd "$build_dir" @@ -88,7 +91,10 @@ ls -l "$build_dir" mkdir -p "$root_dir/tmp/build" if [[ ! $NO_WINE -eq 'true' ]];then - echo "Depends: wine, wine-binfmt" >> "$build_dir/DEBIAN/control" + echo "Depends: wine, wine-binfmt" >> "$build_dir/debian/control" fi -dpkg-deb -b . "$root_dir/tmp/build/WeChat_Dev_Tools_${BUILD_VERSION}_amd64_${BUILD_MARK}_deepin.deb" +# cd "$tmp_dir" +# tar -zcf "$tmp_dir/${package_name}_${BUILD_VERSION//v/}.orig.tar.gz" "$package_name" +# dpkg-deb -b . "$root_dir/tmp/build/WeChat_Dev_Tools_${BUILD_VERSION}_amd64_${BUILD_MARK}_deepin.deb" +echo 'y' | debuild \ No newline at end of file