Skip to content

Instantly share code, notes, and snippets.

@gabrielmoura
Last active May 22, 2018 08:19
Show Gist options
  • Save gabrielmoura/376a5f341c81f6b41d169be4f4c3dc55 to your computer and use it in GitHub Desktop.
Save gabrielmoura/376a5f341c81f6b41d169be4f4c3dc55 to your computer and use it in GitHub Desktop.
PKGBUILD Nero 4.0
post_install() {
gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
# ESP Package Manager v4.0
CHCON=`which chcon 2> /dev/null`
if [ $CHCON ]; then
if [ -x $CHCON ]; then
$CHCON -t texrel_shlib_t '/usr/lib/libNeroAPI.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/libNewTrf.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/libNeroErr.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/libNeroSCSI.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/libNeroCDR.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/libNeroASPI.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/nero/libMmc.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/nero/libImage.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/nero/libCDCopy.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/nero/libGenISO.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/nero/libGenUDF.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/nero/libGenUDF2.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/nero/libGenCueSheet.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/nero/libImageGen.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/nero/libGenerator.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/nero/libISOFS.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/nero/libUDFImporter.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/nero/libFATImporter.so' > /dev/null 2>&1
# Forget all about errors
true
fi
fi
CHCON=`which chcon 2> /dev/null`
if [ $CHCON ]; then
if [ -x $CHCON ]; then
$CHCON -t texrel_shlib_t '/usr/lib/nero/libNeroAudioPluginMgr.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/nero/plug-ins/libAiff.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/nero/plug-ins/libDefConvertor.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/nero/plug-ins/libFLAC.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/nero/plug-ins/libMP3.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/nero/plug-ins/libMusepack.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/nero/plug-ins/libNeroDigital.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/nero/plug-ins/libOggVorbis.so' > /dev/null 2>&1
$CHCON -t texrel_shlib_t '/usr/lib/nero/plug-ins/libWav.so' > /dev/null 2>&1
# Forget all about errors
true
fi
fi
if [ -x /usr/bin/update-mime-database usr/share/mime &> /dev/null ]; then
/usr/bin/update-mime-database usr/share/mime &> /dev/null
fi
if [ "$1" = "configure" ]; then
ldconfig
fi
KERNEL_VERSION=`uname -r`
KERNEL_CONFIGFILE_PATH="/boot/config-$KERNEL_VERSION"
if [ -r $KERNEL_CONFIGFILE_PATH ]; then
SG_CONFIG_OPTION=`grep "^CONFIG_CHR_DEV_SG" $KERNEL_CONFIGFILE_PATH | head -n 1`
if [ -z $SG_CONFIG_OPTION ]; then
echo ""
echo "Warning!"
echo " The running kernel seems to not have SCSI Generic support enabled. Therefore,"
echo " you will not be able to access real or emulated SCSI devices with Nero Linux."
echo ""
else
SG_STATE=`echo $SG_CONFIG_OPTION | cut -d'=' -f2`
case $SG_STATE in
m)
ETC_MODULES_PATH="/etc/modules"
if [ -w $ETC_MODULES_PATH ]; then
SG_PRESENT=`grep "^sg" $ETC_MODULES_PATH | head -n 1`
if [ -z $SG_PRESENT ]; then
echo "" >> $ETC_MODULES_PATH
echo "sg" >> $ETC_MODULES_PATH
echo "" >> $ETC_MODULES_PATH
MODPROBE=`which modprobe 2> /dev/null`
if [ $MODPROBE ]; then
$MODPROBE sg
fi
fi
fi
;;
*)
;;
esac
fi
fi
InstallMimeTypesLinks () {
if [ -d /usr/share/mime/packages ]; then
ln -s /usr/share/nero/mime/shared/nerolinux.xml /usr/share/mime/packages/nerolinux.xml
fi
if [ -d /usr/share/icons/gnome ]; then
if [ -d /usr/share/icons/gnome/16x16/mimetypes ]; then
ln -s /usr/share/icons/hicolor/16x16/mimetypes/nero-disc-image.png /usr/share/icons/gnome/16x16/mimetypes/gnome-mime-application-x-nero-disc-image.png
ln -s /usr/share/icons/hicolor/16x16/mimetypes/nero-linux-compilation.png /usr/share/icons/gnome/16x16/mimetypes/gnome-mime-application-x-nero-linux-compilation.png
fi
if [ -d /usr/share/icons/gnome/24x24/mimetypes ]; then
ln -s /usr/share/icons/hicolor/24x24/mimetypes/nero-disc-image.png /usr/share/icons/gnome/24x24/mimetypes/gnome-mime-application-x-nero-disc-image.png
ln -s /usr/share/icons/hicolor/24x24/mimetypes/nero-linux-compilation.png /usr/share/icons/gnome/24x24/mimetypes/gnome-mime-application-x-nero-linux-compilation.png
fi
if [ -d /usr/share/icons/gnome/32x32/mimetypes ]; then
ln -s /usr/share/icons/hicolor/32x32/mimetypes/nero-disc-image.png /usr/share/icons/gnome/32x32/mimetypes/gnome-mime-application-x-nero-disc-image.png
ln -s /usr/share/icons/hicolor/32x32/mimetypes/nero-linux-compilation.png /usr/share/icons/gnome/32x32/mimetypes/gnome-mime-application-x-nero-linux-compilation.png
fi
if [ -d /usr/share/icons/gnome/48x48/mimetypes ]; then
ln -s /usr/share/icons/hicolor/48x48/mimetypes/nero-disc-image.png /usr/share/icons/gnome/48x48/mimetypes/gnome-mime-application-x-nero-disc-image.png
ln -s /usr/share/icons/hicolor/48x48/mimetypes/nero-linux-compilation.png /usr/share/icons/gnome/48x48/mimetypes/gnome-mime-application-x-nero-linux-compilation.png
fi
fi
PATH="$PATH:/opt/kde3/bin"
if [ -x "`which kde-config 2>/dev/null`" ]; then
MIME_PATH=`kde-config --expandvars --install mime`
ICON_PATH=`kde-config --expandvars --install icon`
if [ -d $MIME_PATH ]; then
ln -s /usr/share/nero/mime/kde/x-nero-disc-image.desktop $MIME_PATH/application/x-nero-disc-image.desktop
ln -s /usr/share/nero/mime/kde/x-nero-linux-compilation.desktop $MIME_PATH/application/x-nero-linux-compilation.desktop
fi
if [ -d $ICON_PATH ]; then
KDE_HICOLOR_ICONS_PATH=$ICON_PATH/hicolor
if [ $KDE_HICOLOR_ICONS_PATH != /usr/share/icons/hicolor ]; then
if [ -d $KDE_HICOLOR_ICONS_PATH ]; then
if [ -d $KDE_HICOLOR_ICONS_PATH/16x16/mimetypes ]; then
ln -s /usr/share/icons/hicolor/16x16/mimetypes/nero-disc-image.png $KDE_HICOLOR_ICONS_PATH/16x16/mimetypes/nero-disc-image.png
ln -s /usr/share/icons/hicolor/16x16/mimetypes/nero-linux-compilation.png $KDE_HICOLOR_ICONS_PATH/16x16/mimetypes/nero-linux-compilation.png
fi
if [ -d $KDE_HICOLOR_ICONS_PATH/24x24/mimetypes ]; then
ln -s /usr/share/icons/hicolor/24x24/mimetypes/nero-disc-image.png $KDE_HICOLOR_ICONS_PATH/24x24/mimetypes/nero-disc-image.png
ln -s /usr/share/icons/hicolor/24x24/mimetypes/nero-linux-compilation.png $KDE_HICOLOR_ICONS_PATH/24x24/mimetypes/nero-linux-compilation.png
fi
if [ -d $KDE_HICOLOR_ICONS_PATH/32x32/mimetypes ]; then
ln -s /usr/share/icons/hicolor/32x32/mimetypes/nero-disc-image.png $KDE_HICOLOR_ICONS_PATH/32x32/mimetypes/nero-disc-image.png
ln -s /usr/share/icons/hicolor/32x32/mimetypes/nero-linux-compilation.png $KDE_HICOLOR_ICONS_PATH/32x32/mimetypes/nero-linux-compilation.png
fi
if [ -d $KDE_HICOLOR_ICONS_PATH/48x48/mimetypes ]; then
ln -s /usr/share/icons/hicolor/48x48/mimetypes/nero-disc-image.png $KDE_HICOLOR_ICONS_PATH/48x48/mimetypes/nero-disc-image.png
ln -s /usr/share/icons/hicolor/48x48/mimetypes/nero-linux-compilation.png $KDE_HICOLOR_ICONS_PATH/48x48/mimetypes/nero-linux-compilation.png
fi
fi
fi
fi
fi
if [ -x "`which kde4-config 2>/dev/null`" ]; then
ICON_PATH=`kde4-config --expandvars --install icon`
if [ -d $ICON_PATH ]; then
KDE4_HICOLOR_ICONS_PATH=$ICON_PATH/hicolor
if [ -d $KDE4_HICOLOR_ICONS_PATH ]; then
if [ -d $KDE4_HICOLOR_ICONS_PATH/16x16/mimetypes ]; then
ln -s /usr/share/icons/hicolor/16x16/mimetypes/nero-disc-image.png $KDE4_HICOLOR_ICONS_PATH/16x16/mimetypes/application-x-nero-disc-image.png
ln -s /usr/share/icons/hicolor/16x16/mimetypes/nero-linux-compilation.png $KDE4_HICOLOR_ICONS_PATH/16x16/mimetypes/application-x-nero-linux-compilation.png
fi
if [ -d $KDE4_HICOLOR_ICONS_PATH/24x24/mimetypes ]; then
ln -s /usr/share/icons/hicolor/24x24/mimetypes/nero-disc-image.png $KDE4_HICOLOR_ICONS_PATH/24x24/mimetypes/application-x-nero-disc-image.png
ln -s /usr/share/icons/hicolor/24x24/mimetypes/nero-linux-compilation.png $KDE4_HICOLOR_ICONS_PATH/24x24/mimetypes/application-x-nero-linux-compilation.png
fi
if [ -d $KDE4_HICOLOR_ICONS_PATH/32x32/mimetypes ]; then
ln -s /usr/share/icons/hicolor/32x32/mimetypes/nero-disc-image.png $KDE4_HICOLOR_ICONS_PATH/32x32/mimetypes/application-x-nero-disc-image.png
ln -s /usr/share/icons/hicolor/32x32/mimetypes/nero-linux-compilation.png $KDE4_HICOLOR_ICONS_PATH/32x32/mimetypes/application-x-nero-linux-compilation.png
fi
if [ -d $KDE4_HICOLOR_ICONS_PATH/48x48/mimetypes ]; then
ln -s /usr/share/icons/hicolor/48x48/mimetypes/nero-disc-image.png $KDE4_HICOLOR_ICONS_PATH/48x48/mimetypes/application-x-nero-disc-image.png
ln -s /usr/share/icons/hicolor/48x48/mimetypes/nero-linux-compilation.png $KDE4_HICOLOR_ICONS_PATH/48x48/mimetypes/application-x-nero-linux-compilation.png
fi
fi
fi
fi
}
InstallMimeTypesLinks
if [ -x "`which update-mime-database 2>/dev/null`" ]; then
update-mime-database /usr/share/mime > /dev/null 2>&1
fi
if [ -x "`which update-mime 2>/dev/null`" ]; then
update-mime > /dev/null 2>&1
fi
if which gtk-update-icon-cache >/dev/null 2>&1; then
for dir in /usr/share/icons/hicolor /usr/share/icons/gnome ; do
if [ -f "$dir"/index.theme ] && [ -f "$dir"/icon-theme.cache ]; then
gtk-update-icon-cache --force --quiet "$dir"
fi
done
fi
if [ -x "`which update-desktop-database 2>/dev/null`" ]; then
update-desktop-database -q > /dev/null 2>&1
fi
if [ -x /usr/bin/nero ]; then
/usr/bin/nero --perform-post-installation
fi
update-desktop-database -q
}
post_upgrade() {
post_install
}
pre_remove() {
# ESP Package Manager v4.0
RemoveMimeTypesLinks () {
if [ -L /usr/share/mime/packages/nerolinux.xml ]; then
rm -f /usr/share/mime/packages/nerolinux.xml
fi
if [ -d /usr/share/icons/gnome ]; then
if [ -L /usr/share/icons/gnome/16x16/mimetypes/gnome-mime-application-x-nero-disc-image.png ]; then
rm -f /usr/share/icons/gnome/16x16/mimetypes/gnome-mime-application-x-nero-disc-image.png
fi
if [ -L /usr/share/icons/gnome/24x24/mimetypes/gnome-mime-application-x-nero-disc-image.png ]; then
rm -f /usr/share/icons/gnome/24x24/mimetypes/gnome-mime-application-x-nero-disc-image.png
fi
if [ -L /usr/share/icons/gnome/32x32/mimetypes/gnome-mime-application-x-nero-disc-image.png ]; then
rm -f /usr/share/icons/gnome/32x32/mimetypes/gnome-mime-application-x-nero-disc-image.png
fi
if [ -L /usr/share/icons/gnome/48x48/mimetypes/gnome-mime-application-x-nero-disc-image.png ]; then
rm -f /usr/share/icons/gnome/48x48/mimetypes/gnome-mime-application-x-nero-disc-image.png
fi
if [ -L /usr/share/icons/gnome/16x16/mimetypes/gnome-mime-application-x-nero-linux-compilation.png ]; then
rm -f /usr/share/icons/gnome/16x16/mimetypes/gnome-mime-application-x-nero-linux-compilation.png
fi
if [ -L /usr/share/icons/gnome/24x24/mimetypes/gnome-mime-application-x-nero-linux-compilation.png ]; then
rm -f /usr/share/icons/gnome/24x24/mimetypes/gnome-mime-application-x-nero-linux-compilation.png
fi
if [ -L /usr/share/icons/gnome/32x32/mimetypes/gnome-mime-application-x-nero-linux-compilation.png ]; then
rm -f /usr/share/icons/gnome/32x32/mimetypes/gnome-mime-application-x-nero-linux-compilation.png
fi
if [ -L /usr/share/icons/gnome/48x48/mimetypes/gnome-mime-application-x-nero-linux-compilation.png ]; then
rm -f /usr/share/icons/gnome/48x48/mimetypes/gnome-mime-application-x-nero-linux-compilation.png
fi
fi
PATH=$PATH:/opt/kde3/bin
if [ -x "`which kde-config 2>/dev/null`" ]; then
MIME_PATH=`kde-config --expandvars --install mime`
ICON_PATH=`kde-config --expandvars --install icon`
if [ -d $MIME_PATH ]; then
if [ -L $MIME_PATH/application/x-nero-disc-image.desktop ]; then
rm -f $MIME_PATH/application/x-nero-disc-image.desktop
fi
if [ -L $MIME_PATH/application/x-nero-linux-compilation.desktop ]; then
rm -f $MIME_PATH/application/x-nero-linux-compilation.desktop
fi
fi
if [ -d $ICON_PATH ]; then
KDE_HICOLOR_ICONS_PATH=$ICON_PATH/hicolor
if [ $KDE_HICOLOR_ICONS_PATH != /usr/share/icons/hicolor ]; then
if [ -d $KDE_HICOLOR_ICONS_PATH ]; then
if [ -L $KDE_HICOLOR_ICONS_PATH/16x16/mimetypes/nero-disc-image.png ]; then
rm -f $KDE_HICOLOR_ICONS_PATH/16x16/mimetypes/nero-disc-image.png
fi
if [ -L $KDE_HICOLOR_ICONS_PATH/24x24/mimetypes/nero-disc-image.png ]; then
rm -f $KDE_HICOLOR_ICONS_PATH/24x24/mimetypes/nero-disc-image.png
fi
if [ -L $KDE_HICOLOR_ICONS_PATH/32x32/mimetypes/nero-disc-image.png ]; then
rm -f $KDE_HICOLOR_ICONS_PATH/32x32/mimetypes/nero-disc-image.png
fi
if [ -L $KDE_HICOLOR_ICONS_PATH/48x48/mimetypes/nero-disc-image.png ]; then
rm -f $KDE_HICOLOR_ICONS_PATH/48x48/mimetypes/nero-disc-image.png
fi
if [ -L $KDE_HICOLOR_ICONS_PATH/16x16/mimetypes/nero-linux-compilation.png ]; then
rm -f $KDE_HICOLOR_ICONS_PATH/16x16/mimetypes/nero-linux-compilation.png
fi
if [ -L $KDE_HICOLOR_ICONS_PATH/24x24/mimetypes/nero-linux-compilation.png ]; then
rm -f $KDE_HICOLOR_ICONS_PATH/24x24/mimetypes/nero-linux-compilation.png
fi
if [ -L $KDE_HICOLOR_ICONS_PATH/32x32/mimetypes/nero-linux-compilation.png ]; then
rm -f $KDE_HICOLOR_ICONS_PATH/32x32/mimetypes/nero-linux-compilation.png
fi
if [ -L $KDE_HICOLOR_ICONS_PATH/48x48/mimetypes/nero-linux-compilation.png ]; then
rm -f $KDE_HICOLOR_ICONS_PATH/48x48/mimetypes/nero-linux-compilation.png
fi
fi
fi
fi
fi
if [ -x "`which kde4-config 2>/dev/null`" ]; then
ICON_PATH=`kde4-config --expandvars --install icon`
if [ -d $ICON_PATH ]; then
KDE4_HICOLOR_ICONS_PATH=$ICON_PATH/hicolor
if [ -d $KDE4_HICOLOR_ICONS_PATH ]; then
if [ -L $KDE4_HICOLOR_ICONS_PATH/16x16/mimetypes/application-x-nero-disc-image.png ]; then
rm -f $KDE4_HICOLOR_ICONS_PATH/16x16/mimetypes/application-x-nero-disc-image.png
fi
if [ -L $KDE4_HICOLOR_ICONS_PATH/24x24/mimetypes/application-x-nero-disc-image.png ]; then
rm -f $KDE4_HICOLOR_ICONS_PATH/24x24/mimetypes/application-x-nero-disc-image.png
fi
if [ -L $KDE4_HICOLOR_ICONS_PATH/32x32/mimetypes/application-x-nero-disc-image.png ]; then
rm -f $KDE4_HICOLOR_ICONS_PATH/32x32/mimetypes/application-x-nero-disc-image.png
fi
if [ -L $KDE4_HICOLOR_ICONS_PATH/48x48/mimetypes/application-x-nero-disc-image.png ]; then
rm -f $KDE4_HICOLOR_ICONS_PATH/48x48/mimetypes/application-x-nero-disc-image.png
fi
if [ -L $KDE4_HICOLOR_ICONS_PATH/16x16/mimetypes/application-x-nero-linux-compilation.png ]; then
rm -f $KDE4_HICOLOR_ICONS_PATH/16x16/mimetypes/application-x-nero-linux-compilation.png
fi
if [ -L $KDE4_HICOLOR_ICONS_PATH/24x24/mimetypes/application-x-nero-linux-compilation.png ]; then
rm -f $KDE4_HICOLOR_ICONS_PATH/24x24/mimetypes/application-x-nero-linux-compilation.png
fi
if [ -L $KDE4_HICOLOR_ICONS_PATH/32x32/mimetypes/application-x-nero-linux-compilation.png ]; then
rm -f $KDE4_HICOLOR_ICONS_PATH/32x32/mimetypes/application-x-nero-linux-compilation.png
fi
if [ -L $KDE4_HICOLOR_ICONS_PATH/48x48/mimetypes/application-x-nero-linux-compilation.png ]; then
rm -f $KDE4_HICOLOR_ICONS_PATH/48x48/mimetypes/application-x-nero-linux-compilation.png
fi
fi
fi
fi
}
RemoveMimeTypesLinks
}
post_remove() {
gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
# ESP Package Manager v4.0
if [ -x /usr/bin/update-mime-database usr/share/mime &> /dev/null ]; then
/usr/bin/update-mime-database usr/share/mime &> /dev/null
fi
if [ "$1" = "remove" ]; then
ldconfig
fi
if [ -x "`which update-mime-database 2>/dev/null`" ]; then
update-mime-database /usr/share/mime > /dev/null 2>&1
fi
if [ -x "`which update-mime 2>/dev/null`" ]; then
update-mime > /dev/null 2>&1
fi
if which gtk-update-icon-cache >/dev/null 2>&1; then
for dir in /usr/share/icons/hicolor /usr/share/icons/gnome ; do
if [ -f "$dir"/index.theme ] && [ -f "$dir"/icon-theme.cache ]; then
gtk-update-icon-cache --force --quiet "$dir"
fi
done
fi
if [ -x "`which update-desktop-database 2>/dev/null`" ]; then
update-desktop-database -q > /dev/null 2>&1
fi
update-desktop-database -q
}
pkgname=nerolinux
pkgver=4.0.0.0
pkgrel=0
pkgdesc="Nero Linux Disc Burning Software. Nero Linux is a flexible application, which supports all important Nero Burning ROM features on Linux systems. - Data CDs, DVDs and Blu-ray discs - Bootable CDs, DVDs and Blu-ray using the El-Torito standard - Audio CDs with various audio formats - Mixed-Mode CDs and Enhanced CDs (CD EXTRA) - Disc Images (ISO, NRG, and Cue Sheets) - DVD-Video and miniDVD - Multisession discs"
arch=('any')
url="http://www.nero.com/ptb/downloads/previous-versions/download-linux4-update.php"
license=('nero')
provides=('nero')
depends=('desktop-file-utils' 'glib2' 'gtk2' 'hicolor-icon-theme')
backup=('etc/nero/config')
options=('!strip' '!emptydirs')
install=${pkgname}.install
source=("nerolinux-4.0.0.0-amd64.deb")
sha512sums=('b2b350c40f352d71101d9e592370cb9fc9d4e15f66359e97a27a6d2a5d45704f4b3cf001afe651ff45cc3e8d10d5ab140d70d974f0728f66d3c6a3bd17d6ed1a')
package(){
# Extract package data
tar xzf data.tar.gz -C "${pkgdir}"
# install -D -m644 "/usr/share/nero/images/license" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
install -D -m644 "/usr/share/nero/images/burnprocess/nero-burnprocess_copyright_message_icon-16.png" "${pkgdir}/usr/share/licenses/${pkgname}/COPYRIGHT"
install -D -m644 "/usr/share/nero/eula/EULA-ZH_TW.txt" "${pkgdir}/usr/share/licenses/${pkgname}/EULA"
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment