summaryrefslogtreecommitdiff
path: root/kernels/linux-libre-grsec-knock/linux.install
diff options
context:
space:
mode:
Diffstat (limited to 'kernels/linux-libre-grsec-knock/linux.install')
-rw-r--r--kernels/linux-libre-grsec-knock/linux.install58
1 files changed, 58 insertions, 0 deletions
diff --git a/kernels/linux-libre-grsec-knock/linux.install b/kernels/linux-libre-grsec-knock/linux.install
new file mode 100644
index 000000000..99069bc58
--- /dev/null
+++ b/kernels/linux-libre-grsec-knock/linux.install
@@ -0,0 +1,58 @@
+# arg 1: the new package version
+# arg 2: the old package version
+
+KERNEL_NAME=
+KERNEL_VERSION=
+
+_uderef_warning() {
+ if [[ $(uname -m) = x86_64 ]]; then
+ cat <<EOF
+CONFIG_PAX_MEMORY_UDEREF is now enabled on x86_64 and can be disabled by
+passing \`pax_nouderef\` on the kernel line. UDEREF's PCID support on Sandy
+Bridge and later is known to have issues with recent kernel versions and can be
+disabled by passing \`nopcid\` to use the legacy 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}
+
+ _uderef_warning
+}
+
+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.15.6_gnu.201407232200-2) -lt 0 ]]; then
+ _uderef_warning
+ 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
+}