diff --git a/xbps-src/shutils/metadata.sh b/xbps-src/shutils/metadata.sh
index b6481a85567..e940c950796 100644
--- a/xbps-src/shutils/metadata.sh
+++ b/xbps-src/shutils/metadata.sh
@@ -288,6 +288,13 @@ xbps_write_metadata_pkg_real()
long_desc
$long_desc
_EOF
+ #
+ # If package sets $dkms_modules, add dkms rundep.
+ #
+ if [ -n "$dkms_modules" ]; then
+ Add_dependency run dkms
+ fi
+
#
# If package sets $openrc_services, add the OpenRC rundep.
#
diff --git a/xbps-src/shutils/metadata_scripts.sh b/xbps-src/shutils/metadata_scripts.sh
index 11fa9be6379..eaad1ced9d8 100644
--- a/xbps-src/shutils/metadata_scripts.sh
+++ b/xbps-src/shutils/metadata_scripts.sh
@@ -63,7 +63,7 @@ xbps_write_metadata_scripts_pkg()
# not possible to chroot(3).
#
-export PATH="./bin:./sbin:./usr/bin:./usr/sbin"
+export PATH="/bin:/sbin:/usr/bin:/usr/sbin"
TRIGGERSDIR="./var/db/xbps/triggers"
ACTION="\$1"
@@ -77,25 +77,12 @@ UPDATE="\$4"
_EOF
#
- # Handle GNU Info files.
+ # Handle DKMS modules.
#
- if [ -d "${DESTDIR}/usr/share/info" ]; then
- unset info_files
- for f in $(find ${DESTDIR}/usr/share/info -type f); do
- j=$(echo $f|sed -e "$fpattern")
- [ "$j" = "" ] && continue
- [ "$j" = "/usr/share/info/dir" ] && continue
- if [ -z "$info_files" ]; then
- info_files="$j"
- else
- info_files="$info_files $j"
- fi
- done
- if [ -n "${info_files}" ]; then
- _add_trigger info-files
- echo "export info_files=\"${info_files}\"" >> $tmpf
- fi
- fi
+ if [ -n "${dkms_modules}" ]; then
+ _add_trigger dkms
+ echo "export dkms_modules=\"${dkms_modules}\"" >> $tmpf
+ fi
#
# Handle OpenRC services.
@@ -132,6 +119,27 @@ _EOF
done
fi
+ #
+ # Handle GNU Info files.
+ #
+ if [ -d "${DESTDIR}/usr/share/info" ]; then
+ unset info_files
+ for f in $(find ${DESTDIR}/usr/share/info -type f); do
+ j=$(echo $f|sed -e "$fpattern")
+ [ "$j" = "" ] && continue
+ [ "$j" = "/usr/share/info/dir" ] && continue
+ if [ -z "$info_files" ]; then
+ info_files="$j"
+ else
+ info_files="$info_files $j"
+ fi
+ done
+ if [ -n "${info_files}" ]; then
+ _add_trigger info-files
+ echo "export info_files=\"${info_files}\"" >> $tmpf
+ fi
+ fi
+
#
# (Un)Register a shell in /etc/shells.
#
@@ -208,6 +216,9 @@ _EOF
fi
fi
+ # End of trigger var exports.
+ echo >> $tmpf
+
#
# Write the INSTALL/REMOVE package scripts.
#
diff --git a/xbps-src/shutils/tmpl_funcs.sh.in b/xbps-src/shutils/tmpl_funcs.sh.in
index 8ae31e628a1..f5ee1551971 100644
--- a/xbps-src/shutils/tmpl_funcs.sh.in
+++ b/xbps-src/shutils/tmpl_funcs.sh.in
@@ -75,7 +75,7 @@ reset_tmpl_vars()
noarch subpackages sourcepkg gtk_iconcache_dirs \
abi_depends api_depends triggers openrc_services \
replaces system_accounts build_wrksrc create_wrksrc \
- ignore_vdeps_dir noverifyrdeps conflicts \
+ ignore_vdeps_dir noverifyrdeps conflicts dkms_modules \
gconf_entries gconf_schemas stow_copy stow_copy_files \
pre_remove post_remove post_stow do_build do_install \
XBPS_EXTRACT_DONE XBPS_CONFIGURE_DONE \