diff options
Diffstat (limited to 'kernels/linux-libre-pae')
-rw-r--r-- | kernels/linux-libre-pae/99-linux.hook | 11 | ||||
-rw-r--r-- | kernels/linux-libre-pae/PKGBUILD | 27 | ||||
-rw-r--r-- | kernels/linux-libre-pae/linux.install | 40 | ||||
-rw-r--r-- | kernels/linux-libre-pae/linux.preset | 8 |
4 files changed, 46 insertions, 40 deletions
diff --git a/kernels/linux-libre-pae/99-linux.hook b/kernels/linux-libre-pae/99-linux.hook new file mode 100644 index 000000000..985115199 --- /dev/null +++ b/kernels/linux-libre-pae/99-linux.hook @@ -0,0 +1,11 @@ +[Trigger] +Type = File +Operation = Install +Operation = Upgrade +Target = boot/vmlinuz-%PKGBASE% +Target = usr/lib/initcpio/* + +[Action] +Description = Updating %PKGBASE% initcpios +When = PostTransaction +Exec = /usr/bin/mkinitcpio -p %PKGBASE% diff --git a/kernels/linux-libre-pae/PKGBUILD b/kernels/linux-libre-pae/PKGBUILD index c8014de68..21d1f6bc1 100644 --- a/kernels/linux-libre-pae/PKGBUILD +++ b/kernels/linux-libre-pae/PKGBUILD @@ -18,7 +18,7 @@ _replacesoldmodules=() # '%' gets replaced with _kernelname _srcname=linux-${_pkgbasever%-*} _archpkgver=${_pkgver%-*} pkgver=${_pkgver//-/_} -pkgrel=1 +pkgrel=2 arch=('i686') url="http://linux-libre.fsfla.org/" license=('GPL2') @@ -36,6 +36,8 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_pkgbasever}/li "https://repo.parabola.nu/other/linux-libre/logos/logo_linux_vga16.ppm.sig" # the main kernel config files 'config' + # pacman hook for initramfs regeneration + '99-linux.hook' # standard config files for mkinitcpio ramdisk 'linux.preset' 'change-default-console-loglevel.patch' @@ -52,7 +54,8 @@ sha256sums=('d54e0f8a27e24f3666c19b395c19dba194635db26929c89e78ffa4b2b0e8ca3a' '6de8a8319271809ffdb072b68d53d155eef12438e6d04ff06a5a4db82c34fa8a' 'SKIP' '4d1026e82d40cac4e217be0934fe40c6a85bf1e5ba87ceff75647a0e3f2e3d2f' - 'f0d90e756f14533ee67afda280500511a62465b4f76adcc5effa95a40045179c' + '834bd254b56ab71d73f59b3221f056c72f559553c04718e350ab2a3e2991afe0' + 'ad6344badc91ad0630caacde83f7f9b97276f80d26a20619a87952be65492c65' '1256b241cd477b265a3c2d64bdc19ffe3c9bbcee82ea3994c590c2c76e767d99' '0376bd5efa31d4e2a9d52558777cebd9f0941df8e1adab916c868bf0c05f2fc3' '351fd96be8cd5ebd0435c0a8a978673fc023e3b1026085e67f86d815b2285e25') @@ -149,21 +152,17 @@ _package() { cp arch/$KARCH/boot/bzImage "${pkgdir}/boot/vmlinuz-${pkgbase}" # set correct depmod command for install - cp -f "${startdir}/${install}" "${startdir}/${install}.pkg" + sed -e "s|%PKGBASE%|${pkgbase}|g;s|%KERNVER%|${_kernver}|g" \ + "${startdir}/${install}" > "${startdir}/${install}.pkg" true && install=${install}.pkg - sed \ - -e "s/KERNEL_NAME=.*/KERNEL_NAME=${_kernelname}/" \ - -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/" \ - -i "${startdir}/${install}" # install mkinitcpio preset file for kernel - install -D -m644 "${srcdir}/linux.preset" "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" - sed \ - -e "1s|'linux.*'|'${pkgbase}'|" \ - -e "s|ALL_kver=.*|ALL_kver=\"/boot/vmlinuz-${pkgbase}\"|" \ - -e "s|default_image=.*|default_image=\"/boot/initramfs-${pkgbase}.img\"|" \ - -e "s|fallback_image=.*|fallback_image=\"/boot/initramfs-${pkgbase}-fallback.img\"|" \ - -i "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" + sed "s|%PKGBASE%|${pkgbase}|g" "${srcdir}/linux.preset" | + install -D -m644 /dev/stdin "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" + + # install pacman hook for initramfs regeneration + sed "s|%PKGBASE%|${pkgbase}|g" "${srcdir}/99-linux.hook" | + install -D -m644 /dev/stdin "${pkgdir}/usr/share/libalpm/hooks/99-${pkgbase}.hook" # remove build and source links rm -f "${pkgdir}"/lib/modules/${_kernver}/{source,build} diff --git a/kernels/linux-libre-pae/linux.install b/kernels/linux-libre-pae/linux.install index 70e177ef2..97a2a8133 100644 --- a/kernels/linux-libre-pae/linux.install +++ b/kernels/linux-libre-pae/linux.install @@ -1,37 +1,33 @@ -# arg 1: the new package version -# arg 2: the old package version - -KERNEL_NAME= -KERNEL_VERSION= - 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} + depmod %KERNVER% + if [ "$(uname -m)" = "armv7l" ]; then + echo ">>> WARNING: Using this kernel requires an updated U-Boot!" + fi } 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 - # 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} + depmod %KERNVER% + if [ "$(uname -m)" = "x86_64" ] || [ "$(uname -m)" = "i686" ]; then + 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 [ $(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." + 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 fi } +if [ "$(uname -m)" = "x86_64" ] || [ "$(uname -m)" = "i686" ]; then 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 + rm -f boot/initramfs-%PKGBASE%.img + rm -f boot/initramfs-%PKGBASE%-fallback.img } +fi diff --git a/kernels/linux-libre-pae/linux.preset b/kernels/linux-libre-pae/linux.preset index b06292d10..66709a8c1 100644 --- a/kernels/linux-libre-pae/linux.preset +++ b/kernels/linux-libre-pae/linux.preset @@ -1,14 +1,14 @@ -# mkinitcpio preset file for the 'linux' package +# mkinitcpio preset file for the '%PKGBASE%' package ALL_config="/etc/mkinitcpio.conf" -ALL_kver="/boot/vmlinuz-linux" +ALL_kver="/boot/vmlinuz-%PKGBASE%" PRESETS=('default' 'fallback') #default_config="/etc/mkinitcpio.conf" -default_image="/boot/initramfs-linux.img" +default_image="/boot/initramfs-%PKGBASE%.img" #default_options="" #fallback_config="/etc/mkinitcpio.conf" -fallback_image="/boot/initramfs-linux-fallback.img" +fallback_image="/boot/initramfs-%PKGBASE%-fallback.img" fallback_options="-S autodetect" |