#!/bin/sh

set -e

## Initramfs hook for Puavo devices.

MINKVER="2.6.17"
PREREQ=""

prereqs()
{
    echo "$PREREQ"
}

case "$1" in
    prereqs)
        prereqs
        exit 0
        ;;
esac


. /usr/share/initramfs-tools/hook-functions

#
# support for basic system image
#

manual_add_modules aufs
manual_add_modules overlay
manual_add_modules overlayfs
manual_add_modules squashfs

# hooks/fsck does not copy fsck because we have an empty /etc/fstab
copy_exec /sbin/fsck
copy_exec /sbin/fsck.ext2
copy_exec /sbin/fsck.ext3
copy_exec /sbin/fsck.ext4
copy_exec /sbin/logsave

#
# puavo-conf
#

mkdir -p ${DESTDIR}/etc/puavo-conf/ \
         ${DESTDIR}/usr/bin/        \
         ${DESTDIR}/usr/sbin/       \
         ${DESTDIR}/usr/share/

cp -p /etc/puavo-conf/image.json ${DESTDIR}/etc/puavo-conf/

copy_exec /usr/bin/lspci              /usr/bin
copy_exec /usr/bin/lsusb              /usr/bin
copy_exec /usr/bin/puavo-conf         /usr/bin
copy_exec /usr/sbin/dmidecode         /usr/sbin
copy_exec /usr/sbin/puavo-conf-update /usr/sbin

cp -a /usr/share/puavo-conf ${DESTDIR}/usr/share/

ln -s libpuavoconf.so.0 ${DESTDIR}/usr/lib/libpuavoconf.so

#
# nvidia graphics drivers
#

rm -f ${DESTDIR}/etc/modprobe.d/nvidia-blacklists-nouveau.conf \
      ${DESTDIR}/etc/modprobe.d/nvidia.conf                    \
      ${DESTDIR}/etc/modprobe.d/nvidia-kernel-common.conf

if [ -d /etc/nvidia ]; then
  mkdir -p ${DESTDIR}/etc/nvidia
  cp -LR -t ${DESTDIR}/etc/nvidia /etc/nvidia/*
fi
