尝试loongarch64架构离线包

This commit is contained in:
gfdgd xi 2025-02-05 12:39:46 +08:00
parent 6c0549afe6
commit 878ce96a50
7 changed files with 115 additions and 3 deletions

17
.github/workflows/DaoXiangHu-stable vendored Normal file

@ -0,0 +1,17 @@
mirror_style release
download_style apt
finddebs_style from-indices
variants - buildd fakechroot minbase
keyring /usr/share/keyrings/debian-archive-keyring.gpg
default_mirror https://pkg.loongnix.cn/loongnix/20
# include common settings
if [ -e "$DEBOOTSTRAP_DIR/scripts/debian-common" ]; then
. "$DEBOOTSTRAP_DIR/scripts/debian-common"
elif [ -e /debootstrap/debian-common ]; then
. /debootstrap/debian-common
elif [ -e "$DEBOOTSTRAP_DIR/debian-common" ]; then
. "$DEBOOTSTRAP_DIR/debian-common"
else
error 1 NOCOMMON "File not found: debian-common"
fi

@ -29,8 +29,10 @@ jobs:
sudo chroot debian apt install sudo gpg wget -y
sudo chroot debian wget https://ryanfortner.github.io/box64-debs/box64.list -O /etc/apt/sources.list.d/box64.list
sudo chroot debian bash -c "wget -qO- https://ryanfortner.github.io/box64-debs/KEY.gpg | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/box64-debs-archive-keyring.gpg"
sudo chroot debian bash -c "echo 'deb [trusted=true] https://repo.gxde.top/gxde-os/bixie ./' | sudo tee /etc/apt/sources.list.d/gxde-stable.list"
sudo chroot debian bash -c "echo 'deb [trusted=true] https://repo.gxde.top/gxde-os/tianlu ./' | sudo tee /etc/apt/sources.list.d/gxde-testing.list"
sudo chroot debian apt update
sudo chroot debian apt install box64 wine -y
sudo chroot debian apt install box64 hangover-wine -y
## 获取 Wine 运行器安装包
git clone https://github.com/gfdgd-xi/deep-wine-runner --depth=1
cd deep-wine-runner
@ -40,7 +42,7 @@ jobs:
#wget $url
mv deep-wine-runner/spark-deepin-wine-runner.deb debian/tmp/wine-runner.deb
## 安装
sudo chroot debian apt install locales /tmp/wine-runner.deb fcitx xfce4-terminal -y
sudo chroot debian apt install locales /tmp/wine-runner.deb fcitx xfce4-terminal qtwayland5 xwayland thunar -y
sudo chroot debian apt install libxenmisc4.17 libxenstore4 libxenforeignmemory1 -y
# 构建软件包
mkdir package/runner -p

@ -0,0 +1,84 @@
name: Building Wine Runner Off-line Pages(loongarch64)
run-name: ${{ github.actor }} Building Wine Runner Off-line Pages(loongarch64) 🚀
on:
push:
workflow_dispatch:
jobs:
Explore-GitHub-Actions:
runs-on: ubuntu-22.04
steps:
- name: Building DEB
run: |
# 获取所需数据
cpu=$(cat /proc/cpuinfo | grep processor | wc -l)
# 配置环境
sudo apt update
sudo apt install python3-requests debootstrap xz-utils qemu-user-static git -y
sudo apt install qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools psmisc wget -y
git clone https://github.com/gfdgd-xi/deep-wine-runner --depth=1
sudo cp deep-wine-runner/.github/workflows/DaoXiangHu-stable /usr/share/debootstrap/scripts/
wget https://github.com/sunhaiyong1978/CLFS-for-LoongArch/releases/download/20210903/qemu-x86_64-to-loongarch64
sudo cp qemu-x86_64-to-loongarch64 /usr/bin/qemu-loongarch64
sudo chmod 777 /usr/bin/qemu-loongarch64
echo ":qemu-loongarch64:M::\x7fELF\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x02\x01:\xff\xff\xff\xff\xff\xfe\xfe\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/bin/qemu-loongarch64:" > /proc/sys/fs/binfmt_misc/register
cd ~
mkdir package
# 部署 chroot 环境
sudo debootstrap --no-check-gpg --arch=loongarch64 bookworm DaoXiangHu-stable https://pkg.loongnix.cn/loongnix/20
wget https://github.com/gfdgd-xi/deep-wine-runner/raw/main/pardus-chroot
sudo cp pardus-chroot /usr/bin
sudo chmod 777 /usr/bin/pardus-chroot
sudo pardus-chroot debian
### 配置容器
## 加入 wine 源
sudo chroot debian apt update
sudo chroot debian apt install sudo gpg wget -y
sudo chroot debian apt update
sudo chroot debian apt install -y lat i386-runtime-base i386-runtime-extra
sudo chroot debian apt install -y wine
## 获取 Wine 运行器安装包
git clone https://github.com/gfdgd-xi/deep-wine-runner --depth=1
cd deep-wine-runner
make package-deb
cd ..
url=`python3 deep-wine-runner/off-line-shell/GetNewestDebUrl.py`
#wget $url
mv deep-wine-runner/spark-deepin-wine-runner.deb debian/tmp/wine-runner.deb
## 安装
sudo chroot debian apt install locales /tmp/wine-runner.deb fcitx xfce4-terminal qtwayland5 xwayland thunar -y
sudo chroot debian apt install libxenmisc4.17 libxenstore4 libxenforeignmemory1 -y
# 构建软件包
mkdir package/runner -p
sudo cp debian/usr/local/bin package -rv
sudo cp debian/usr/bin package -rv
sudo cp debian/usr/lib package -rv
sudo cp debian/usr/share package -rv
#sudo cp debian/usr/lib64 package -rv
sudo cp debian/opt/apps/deepin-wine-runner/* package/runner -rv
# 精简运行器体积
sudo rm -rf package/runner/2048
sudo rm -rf package/runner/geek.exe
sudo rm -rf package/runner/BeCyIconGrabber.exe
sudo rm -rf package/runner/Icon
sudo rm -rf package/runner/RegShot.exe
sudo rm -rf package/runner/novnc
sudo rm -rf package/bin/wine*
# 修复 which 命令的问题导致无法正常识别终端的问题
sudo cp package/bin/which.debianutils package/bin/which -rv
cp deep-wine-runner/off-line-shell/run.sh package -rv
cp deep-wine-runner/off-line-shell/run-system-bwrap.sh package -rv
cp deep-wine-runner/off-line-shell/bwrap_loongarch64 package/bwrap -rv
sudo chmod 777 -Rv package ; true
cd package
# 添加 Wine 运行器离线模式标识
touch runner/off-line.lock
tar -cvf ../spark-deepin-wine-runner-off-line.tar *
cd ..
xz -T $cpu spark-deepin-wine-runner-off-line.tar
- name: upload result
uses: actions/upload-artifact@v3
with:
name: spark-deepin-wine-runner-off-line.tar.xz
path: /home/runner/spark-deepin-wine-runner-off-line.tar.xz

@ -30,6 +30,8 @@ jobs:
sudo chroot debian apt install sudo gpg wget -y
sudo chroot debian wget -O /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key
sudo chroot debian wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/debian/dists/bookworm/winehq-bookworm.sources
sudo chroot debian bash -c "echo 'deb [trusted=true] https://repo.gxde.top/gxde-os/bixie ./' | sudo tee /etc/apt/sources.list.d/gxde-stable.list"
sudo chroot debian bash -c "echo 'deb [trusted=true] https://repo.gxde.top/gxde-os/tianlu ./' | sudo tee /etc/apt/sources.list.d/gxde-testing.list"
sudo chroot debian apt update
## 获取 Wine 运行器安装包
git clone https://github.com/gfdgd-xi/deep-wine-runner --depth=1
@ -41,6 +43,7 @@ jobs:
mv deep-wine-runner/spark-deepin-wine-runner.deb debian/tmp/wine-runner.deb
## 安装
sudo chroot debian apt install locales /tmp/wine-runner.deb winehq-devel fcitx xfce4-terminal -y
sudo chroot debian apt install locales qtwayland5 xwayland thunar -y
sudo chroot debian apt install libxenmisc4.17 libxenstore4 libxenforeignmemory1 -y
# 构建软件包
mkdir package/runner -p

BIN
off-line-shell/bwrap_loongarch64 Executable file

Binary file not shown.

@ -11,9 +11,15 @@ if [[ -d /usr/lib64 ]] && [[ -d $SHELL_FOLDER/lib64 ]]; then
option="$option --dev-bind $SHELL_FOLDER/lib64 /usr/lib64 "
fi
if [[ -d /usr/share/fonts ]]; then
option="$option --dev-bind /usr/share/fonts /usr/share/fonts "
fi
"$SHELL_FOLDER/bwrap" --dev-bind / / \
--dev-bind "$SHELL_FOLDER/bin" /usr/bin \
--dev-bind "$SHELL_FOLDER/bin" /bin \
--dev-bind "$SHELL_FOLDER/lib" /usr/lib \
--dev-bind "$SHELL_FOLDER/lib" /lib \
--dev-bind /usr/lib/locale /usr/lib/locale \
--dev-bind "$SHELL_FOLDER/share" /usr/share \
$option \

@ -1,5 +1,5 @@
{
"Version": "4.1.3",
"Version": "4.1.4",
"Time": "未知",
"Thank": [
"感谢 @り哥拽的冇气质° 和 @杨 提供了 3a5000新世界的测试机器",