#!/bin/bash # 2.6.35.4-default arch/s390/boot/image System.map /boot e() { echo "+ $*"; "$@"; } mmv() { [[ -e $1 ]] && mv "$1" "$2"; } ver=$1 img=$2 map=$3 dir=$4 mount "${dir}" >&/dev/null if [[ ! -w "${dir}" ]] ; then mount "${dir}" -o remount,rw fi case ${img} in */blackfin/*) mmv ${dir}/uImage ${dir}/uImage.old mmv ${dir}/${map} ${dir}/${map}.old cp ${img} ${dir}/uImage cp ${map} ${dir}/${map} exit 0 ;; */s390/*) pushd /lib/modules >/dev/null for v in * ; do [[ -d ${v} ]] || continue [[ -e ${dir}/image-${v} ]] && continue echo rm -rf ${PWD}/${v} done popd >/dev/null cp ${img} ${dir}/image-${ver} xz -9c ${map} > ${dir}/System.map-${ver}.xz xz -9c .config > ${dir}/config-${ver}.xz ln -sf image-${ver} ${dir}/image zipl exit 0 ;; esac e /sbin/installkernel "$@" case ${img} in */x86*/*) if [[ -e ${dir}/grub/grub.cfg ]] ; then e grub-mkconfig -o /boot/grub/grub.cfg fi ;; esac