添加linglong配置文件

This commit is contained in:
gfdgd xi 2024-05-23 22:12:58 +08:00
parent e28dc5927e
commit 47ebb5ca29
3 changed files with 1981 additions and 0 deletions

@ -0,0 +1,26 @@
#!/usr/bin/env python3
import os
import sys
def ReadTXT(path):
with open(path, "r") as file:
thing = file.read()
return thing
def WriteTXT(path, data):
with open(path, "w") as file:
file.write(data)
debList = sys.argv[1:]
for i in debList:
# 解包
os.system("rm -rf /tmp/change-old-to-new")
os.system(f"dpkg -x '{i}' /tmp/change-old-to-new")
os.system(f"dpkg -e '{i}' /tmp/change-old-to-new/DEBIAN")
info = ReadTXT("/tmp/change-old-to-new/DEBIAN/control").replace("spark-dwine-helper | store.spark-app.spark-dwine-helper", "deepin-wine-helper (>= 5.1.30-1)")
WriteTXT("/tmp/change-old-to-new/DEBIAN/control", info)
path = os.listdir("/tmp/change-old-to-new/opt/apps")[0]
info = ReadTXT(f"/tmp/change-old-to-new/opt/apps/{path}/files/run.sh").replace("/opt/deepinwine/tools/spark_run_v4.sh", "/opt/deepinwine/tools/run_v4.sh")
WriteTXT(f"/tmp/change-old-to-new/opt/apps/{path}/files/run.sh", info)
os.system(f"dpkg-deb -Z xz -z 0 -b /tmp/change-old-to-new '{os.path.basename(i)}'")
# 检查是否能正常安装

@ -0,0 +1,72 @@
#!/bin/bash
## Writeable envs
PKG_NAME="spark-deepin-wine-runner"
LINGLONG_WORK_DIR="/data/linglong-build"
## Auto generated
LINGLONG_PKG_NAME="${PKG_NAME}.linyas"
USER=$(whoami)
ARCH=$(uname -m)
if [ ${ARCH} == "x86_64" ]; then
arch="amd64"
#elif [ ${ARCH} == "aarch64" ]; then
#arch="aarch64"
else
echo "Unsupported architecture: ${ARCH}"
exit 1
fi
if [ ${USER} == "root" ]; then
echo "Running as root user is not supported!"
exit 1
else
echo "Check passed!"
fi
if [ ${PKG_NAME} = "" ] || [ ${LINGLONG_WORK_DIR} = "" ]; then
echo "The string of PKG_NAME and LINGLONG_WORK_DIR could not be blank!"
exit 1
else
echo "Check passed!"
fi
set -x
# Create linglong-pkg dir
mkdir -p \
${LINGLONG_WORK_DIR}/linglong-build\
${LINGLONG_WORK_DIR}/linglong-deb
## clean old cache
rm -rf ${LINGLONG_WORK_DIR}/linglong-deb/${PKG_NAME}*
rm -rf ${LINGLONG_WORK_DIR}/linglong-build/${PKG_NAME}*
## Download deb files
#cd ${LINGLONG_WORK_DIR}/linglong-deb
#apt download ${PKG_NAME}
## Create convert workdir
mkdir -p \
${LINGLONG_WORK_DIR}/linglong-build/${PKG_NAME}
CONVERT_DIR=${LINGLONG_WORK_DIR}/linglong-build/${PKG_NAME}
## Convery
ll-pica init -w ${CONVERT_DIR} --pi ${LINGLONG_PKG_NAME} --pn ${PKG_NAME} -t repo
#ll-pica convert -c ${LINGLONG_WORK_DIR}/linglong-deb/${PKG_NAME}*\
# -w ${CONVERT_DIR}
ll-pica convert -w ${CONVERT_DIR}
## Build
cd ${CONVERT_DIR}/package/${LINGLONG_PKG_NAME}/${arch}/
ll-builder build
ll-builder export
## Move files
mv ${CONVERT_DIR}/package/${LINGLONG_PKG_NAME}/${arch}/*.layer ${CONVERT_DIR}/
cd ${CONVERT_DIR}/package/${LINGLONG_PKG_NAME}/${arch}/
## Run Test
ll-builder run

1883
linglong/linglong.yaml Normal file

File diff suppressed because it is too large Load Diff