1. <nobr id="easjo"><address id="easjo"></address></nobr>

      <track id="easjo"><source id="easjo"></source></track>
      1. 
        

      2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
      3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>
          貴州做網站公司
          貴州做網站公司~專業!靠譜!
          10年網站模板開發經驗,熟悉國內外開源網站程序,包括DEDECMS,WordPress,ZBlog,Discuz! 等網站程序,可為您提供網站建設,網站克隆,仿站,網頁設計,網站制作,網站推廣優化等服務。我們專注高端營銷型網站,企業官網,集團官網,自適應網站,手機網站,網絡營銷,網站優化,網站服務器環境搭建以及托管運維等。為客戶提供一站式網站解決方案?。?!

          nspawn 運行 QQ 第二彈 有 NtrQQ

          來源:互聯網轉載 時間:2024-01-29 08:12:14

          nspawn 運行 QQ 第二彈 有 NtrQQ

          這次教程里還是用 nspawn 技術,但是我們選擇不一樣的系統. 這次我們選擇 ArchLinux 來做

          為什么選擇 ArchLinux 呢,有如下原因.

          同時因為有之前的文章,這里會說的比較簡單

          • 包多,以后作為開發環境也爽
          • 是除了 Deepin 以外移植 Deepin 包最完善的發行版
          • 還是因為用的人挺多

          并且還要把 QQ 替換為 NtrQQ

          準備 ArchLinux rootfs

          根據我的測試,如果沒有足夠新的 pacman 還是不要嘗試用 pacstrap

          這樣子容易搞出一些 GPG 簽名的問題

          除了去 nspawn.org 尋找,我發現 ArchLinux 官方提供了一個精簡的 bootstrap 系統

          去鏡像站逛一逛!

          來到網易鏡像站,打開下面的連接

          https://mirrors.163.com/archlinux/iso/latest/

          找到 archlinux-bootstrap-xxxx.xx.xx-x86_64.tar.gz 下載下來

          解壓之后這個就是我們需要的 rootfs 了

          準備 nspawn 配置文件

          直接抄作業吧,保存到 /etc/systemd/nspawn/archlinux.nspawn

          [exec]Boot = truePrivateUsers = no[Files]# XorgBindReadOnly = /tmp/.X11-unix# GPUBind = /dev/dri# NVIDIA 有顯卡才寫Bind = /dev/nvidia0Bind = /dev/nvidiactlBind = /dev/nvidia-modesetBind = /dev/nvidia-uvmBind = /dev/nvidia-uvm-toolsBind = /dev/shm# ControllerBind=/dev/input# PulseAudioBindReadOnly=/run/user/1000/pulse# AppIndicatorBindReadOnly=/run/user/1000/bus# Home Dir# 請在這里修改為具體的路徑,這里不能識別變量Bind = /home/$HOME[Network]VirtualEthernet = noPrivate=no

          rootfs 必須可以從 /var/lib/machines/archlinux 訪問

          所以具體用什么手段來實現我就不展開說了

          安裝必要的東西

          首先啟動容器

          machinectl start archlinux

          接著進入容器

          machinectl shell archlinux

          這里我做了以下操作,列一下,不展開說了

          • 設定鏡像站
          • 進行系統升級
          • 開啟 multilibcommunity 倉庫
          • 添加 AURCN 源
          • 安裝 yay
          • 添加用戶
          • 設定無密碼 sudo
          • 設定環境變量

          之后的我會用 yay 來替代 pacman

          安裝并運行 QQ

          從容器里面退出來,以新添加的用戶身份進去

          machinectl shell 你的用戶名@archlinux

          不打算安裝 NtrQQ 的話,直接從倉庫里安裝 aur/deepin-wine-qq 就完事了

          yay -S aur/deepin-wine-qq

          運行也很簡單

          /opt/apps/com.qq.im.deepin/files/run.sh

          原作者的倉庫在 這里

          至于什么替換成 DeepinWine 之類的看作者倉庫的說明就好了

          使用 NtrQQ

          如果要使用 NtrQQ 就得自己去拉倉庫然后自行構建

          偷懶的可以直接用我的倉庫,在 這里

          我來說一下魔改的思路

          PKGBUILD

          NtrQQ 無外乎給 QQ 打個補丁進去,所以我們在準備階段直接解壓一份 NtrQQ 到目錄里即可

          來看看 PKGBUILD

          我用注釋標出需要注意的地方

          build() {  msg "Extracting DPKG package ..."  mkdir -p "${srcdir}/dpkgdir"  tar -xvf data.tar.xz -C "${srcdir}/dpkgdir"  sed "s/(Categories.*$)/1Network;/" -i "${srcdir}/dpkgdir/opt/apps/${debpkgname}/entries/applications/${debpkgname}.desktop"  sed "s/run.sh".*/run.sh"/" -i "${srcdir}/dpkgdir/opt/apps/${debpkgname}/entries/applications/${debpkgname}.desktop"  msg "Extracting Deepin Wine QQ archive ..."  7z x -aoa "${srcdir}/dpkgdir/opt/apps/${debpkgname}/files/files.7z" -o"${srcdir}/deepinqqdir"  msg "Cleaning up the original package directory ..."  # 這里刪掉了原來的 QQ 文件夾  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 ..."  ln -sf "/usr/share/fonts/wenquanyi/wqy-microhei/wqy-microhei.ttc" "${srcdir}/deepinqqdir/drive_c/windows/Fonts/wqy-microhei.ttc"  msg "Copying latest QQ installer to ${srcdir}/deepinqqdir/drive_c/Program Files/Tencent/ ..."  # 這里拷貝了一個安裝包 需要刪掉  install -m644 "${srcdir}/${qq_installer}-${pkgver}.exe" "${srcdir}/deepinqqdir/drive_c/Program Files/Tencent/"  #find -L "${srcdir}/deepinqqdir/dosdevices" -maxdepth 1 -type l -delete  msg "Repackaging app archive ..."  # 這里重新打包了整個 wine 文件系統  7z a -t7z -r "${srcdir}/files.7z" "${srcdir}/deepinqqdir/*"}

          所以只要你往里面扔個打包好的 NtrQQ 就完事了

          注意這里的 NtrQQ 必須內置 TXSSO

          找一下 TXSSO 安裝包,解壓里面的 TXSSO 文件夾直接扔進 QQ/Bin 文件夾下面就可以了

          這也是一種綠色的 TXSSO 部署方式,不需要給系統安裝

          NtrQQ 本身就是可以綠色運行的,所以拷貝安裝包這一行也給他揚了

          但是這樣子你會發現啟動 QQ 以后并沒有讓 NtrQQ 成功掛鉤,并且運行一段時間以后 QQ 還是會彈出已損壞錯誤

          這是因為 NtrQQ 的注入點 msimg32.dll 沒有成功加載.

          我也不知道為什么會這樣子,但可以通過修改 Wine 配置來完成

          只需要把 msimg32 設定為 原裝先于內建 即可

          雖然你可以選擇每次運行前先跑一下 winecfg 來調整設置

          但是直接給修改一下注冊表來自帶這個設置不好嗎?

          wine 的函數頂替配置在 user.reg[Software\Wine\DllOverrides] 部分

          我們在最后加入一行

          "msimg32"="native,builtin"

          就可以讓 wine 優先加載當前目錄下面的 msimg32.dll

          從而成功加載 NtrQQ

          啟動腳本 run.sh

          對運行腳本我們也需要做一些修改

          因為 NtrQQ 在 Wine 中可以不需要安裝,總之就是非常的綠色和便攜.

          所以我們也要刪掉 run.sh 里面運行安裝包的一段

          Run(){    extract_archive "$ARCHIVE_FILE_DIR/helper_archive.7z" "$ARCHIVE_FILE_DIR/helper_archive.md5sum" "$SPECIFY_SHELL_DIR"    if [ -n "$PATCH_LOADER_ENV" ] && [ -n "$EXEC_PATH" ];then        export $PATCH_LOADER_ENV    fi    if [ -n "$EXEC_PATH" ];then        # 這里開始        # if [ ! -f "$WINEPREFIX/reinstalled" ];then        #     touch $WINEPREFIX/reinstalled        #     env LC_ALL=zh_CN.UTF-8 WINEDLLOVERRIDES="winemenubuilder.exe=d" $START_SHELL_PATH $BOTTLENAME $APPVER "$QQ_INSTALLER_PATH" "$@"        #     if [ $APPRUN_CMD = "deepin-wine5" ]; then        #         echo "5" > $WINEPREFIX/deepin        #     fi        # else            # 只需要保留這一段            env LC_ALL=zh_CN.UTF-8 $START_SHELL_PATH $BOTTLENAME $APPVER "$EXEC_PATH" "$@"        # fi        # 到這里結束    else        env LC_ALL=zh_CN.UTF-8 $START_SHELL_PATH $BOTTLENAME $APPVER "uninstaller.exe" "$@"    fi}

          改完 run.sh 需要重新計算 MD5 并且更新 PKGBUILD 里面的 md5sums

          接下來還可以修改一下 PKGBUILD 里面的包名,我這里改為了 deepin-wine-ntrqq

          之后,打包,蕪湖,起飛!

          因為 wine 目錄里面有一些特殊文件,在 nspawn 里面會顯示找不到這些文件

          所以我的打包是在 Fedora 上,也就是主機系統里進行的

          在下面的命令中忽略掉了依賴. 如果不需要忽略依賴可以選擇第二條命令

          makepkg --nodeps -f --cleanbuild# 自動下載依賴makepkg --syncdeps

          安裝打包出來的東西

          # 文件名可能不同yay -U deepin-wine-ntrqq-9.4.8.27843-1-x86_64.pkg.tar.gz

          完事,可以直接運行了

          標簽:ntrqq-

          網絡推廣與網站優化公司(網絡優化與推廣專家)作為數字營銷領域的核心服務提供方,其價值在于通過技術手段與策略規劃幫助企業提升線上曝光度、用戶轉化率及品牌影響力。這...

          在當今數字化時代,公司網站已成為企業展示形象、傳遞信息和開展業務的重要平臺。然而,對于許多公司來說,網站建設的價格是一個關鍵考量因素。本文將圍繞“公司網站建設價...

          在當今的數字化時代,企業網站已成為企業展示形象、吸引客戶和開展業務的重要平臺。然而,對于許多中小企業來說,高昂的網站建設費用可能會成為其發展的瓶頸。幸運的是,隨...

          山西省分行營業部太原交通銀行支行地址?交通銀行山西省分行營業部的地址在太原市解放路35號。它位于解放路寬銀幕電影院以南100多米,解放路以西。如果你想走上一個很高的樓梯,卷首墻很高,很顯眼,很容易找到??梢杂檬謾C上的地圖軟件搜索一下。如果做不到,可以導航。地圖的位置是準確的。山西省分行營業部太原交通銀行支行地址?太原交通銀行山西分行營業部地址在山西省太原市迎澤區青年路3號。...

          parameters是什么意思?參數[English][P?“R?m?t?Z][beauty][P?“R?m?t?Z]n.因子,特征邊界(限制性)因子(參數的復數名詞)參數行列式例句:1。兩個關鍵字都可以與構造函數參數一起使用。]這兩個關鍵字可以用作構造函數參數。2.亞洲網通在一組參數內運行。wrongparameters是什么意思?我們必須在時間范圍內工作。這是分布參數。MATLAB里simul...

          是白雪的冰柜好還是阪神的冰柜好?當然是白雪公主。它首先使用德國技術和壓縮機。全部采用純銅管,其展示柜全部采用風冷無霜技術。這是冰柜行業最優質的技術。該公司旗下還有兩個品牌,雪蜻蜓版神。它的生產基地在江蘇,阪神是白雪公主的品牌和白雪公主的公司做的,但是價格相對便宜,所以不夠切料。0-@qq.com阪神是明星買的,頂開式冰柜700多升如雪。阪神的價格在3800左右。阪神冰柜價格是多少?冰柜大多用于商場...

          TOP
          国产初高中生视频在线观看|亚洲一区中文|久久亚洲欧美国产精品|黄色网站入口免费进人
          1. <nobr id="easjo"><address id="easjo"></address></nobr>

              <track id="easjo"><source id="easjo"></source></track>
              1. 
                

              2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
              3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>