X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=debian%2Fzfs-dkms.postinst;h=0ecb9674d559b504203e1d8219b07c3f98e90a30;hb=521cc133350ec8b5c2b30dfdd5afc493c22d0323;hp=07fe0c204aa491e356d6ac79ac4b211aa3a8413a;hpb=eab8c6b7a950812b2f1b5b91a32a0d9ae0fcdb52;p=mirror_zfs-debian.git diff --git a/debian/zfs-dkms.postinst b/debian/zfs-dkms.postinst index 07fe0c20..0ecb9674 100644 --- a/debian/zfs-dkms.postinst +++ b/debian/zfs-dkms.postinst @@ -1,3 +1,51 @@ -#!/bin/sh -e +#!/bin/sh +set -e + +# Source debconf library (see dh_installdebconf(1) and #106070 #626312) +. /usr/share/debconf/confmodule + +kernelbits=unknown +if [ -r /proc/kallsyms ]; then + addrlen=$(head -1 /proc/kallsyms| grep -o '^ *[^ ]*' |wc -c) + if [ $addrlen = 17 ]; then + kernelbits=64 + elif [ $addrlen = 9 ]; then + kernelbits=32 + fi +fi + +if [ $kernelbits != 64 ]; then + if [ $kernelbits = 32 ]; then + db_get zfs-dkms/stop-build-for-32bit-kernel + if [ "$RET" = "true" ]; then + echo "Ok, aborting, since ZFS is not designed for 32-bit kernels." 1>&2 + # Exit 0: Tell dpkg that we finished OK but stop here. + # (don't build the module) + exit 0 + else + echo "WARNING: Building ZFS module on a 32-bit kernel." 1>&2 + fi + else + db_get zfs-dkms/stop-build-for-unknown-kernel + if [ "$RET" = "true" ]; then + echo "Ok, aborting, since ZFS is not designed for 32-bit kernels." 1>&2 + # Exit 0: (same that above) + exit 0 + else + echo "WARNING: Building ZFS module on an unknown kernel." 1>&2 + fi + fi +fi + +# Here the module gets built (automatically handled by dh_dkms) #DEBHELPER# + + +case $1 in + (configure) + if [ -x /usr/share/update-notifier/notify-reboot-required ]; then + /usr/share/update-notifier/notify-reboot-required + fi + ;; +esac