mirror of
https://git.yoctoproject.org/poky
synced 2026-06-07 06:52:39 +02:00
As stated in our top level license files, the license is MIT unless otherwise stated. Add SPDX identifers accordingly. Replace older license statementa with the standardised syntax. Also drop "All Rights Reserved" expression as it isn't used now, doesn't mean anything and is confusing. (From OE-Core rev: 081a391fe09a21265881e39a2a496e4e10b4f80b) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
77 lines
2.5 KiB
Plaintext
77 lines
2.5 KiB
Plaintext
#
|
|
# Copyright OpenEmbedded Contributors
|
|
#
|
|
# SPDX-License-Identifier: MIT
|
|
#
|
|
|
|
#
|
|
# This class is used by recipes installing mime types
|
|
#
|
|
|
|
DEPENDS += "${@bb.utils.contains('BPN', 'shared-mime-info', '', 'shared-mime-info', d)}"
|
|
PACKAGE_WRITE_DEPS += "shared-mime-info-native"
|
|
MIMEDIR = "${datadir}/mime"
|
|
|
|
mime_postinst() {
|
|
if [ "x$D" != "x" ]; then
|
|
$INTERCEPT_DIR/postinst_intercept update_mime_database ${PKG} \
|
|
mlprefix=${MLPREFIX} \
|
|
mimedir=${MIMEDIR}
|
|
else
|
|
echo "Updating MIME database... this may take a while."
|
|
update-mime-database $D${MIMEDIR}
|
|
fi
|
|
}
|
|
|
|
mime_postrm() {
|
|
if [ "x$D" != "x" ]; then
|
|
$INTERCEPT_DIR/postinst_intercept update_mime_database ${PKG} \
|
|
mlprefix=${MLPREFIX} \
|
|
mimedir=${MIMEDIR}
|
|
else
|
|
echo "Updating MIME database... this may take a while."
|
|
# $D${MIMEDIR}/packages belong to package shared-mime-info-data,
|
|
# packages like libfm-mime depend on shared-mime-info-data.
|
|
# after shared-mime-info-data uninstalled, $D${MIMEDIR}/packages
|
|
# is removed, but update-mime-database need this dir to update
|
|
# database, workaround to create one and remove it later
|
|
if [ ! -d $D${MIMEDIR}/packages ]; then
|
|
mkdir -p $D${MIMEDIR}/packages
|
|
update-mime-database $D${MIMEDIR}
|
|
rmdir --ignore-fail-on-non-empty $D${MIMEDIR}/packages
|
|
else
|
|
update-mime-database $D${MIMEDIR}
|
|
fi
|
|
fi
|
|
}
|
|
|
|
python populate_packages:append () {
|
|
packages = d.getVar('PACKAGES').split()
|
|
pkgdest = d.getVar('PKGDEST')
|
|
mimedir = d.getVar('MIMEDIR')
|
|
|
|
for pkg in packages:
|
|
mime_packages_dir = '%s/%s%s/packages' % (pkgdest, pkg, mimedir)
|
|
mimes_types_found = False
|
|
if os.path.exists(mime_packages_dir):
|
|
for f in os.listdir(mime_packages_dir):
|
|
if f.endswith('.xml'):
|
|
mimes_types_found = True
|
|
break
|
|
if mimes_types_found:
|
|
bb.note("adding mime postinst and postrm scripts to %s" % pkg)
|
|
postinst = d.getVar('pkg_postinst:%s' % pkg)
|
|
if not postinst:
|
|
postinst = '#!/bin/sh\n'
|
|
postinst += d.getVar('mime_postinst')
|
|
d.setVar('pkg_postinst:%s' % pkg, postinst)
|
|
postrm = d.getVar('pkg_postrm:%s' % pkg)
|
|
if not postrm:
|
|
postrm = '#!/bin/sh\n'
|
|
postrm += d.getVar('mime_postrm')
|
|
d.setVar('pkg_postrm:%s' % pkg, postrm)
|
|
if pkg != 'shared-mime-info-data':
|
|
bb.note("adding shared-mime-info-data dependency to %s" % pkg)
|
|
d.appendVar('RDEPENDS:' + pkg, " " + d.getVar('MLPREFIX')+"shared-mime-info-data")
|
|
}
|