diff options
author | Victor van Herpt Valdivia | 2019-04-24 11:36:49 +0200 |
---|---|---|
committer | Victor van Herpt Valdivia | 2019-04-24 11:36:49 +0200 |
commit | 21d2950b85c3e9accf7c146f801df870c831e14a (patch) | |
tree | 7d6d6c3a0e749d52f52602e407ef04d12016ace4 | |
parent | b5787a8534a830001771b99c2ec886b204c872d3 (diff) | |
download | aur-21d2950b85c3e9accf7c146f801df870c831e14a.tar.gz |
Update sha256sum, fix filenames and add variables to streamline the maintenance of the different packages.
-rw-r--r-- | .SRCINFO | 13 | ||||
-rw-r--r-- | PKGBUILD | 41 | ||||
-rw-r--r-- | davinci-resolve.install | 100 |
3 files changed, 137 insertions, 17 deletions
@@ -1,9 +1,9 @@ pkgbase = davinci-resolve-studio-beta - pkgdesc = Professional A/V post-production software suite from Blackmagic Design + pkgdesc = Professional A/V post-production software suite from Blackmagic Design. Studio edition, requires license key or license dongle. pkgver = 16.0b1 - pkgrel = 1 + pkgrel = 2 url = https://www.blackmagicdesign.com/support/family/davinci-resolve-and-fusion - install = davinci-resolve-studio-beta.install + install = davinci-resolve.install arch = any license = Commercial makedepends = libarchive @@ -22,12 +22,13 @@ pkgbase = davinci-resolve-studio-beta depends = qt5-webkit depends = qt5-webengine depends = qt5-websockets - conflicts = davinci-resolve + provides = davinci-resolve conflicts = davinci-resolve-beta + conflicts = davinci-resolve conflicts = davinci-resolve-studio options = !strip - source = local://DaVinci_Resolve_16.0b1_Linux.zip - sha256sums = SKIP + source = local://DaVinci_Resolve_Studio_16.0b1_Linux.zip + sha256sums = 29c9a2d5fb94168e4bcbeee6b7c7f192ab471f3e04bf4c75631932d6b3907165 pkgname = davinci-resolve-studio-beta @@ -11,8 +11,7 @@ pkgname=davinci-resolve-studio-beta _pkgname=resolve resolve_app_name=com.blackmagicdesign.resolve pkgver=16.0b1 -pkgrel=1 -pkgdesc='Professional A/V post-production software suite from Blackmagic Design' +pkgrel=2 arch=('any') url="https://www.blackmagicdesign.com/support/family/davinci-resolve-and-fusion" license=('Commercial') @@ -20,26 +19,46 @@ depends=('glu' 'gtk2' 'gstreamer' 'libpng12' 'lib32-libpng12' 'ocl-icd' 'openssl 'opencl-driver' 'qt4' 'qt5-base' 'qt5-svg' 'qt5-webkit' 'qt5-webengine' 'qt5-websockets') makedepends=('libarchive' 'xdg-user-dirs') options=('!strip') -conflicts=('davinci-resolve' 'davinci-resolve-beta' 'davinci-resolve-studio') -install=${pkgname}.install +provides=('davinci-resolve') +install=davinci-resolve.install + +if [ ${pkgname} == "davinci-resolve-studio-beta" ]; then +# Variables for STUDIO edition + pkgdesc='Professional A/V post-production software suite from Blackmagic Design. Studio edition, requires license key or license dongle.' + _archive_name=DaVinci_Resolve_Studio_${pkgver}_Linux + sha256sums=('29c9a2d5fb94168e4bcbeee6b7c7f192ab471f3e04bf4c75631932d6b3907165') + conflicts=('davinci-resolve-beta' 'davinci-resolve' 'davinci-resolve-studio') + +else +# Variables for FREE edition + pkgdesc='Professional A/V post-production software suite from Blackmagic Design' + _archive_name=DaVinci_Resolve_${pkgver}_Linux + sha256sums=('7f4517cc08dde962e515ec1bdfbc65b0f1e55368f8d82d31987590e62a6be9c0') + conflicts=('davinci-resolve' 'davinci-resolve-studio' 'davinci-resolve-studio-beta') + +fi + + +_archive=${_archive_name}.zip +_installer_binary=${_archive_name}.run # Trying to make the user's life easier ;o) msg2 "Trying to fetch the archive file if available..." DOWNLOADS_DIR=`xdg-user-dir DOWNLOAD` -if [ ! -f ${PWD}/DaVinci_Resolve_${pkgver}_Linux.zip ]; then - if [ -f $DOWNLOADS_DIR/DaVinci_Resolve_${pkgver}_Linux.zip ]; then - ln -sfn $DOWNLOADS_DIR/DaVinci_Resolve_${pkgver}_Linux.zip ${PWD} +if [ ! -f ${PWD}/${_archive} ]; then + if [ -f $DOWNLOADS_DIR/${_archive} ]; then + ln -sfn $DOWNLOADS_DIR/${_archive} ${PWD} else msg2 "" msg2 "The package can be downloaded here: https://www.blackmagicdesign.com/support/family/davinci-resolve-and-fusion" - msg2 "Please remember to put a downloaded package DaVinci_Resolve_${pkgver}_Linux.zip into the build directory ${PWD} or $DOWNLOADS_DIR" + msg2 "Please remember to put a downloaded package ${_archive}into the build directory ${PWD} or $DOWNLOADS_DIR" msg2 "" fi fi -source=("local://DaVinci_Resolve_${pkgver}_Linux.zip") -sha256sums=('SKIP') +source=("local://${_archive}") + prepare() { @@ -66,7 +85,7 @@ package() msg2 "Extracting from bundle..." msg "Please wait, this take a while..." cd "${srcdir}" || exit - bsdtar x -f DaVinci_Resolve_${pkgver}_Linux.run -C "${pkgdir}/opt/${_pkgname}" + bsdtar x -f ${_installer_binary} -C "${pkgdir}/opt/${_pkgname}" msg2 "Add lib symlinks..." cd "${pkgdir}/opt/${_pkgname}/" || exit diff --git a/davinci-resolve.install b/davinci-resolve.install new file mode 100644 index 000000000000..7cb3f99396da --- /dev/null +++ b/davinci-resolve.install @@ -0,0 +1,100 @@ +# These are fragments from the original code. +# I do not see any need for it yet, but maybe I will be able to find out later. + +# echo "Removing old files..." +# DIRS_TO_REMOVE=( +# "Onboarding" +# "libs" +# "plugins" +# "UI_Resource") + +# if [[ -d ${/opt/${_pkgname}} ]]; then +# echo "Removing old files" +# for dir in "${DIRS_TO_REMOVE[@]}"; do +# rm -rf "/opt/${_pkgname}/$dir" +# done +# fi + +#if [[ $EUID -ne 0 ]]; then +# # Script being run as non-root user +# USER_UID=$EUID +#else +# # Script being run as root +# USER_UID=$SUDO_UID +# if [ -z "$USER_UID" ]; then +# USER_UID=$PKEXEC_UID +# fi +# if [ -z "$USER_UID" ]; then +# USER_UID=0 +# fi +#fi + +#USER_HOME=`awk -v val=$USER_UID -F ":" '\$3==val{print \$6;exit}' /etc/passwd` + +# TODO: We should talk to the BMD developers about it. Pretty sensitive subject systemd @_@ +# if [[ -d ${/opt/${_pkgname}} && ${/opt/${_pkgname}} == /home/resolve* ]]; then +# chown $USER_UID "$/opt/${_pkgname}" +# else +# # Uninstall the panel daemon only on Standalone install +# # Uninstall BMD panel daemon +# SVC_NAME=bmdpaneld + +# # Kill the daemon in case it is running +# killall -9 ${SVC_NAME} + +# if [ -f /etc/init.d/${SVC_NAME} ]; then +# echo "#Uninstalling BMD panel service..." +# service ${SVC_NAME} stop +# /sbin/chkconfig --del ${SVC_NAME} +# rm -f /etc/init.d/${SVC_NAME} +# fi +# mkdir -m 0775 -p "$/opt/${_pkgname}" +# chown $USER_UID "$/opt/${_pkgname}" -R +# fi + +post_install() +{ + echo "Updating icon cache..." + gtk-update-icon-cache "share/icons/hicolor" -f 2>&1 >> /dev/null + update-mime-database "share/mime/" 2>&1 >> /dev/null + + echo "Installing the default app associations..." + if [ ! "$(grep -ir 'application/x-resolveproj=com.blackmagicdesign.resolve.desktop' /usr/share/applications/defaults.list)" ]; then + echo "application/x-resolveproj=com.blackmagicdesign.resolve.desktop" /usr/share/applications/defaults.list + fi + + if [ ! "$(grep -ir 'application/x-resolveproj=com.blackmagicdesign.resolve.desktop;' /usr/share/applications/mimeinfo.cache)" ]; then + echo "/application\/x-resolveproj=com.blackmagicdesign.resolve.desktop;/d" /usr/share/applications/mimeinfo.cache + fi + + # reload the udev rules + udevadm control --reload-rules 2>&1 + udevadm trigger 2>&1 + + # Ensure panel permissions are correctly set for the current session + DEVICES=`lsusb | grep "ID 1edb\|ID 096e" | sed -e "s/:/ /g" | awk '{print"/dev/bus/usb/"$2"/"$4}'` + for DEV in $DEVICES + do + echo "Fixing usb permissions for $DEV" + chmod a+w $DEV + done +} + +post_remove() +{ + # Remove entry from /usr/share/applications/defaults.list + if [ "$(grep -ir 'application/x-resolveproj=com.blackmagicdesign.resolve.desktop' /usr/share/applications/defaults.list)" ]; then + sed -i '/application\/x-resolveproj=com.blackmagicdesign.resolve.desktop/d' /usr/share/applications/defaults.list + fi + + # Removing entry from /usr/share/applications/mimeinfo.cache + if [ "$(grep -ir 'application/x-resolveproj=com.blackmagicdesign.resolve.desktop;' /usr/share/applications/mimeinfo.cache)" ]; then + sed -i '/application\/x-resolveproj=com.blackmagicdesign.resolve.desktop;/d' /usr/share/applications/mimeinfo.cache + fi + + # Remove udev rules + for rules in /usr/lib/udev/rules.d/75-davincipanel.rules /usr/lib/udev/rules.d/75-sdx.rules + do + [[ -f $rules ]] && rm -rf $rules + done +} |