# HG changeset patch # User Migration Sync # Date 1691428502 0 # Node ID 1767728323bb74780dffde51e0118fa6df93a719 # Parent e7bfeec05909d6d7c8d9f7504ae39b3eeaffdaf4 [sync] imported 4c2cea0..04d1b06 from upstream commit 04d1b06f1ef195542b349745a54363216d62a85a Author: Daniel Neugebauer Date: Mon Aug 7 19:03:55 2023 +0200 media-libs/blackmagic-desktop-video: integrate udev_reload as asked commit e978764acb35ba478b0a9c01782adc148a2c9dd5 Author: Daniel Neugebauer Date: Mon Aug 7 18:53:27 2023 +0200 BlackMagic Desktop Video: bump to 12.5 (SDK 12.5.1) diff -r e7bfeec05909 -r 1767728323bb media-libs/blackmagic-desktop-video-sdk/Manifest --- a/media-libs/blackmagic-desktop-video-sdk/Manifest Mon Aug 07 16:30:01 2023 +0000 +++ b/media-libs/blackmagic-desktop-video-sdk/Manifest Mon Aug 07 17:15:02 2023 +0000 @@ -1,5 +1,7 @@ DIST Blackmagic_DeckLink_SDK_12.2.2.zip 107170429 BLAKE2B 749a7277c76a7e078f23966c9ddfb35dc80477482efe2d6401d0d822c5563f57cd8fb69a3e4c3415d4ee33cef66b7900b383aaad567ef9e293ca334b5aaec5e0 SHA512 81b5df150c8d7a75e2e0c5d1012ad653de84aafe58c7ea2074b3dc461da6c89f0c8c922801c5cf20cdc3dab45817396632658ac2fc36e63a68da38e84885e36c DIST Blackmagic_DeckLink_SDK_12.4.1.zip 109639722 BLAKE2B dcd9ddb1ecf9dc84a8bbb21824d7fa4043524e8478077741b0b115ba4fd456879db98cd55fa2e120a9a7b20d2c84ae804aef994e280955fb76e20ef42263ac8c SHA512 8cbd17ca34d4c70f53f7751efe2b0dfa4a92775af8740553ac8fef6fc3550f228a848da33fc904c38ddf98b4d2aca0ca382fada8b0dbcaba3b9c57f7424db4a8 +DIST Blackmagic_DeckLink_SDK_12.5.1.zip 109738114 BLAKE2B a0a9bbf291ee1bf4c8ec682aa23358982a6027be688e25daac99ef7d1baa3c8bb6af0b89e2846b6daa97e172173b1a92927f5f242a5c26b2f2e61eaf80f93af1 SHA512 ffd94df59b67ec0dac7b8311de1199d8a3a0fc080e0649faeba4d52176a28af49b9365026ee866cc6c4c3f4855e26b4c086c40ae47a91e8ed0fbe872239277dd EBUILD blackmagic-desktop-video-sdk-12.2.2.ebuild 1531 BLAKE2B 43e15ebef1c6cff58fcd45cdc7239e3e2daa73f6575f0e3fec5692a6244fc391e6e059926202f2cba3ee045665278991b3fd23a689fcaa38d8bca8faf9dcb7d3 SHA512 2dc129a5d35ee186451867440bee9d7161f39f0299fe713408f6d6c6c997788f5aa3646484040377b110fa7f06f898242504e904e61d354fae1e12f356d3caaa EBUILD blackmagic-desktop-video-sdk-12.4.1.ebuild 1703 BLAKE2B 7c8d3778e68b7507fb7f3c3eed3f3f34f01d35fb63a1405dfe82a4698634ba31bd892cb21b4ca7e366b2d368faa29f7d79865b23895de4233a66593095bc1e65 SHA512 6b4585a8e83c84b7f1d30cbb0d8820739e440c788aa05cb957b784acaef56bc9e216a946f3cbf3e913b9825c0eba625bc40b4765371856225b9bef33ca210eab +EBUILD blackmagic-desktop-video-sdk-12.5.1.ebuild 1703 BLAKE2B 23e454d21a588c09917d83e0cca5524108e7bec96865d6bfeca1879702171efc575e10fcf4662d8944444692fbbdff1a4551d56d198ab1109d2afff1898756fe SHA512 708bd1cbf23219f265e0407e6e5c24e612338c6972104424923ad4ccbd5ca6d1ad735ac693984a71e76f10d10b61501d8b217eba7062d1a1a01e8a6d18071843 MISC metadata.xml 254 BLAKE2B 0f5385784ed48c30e63b7cae99d5e704badd1bf65a00fb8871e0074d5c70e0127533a994aa59a21e17d9ee219007f77f5c4e98399d72bd02fdaa040766e0bfbc SHA512 0be8a2e79c5dcb3c6f7b570b54648cefafe777a352f4598541a529b4819e618be99a043308b84b067754bcb2d21ed4697ea4141b8518a94eddcbe7aa40d43d1c diff -r e7bfeec05909 -r 1767728323bb media-libs/blackmagic-desktop-video-sdk/blackmagic-desktop-video-sdk-12.5.1.ebuild --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/media-libs/blackmagic-desktop-video-sdk/blackmagic-desktop-video-sdk-12.5.1.ebuild Mon Aug 07 17:15:02 2023 +0000 @@ -0,0 +1,55 @@ +# Copyright 1999-2023 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="Desktop Video SDK - headers, examples and documentation necessary to develop/compile custom applications for products by Blackmagic Design (also known as DeckLink SDK)" +HOMEPAGE="http://www.blackmagicdesign.com/" +HOMEPAGE_DOWNLOAD_NAME="Desktop Video ${PV} SDK" + +SRC_URI="Blackmagic_DeckLink_SDK_${PV}.zip" +UNPACKED_DIR="Blackmagic DeckLink SDK ${PV}" + +LICENSE="BlackmagicDesktopVideoSDK" +SLOT="0" +KEYWORDS="~amd64" +IUSE="doc examples precompiled" +RESTRICT="fetch strip" + +pkg_nofetch() { + # 1 2 3 4 5 6 7 + # 123456789012345678901234567890123456789012345678901234567890123456789012 + einfo "Please visit ${HOMEPAGE} and download \"${HOMEPAGE_DOWNLOAD_NAME}\"" + einfo "for your product from the support section and move it to your DISTDIR" + einfo "(/var/cache/distfiles or /usr/portage/distfiles unless you changed it)." + einfo "" + einfo " expected filename: ${SRC_URI}" + #einfo "" + #einfo "If your browser downloads a .tar.gz file you will need to gunzip it." +} + +src_unpack() { + unpack ${A} + + # symlink to what is supposed to have been prepared + ln -s "${UNPACKED_DIR}" "${P}" +} + +src_prepare() { + if ! use precompiled; then + rm -R Linux/Samples/bin + rm -R Examples/Linux/bin Examples/Win/bin Examples/Mac/Binaries.dmg + fi + eapply_user +} + +src_install() { + # do not compress documentation (only RTF) or samples (makes no sense) + docompress -x /usr/share/doc + + use doc && dodoc -r *.pdf *.rtf + use examples && dodoc -r Examples Linux/Samples + + insinto "/usr/include/blackmagic" + doins -r Linux/include/* +} diff -r e7bfeec05909 -r 1767728323bb media-libs/blackmagic-desktop-video/Manifest --- a/media-libs/blackmagic-desktop-video/Manifest Mon Aug 07 16:30:01 2023 +0000 +++ b/media-libs/blackmagic-desktop-video/Manifest Mon Aug 07 17:15:02 2023 +0000 @@ -2,6 +2,8 @@ AUX 12.4.1__6_1__02_snd_dma_continuous_data.patch 872 BLAKE2B 8a63a5fda58261f78e136f6d9a631d3ee35327cad2673edaaa04f1c2af70840d3b3005be88270c53d3346300e2cbeb4d33ead146630addda1aae887a4bb0d83b SHA512 12a304ef72282719edcf0248a475307f555b20fdf42b415f86a47b4bfa88e30a1dfb28f5bf311933826613390c6a2e35aec3442265dacfb42aa5c9745374362d DIST Blackmagic_Desktop_Video_Linux_12.2.2.tar.gz 1028412541 BLAKE2B 41e315fe1409fd1b52e9e8aea7962c4df456afec03ef157562e71e90e2de5cfee64be946875975c633f7ef1b642631bb3c470e4b4c3a4ffb1eba77054413a0f7 SHA512 5a4db07201f399b8f29041649babd34105fc384a7a86e869d32693647ab438b75a6a0ba393ca09a8edd31adb799ca19e2e3f560809067eab0e995c2c9b56e623 DIST Blackmagic_Desktop_Video_Linux_12.4.1.tar.gz 823480855 BLAKE2B 150f6dad4882f66119e07d7f23d67ee759d3d8af025a4a17661f6b9e0cca0f9e7f16cff886ae4a8d86d6caa2a5aeeaff2989e9fbedd367ffe51ce23d19c2cac9 SHA512 28be759791a3e2102a43fa0dfd91c87a5784b4fc91db5c3cd891bdb3349c9d1b9a8713a494d06399e93708597fe784b4f2d6bf43340f22b6747bbbba86c9eb90 +DIST Blackmagic_Desktop_Video_Linux_12.5.tar.gz 824253005 BLAKE2B 483953d7d24f60711d4fa76f8a04b23ecefa461900b6288869e2f934bdc513015d884183d7d62d72028a41586cf3d292cb92cf0fb9e632b9b981d0d57246a0a3 SHA512 8e341a3f8818d705c87cfa06412e5b2ce3fa1032fd43af45eecde9e181adc9f1c2df1f352a95762e3f47217a83da356f983a2863b335cd159afaf18dfb7a2aa8 EBUILD blackmagic-desktop-video-12.2.2.ebuild 12858 BLAKE2B c95963b8921231e8a9616a2ff90e8f8edc8d0a01d6a21ba942fda1642c721fa549348482a29cd2602d2596cfdaf0bb932df2cd722ad44b5d5548d398a08e36d9 SHA512 9048f912a14f5c43e803e490451f57ba70fd164b743f58df8136b6577075dd071e87f5a5cb2d01082ab5bc2a33352275322395b18cc594adb4037adccb93a30c EBUILD blackmagic-desktop-video-12.4.1.ebuild 12906 BLAKE2B 173d0949022e075c7ecf7be141f100607869471de3acdb355e1d525b666dd03fd47794431e3c66f879005c7bde90a0e736fc9736a0c794138b6cfb3113a92f50 SHA512 66b6fdd9aa8454aabbaa6ab39c6bb9aaadc840f4ab8c0ccb8285055030ceaad21802f179ca8a4d257e09bc2d5f0d12a7b995c5010c31002d41c724a1f9098278 +EBUILD blackmagic-desktop-video-12.5.ebuild 13002 BLAKE2B 9b3d5fc75b50c208ec51bb792a0eefd2c31973b39da0e01dce35c7d7ffbe78252220e2376d510f0071a0bdef342b366a9216899c4a33e0840917b504b9dd7429 SHA512 7544464355555321666a4f9cdf1bd993348b6cae07df9fc424b9c854cc8f2249fb90e1ee69ea18f480bf8adcb4fa60b51d4b96d4e3e14744bf932e5bf993e523 MISC metadata.xml 522 BLAKE2B 9951091d4c6c2e641a5d7efaeee8f141827956cab47f0b40297e0d90aed066f0dfa7d26283686026c742e52a918b6843db9c2737a3fa89606422feefe77f7630 SHA512 841d4fbb837735fe16414bbdfdc1992799c0a1d739887c01232db6cfd3983d558a306b8fad9431cd07f22feef456175296e4801bf5b1a889abe58403ef2762e3 diff -r e7bfeec05909 -r 1767728323bb media-libs/blackmagic-desktop-video/blackmagic-desktop-video-12.5.ebuild --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/media-libs/blackmagic-desktop-video/blackmagic-desktop-video-12.5.ebuild Mon Aug 07 17:15:02 2023 +0000 @@ -0,0 +1,290 @@ +# Copyright 1999-2023 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +# TODOs: +# - fix QA notice about installing symlinks in /usr/lib + +EAPI=8 + +inherit linux-info linux-mod udev + +DESCRIPTION="Desktop Video - drivers and tools for products by Blackmagic Design including DeckLink, UltraStudio and Intensity" +HOMEPAGE="http://www.blackmagicdesign.com/" +HOMEPAGE_DOWNLOAD_NAME="Desktop Video ${PV}" + +SRC_URI="Blackmagic_Desktop_Video_Linux_${PV}.tar.gz" +DESKTOP_VIDEO_SHORT_VERSION="12.5" +DESKTOP_VIDEO_VERSION="12.5a15" +CONTAINER_DIR="Blackmagic_Desktop_Video_Linux_${DESKTOP_VIDEO_SHORT_VERSION}" +UNPACKED_DIR="desktopvideo-${DESKTOP_VIDEO_VERSION}-x86_64" + +LICENSE="BlackmagicDesktopVideo" +SLOT="0" +KEYWORDS="~amd64" +#IUSE="autostart +desktop patch_compat" +IUSE="autostart +desktop" +RESTRICT="fetch splitdebug strip" + +# dependencies found via command: (ldd would include transitive dependencies) +# for file in /usr/lib/libDeckLink* /usr/lib/blackmagic/DesktopVideo/* /usr/lib/blackmagic/DesktopVideo/plugins/*/*; do objdump -p $file | grep NEEDED; done 2>/dev/null | cut -b24- | sort | uniq | grep -vE 'lib(Qt5(Core|Network|Gui|Widgets)|qxcb|qgtk2|DeckLink)' +# equery belongs $(for file in /usr/lib/libDeckLink* /usr/lib/blackmagic/DesktopVideo/* /usr/lib/blackmagic/DesktopVideo/plugins/*/*; do objdump -p $file | grep NEEDED; done 2>/dev/null | cut -b24- | sort | uniq | grep -vE 'lib(Qt5(Core|Network|Gui|Widgets)|qxcb|qgtk2|DeckLink)') +DEPEND="" +RDEPEND="${DEPEND} + + desktop? ( + media-libs/freetype + media-libs/fontconfig + media-libs/libglvnd + sys-apps/dbus + x11-libs/libICE + x11-libs/libSM + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXrender + x11-libs/libxcb + ) + + dev-libs/glib + dev-libs/libusb + sys-apps/util-linux + sys-devel/gcc + sys-libs/glibc + sys-libs/libcxx + sys-libs/libcxxabi + " + +# supress QA warnings about stripping etc., i.e. stuff we cannot change since we install prebuilt binaries +QA_PREBUILT="opt/blackmagic-desktop-video/usr/bin/* opt/blackmagic-desktop-video/usr/lib/*" + +# for kernel module compilation +MODULE_NAMES="blackmagic(misc:${S}/usr/src/blackmagic-${DESKTOP_VIDEO_VERSION}:${S}/usr/src/blackmagic-${DESKTOP_VIDEO_VERSION}) blackmagic-io(misc:${S}/usr/src/blackmagic-io-${DESKTOP_VIDEO_VERSION}:${S}/usr/src/blackmagic-io-${DESKTOP_VIDEO_VERSION})" +BUILD_TARGETS="clean all" +BUILD_PARAMS="-j1" # work around race-condition causing .bmd-support.o.cmd to be missing +CONFIG_CHECK="~!WERROR" +ERROR_WERROR="If compilation fails disable CONFIG_WERROR and recompile kernel before retrying." + +#PATCH_COMPAT_MAX_MAJOR=6 +#PATCH_COMPAT_MAX_MINOR=1 + +#OFFICIAL_COMPAT_MAX_MAJOR=6 +#OFFICIAL_COMPAT_MAX_MINOR=1 + +pkg_nofetch() { + # 1 2 3 4 5 6 7 8 + # 1234567890123456789012345678901234567890123456789012345678901234567890123456789012 + einfo "Please visit ${HOMEPAGE} and download \"${HOMEPAGE_DOWNLOAD_NAME}\"" + einfo "for your product from the support section and move it to your DISTDIR" + einfo "(/var/cache/distfiles or /usr/portage/distfiles unless you changed it)." + einfo "" + einfo " expected filename: ${SRC_URI}" + einfo "" + einfo "If your browser downloads a .tar file you will need to rename it to .tar.gz" +} + +#pkg_pretend() { +# if kernel_is -gt $PATCH_COMPAT_MAX_MAJOR $PATCH_COMPAT_MAX_MINOR; then +# # 12345678901234567890123456789012345678901234567890123456789012345678901234567890 +# ewarn "Your kernel version seems to be unsupported; you have two options if modules do" +# ewarn "not work/compile:" +# ewarn "" +# ewarn " 1) Recommended: downgrade to an officially supported kernel version (e.g. ${OFFICIAL_COMPAT_MAX_MAJOR}.${OFFICIAL_COMPAT_MAX_MINOR})" +# ewarn "" +# ewarn " 2) Downgrade to an inofficially supported kernel version (max. ${PATCH_COMPAT_MAX_MAJOR}.${PATCH_COMPAT_MAX_MINOR}) and apply" +# ewarn " the *inofficial* patch which allows more recent kernel versions but may void" +# ewarn " warranty permanently. This can be done by setting the USE-flag patch_compat" +# ewarn " for this ebuild. The patch is not guaranteed to work at all and may even" +# ewarn " damage your hardware. Use at your own risk; you've been warned!" +# ewarn "" +# ewarn "It's highly recommended to choose option 1 and wait for an officially supported" +# ewarn "update unless you want to risk loosing your hardware and support." +# elif kernel_is -gt $OFFICIAL_COMPAT_MAX_MAJOR $OFFICIAL_COMPAT_MAX_MINOR && ! use patch_compat; then +# # 12345678901234567890123456789012345678901234567890123456789012345678901234567890 +# ewarn "Your kernel version seems to be unsupported; you have two options if modules do" +# ewarn "not work/compile:" +# ewarn "" +# ewarn " 1) Recommended: downgrade to an officially supported kernel version (e.g. ${OFFICIAL_COMPAT_MAX_MAJOR}.${OFFICIAL_COMPAT_MAX_MINOR})" +# ewarn "" +# ewarn " 2) Apply an *inofficial* patch which allows more recent kernel versions but may" +# ewarn " void warranty permanently. This can be done by setting the USE-flag" +# ewarn " patch_compat for this ebuild. The patch is not guaranteed to work at all" +# ewarn " and may even damage your hardware. Use at your own risk; you've been warned!" +# ewarn "" +# ewarn "It's highly recommended to choose option 1 and wait for an officially supported" +# ewarn "update unless you want to risk loosing your hardware and support." +# elif kernel_is -le $OFFICIAL_COMPAT_MAX_MAJOR $OFFICIAL_COMPAT_MAX_MINOR && use patch_compat; then +# # 12345678901234567890123456789012345678901234567890123456789012345678901234567890 +# einfo "Your kernel version is officially supported by this release. It is recommended" +# einfo "to unset patch_compat USE flag until you need it again." +# einfo "Inofficial patches will not be applied this time." +# fi +#} + +src_unpack() { + unpack ${A} + + cd ${WORKDIR} + tar xfz ${CONTAINER_DIR}/other/x86_64/desktopvideo-${DESKTOP_VIDEO_VERSION}-x86_64.tar.gz + + # symlink to what is supposed to have been prepared + ln -s ${UNPACKED_DIR} ${P} +} + +#src_prepare() { +# if kernel_is -gt $OFFICIAL_COMPAT_MAX_MAJOR $OFFICIAL_COMPAT_MAX_MINOR && use patch_compat; then +# eapply "${FILESDIR}/12.4.1__6_1__01_prandom_u32.patch" +# eapply "${FILESDIR}/12.4.1__6_1__02_snd_dma_continuous_data.patch" +# fi +# eapply_user +#} + +src_compile() { + # library/tools are binary but kernel module requires compilation + linux-mod_src_compile +} + +src_install() { + # all pre-built binaries should go into /opt and be symlinked to usr/bin etc. + finalinstalldir="/opt/blackmagic-desktop-video" + installdir="${D}${finalinstalldir}" + + mkdir -p ${installdir} + cp -a ${WORKDIR}/${UNPACKED_DIR}/* ${installdir}/ + + # copy text files (readme and license) from parent directory + cp -a ${WORKDIR}/${CONTAINER_DIR}/*.txt ${installdir}/ + + # there should a blank directory in /etc according to the archive... + mkdir -p ${installdir}/etc/blackmagic + chmod 755 ${installdir}/etc/blackmagic + + # NOTE: Not linking usr/lib/systemd as I do not use that and thus canot test it... + symlinks=( + 'etc/init.d/DesktopVideoHelper' + 'etc/dracut.conf.d/dracut-blackmagic.conf' + 'usr/bin/BlackmagicDesktopVideoSetup' + 'usr/bin/DesktopVideoUpdateTool' + 'usr/bin/DesktopVideoUpdater' + 'usr/lib/blackmagic' + 'usr/lib/libDeckLinkAPI.so' + 'usr/lib/libDeckLinkPreviewAPI.so' + 'usr/share/applications/BlackmagicDesktopVideoSetup.desktop' + 'usr/share/applications/DesktopVideoUpdater.desktop' + 'usr/share/icons/hicolor/16x16/apps/BlackmagicDesktopVideoSetup.png' + 'usr/share/icons/hicolor/16x16/apps/DesktopVideoUpdater.png' + 'usr/share/icons/hicolor/32x32/apps/BlackmagicDesktopVideoSetup.png' + 'usr/share/icons/hicolor/32x32/apps/DesktopVideoUpdater.png' + 'usr/share/icons/hicolor/48x48/apps/BlackmagicDesktopVideoSetup.png' + 'usr/share/icons/hicolor/48x48/apps/DesktopVideoUpdater.png' + 'usr/share/icons/hicolor/128x128/apps/BlackmagicDesktopVideoSetup.png' + 'usr/share/icons/hicolor/128x128/apps/DesktopVideoUpdater.png' + 'usr/share/icons/hicolor/256x256/apps/BlackmagicDesktopVideoSetup.png' + 'usr/share/icons/hicolor/256x256/apps/DesktopVideoUpdater.png' + ) + + for path in "${symlinks[@]}"; do + dosym /opt/blackmagic-desktop-video/${path} ${path} + done + + # copy but do not compress documentation + # reason for having it twice (in /opt and /usr): + # - symlinking with original directory names causes a QA notice as we should use our package name + # - symlinking with our package name causes some weird sandbox violation + docompress -x /usr/share/doc + docinto desktopvideo + dodoc -r ${finalinstalldir}/usr/share/doc/desktopvideo/* + docinto desktopvideo-gui + dodoc -r ${finalinstalldir}/usr/share/doc/desktopvideo-gui/* + + # dneuge: no clue on how to use this... + ## QA notice says we should generate a linker script if we don't place libraries in /usr/lib + ## see: https://devmanual.gentoo.org/eclass-reference/toolchain-funcs.eclass/index.html + #gen_usr_ldscript usr/lib/libDeckLinkAPI.so usr/lib/libDeckLinkPreviewAPI.so + + # don't symlink man-pages, install a copy instead + # NOTE: DesktopVideoHelper appears to have disappeared, so we won't install the man page either + doman usr/share/man/man1/BlackmagicDesktopVideoSetup.1 + doman usr/share/man/man1/BlackmagicFirmwareUpdater.1 + doman usr/share/man/man1/DesktopVideoHelper.1 + doman usr/share/man/man1/DesktopVideoUpdateTool.1 + doman usr/share/man/man1/DesktopVideoUpdater.1 + + # udev rules should be placed in /lib/udev/rules.d instead + dosym /opt/blackmagic-desktop-video/etc/udev/rules.d/55-blackmagic.rules /lib/udev/rules.d/55-blackmagic.rules + + # add firmware check to autostart? + if use autostart; then + dosym /opt/blackmagic-desktop-video/etc/xdg/autostart/DesktopVideoUpdaterAutoStart.desktop /etc/xdg/autostart/DesktopVideoUpdaterAutoStart.desktop + fi + + # kernel module + linux-mod_src_install +} + +pkg_postinst() { + # kernel module + linux-mod_pkg_postinst + + # 12345678901234567890123456789012345678901234567890123456789012345678901234567890 + einfo "" + einfo "Please do *NOT* report any QA errors to Gentoo or Blackmagic!" + einfo "" + einfo "Kernel modules are blackmagic and blackmagic-io. Try blackmagic if in doubt." + einfo "When upgrading, please rmmod both first. Then modprobe blackmagic to see if it" + einfo "works (it should print your devices to kernel log)." + einfo "" + einfo "Installed tools are DesktopVideoUpdateTool (CLI), DesktopVideoUpdater (GUI) and" + einfo "BlackmagicDesktopVideoSetup." + einfo "" + einfo "For Media Express emerge media-video/blackmagic-media-express." + einfo "" + if use autostart; then + einfo "Automated firmware update check has been installed." + else + einfo "Automated firmware update check has *not* been installed this time." + einfo "(set USE flag autostart if you want that)" + fi + einfo "" + einfo "If your product is not being recognized, there are two common reasons:" + einfo "" + einfo " 1) You may need to increase the vmalloc limit in your kernel." + einfo " This can be done by adding e.g. vmalloc=256M to your kernel boot line. You" + einfo " can see current usage by running" + einfo "" + einfo " # grep VmallocUsed /proc/meminfo" + einfo "" + einfo " 2) Your firmware may be outdated. Make sure you reload the modules (or simply" + einfo " reboot) and then run DesktopVideoUpdateTool (CLI) or, if you prefer," + einfo " DesktopVideoUpdater (GUI)" + einfo "" + einfo "Licenses can be found in: ${finalinstalldir}/usr/share/doc/" + einfo "" + udev_reload || ewarn "Reloading udev rules failed, you may want to check this before rebooting!" + + #if kernel_is -gt $OFFICIAL_COMPAT_MAX_MAJOR $OFFICIAL_COMPAT_MAX_MINOR && use patch_compat; then + # # 12345678901234567890123456789012345678901234567890123456789012345678901234567890 + # ewarn "" + # ewarn " *** YOU HAVE APPLIED INOFFICIAL PATCHES TO INSTALLED KERNEL MODULES ***" + # ewarn " *** DO NOT REPORT ANY ERRORS TO BLACKMAGIC, YOU BREAK WARRANTY ***" + # ewarn "" + # ewarn "Applying those patches is generally discouraged as it can potentially damage" + # ewarn "your hardware and therefore may void your warranty. You are recommended to" + # ewarn "go back to an older kernel and wait for an official update instead of applying" + # ewarn "these patches. At the very least, note that there is no support of any kind when" + # ewarn "using patched drivers. Avoid contacting the vendor for support while using" + # ewarn "inofficial drivers. Revert to official drivers and retry with untainted hardware" + # ewarn "if something doesn't work as expected. Additionally, your system may behave" + # ewarn "unstable." + # ewarn "" + # ewarn "Remove USE-flag patch_compat and re-emerge this ebuild immediately before use" + # ewarn "if you enabled it accidentally." + # ewarn "" + # ewarn " *** USE AT YOUR OWN RISK ***" + #fi +} + +pkg_postrm() { + udev_reload || ewarn "Reloading udev rules failed, you may want to check this before rebooting!" + + # kernel module + linux-mod_pkg_postrm +} diff -r e7bfeec05909 -r 1767728323bb media-video/blackmagic-media-express/Manifest --- a/media-video/blackmagic-media-express/Manifest Mon Aug 07 16:30:01 2023 +0000 +++ b/media-video/blackmagic-media-express/Manifest Mon Aug 07 17:15:02 2023 +0000 @@ -1,4 +1,4 @@ DIST Blackmagic_Desktop_Video_Linux_12.2.2.tar.gz 1028412541 BLAKE2B 41e315fe1409fd1b52e9e8aea7962c4df456afec03ef157562e71e90e2de5cfee64be946875975c633f7ef1b642631bb3c470e4b4c3a4ffb1eba77054413a0f7 SHA512 5a4db07201f399b8f29041649babd34105fc384a7a86e869d32693647ab438b75a6a0ba393ca09a8edd31adb799ca19e2e3f560809067eab0e995c2c9b56e623 -DIST Blackmagic_Desktop_Video_Linux_12.4.1.tar.gz 823480855 BLAKE2B 150f6dad4882f66119e07d7f23d67ee759d3d8af025a4a17661f6b9e0cca0f9e7f16cff886ae4a8d86d6caa2a5aeeaff2989e9fbedd367ffe51ce23d19c2cac9 SHA512 28be759791a3e2102a43fa0dfd91c87a5784b4fc91db5c3cd891bdb3349c9d1b9a8713a494d06399e93708597fe784b4f2d6bf43340f22b6747bbbba86c9eb90 +DIST Blackmagic_Desktop_Video_Linux_12.5.tar.gz 824253005 BLAKE2B 483953d7d24f60711d4fa76f8a04b23ecefa461900b6288869e2f934bdc513015d884183d7d62d72028a41586cf3d292cb92cf0fb9e632b9b981d0d57246a0a3 SHA512 8e341a3f8818d705c87cfa06412e5b2ce3fa1032fd43af45eecde9e181adc9f1c2df1f352a95762e3f47217a83da356f983a2863b335cd159afaf18dfb7a2aa8 EBUILD blackmagic-media-express-3.7.ebuild 4537 BLAKE2B ba1663f56dc0a620419e09da6333399cb2491d5951b3d087c4e5bb5ab51baad884dd9c43f8d101ae47003f790c954a3ad02592960d9a80f5e294504aa66c4076 SHA512 f1a5796024ff7df4452a5e9f933c86f03636cb32a7d594bd5bb2b6f84da5159b1a0a845f30cae77342acd6ad9da03dbf46aa99fb721ed68c35a5a15435a08cac -EBUILD blackmagic-media-express-3.8.1.ebuild 4619 BLAKE2B 9374b49986c3e36720ba42cfff7d30ae9dd4cc67306d6abe395f34abc696fe3bfe1fe3c0d6c829b32c25d8161d2e70dce315c5a1a0adf4d27c4415d17da9748b SHA512 f3c2cfc06f64bb41a09e31acc9ca36c14198aa77ecd38b5f09faf5e15e2931083885d0088618fe6b68b0fb6ce8ebf58c2610cc294c5424ce80a820e1c652a923 +EBUILD blackmagic-media-express-3.8.1-r1.ebuild 4615 BLAKE2B 1a2c3c97f795db023dcf9d5d69cb57fb26c7c9b26a4f80a7786c1f220b7bb648aa93468770344c582878db8a7cbe0e41bd1a10ac25605ed436faed7bd512b8d0 SHA512 5bbc931a6727cbbdc24247ce40f33c28c39af916e565c3d2ab9288f94a546e3b3fb1b284a799c20be05a011679f0cafb8b9b33b418cf62168aa23a0d695ba16b diff -r e7bfeec05909 -r 1767728323bb media-video/blackmagic-media-express/blackmagic-media-express-3.8.1-r1.ebuild --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/media-video/blackmagic-media-express/blackmagic-media-express-3.8.1-r1.ebuild Mon Aug 07 17:15:02 2023 +0000 @@ -0,0 +1,132 @@ +# Copyright 1999-2023 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +# TODOs: +# - fix QA notice about installing symlinks in /usr/lib + +EAPI=8 + +inherit xdg-utils + +DESKTOP_VIDEO_SHORT_VERSION="12.5" +DESKTOP_VIDEO_VERSION="12.5a15" +MEDIA_EXPRESS_VERSION="3.8.1a4" + +DESCRIPTION="Media Express - Blackmagic Design's tool for media capture, organization and playback" +HOMEPAGE="http://www.blackmagicdesign.com/" +HOMEPAGE_DOWNLOAD_NAME="Desktop Video ${DESKTOP_VIDEO_SHORT_VERSION}" + +SRC_URI="Blackmagic_Desktop_Video_Linux_${DESKTOP_VIDEO_SHORT_VERSION}.tar.gz" +UNPACKED_DIR="mediaexpress-${MEDIA_EXPRESS_VERSION}-x86_64" + +LICENSE="BlackmagicDesktopVideo" +SLOT="0" +KEYWORDS="~amd64" +#IUSE="autostart" +RESTRICT="fetch splitdebug strip" + +# dependencies for binaries found by commands: (ldd lists transitive dependencies as well which isn't what we want) +# for file in /usr/lib/blackmagic/MediaExpress/*; do objdump -p $file | grep NEEDED; done 2>/dev/null | cut -b24- | sort | uniq | grep -vE 'lib(Qt|MXF|DNxHDCodec)' +# equery belongs $(for file in /usr/lib/blackmagic/MediaExpress/*; do objdump -p $file | grep NEEDED; done 2>/dev/null | cut -b24- | sort | uniq | grep -vE 'lib(Qt|MXF|DNxHDCodec)') +# ... and repeat for plugins/*/* as well; provided .so files may be subtracted + +DEPEND="" +RDEPEND="${DEPEND} + >=media-libs/blackmagic-desktop-video-12.4.1 + + dev-libs/glib:2 + media-libs/alsa-lib + media-libs/fontconfig + media-libs/freetype + media-libs/libglvnd + sys-apps/dbus + sys-devel/gcc + sys-libs/glibc + sys-libs/libcxx + sys-libs/libcxxabi + virtual/glu + x11-libs/libICE + x11-libs/libSM + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXrender + x11-libs/libxcb + " + +# supress QA warnings about stripping etc., i.e. stuff we cannot change since we install prebuilt binaries +QA_PREBUILT="opt/blackmagic-media-express/usr/lib/*" + +pkg_nofetch() { + # 1 2 3 4 5 6 7 + # 123456789012345678901234567890123456789012345678901234567890123456789012 + einfo "Media Express is bundled with Desktop Video downloads." + einfo "" + einfo "Please visit ${HOMEPAGE} and download \"${HOMEPAGE_DOWNLOAD_NAME}\"" + einfo "for your product from the support section and move it to your DISTDIR" + einfo "(/var/cache/distfiles or /usr/portage/distfiles unless you changed it)." + einfo "" + einfo " expected filename: ${SRC_URI}" + einfo "" + einfo "If your browser downloads a .tar file you will need to rename it to .tar.gz" +} + +src_unpack() { + unpack ${A} + + cd ${WORKDIR} + tar xfz Blackmagic_Desktop_Video_Linux_${DESKTOP_VIDEO_SHORT_VERSION}/other/x86_64/mediaexpress-${MEDIA_EXPRESS_VERSION}-x86_64.tar.gz + + # symlink to what is supposed to have been prepared + ln -s ${UNPACKED_DIR} ${P} +} + +src_install() { + # all pre-built binaries should go into /opt and be symlinked to usr/bin etc. + finalinstalldir="/opt/blackmagic-media-express" + installdir="${D}${finalinstalldir}" + + mkdir -p ${installdir} + cp -a ${WORKDIR}/${UNPACKED_DIR}/* ${installdir}/ + + # NOTE: Not linking usr/lib/systemd as I do not use that and thus cannot test it... + symlinks=( + 'usr/bin/MediaExpress' + 'usr/lib/blackmagic/MediaExpress' + 'usr/share/applications/MediaExpress.desktop' + 'usr/share/icons/hicolor/32x32/apps/MediaExpress.png' + 'usr/share/icons/hicolor/48x48/apps/MediaExpress.png' + 'usr/share/icons/hicolor/256x256/apps/MediaExpress.png' + ) + + for path in "${symlinks[@]}"; do + dosym ${finalinstalldir}/${path} ${path} + done + + # copy but do not compress documentation + # reason for having it twice (in /opt and /usr): + # - symlinking as "mediaexpress" causes a QA notice as we should use our package name + # - symlinking with our package name causes some weird sandbox violation + docompress -x /usr/share/doc + dodoc -r ${finalinstalldir}/usr/share/doc/mediaexpress/* + + # dneuge: no clue on how to use this... + ## QA notice says we should generate a linker script if we don't place libraries in /usr/lib + ## see: https://devmanual.gentoo.org/eclass-reference/toolchain-funcs.eclass/index.html + #gen_usr_ldscript usr/lib/libDeckLinkAPI.so usr/lib/libDeckLinkPreviewAPI.so + + # don't symlink man-pages, install a copy instead + doman usr/share/man/man1/*.1 +} + +pkg_postinst() { + # 12345678901234567890123456789012345678901234567890123456789012345678901234567890 + einfo "Please do *NOT* report any QA errors to Gentoo or Blackmagic!" + einfo "" + einfo "License can be found in: ${finalinstalldir}/usr/share/doc/mediaexpress/License.txt" + + xdg_desktop_database_update +} + +pkg_postrm() { + xdg_desktop_database_update +} diff -r e7bfeec05909 -r 1767728323bb media-video/blackmagic-media-express/blackmagic-media-express-3.8.1.ebuild --- a/media-video/blackmagic-media-express/blackmagic-media-express-3.8.1.ebuild Mon Aug 07 16:30:01 2023 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,132 +0,0 @@ -# Copyright 1999-2022 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -# TODOs: -# - fix QA notice about installing symlinks in /usr/lib - -EAPI=8 - -inherit xdg-utils - -DESKTOP_VIDEO_SHORT_VERSION="12.4.1" -DESKTOP_VIDEO_VERSION="12.4.1a15" -MEDIA_EXPRESS_VERSION="3.8.1a4" - -DESCRIPTION="Media Express - Blackmagic Design's tool for media capture, organization and playback" -HOMEPAGE="http://www.blackmagicdesign.com/" -HOMEPAGE_DOWNLOAD_NAME="Desktop Video ${DESKTOP_VIDEO_SHORT_VERSION}" - -SRC_URI="Blackmagic_Desktop_Video_Linux_${DESKTOP_VIDEO_SHORT_VERSION}.tar.gz" -UNPACKED_DIR="mediaexpress-${MEDIA_EXPRESS_VERSION}-x86_64" - -LICENSE="BlackmagicDesktopVideo" -SLOT="0" -KEYWORDS="~amd64" -#IUSE="autostart" -RESTRICT="fetch splitdebug strip" - -# dependencies for binaries found by commands: (ldd lists transitive dependencies as well which isn't what we want) -# for file in /usr/lib/blackmagic/MediaExpress/*; do objdump -p $file | grep NEEDED; done 2>/dev/null | cut -b24- | sort | uniq | grep -vE 'lib(Qt|MXF|DNxHDCodec)' -# equery belongs $(for file in /usr/lib/blackmagic/MediaExpress/*; do objdump -p $file | grep NEEDED; done 2>/dev/null | cut -b24- | sort | uniq | grep -vE 'lib(Qt|MXF|DNxHDCodec)') -# ... and repeat for plugins/*/* as well; provided .so files may be subtracted - -DEPEND="" -RDEPEND="${DEPEND} - >=media-libs/blackmagic-desktop-video-12.4.1 - - dev-libs/glib:2 - media-libs/alsa-lib - media-libs/fontconfig - media-libs/freetype - media-libs/libglvnd - sys-apps/dbus - sys-devel/gcc - sys-libs/glibc - sys-libs/libcxx - sys-libs/libcxxabi - virtual/glu - x11-libs/libICE - x11-libs/libSM - x11-libs/libX11 - x11-libs/libXext - x11-libs/libXrender - x11-libs/libxcb - " - -# supress QA warnings about stripping etc., i.e. stuff we cannot change since we install prebuilt binaries -QA_PREBUILT="opt/blackmagic-media-express/usr/lib/*" - -pkg_nofetch() { - # 1 2 3 4 5 6 7 - # 123456789012345678901234567890123456789012345678901234567890123456789012 - einfo "Media Express is bundled with Desktop Video downloads." - einfo "" - einfo "Please visit ${HOMEPAGE} and download \"${HOMEPAGE_DOWNLOAD_NAME}\"" - einfo "for your product from the support section and move it to your DISTDIR" - einfo "(/var/cache/distfiles or /usr/portage/distfiles unless you changed it)." - einfo "" - einfo " expected filename: ${SRC_URI}" - einfo "" - einfo "If your browser downloads a .tar file you will need to rename it to .tar.gz" -} - -src_unpack() { - unpack ${A} - - cd ${WORKDIR} - tar xfz Blackmagic_Desktop_Video_Linux_${DESKTOP_VIDEO_SHORT_VERSION}/other/x86_64/mediaexpress-${MEDIA_EXPRESS_VERSION}-x86_64.tar.gz - - # symlink to what is supposed to have been prepared - ln -s ${UNPACKED_DIR} ${P} -} - -src_install() { - # all pre-built binaries should go into /opt and be symlinked to usr/bin etc. - finalinstalldir="/opt/blackmagic-media-express" - installdir="${D}${finalinstalldir}" - - mkdir -p ${installdir} - cp -a ${WORKDIR}/${UNPACKED_DIR}/* ${installdir}/ - - # NOTE: Not linking usr/lib/systemd as I do not use that and thus cannot test it... - symlinks=( - 'usr/bin/MediaExpress' - 'usr/lib/blackmagic/MediaExpress' - 'usr/share/applications/MediaExpress.desktop' - 'usr/share/icons/hicolor/32x32/apps/MediaExpress.png' - 'usr/share/icons/hicolor/48x48/apps/MediaExpress.png' - 'usr/share/icons/hicolor/256x256/apps/MediaExpress.png' - ) - - for path in "${symlinks[@]}"; do - dosym ${finalinstalldir}/${path} ${path} - done - - # copy but do not compress documentation - # reason for having it twice (in /opt and /usr): - # - symlinking as "mediaexpress" causes a QA notice as we should use our package name - # - symlinking with our package name causes some weird sandbox violation - docompress -x /usr/share/doc - dodoc -r ${finalinstalldir}/usr/share/doc/mediaexpress/* - - # dneuge: no clue on how to use this... - ## QA notice says we should generate a linker script if we don't place libraries in /usr/lib - ## see: https://devmanual.gentoo.org/eclass-reference/toolchain-funcs.eclass/index.html - #gen_usr_ldscript usr/lib/libDeckLinkAPI.so usr/lib/libDeckLinkPreviewAPI.so - - # don't symlink man-pages, install a copy instead - doman usr/share/man/man1/*.1 -} - -pkg_postinst() { - # 12345678901234567890123456789012345678901234567890123456789012345678901234567890 - einfo "Please do *NOT* report any QA errors to Gentoo or Blackmagic!" - einfo "" - einfo "License can be found in: ${finalinstalldir}/usr/share/doc/mediaexpress/License.txt" - - xdg_desktop_database_update -} - -pkg_postrm() { - xdg_desktop_database_update -}