diff options
author | Codist | 2019-11-17 21:24:54 +0800 |
---|---|---|
committer | Codist | 2019-11-17 21:24:54 +0800 |
commit | 0c625c793f2c2a4c59eca632141059fb943b2054 (patch) | |
tree | bcfec50a55a2c727ea9e372bcc5c9f2d1953835c | |
parent | 12a9c5989596c17674e8769e60d398d501819fb0 (diff) | |
download | aur-0c625c793f2c2a4c59eca632141059fb943b2054.tar.gz |
Upgrade deepin.com.qq.im to 9.1.8deepin0
Signed-off-by: Codist <countstarlight@gmail.com>
-rw-r--r-- | .SRCINFO | 12 | ||||
-rw-r--r-- | .travis.yml | 2 | ||||
-rw-r--r-- | PKGBUILD | 22 | ||||
-rw-r--r-- | README.md | 91 | ||||
-rw-r--r-- | deepin-wine-qq.install | 2 | ||||
-rw-r--r-- | reg.patch | 71 | ||||
-rwxr-xr-x | run.sh | 52 |
7 files changed, 164 insertions, 88 deletions
@@ -1,7 +1,7 @@ pkgbase = deepin-wine-qq pkgdesc = Tencent QQ (com.qq.im) on Deepin Wine For Archlinux pkgver = 9.1.8.26211 - pkgrel = 1 + pkgrel = 2 url = http://im.qq.com/ install = deepin-wine-qq.install arch = x86_64 @@ -20,14 +20,12 @@ pkgbase = deepin-wine-qq depends = lib32-gnutls conflicts = deepin-qq-im conflicts = deepin.com.qq.im - source = https://mirrors.ustc.edu.cn/deepin/pool/non-free/d/deepin.com.qq.im/deepin.com.qq.im_8.9.19983deepin23_i386.deb - source = https://qd.myapp.com/myapp/qqteam/pcqq/PCQQ2019.exe + source = https://mirrors.ustc.edu.cn/deepin/pool/non-free/d/deepin.com.qq.im/deepin.com.qq.im_9.1.8deepin0_i386.deb source = run.sh source = reg.patch - md5sums = 5135313eb131feeb6fef613ba02804cf - md5sums = 98ae54992ae982ee9527a535fbd804db - md5sums = effb142fefd55e3c2ca0f5cb3a84b676 - md5sums = 612646e3bf740a7b3ec6493466da724e + md5sums = d35bd4abfd1ac4c5e71c7fbc5282ccbd + md5sums = 2ac164be0ec6f25947913a2a5ab5f455 + md5sums = 0e6c4358a4914ef8be6f4abc8423a69a pkgname = deepin-wine-qq diff --git a/.travis.yml b/.travis.yml index 39c015587861..e71b9923f5eb 100644 --- a/.travis.yml +++ b/.travis.yml @@ -3,7 +3,7 @@ sudo: required services: - docker -arch: +archlinux: repos: - archlinuxfr=http://repo.archlinux.fr/$arch packages: @@ -2,9 +2,9 @@ pkgname=deepin-wine-qq pkgver=9.1.8.26211 -exename="PCQQ2019.exe" -deepinqqver=8.9.19983deepin23 -pkgrel=1 +#exename="PCQQ2019.exe" +deepinqqver=9.1.8deepin0 +pkgrel=2 pkgdesc="Tencent QQ (com.qq.im) on Deepin Wine For Archlinux" arch=("x86_64") url="http://im.qq.com/" @@ -14,13 +14,13 @@ conflicts=('deepin-qq-im' 'deepin.com.qq.im') install="deepin-wine-qq.install" _mirror="https://mirrors.ustc.edu.cn/deepin" source=("$_mirror/pool/non-free/d/deepin.com.qq.im/deepin.com.qq.im_${deepinqqver}_i386.deb" - "https://qd.myapp.com/myapp/qqteam/pcqq/$exename" + #"https://qd.myapp.com/myapp/qqteam/pcqq/$exename" "run.sh" "reg.patch") -md5sums=('5135313eb131feeb6fef613ba02804cf' - '98ae54992ae982ee9527a535fbd804db' - 'effb142fefd55e3c2ca0f5cb3a84b676' - '612646e3bf740a7b3ec6493466da724e') +md5sums=('d35bd4abfd1ac4c5e71c7fbc5282ccbd' + #'d8e48b3397612847a9ec7733e025258a' + '2ac164be0ec6f25947913a2a5ab5f455' + '0e6c4358a4914ef8be6f4abc8423a69a') build() { msg "Extracting DPKG package ..." @@ -29,8 +29,8 @@ build() { sed "s/\(Categories.*$\)/\1Network;/" -i "${srcdir}/dpkgdir/usr/share/applications/deepin.com.qq.im.desktop" msg "Extracting Deepin Wine QQ archive ..." 7z x -aoa "${srcdir}/dpkgdir/opt/deepinwine/apps/Deepin-QQ/files.7z" -o"${srcdir}/deepinqqdir" - msg "Removing original outdated QQ directory ..." - rm -r "${srcdir}/deepinqqdir/drive_c/Program Files/Tencent/QQ" + #msg "Removing original outdated QQ directory ..." + #rm -r "${srcdir}/deepinqqdir/drive_c/Program Files/Tencent/QQ" msg "Patching reg files ..." patch -p1 -d "${srcdir}/deepinqqdir/" < "${srcdir}/reg.patch" msg "Creating font file link ..." @@ -47,5 +47,5 @@ package() { install -d "${pkgdir}/opt/deepinwine/apps/Deepin-QQ" install -m644 "${srcdir}/files.7z" "${pkgdir}/opt/deepinwine/apps/Deepin-QQ/" install -m755 "${srcdir}/run.sh" "${pkgdir}/opt/deepinwine/apps/Deepin-QQ/" - install -m644 "${srcdir}/$exename" "${pkgdir}/opt/deepinwine/apps/Deepin-QQ/" + #install -m644 "${srcdir}/$exename" "${pkgdir}/opt/deepinwine/apps/Deepin-QQ/" } diff --git a/README.md b/README.md index ab1318a20257..0ea68788a2d3 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,15 @@ Deepin打包的QQ容器移植到Archlinux,不依赖`deepin-wine`,包含定 - [从AUR安装](#从aur安装) - [用安装包安装](#用安装包安装) - [本地打包安装](#本地打包安装) +- [兼容性记录](#兼容性记录) - [切换到 `deepin-wine`](#切换到-deepin-wine) + - [自动切换](#自动切换) + - [手动切换](#手动切换) + - [1. 安装 deepin-wine](#1-安装-deepin-wine) + - [2. 修改 `deepin-wine-qq` 的启动文件](#2-修改-deepin-wine-qq-的启动文件) + - [3. 对于非 GNOME 桌面(KDE, XFCE等)](#3-对于非-gnome-桌面kde-xfce等) + - [4. 删除原先的QQ目录](#4-删除原先的qq目录) + - [5. 修复 `deepin-wine` 字体渲染发虚](#5-修复-deepin-wine-字体渲染发虚) - [字体](#字体) - [使用其他字体](#使用其他字体) - [修复字体模糊](#修复字体模糊) @@ -82,40 +90,98 @@ sudo pacman -U #下载的包名 makepkg -si ``` -* 运行开始菜单中创建的QQ快捷方式,开始安装QQ - -* 安装完可直接启动 +* 运行应用菜单中创建的QQ快捷方式 * **前几次运行时可能会提示 "qq安全组件异常",等一会再运行或重启一下系统** +## 兼容性记录 + +| QQ版本 | wine版本 | 兼容性 | 备注 | deepin-wine版本 | 兼容性 | 备注 | +| :------: | :------: | :----: | :----------------: | :-------------: | :----: | :--: | +| 9.1.8.26211 | 4.20-1 | 支持 | | | | | +| 9.1.8.26211 | 4.18-1 | 部分 | 不能使用中文输入法 | | | | +| 9.1.8.26211 | 4.17-1 | 部分 | 不能使用中文输入法 | | | | +| 9.1.8.26211 | 4.16-1 | 支持 | | | || + ## 切换到 `deepin-wine` -由于原版 `wine` 在DDE(Deepin Desktop Environment)上,存在托盘图标无法响应鼠标事件([deepin-wine-tim-arch#21](https://github.com/countstarlight/deepin-wine-tim-arch/issues/21))等问题,且原版 `wine` 尚不能实现保存登录密码等功能,可以选择切换到 `deepin-wine`。 +由于原版 `wine` 在 [DDE(Deepin Desktop Environment)](https://www.deepin.org/dde/) 上,存在托盘图标无法响应鼠标事件([deepin-wine-tim-arch#21](https://github.com/countstarlight/deepin-wine-tim-arch/issues/21)),边框穿透显示([deepin-wine-wechat-arch#15](https://github.com/countstarlight/deepin-wine-wechat-arch/issues/15)), 无法截图等问题,且原版 `wine` 尚不能实现保存登录密码等功能,可以选择切换到 `deepin-wine`。 + +**注意:切换前先确保 `deepin-wine` 支持** + +根据 [deepin-wine-wechat-arch#15](https://github.com/countstarlight/deepin-wine-wechat-arch/issues/15#issuecomment-515455845),[deepin-wine-wechat-arch#27](https://github.com/countstarlight/deepin-wine-wechat-arch/issues/27),由 [@feileb](https://github.com/feileb), [@violetbobo](https://github.com/violetbobo), [@HE7086](https://github.com/HE7086)提供的方法: + +### 自动切换 + +```bash +/opt/deepinwine/apps/Deepin-QQ/run.sh -d +``` + +这会安装需要的依赖并移除已安装的微信目录 + +切换回 `wine`: + +```bash +rm ~/.deepinwine/Deepin-QQ/deepin +``` + +如果要卸载自动安装的依赖: -根据 [deepin-wine-tim-arch#15](https://github.com/countstarlight/deepin-wine-wechat-arch/issues/15#issuecomment-515455845),由 [@feileb](https://github.com/feileb) 和 [@violetbobo](https://github.com/violetbobo) 提供的方法: +```bash +sudo pacman -Rns deepin-wine gnome-settings-daemon lib32-freetype2-infinality-ultimate +``` -* 1. 安装 deepin-wine +### 手动切换 + +#### 1. 安装 deepin-wine ```bash yay -S deepin-wine ``` -* 2. 修改 `deepin-wine-qq` 的启动文件 +#### 2. 修改 `deepin-wine-qq` 的启动文件 -/opt/deepinwine/tools/run.sh +修改如下两个文件中的 `WINE_CMD` 的值: -/opt/deepinwine/apps/Deepin-QQ/run.sh +`/opt/deepinwine/apps/Deepin-QQ/run.sh` -修改这两个文件中的 `WINE_CMD` 的值: +`/opt/deepinwine/tools/run.sh` ```diff -WINE_CMD="wine" +WINE_CMD="deepin-wine" ``` +#### 3. 对于非 GNOME 桌面(KDE, XFCE等) + +需要安装 `gnome-settings-daemon` + +```bash +sudo pacman -Sy gnome-settings-daemon +``` +并在 `/opt/deepinwine/apps/Deepin-QQ/run.sh` 中加入如下几行: + +```diff + RunApp() + { ++ if [[ -z "$(ps -e | grep -o gsd-xsettings)" ]] ++ then ++ /usr/lib/gsd-xsettings & ++ fi + if [ -d "$WINEPREFIX" ]; then + UpdateApp + else +``` + **注意:对 `/opt/deepinwine/apps/Deepin-QQ/run.sh` 的修改会在 `deepin-wine-qq` 更新或重装时被覆盖,可以单独拷贝一份作为启动脚本** -* 3. 修复 `deepin-wine` 字体渲染发虚 +#### 4. 删除原先的QQ目录 + +```bash +rm -rf ~/.deepinwine/Deepin-QQ +``` + +#### 5. 修复 `deepin-wine` 字体渲染发虚 ```bash yay -S lib32-freetype2-infinality-ultimate @@ -171,7 +237,8 @@ Windows 10自带字体及版本:<https://docs.microsoft.com/en-us/typography/f ## 更新日志 -* 2019-09-21 QQ-9.1.8.26211 +* 2019-11-17 QQ-9.1.8.26211 deepin.com.qq.im_9.1.8deepin0 +* 2019-09-21 QQ-9.1.8.26211 deepin.com.qq.im_8.9.19983deepin23 * 2019-04-19 QQ-9.1.1.24953 * 2019-03-18 QQ-9.1.0.24712 * 2019-03-06 QQ-9.0.9.24445 diff --git a/deepin-wine-qq.install b/deepin-wine-qq.install index 64cda2dbfb3f..ddf537f74cd9 100644 --- a/deepin-wine-qq.install +++ b/deepin-wine-qq.install @@ -2,6 +2,6 @@ post_upgrade() { find /home -maxdepth 2 -name ".deepinwine" -exec rm -f \{\}/Deepin-QQ/reinstalled \; } pre_remove() { - echo "deleting the TIM bottle..." + echo "deleting the QQ bottle..." find /home -maxdepth 2 -name ".deepinwine" -exec rm -rf \{\}/Deepin-QQ/ \; } diff --git a/reg.patch b/reg.patch index d92d8da356f9..8cabe0c62fa9 100644 --- a/reg.patch +++ b/reg.patch @@ -1,76 +1,53 @@ diff -ruN reg_tmp/system.reg reg_tmp_fixed/system.reg ---- reg_tmp/system.reg 2018-07-09 18:26:55.000000000 +0800 -+++ reg_tmp_fixed/system.reg 2019-03-25 13:14:35.000000000 +0800 -@@ -31308,7 +31308,7 @@ - "Comments"="" - "Contact"="" - "DisplayName"="\x817e\x8bafQQ" --"DisplayVersion"="8.9.19983.0" -+"DisplayVersion"="9.1.0.24712" - "EstimatedSize"=dword:00000000 - "HelpLink"="" - "HelpTelephone"="(86) 755 86060836" -@@ -35473,7 +35473,7 @@ - "Comments"="" - "Contact"="" - "DisplayName"="\x817e\x8bafQQ" --"DisplayVersion"="8.9.19983.0" -+"DisplayVersion"="9.1.0.24712" - "EstimatedSize"=dword:0002f04d - "HelpLink"="" - "HelpTelephone"="(86) 755 86060836" -@@ -35531,18 +35531,16 @@ - "mosaic"="http://" - "www"="http://" +--- reg_tmp/system.reg 2019-10-12 14:20:02.000000000 +0800 ++++ reg_tmp_fixed/system.reg 2019-11-17 20:38:24.815184040 +0800 +@@ -35534,15 +35534,16 @@ + [Software\\Microsoft\\Windows\\CurrentVersion\\Winlogon] 1486365954 + #time=1d2804a40822790 --[Software\\Microsoft\\Windows\\CurrentVersion\\Winlogon] 1486365954 --#time=1d2804a40822790 -- -[Software\\Microsoft\\Windows NT\\CurrentVersion] 1511495762 -#time=1d364d825372332 -"CSDVersion"="Service Pack 3" -"CurrentBuildNumber"="2600" -+[Software\\Microsoft\\Windows NT\\CurrentVersion] 1553355758 -+#time=1d4e18f0af44402 -+"CSDVersion"="" -+"CurrentBuild"="17134" -+"CurrentBuildNumber"="17134" ++[Software\\Microsoft\\Windows NT\\CurrentVersion] 1571657811 ++#time=1d58803d4d74e20 ++"CSDVersion"="Service Pack 1" ++"CurrentBuild"="7601" ++"CurrentBuildNumber"="7601" "CurrentType"="Uniprocessor Free" -"CurrentVersion"="5.1" -+"CurrentVersion"="10.0" ++"CurrentVersion"="6.1" "InstallDate"=dword:4be5019a "ProductId"="12345-oem-0000001-54321" -"ProductName"="Microsoft Windows XP" -+"ProductName"="Microsoft Windows 10" ++"ProductName"="Microsoft Windows 7" "RegisteredOrganization"="" "RegisteredOwner"="" "SystemRoot"="C:\\windows" -@@ -37064,7 +37062,7 @@ +@@ -37190,12 +37191,12 @@ [Software\\Tencent\\PlatForm_Type_List\\1] 1486366185 #time=1d2804aca40187a -"TypeName"="QQ8.9" -+"TypeName"="QQ9.1.0" ++"TypeName"="QQ9.1.8" "TypePath"="C:\\Program Files\\Tencent\\QQ\\Bin\\QQ.exe" [Software\\Tencent\\PlatForm_Type_List\\3] 1486366142 + #time=1d2804ab0acc142 +-"TypeName"="QQ2013" ++"TypeName"="QQ9.1.8" + "TypePath"="C:\\Program Files\\Tencent\\QQ" + + [Software\\Tencent\\QQ2009] 1570860211 diff -ruN reg_tmp/user.reg reg_tmp_fixed/user.reg ---- reg_tmp/user.reg 2018-07-09 18:26:55.000000000 +0800 -+++ reg_tmp_fixed/user.reg 2019-03-23 01:07:26.000000000 +0800 -@@ -899,7 +899,7 @@ +--- reg_tmp/user.reg 2019-10-12 14:20:02.000000000 +0800 ++++ reg_tmp_fixed/user.reg 2019-11-17 20:33:23.355918370 +0800 +@@ -926,7 +926,7 @@ [Software\\Tencent\\PlatForm_Type_List\\1] 1486366185 #time=1d2804aca401244 -"TypeName"="QQ8.9" -+"TypeName"="QQ9.1.0" ++"TypeName"="QQ9.1.8" "TypePath"="C:\\Program Files\\Tencent\\QQ\\Bin\\QQ.exe" [Software\\Tencent\\Plugin\\VAS\\842404343] 1486366176 -@@ -1019,6 +1019,7 @@ - "androidassist"="" - "mlang"="native,builtin" - "msls31"="native,builtin" -+"ntoskrnl.exe"="" - "qdantidrv.sys"="" - "qqpcmgr.exe"="" - "qqpcrtp.exe"="" @@ -5,11 +5,11 @@ # Author: Li LongYu <lilongyu@linuxdeepin.com> # Peng Hao <penghao@linuxdeepin.com> -# CountStarlight <countstarlight@gmail.com> +# Codist <countstarlight@gmail.com> WINEPREFIX="$HOME/.deepinwine/Deepin-QQ" APPDIR="/opt/deepinwine/apps/Deepin-QQ" APPVER="9.1.8.26211" -EXENAME="PCQQ2019.exe" +#EXENAME="PCQQ2019.exe" APPTAR="files.7z" PACKAGENAME="com.qq.im" WINE_CMD="wine" @@ -19,20 +19,23 @@ HelpApp() echo " Extra Commands:" echo " -r/--reset Reset app to fix errors" echo " -e/--remove Remove deployed app files" + echo " -d/--deepin Switch to 'deepin-wine'" echo " -h/--help Show program help info" } CallApp() { if [ ! -f $WINEPREFIX/reinstalled ] then + #touch $WINEPREFIX/reinstalled + #env WINEPREFIX=$WINEPREFIX wine $APPDIR/$EXENAME + RemoveApp + DeployApp touch $WINEPREFIX/reinstalled - env WINEPREFIX=$WINEPREFIX wine $APPDIR/$EXENAME - else - #Support use native file dialog - export ATTACH_FILE_DIALOG=1 + fi + #Support use native file dialog + export ATTACH_FILE_DIALOG=1 - env WINEPREFIX="$WINEPREFIX" $WINE_CMD "c:\\Program Files\\Tencent\\QQ\\Bin\\QQ.exe" & - fi + env WINEPREFIX="$WINEPREFIX" $WINE_CMD "c:\\Program Files\\Tencent\\QQ\\Bin\\QQ.exe" & } ExtractApp() { @@ -40,7 +43,7 @@ ExtractApp() 7z x "$APPDIR/$APPTAR" -o"$1" mv "$1/drive_c/users/@current_user@" "$1/drive_c/users/$USER" sed -i "s#@current_user@#$USER#" $1/*.reg - sed -i "s/deepin-wine/wine/" $1/drive_c/deepin/EnvInit.sh + #sed -i "s/deepin-wine/wine/" $1/drive_c/deepin/EnvInit.sh } DeployApp() { @@ -93,6 +96,34 @@ CreateBottle() fi } +SwitchToDeepinWine() +{ + if [ -d "$WINEPREFIX" ]; then + RemoveApp + DeployApp + fi + PACKAGE_MANAGER="yay" + if ! [ -x "$(command -v yay)" ]; then + if ! [ -x "$(command -v yaourt)" ]; then + echo "Error: Need to install 'yay' or 'yaourt' first." >&2 + exit 1 + else + $PACKAGE_MANAGER="yaourt" + fi + fi + $PACKAGE_MANAGER -S deepin-wine gnome-settings-daemon lib32-freetype2-infinality-ultimate --needed + touch -f $WINEPREFIX/deepin + echo "Done." +} + +# Init +if [ -f "$WINEPREFIX/deepin" ]; then + WINE_CMD="deepin-wine" + if [[ -z "$(ps -e | grep -o gsd-xsettings)" ]]; then + /usr/lib/gsd-xsettings & + fi +fi + if [ -z $1 ]; then RunApp exit 0 @@ -107,6 +138,9 @@ case $1 in "-e" | "--remove") RemoveApp ;; + "-d" | "--deepin") + SwitchToDeepinWine + ;; "-u" | "--uri") RunApp $2 ;; |