summaryrefslogtreecommitdiff
path: root/kernels/linux-libre-grsec-knock/linux.install
blob: cee2a22fce20d21a1878e48de6c2338648433b57 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# arg 1:  the new package version
# arg 2:  the old package version

KERNEL_NAME=
KERNEL_VERSION=

_uderef_news() {
  if [[ $(uname -m) = x86_64 ]]; then
    cat <<EOF
The UDEREF PCID bug has been fixed. If you added \`nopcid\` or \`pax_nouderef\`
to the kernel line as a workaround it should now be removed to take advantage
of the stronger PCID-based UDEREF implementation.
EOF
  fi
}

post_install () {
  # updating module dependencies
  echo ">>> Updating module dependencies. Please wait ..."
  depmod ${KERNEL_VERSION}
  echo ">>> Generating initial ramdisk, using mkinitcpio.  Please wait..."
  mkinitcpio -p linux-libre${KERNEL_NAME}
}

post_upgrade() {
  if findmnt --fstab -uno SOURCE /boot &>/dev/null && ! mountpoint -q /boot; then
    echo "WARNING: /boot appears to be a separate partition but is not mounted."
  fi

  if getent group proc-trusted >/dev/null; then
    groupdel proc-trusted
  fi

  # updating module dependencies
  echo ">>> Updating module dependencies. Please wait ..."
  depmod ${KERNEL_VERSION}
  echo ">>> Generating initial ramdisk, using mkinitcpio.  Please wait..."
  mkinitcpio -p linux-libre${KERNEL_NAME}

  if [ $(vercmp $2 3.13) -lt 0 ]; then
    echo ">>> WARNING: AT keyboard support is no longer built into the kernel."
    echo ">>>          In order to use your keyboard during early init, you MUST"
    echo ">>>          include the 'keyboard' hook in your mkinitcpio.conf."
  fi

  if [[ $(vercmp $2 3.17.7_gnu.201412211910-1) -lt 0 ]]; then
    _uderef_news
  fi
}

post_remove() {
  # also remove the compat symlinks
  rm -f boot/initramfs-linux-libre${KERNEL_NAME}.img
  rm -f boot/initramfs-linux-libre${KERNEL_NAME}-fallback.img
}