# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 MAJOR_VER="$(ver_cut 1-4)" if [[ "${PN}" == "davinci-resolve-studio" ]] ; then BASE_NAME="DaVinci_Resolve_Studio_${MAJOR_VER}_Linux" CONFLICT_PKG="!!media-video/davinci-resolve" elif [[ "${PN}" == "davinci-resolve-beta" ]] ; then BASE_NAME="DaVinci_Resolve_${MAJOR_VER}_Linux" CONFLICT_PKG=" !!media-video/davinci-resolve !!media-video/davinci-resolve-studio" else BASE_NAME="DaVinci_Resolve_${MAJOR_VER}_Linux" CONFLICT_PKG="!!media-video/davinci-resolve-studio" fi ARC_NAME="${BASE_NAME}.zip" MRD_VER=1.6.4 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 dev-qt/qtcore:5 dev-qt/qtsvg:5 dev-qt/qtwebengine:5 dev-qt/qtwebsockets:5 dev-qt/qtvirtualkeyboard:5 media-libs/gstreamer media-libs/libpng sys-fs/fuse[suid] udev? ( virtual/udev ) virtual/opencl x11-misc/xdg-user-dirs ${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 } src_install() { cp -a ${DR}/lib "${ED}" || die cp -a ${DR}/opt "${ED}" || die cp -a ${DR}/usr "${ED}" || die mv ${ED}/usr/lib ${ED}/usr/lib64 || 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 } pkg_preinst() { xdg_pkg_preinst } pkg_postinst() { xdg_pkg_postinst udev_reload } pkg_postrm() { xdg_pkg_postrm udev_reload }