fix: stop flatpak DataChannel build from re-cloning over the sandboxed network

This commit is contained in:
Ian Chua
2026-09-18 22:10:30 +08:00
parent bc03e3be2f
commit e168d900f2
3 changed files with 30 additions and 8 deletions
+1 -1
View File
@@ -238,7 +238,7 @@ if (NOT IS_CROSS_COMPILE OR NOT APPLE)
DEPENDEES download # do after download
COMMENT "Freeing Space: Removing source archive"
WORKING_DIRECTORY ${DEP_DOWNLOAD_DIR}
COMMAND ${CMAKE_COMMAND} -E rm -r ${projectname}
COMMAND ${CMAKE_COMMAND} -E rm -rf ${projectname}
)
ExternalProject_Add_Step(dep_${projectname} free_build_space
DEPENDEES install # do after install
+20 -4
View File
@@ -1,6 +1,25 @@
# libdatachannel is the native ICE/DTLS/SCTP implementation used by the
# GUI WebRTC camera controller. Keep the source revision fixed: the signaling
# protocol is evolving independently of this transport dependency.
#
# It vendors plog, usrsctp and libjuice as git submodules, which a plain
# GitHub tag tarball does not include. The flatpak sandbox has no network
# access during the build, so there the manifest itself clones the repo
# (submodules and all) straight into this ExternalProject's default source
# dir before the sandbox closes; with no download method given here and that
# dir already non-empty, ExternalProject_Add silently uses it as-is instead
# of trying its own (network) git step.
if (FLATPAK)
set(_datachannel_source "")
else()
set(_datachannel_source
GIT_REPOSITORY https://github.com/paullouisageneau/libdatachannel.git
GIT_TAG v0.24.5
GIT_SHALLOW ON
GIT_SUBMODULES_RECURSE ON
)
endif()
orcaslicer_add_cmake_project(DataChannel
DEPENDS ${OPENSSL_PKG}
CMAKE_ARGS
@@ -13,8 +32,5 @@ orcaslicer_add_cmake_project(DataChannel
-DUSE_SYSTEM_USRSCTP=OFF
-DOPENSSL_ROOT_DIR:PATH=${DESTDIR}
-DOPENSSL_USE_STATIC_LIBS=ON
GIT_REPOSITORY https://github.com/paullouisageneau/libdatachannel.git
GIT_TAG v0.24.5
GIT_SHALLOW ON
GIT_SUBMODULES_RECURSE ON
${_datachannel_source}
)
@@ -326,9 +326,15 @@ modules:
dest: external-packages/FFMPEG
# libdatachannel v0.24.5
- type: file
url: https://github.com/paullouisageneau/libdatachannel/archive/refs/tags/v0.24.5.tar.gz
sha256: 454537c3cd526bed935d847bb2dff4046f266eef84d43b2a5f2f2f293c0026f4
# Use git instead of archive: it vendors plog, usrsctp and libjuice as
# git submodules, which a plain GitHub tag tarball does not include.
# Cloned (with submodules) straight into the ExternalProject source dir
# that deps/DataChannel/DataChannel.cmake expects, since the sandboxed
# build step has no network to do this itself.
- type: git
url: https://github.com/paullouisageneau/libdatachannel.git
tag: v0.24.5
commit: 443f6934d9007eb7076ab7825ba330f355fcbead
dest: deps/build_flatpak/dep_DataChannel-prefix/src/dep_DataChannel
# ---------------------------------------------------------------