add ipx back to ncpfs

This commit is contained in:
Mario Fetka
2026-04-20 13:15:07 +02:00
parent ae34514764
commit fe637d7921
2 changed files with 358 additions and 0 deletions

View File

@@ -0,0 +1,204 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
#MAJOR_VER="$(ver_cut 1-3)"
MAJOR_VER="21.0b1"
if [[ "${PN}" == "davinci-resolve-studio" ]] ; then
BASE_NAME="DaVinci_Resolve_Studio_${MAJOR_VER}_Linux"
CONFLICT_PKG="!!media-video/davinci-resolve"
else
BASE_NAME="DaVinci_Resolve_${MAJOR_VER}_Linux"
CONFLICT_PKG="!!media-video/davinci-resolve-studio"
fi
ARC_NAME="${BASE_NAME}.zip"
MRD_VER=1.9.0
inherit udev xdg
DESCRIPTION="Professional A/V post-production software suite"
HOMEPAGE="
https://www.blackmagicdesign.com/support/family/davinci-resolve-and-fusion
"
SRC_URI="${ARC_NAME}
https://www.danieltufvesson.com/download/?file=makeresolvedeb/makeresolvedeb_${MRD_VER}_multi.sh.tar.gz"
LICENSE="all-rights-reserved"
#KEYWORDS="-* ~amd64"
SLOT="0"
IUSE="doc udev +system-glib"
RESTRICT="strip mirror bindist fetch userpriv"
RDEPEND="
virtual/glu
x11-libs/gtk+:=
virtual/libcrypt:=
${CONFLICT_PKG}
"
DEPEND="
dev-libs/apr-util
app-arch/libarchive
dev-libs/openssl-compat
media-libs/gstreamer
media-libs/libpng
sys-fs/fuse[suid]
udev? ( virtual/udev )
virtual/opencl
x11-misc/xdg-user-dirs
dev-qt/qtcore:5
dev-qt/qtsvg:5
dev-qt/qtwebengine:5
dev-qt/qtwebsockets:5
dev-qt/qtvirtualkeyboard:5
${RDEPEND}
"
BDEPEND="dev-util/patchelf"
S="${WORKDIR}"
DR="${WORKDIR}/davinci-resolve_${MAJOR_VER}-mrd${MRD_VER}_amd64"
QA_PREBUILT="*"
pkg_nofetch() {
einfo "Please download installation file"
einfo " - ${ARC_NAME}"
einfo "from ${HOMEPAGE} and place it in ${DISTDIR}."
einfo "===="
einfo "Please download installation file"
einfo " - makeresolvedeb_${MRD_VER}_multi.sh.tar.gz"
einfo "from https://www.danieltufvesson.com/makeresolvedeb and place it in \$\{DISTDIR\}."
}
src_prepare() {
mv "${WORKDIR}"/makeresolvedeb*.sh "${WORKDIR}"/makeresolvedeb.sh
eapply -p0 "${FILESDIR}/makeresolvedeb_gentoo_${MRD_VER}.patch"
eapply_user
sed -i -e "s!#LIBDIR#!$(get_libdir)!" "${WORKDIR}"/makeresolvedeb.sh || die "Sed failed!"
}
_adjust_sandbox() {
addwrite /dev
addread /dev
addpredict /root
addpredict /etc
addpredict /lib
addpredict /usr
addpredict /sys
addpredict "/var/BlackmagicDesign"
addpredict "/var/BlackmagicDesign/DaVinci Resolve"
}
src_compile() {
_adjust_sandbox
cd "${WORKDIR}"
chmod u+x ${BASE_NAME}.run
CI_TEST="1" "${WORKDIR}"/makeresolvedeb.sh ${BASE_NAME}.run
pushd ${DR}/opt/resolve/
_patchelf_paths=( "libs"
"libs/plugins/sqldrivers"
"libs/plugins/xcbglintegrations"
"libs/plugins/imageformats"
"libs/plugins/platforms"
"libs/Fusion"
"plugins"
"bin"
"BlackmagicRAWSpeedTest/BlackmagicRawAPI"
"BlackmagicRAWSpeedTest/plugins/platforms"
"BlackmagicRAWSpeedTest/plugins/imageformats"
"BlackmagicRAWSpeedTest/plugins/mediaservice"
"BlackmagicRAWSpeedTest/plugins/audio"
"BlackmagicRAWSpeedTest/plugins/xcbglintegrations"
"BlackmagicRAWSpeedTest/plugins/bearer"
"BlackmagicRAWPlayer/BlackmagicRawAPI"
"BlackmagicRAWPlayer/plugins/mediaservice"
"BlackmagicRAWPlayer/plugins/imageformats"
"BlackmagicRAWPlayer/plugins/audio"
"BlackmagicRAWPlayer/plugins/platforms"
"BlackmagicRAWPlayer/plugins/xcbglintegrations"
"BlackmagicRAWPlayer/plugins/bearer"
"Onboarding/plugins/xcbglintegrations"
"Onboarding/plugins/qtwebengine"
"Onboarding/plugins/platforms"
"Onboarding/plugins/imageformats"
"DaVinci Control Panels Setup/plugins/platforms"
"DaVinci Control Panels Setup/plugins/imageformats"
"DaVinci Control Panels Setup/plugins/bearer"
"DaVinci Control Panels Setup/AdminUtility/PlugIns/DaVinciKeyboards"
"DaVinci Control Panels Setup/AdminUtility/PlugIns/DaVinciPanels")
for _index in "${!_patchelf_paths[@]}"
do
_patchelf_paths[${_index}]="/opt/resolve/${_patchelf_paths[${_index}]}"
done
while IFS= read -r -d '' _file; do
[[ -f "${_file}" && $(od -t x1 -N 4 "${_file}") == *"7f 45 4c 46"* ]] || continue
patchelf --set-rpath "$(IFS=":"; echo "${_patchelf_paths[*]}:\$ORIGIN")" "${_file}"
done < <(find "${DR}" -type f -size -32M -print0)
# patchelf --set-rpath "$(IFS=":"; echo "${_patchelf_paths[*]}:\$ORIGIN")" "./Fairlight Studio Utility/libc++abi.so.1" || die
# patchelf --set-rpath "$(IFS=":"; echo "${_patchelf_paths[*]}:\$ORIGIN")" "./DaVinci Control Panels Setup/AdminUtility/PlugIns/DaVinciKeyboards/lib/libc++abi.so.1" || die
# patchelf --set-rpath "$(IFS=":"; echo "${_patchelf_paths[*]}:\$ORIGIN")" "./DaVinci Control Panels Setup/AdminUtility/PlugIns/FairlightPanels/lib/libc++abi.so.1" || die
# patchelf --set-rpath "$(IFS=":"; echo "${_patchelf_paths[*]}:\$ORIGIN")" "./DaVinci Control Panels Setup/AdminUtility/PlugIns/DaVinciPanels/lib/libc++abi.so.1" || die
# patchelf --set-rpath "$(IFS=":"; echo "${_patchelf_paths[*]}:\$ORIGIN")" "./DaVinci Control Panels Setup/libc++abi.so.1" || die
# patchelf --set-rpath "$(IFS=":"; echo "${_patchelf_paths[*]}:\$ORIGIN")" "./libs/libxmlsec1-openssl.so" || die
# patchelf --set-rpath "$(IFS=":"; echo "${_patchelf_paths[*]}:\$ORIGIN")" "./libs/libwebpdecoder.so.3.1.10" || die
# patchelf --set-rpath "$(IFS=":"; echo "${_patchelf_paths[*]}:\$ORIGIN")" "./libs/libcrypto.so.1.1" || die
# patchelf --set-rpath "$(IFS=":"; echo "${_patchelf_paths[*]}:\$ORIGIN")" "./libs/libssl.so.1.1" || die
# patchelf --set-rpath "$(IFS=":"; echo "${_patchelf_paths[*]}:\$ORIGIN")" "./libs/libsharpyuv.so.0.1.1" || die
# patchelf --set-rpath "$(IFS=":"; echo "${_patchelf_paths[*]}:\$ORIGIN")" "./libs/libCrmSdk.so.2.10" || die
# patchelf --set-rpath "$(IFS=":"; echo "${_patchelf_paths[*]}:\$ORIGIN")" "./libs/libcurl.so" || die
# patchelf --set-rpath "$(IFS=":"; echo "${_patchelf_paths[*]}:\$ORIGIN")" "./libs/libc++abi.so.1" || die
popd
}
src_install() {
cp -a ${DR}/lib "${ED}" || die
cp -a ${DR}/opt "${ED}" || die
cp -a ${DR}/usr "${ED}" || die
cp -a ${DR}/var "${ED}" || die
if use doc ; then
dodoc *.pdf
fi
# See bug 718070 for reason for the next line.
if use system-glib ; then
rm -f "${ED}"/opt/resolve/libs/libglib-*
rm -f "${ED}"/opt/resolve/libs/libgio-2.0.so*
rm -f "${ED}"/opt/resolve/libs/libgmodule-2.0.so*
fi
install -D -m 0644 -t "${ED}"/opt/resolve/configs \
""${ED}"/opt/resolve/share/default-config.dat" \
""${ED}"/opt/resolve/share/log-conf.xml"
install -D -m 0644 -t "${ED}"/opt/resolve/DolbyVision \
"${ED}"/opt/resolve/share/default_cm_config.bin
keepdir "/opt/resolve/.license"
keepdir "/opt/resolve/Apple Immersive/Calibration"
keepdir "/opt/resolve/Extras"
keepdir "/opt/resolve/Fairlight"
keepdir "/opt/resolve/easyDCP"
keepdir "/opt/resolve/logs"
keepdir "/var/BlackmagicDesign/DaVinci Resolve"
}
pkg_preinst() {
xdg_pkg_preinst
}
pkg_postinst() {
xdg_pkg_postinst
udev_reload
}
pkg_postrm() {
xdg_pkg_postrm
udev_reload
}

View File

@@ -0,0 +1,154 @@
--- makeresolvedeb_1.9.0_multi.sh 2026-04-14 13:35:48.000000000 +0200
+++ makeresolvedeb.sh 2026-04-15 14:58:17.957137306 +0200
@@ -67,7 +67,7 @@
fi
if [[ -e "${1}" ]]; then
echo "[ERROR: UNABLE TO REPLACE DIRECTORY] $1"
- ERRORS=$((ERRORS+1))
+ ERRORS=$((ERRORS+1))
fi
create_directory "${1}"
}
@@ -164,8 +164,8 @@
copy_object "${UNPACK_DIR}"/libs/libBlackmagicRawAPI.so "${RESOLVE_BASE_DIR}"/bin/
# Install panel API library
- create_directory "${DEB_DIR}"/usr/lib/
- extract_tgz "${UNPACK_DIR}"/share/panels/dvpanel-framework-linux-x86_64.tgz "${DEB_DIR}"/usr/lib/ libDaVinciPanelAPI.so
+ create_directory "${DEB_DIR}"/usr/#LIBDIR#/
+ extract_tgz "${UNPACK_DIR}"/share/panels/dvpanel-framework-linux-x86_64.tgz "${DEB_DIR}"/usr/#LIBDIR#/ libDaVinciPanelAPI.so
# Add postinst commands
cat >> "${DEB_DIR}"/DEBIAN/postinst <<EOF
@@ -221,8 +221,8 @@
copy_object "${UNPACK_DIR}"/share/default_cm_config.bin "${RESOLVE_BASE_DIR}"/share/
# Extract panel API library
- create_directory "${DEB_DIR}"/usr/lib
- extract_tgz "${UNPACK_DIR}"/share/panels/dvpanel-framework-linux-x86_64.tgz "${DEB_DIR}"/usr/lib libDaVinciPanelAPI.so
+ create_directory "${DEB_DIR}"/usr/#LIBDIR#
+ extract_tgz "${UNPACK_DIR}"/share/panels/dvpanel-framework-linux-x86_64.tgz "${DEB_DIR}"/usr/#LIBDIR# libDaVinciPanelAPI.so
# BlackmagicRawAPI fixes
create_directory "${RESOLVE_BASE_DIR}"/bin/BlackmagicRawAPI/
@@ -240,7 +240,7 @@
chmod -R a+rw /opt/resolve/Fairlight
chmod -R a+rw /var/BlackmagicDesign/"DaVinci Resolve"
EOF
-
+
# libcudafix for Resolve 16.0 & 16.1
if [[ "$RESOLVE_VERSION" == 16.0* ]] || [[ "$RESOLVE_VERSION" == 16.1* ]];
then
@@ -284,9 +284,9 @@
copy_object "${UNPACK_DIR}"/share/default_cm_config.bin "${RESOLVE_BASE_DIR}"/share/
# Extract panel API library
- create_directory "${DEB_DIR}"/usr/lib
- extract_tgz "${UNPACK_DIR}"/share/panels/dvpanel-framework-linux-x86_64.tgz "${DEB_DIR}"/usr/lib libDaVinciPanelAPI.so
- extract_tgz "${UNPACK_DIR}"/share/panels/dvpanel-framework-linux-x86_64.tgz "${DEB_DIR}"/usr/lib libFairlightPanelAPI.so
+ create_directory "${DEB_DIR}"/usr/#LIBDIR#
+ extract_tgz "${UNPACK_DIR}"/share/panels/dvpanel-framework-linux-x86_64.tgz "${DEB_DIR}"/usr/#LIBDIR# libDaVinciPanelAPI.so
+ extract_tgz "${UNPACK_DIR}"/share/panels/dvpanel-framework-linux-x86_64.tgz "${DEB_DIR}"/usr/#LIBDIR# libFairlightPanelAPI.so
# BlackmagicRawAPI fixes for 17.0 & 17.1
if [[ "$RESOLVE_VERSION" == 17.0* ]] || [[ "$RESOLVE_VERSION" == 17.1* ]];
@@ -344,11 +344,11 @@
if [[ -e "${UNPACK_DIR}"/share/remote-monitoring-log-conf.xml ]]; then
copy_object "${UNPACK_DIR}"/share/remote-monitoring-log-conf.xml "${RESOLVE_BASE_DIR}"/share/
fi
-
+
# Extract panel API library
- create_directory "${DEB_DIR}"/usr/lib
- extract_tgz "${UNPACK_DIR}"/share/panels/dvpanel-framework-linux-x86_64.tgz "${DEB_DIR}"/usr/lib libDaVinciPanelAPI.so
- extract_tgz "${UNPACK_DIR}"/share/panels/dvpanel-framework-linux-x86_64.tgz "${DEB_DIR}"/usr/lib libFairlightPanelAPI.so
+ create_directory "${DEB_DIR}"/usr/#LIBDIR#
+ extract_tgz "${UNPACK_DIR}"/share/panels/dvpanel-framework-linux-x86_64.tgz "${DEB_DIR}"/usr/#LIBDIR# libDaVinciPanelAPI.so
+ extract_tgz "${UNPACK_DIR}"/share/panels/dvpanel-framework-linux-x86_64.tgz "${DEB_DIR}"/usr/#LIBDIR# libFairlightPanelAPI.so
# Create common data dir
create_directory "${DEB_DIR}"/var/BlackmagicDesign/DaVinci\ Resolve
@@ -406,9 +406,9 @@
done
# Extract panel API library
- create_directory "${DEB_DIR}"/usr/lib
- extract_tgz "${UNPACK_DIR}"/share/panels/dvpanel-framework-linux-x86_64.tgz "${DEB_DIR}"/usr/lib libDaVinciPanelAPI.so
- extract_tgz "${UNPACK_DIR}"/share/panels/dvpanel-framework-linux-x86_64.tgz "${DEB_DIR}"/usr/lib libFairlightPanelAPI.so
+ create_directory "${DEB_DIR}"/usr/#LIBDIR#
+ extract_tgz "${UNPACK_DIR}"/share/panels/dvpanel-framework-linux-x86_64.tgz "${DEB_DIR}"/usr/#LIBDIR# libDaVinciPanelAPI.so
+ extract_tgz "${UNPACK_DIR}"/share/panels/dvpanel-framework-linux-x86_64.tgz "${DEB_DIR}"/usr/#LIBDIR# libFairlightPanelAPI.so
# Create common data dir
create_directory "${DEB_DIR}"/var/BlackmagicDesign/DaVinci\ Resolve
@@ -468,9 +468,9 @@
done
# Extract panel API library
- create_directory "${DEB_DIR}"/usr/lib
- extract_tgz "${UNPACK_DIR}"/share/panels/dvpanel-framework-linux-x86_64.tgz "${DEB_DIR}"/usr/lib libDaVinciPanelAPI.so
- extract_tgz "${UNPACK_DIR}"/share/panels/dvpanel-framework-linux-x86_64.tgz "${DEB_DIR}"/usr/lib libFairlightPanelAPI.so
+ create_directory "${DEB_DIR}"/usr/#LIBDIR#
+ extract_tgz "${UNPACK_DIR}"/share/panels/dvpanel-framework-linux-x86_64.tgz "${DEB_DIR}"/usr/#LIBDIR# libDaVinciPanelAPI.so
+ extract_tgz "${UNPACK_DIR}"/share/panels/dvpanel-framework-linux-x86_64.tgz "${DEB_DIR}"/usr/#LIBDIR# libFairlightPanelAPI.so
# Create common data dir
create_directory "${DEB_DIR}"/var/BlackmagicDesign/DaVinci\ Resolve
@@ -536,9 +536,9 @@
done
# Extract panel API library
- create_directory "${DEB_DIR}"/usr/lib
- extract_tgz "${UNPACK_DIR}"/share/panels/dvpanel-framework-linux-x86_64.tgz "${DEB_DIR}"/usr/lib libDaVinciPanelAPI.so
- extract_tgz "${UNPACK_DIR}"/share/panels/dvpanel-framework-linux-x86_64.tgz "${DEB_DIR}"/usr/lib libFairlightPanelAPI.so
+ create_directory "${DEB_DIR}"/usr/#LIBDIR#
+ extract_tgz "${UNPACK_DIR}"/share/panels/dvpanel-framework-linux-x86_64.tgz "${DEB_DIR}"/usr/#LIBDIR# libDaVinciPanelAPI.so
+ extract_tgz "${UNPACK_DIR}"/share/panels/dvpanel-framework-linux-x86_64.tgz "${DEB_DIR}"/usr/#LIBDIR# libFairlightPanelAPI.so
# Create common data dir
create_directory "${DEB_DIR}"/var/BlackmagicDesign/DaVinci\ Resolve
@@ -561,9 +561,9 @@
fi
if [[ -e "${UNPACK_DIR}"/BlackmagicRAWPlayer ]]; then
echo "Adding BlackmagicRAWPlayer"
-
+
copy_object "${UNPACK_DIR}"/BlackmagicRAWPlayer "${RESOLVE_BASE_DIR}"
-
+
assert_object "${DEB_DIR}"/opt/resolve/graphics/blackmagicraw-player_256x256_apps.png
assert_object "${DEB_DIR}"/opt/resolve/BlackmagicRAWPlayer/BlackmagicRAWPlayer
cat > "${DEB_DIR}"/usr/share/applications/com.blackmagicdesign.rawplayer.desktop <<EOF
@@ -582,9 +582,9 @@
fi
if [[ -e "${UNPACK_DIR}"/BlackmagicRAWSpeedTest ]]; then
echo "Adding BlackmagicRAWSpeedTest"
-
+
copy_object "${UNPACK_DIR}"/BlackmagicRAWSpeedTest "${RESOLVE_BASE_DIR}"
-
+
assert_object "${DEB_DIR}"/opt/resolve/graphics/blackmagicraw-speedtest_256x256_apps.png
assert_object "${DEB_DIR}"/opt/resolve/BlackmagicRAWSpeedTest/BlackmagicRAWSpeedTest
cat > "${DEB_DIR}"/usr/share/applications/com.blackmagicdesign.rawspeedtest.desktop <<EOF
@@ -924,8 +924,8 @@
# Verify that we have the commands we need
check_command tar
-check_command fakeroot
-check_command dpkg-deb
+# check_command fakeroot
+# check_command dpkg-deb
echo
# Create destination directories
@@ -1013,7 +1013,7 @@
then
ERRORS=$((ERRORS+1))
fi
-
+
# Clean up
remove_directory "./tmp"
remove_directory "${UNPACK_DIR}"