mirror of
https://github.com/kunkundi/crossdesk.git
synced 2026-07-30 03:38:41 +08:00
ci: add Linux capture build dependencies
This commit is contained in:
@@ -103,6 +103,23 @@ jobs:
|
|||||||
- name: Verify Linux build image
|
- name: Verify Linux build image
|
||||||
run: verify-crossdesk-build-image
|
run: verify-crossdesk-build-image
|
||||||
|
|
||||||
|
- name: Ensure Wayland build dependencies
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
if pkg-config --exists dbus-1 libdrm libpipewire-0.3 libspa-0.2; then
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
apt-get update
|
||||||
|
apt-get install -y --no-install-recommends \
|
||||||
|
libdbus-1-dev \
|
||||||
|
libdrm-dev \
|
||||||
|
libpipewire-0.3-dev \
|
||||||
|
libspa-0.2-dev
|
||||||
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
pkg-config --exists dbus-1 libdrm libpipewire-0.3 libspa-0.2
|
||||||
|
|
||||||
- name: Build CrossDesk
|
- name: Build CrossDesk
|
||||||
env:
|
env:
|
||||||
CUDA_PATH: /usr/local/cuda
|
CUDA_PATH: /usr/local/cuda
|
||||||
|
|||||||
@@ -52,9 +52,11 @@ RUN apt-get update \
|
|||||||
libfreetype6-dev \
|
libfreetype6-dev \
|
||||||
libgl1-mesa-dev \
|
libgl1-mesa-dev \
|
||||||
libmount-dev \
|
libmount-dev \
|
||||||
|
libpipewire-0.3-dev \
|
||||||
libpulse-dev \
|
libpulse-dev \
|
||||||
libreadline-dev \
|
libreadline-dev \
|
||||||
libsndio-dev \
|
libsndio-dev \
|
||||||
|
libspa-0.2-dev \
|
||||||
libssl-dev \
|
libssl-dev \
|
||||||
libtool \
|
libtool \
|
||||||
libx11-dev \
|
libx11-dev \
|
||||||
@@ -134,7 +136,7 @@ COPY submodules/minirtc/thirdparty ./submodules/minirtc/thirdparty
|
|||||||
# CrossDesk's exact dependency graph. Source files are intentionally excluded
|
# CrossDesk's exact dependency graph. Source files are intentionally excluded
|
||||||
# from the Docker context; source-only changes therefore reuse this layer.
|
# from the Docker context; source-only changes therefore reuse this layer.
|
||||||
RUN xmake repo -u --root \
|
RUN xmake repo -u --root \
|
||||||
&& xmake f -m release --USE_CUDA=true --root -y \
|
&& xmake f -m release --USE_CUDA=true --USE_WAYLAND=true --root -y \
|
||||||
&& rm -rf /data/.xmake/cache /tmp/crossdesk-dependencies \
|
&& rm -rf /data/.xmake/cache /tmp/crossdesk-dependencies \
|
||||||
&& mkdir -p /workspace
|
&& mkdir -p /workspace
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
# CrossDesk Linux 构建镜像
|
# CrossDesk Linux 构建镜像
|
||||||
|
|
||||||
这个目录维护 CrossDesk 专用的 Ubuntu 22.04 构建环境。镜像包含 xmake、
|
这个目录维护 CrossDesk 专用的 Ubuntu 22.04 构建环境。镜像包含 xmake、
|
||||||
Rust、Linux 开发库以及根据项目 `xmake.lua` 提前编译好的依赖。
|
Rust、Linux 开发库(包括 D-Bus、DRM、PipeWire 和 SPA)以及根据项目
|
||||||
|
`xmake.lua` 提前编译好的依赖。
|
||||||
|
|
||||||
## 发布方式
|
## 发布方式
|
||||||
|
|
||||||
|
|||||||
@@ -30,7 +30,17 @@ rustc --version | grep -F "rustc ${EXPECTED_RUST_VERSION}" >/dev/null
|
|||||||
cargo --version >/dev/null
|
cargo --version >/dev/null
|
||||||
cmake --version >/dev/null
|
cmake --version >/dev/null
|
||||||
g++ --version >/dev/null
|
g++ --version >/dev/null
|
||||||
pkg-config --exists xft
|
for pkg_config_package in \
|
||||||
|
dbus-1 \
|
||||||
|
libdrm \
|
||||||
|
libpipewire-0.3 \
|
||||||
|
libspa-0.2 \
|
||||||
|
xft; do
|
||||||
|
if ! pkg-config --exists "${pkg_config_package}"; then
|
||||||
|
echo "Required pkg-config package is missing: ${pkg_config_package}" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
for package_path in \
|
for package_path in \
|
||||||
"s/slint" \
|
"s/slint" \
|
||||||
|
|||||||
Reference in New Issue
Block a user