]> git.wh0rd.org - home.git/blobdiff - .bin/installkernel
gdbinit: split up & migrate some to python
[home.git] / .bin / installkernel
index fa230ecbf6fd9142eb7ece2a2e79f31af22f6553..ec6ceb6c91a32ff29d38ffe143fd6b8730ed6cf0 100755 (executable)
@@ -1,11 +1,40 @@
 #!/bin/bash
-if [[ $2 == */blackfin/* ]] ; then
-       mmv() { [[ -e $1 ]] && mv "$1" "$2" ; }
-       mmv $4/uImage $4/uImage.old
-       mmv $4/$3 $4/$3.old
+# 2.6.35.4-default arch/s390/boot/image System.map /boot
 
-       cp $2 $4/uImage
-       cp $3 $4/$3
+mmv() { [[ -e $1 ]] && mv "$1" "$2" ; }
+
+ver=$1
+img=$2
+map=$3
+dir=$4
+
+mount "${dir}" >&/dev/null
+
+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
-fi
+       ;;
+esac
 exec /sbin/installkernel "$@"