最后的設置:
- Deepin Wine WeChat
- IBus Rime 小狼毫輸入法
切換到Deepin Wine 后遇到的坑:
- fcitx 搜狗輸入法
- fcitx 百度輸入法
- fcitx 輸入法系統
對輸入法有興趣的話可以直接跳到最后……
---------------
沒有想過會在一個手機軟件上花這么多心思,好在今天總算安裝成功,覺得可以記錄下這個過程,方便他人方便自己。
首先介紹下我使用過的其他方法,希望可以節省大家一些時間:
Rambox Pro:因為原理是網頁微信套殼,網頁微信不能用Rambox 自然也不能用(如果想用的話推薦用Community 版,Snap 版在國內沒有代理連設置頁面都很難打開……)
Anbox:類似Android 虛擬機,需要對內核進行一些修改,不過效果只能說是差強人意,代理配置也麻煩,故放棄,不過也有人說好用,可以觀望一下
Deepin Wine:最多人用,優化應該算最好(?),使用的是移植版微信,步驟頗繁雜,不幸沒安裝成功,遂放棄,以后可能會嘗試
以上就是我試過的方法,以及放棄的原因。接下來是我今次成功安裝所使用的一些軟件和步驟。首先,我用的是Wine,一開始主要是受這篇文章啟發對照着來進行安裝,但在掉了不少坑之后發現有一些地方需要改動,有興趣的話可以對照着來看,而且這篇文章用的是Fedora,換到Ubuntu 20.04上主要有以下步驟(注意,很多地方雖然不說但其實需要重啟或者至少Log Out 再Log In才能使設置生效,如果發現設置沒有變化,不妨試試Log Out):
1. 安裝Wine,官網可以直接下載源文件,也可以根據官網的指引添加apt 庫來安裝二進制文件,我選擇后者,省些麻煩,要指出的是,如果有需要,可以通過 sudo -E 的方法將HTTP_PROXY 等環境變量傳遞進去。這一步包括以下步驟:
1 # 具體內容請查看官方頁面 2 sudo dpkg --add-architecture i386 3 4 wget -nc https://dl.winehq.org/wine-builds/winehq.key 5 sudo apt-key add winehq.key 6 7 # 或者sudo -E add-apt-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ focal main' 8 sudo add-apt-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ focal main' 9 10 # 或者sudo -E apt update 11 sudo apt update 12 13 # 或者sudo -E apt install --install-recommends winehq-stable 14 sudo apt install --install-recommends winehq-stable
2. 安裝Winetricks,其實Wintricks 只是一個腳本,所以下載(wget 或者curl)下來后還需要賦予運行權限(chmod +x)並放到PATH 文件夾里方便使用。安裝Winetricks 主要用來下載字體等插件,官方有指出非常不建議使用Winetricks,但后面會看到很多地方都少不了Winetricks。
cd "${HOME}/Downloads" wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks chmod +x winetricks # 放到/usr/bin/ 方便使用,當然也可以不放,以后將winetricks 替換為 ~/Download/winetricks 也一樣 sudo mv winetricks /usr/bin/
3. 下載一些Winetricks 需要的軟件。根據步驟2 的官方頁面我安裝了cabextract,至於其他的軟件比如unzip, p7zip, wget (or curl)一般Ubuntu 都已經有,就算沒有都可以隨時下載,所以就先不管。之前說的那篇博文提到要安裝其中Wine Mono,我當時好像看漏了,但其實后面Wine 也會自己彈出來讓你安裝,所以我在這步只安裝cabextract
sudo apt install cabextract
4. 這一部我們要准備安裝微信,根據之前說的那篇博文以及Wine 官方頁面指出的一些問題,我們需要通過Winetricks 為Wine 安裝一些“插件”和字體,主要是 riched20 richtx32 corefonts cjkfonts,主要是修正一些問題並提供中文支持(通過下載思源等字體),因為Wine 本身好像不支持CJK[頁面A][頁面B],不過這些東西你也可以等到后面發現有問題再按需安裝
winetricks riched20 richtx32 corefonts cjkfonts
5. 下載安裝微信。微信可以直接從官網下載,如果是Ubuntu 18.04 的話雙擊exe 文件即可通過Wine 安裝。很多人會建議將微信下載到一個/opt/tools/wine 或者/home/you/.wine_tools 之類的文件夾,並設置一個WINPREFIX 環境變量調整微信的安裝位置,但根據官網指引似乎並沒有這樣作的必要,因為Wine 會自己創建一個.wine 文件夾來存放文檔,用戶只需要雙擊安裝包Wine 會自己處理這些問題並安裝軟件。需要注意的是,Ubuntu 20.04 和以往不同,雙擊.exe .deb文件系統並不會直接使用Wine 和dpkg 幫你安裝文件,而是會把文件視為壓縮包,解決這個問題你需要右擊.exe 文件,選擇Properties,選擇Open With 標簽,再選擇關聯的軟件,比如Wine Windows Program Loader。也有些人會特意設置個export WINEARCH=win32 的環境變量,但官方指引也沒有提及,可能因為版本問題,特意設置win32 有些地方還會報錯,所以我不設置。
6. 安裝成功后,可以試下打開微信,此時可能會見到幾個問題:
- 如果沒有安裝之前說的字體文件,現在可能會見到很多白色黑邊的方框,字體不能正確顯示。要解決這個問題,用Winetricks 安裝上述的corefonts cjkfonts 即可;
- 界面超小,看不清字。對於這個問題,我不確定別人的是不是這樣,但我這邊Wine (在打開wincfg時)會提示 Wine cannot find the ncurses library (libncurses.so.6). ,
就像這樣,如果你用的是64位系統我猜肯定也會遇到這種情況,因為Wine 需要的是32位的庫,所以用apt 下載32位的
ncurses
庫我猜就能解決問題了 sudo apt-get install libncurses5:i386 libncurses6:i386 ,但如果字體還是比較小,也可以試一下修改Wine 的解析度設置(通過Terminal 運行winecfg 來打開設置頁面),我這里是調到了192dpi,效果可以看下方貼圖。 即使安裝了字體打開微信也還是滿屏小方框。這可能是因為別的什么系統設置沒有設為中文,解決方法有三個,一是將系統改為中文(我沒有試過),二是你會發現安裝了微信之后桌面上會多一個WeChat.desktop 文件,在默認狀態雙擊應該會打開一個文本編輯器,在Exec=env 后面加上LC_ALL=zh_CN.UTF-8 即可(如下圖),三是根據這個帖子你因該也可以在.bashrc/.zshrc/.profile之類的文件的末尾加上這個設置,但我不想影響整個系統,所以就只在desktop 文件上修改。
順便講一句,右擊.desktop 文件選擇Allow Launching 即可作為普通快捷方式使用(並會顯示圖標),需要修改時可以再設置為Don't Allow Launching,另外,如果你沒有另外設置WINEPREFIX 環境變量,你應該會發現desktop 文件里面會顯示你的WINEPREFIX 默認是"/home/you/.wine"(如下圖),其他文件夾也非常整潔,所以我覺得一開始就沒有必要另外設置個WINEPREFIX(但其他人這樣設置不排除是有歷史原因的影響)。
7. 字體顯示正常后,你可能會發現自己打字只能用英文,打中文還是方框,這時我們可以再回到剛剛的desktop 文件,在LC_ALL=zh_CN.UTF-8
后面加一句 GTK_IM_MODILE=ibus QT_IM_MODULE=ibus XMODIFIERS="@im=ibus" 即可(如上圖)。注意,這里用ibus 是因為我使用的是系統自帶的輸入法,使用ibus 輸入系統,如果你換其他輸入法,應該要換成fcitx 之類的內容,甚至可能要另外下載一些庫,詳細的可以看文章A,文章B,文章C和Deepin Wine 這個帖子。
到這里,你的微信應該就可以正常使用了,可能我記漏寫漏了些許步驟,不過總體而言,Wine 的設置算是簡單的,主要是盡可能避免自己不熟悉的操作,比如盡可能不修改shell 的配置文件和注冊表,我覺得如果使用了太多你自己都無法理解的設置,最后微信用不成還是小事,搞到系統一團亂還灰心喪氣就不值得了。
p.s.
忘了一點,其實還有兩個問題沒有解決,一個是Unicode 圖標的顯示,這個我不是很在乎,所以不管,第二個問題是如果你不最小化微信,而是直接用Alt Tab 來切換應用,微信會留下一個邊框陰影(如下圖),Deepin Wine好像有辦法可以解決,但如果用Wine 的話,要弄掉這個邊框,你只能重新打開微信並最小化,除此之外我也暫時沒有什么解決方法,但我對目前的效果還是滿意的,就先這樣了,如果你有什么好方法不妨留言告訴我,但如果你想問我其他系統或者Deepin Wine 香不香的話那就還是免了~
p.p.s
因為有了上面的基礎,花了一點時間就換到Deepin Wine,完美解決了上面的陰影邊框問題和一些文件收發問題(Wine 上收發圖片和文件有困難,似乎和網絡有關),但還是在輸入法上遇到了些麻煩,一開始我選擇了最熱門的搜狗輸入法,但最新版搜狗輸入法和Deepin Wine 八字不和,很多人都說平時使用沒問題一進到微信就卡死,我也遇到了這種情況,很多人提出了回退到舊版本的辦法,但Ubuntu 20.04 已經不支持qt4,也沒有什么回退的空間。然后我又了解到百度輸入法口碑也不錯,但正如很多人反映的那樣,百度輸入法會造成系統卡頓,即使不使用Deepin Wine,在禁用百度輸入法之后問題解決,故又放棄。在兩次失敗之后其實有點絕望,想用回ibus 輸入法,但柳暗花明又一村,恰好看到有人提到谷歌輸入法,於是下來試試,發現谷歌輸入法雖然在“智能”程度上不及搜狗和百度,尤其在成語輸入上,但算是遠勝ibus 的智能拼音,而且更重要的是,它的穩定性幾乎可以媲美ibus。如果非要說現在還有什么不滿意的話,那就只能說是個別emoji 只能顯示成方框,還有個別表情顯示也不正常(如下圖),但這些都是小事了
2020-10-14 更新
如果你有多個輸入法(我這里需要四個),fcitx在切換輸入法和設置默認輸入法上其實都比較麻煩(我沒找到方法),所以直接放棄fcitx,用回ibus,搭配rime 小狼毫輸入法簡直完美,系統支持就不在話下,連在微信使用也沒有之前所說的那些麻煩。唯一一個可能比較麻煩的地方是他默認方案是繁體,需要自己設置選擇簡拼方案(Ctrl + ` 進行設置),看到有些博文說要修改yaml設置文件,但其實不用,按官方文檔,小狼毫本身已經附有簡化字方案,按Ctrl + ` 即可進行選擇自己喜歡的方案,如果需要其他方案,比如吳語方案,可以通過plum 腳本下載再設置。最后,ibus切換輸入法快捷鍵是Window/Super+Space。